Monday, July 23, 2007

Web 2.0 -- on a wing and a prayer!

"On a wing and a prayer" ...
  • In poor condition, but just managing to get the job done. (from The Phrase Finder)
  • In a desperate situation and you’re relying on hope to see you through. (from World Wide Words)
- - - - - - - - - - - - - - - - - - - - - - - - -

I've written a few posts about "Web 2.0" during the last year or two, and consider that I have a reasonable understanding of the concept -- even if I reckon, a little dismissively perhaps, that it's sort of like the notion "This is the place to be!" and will inevitably be replaced by some other faddish concept.

Another current favorite term is AJAX (Asynchronous JavaScript And XML): not an architecture or a product specification but an approach or very general methodology for designing and developing Web applications. Some of them, like Google Maps, really are very nice! But already there are dozens of incompatible developer toolkits (I've listed a small sampling of them at http://www.asiapac.com.au/Links/WebServices.htm and http://www.asiapac.com.au/Links/Design.htm#AJAX_Asynchronous_JavaScript_And_XML.

Then there's SOA (Service Oriented Architecture) not to forget Web Services, with an "acronym soup" of terms (such as SOAP, WSDL, UDDI, ...) -- indeed so many and varied are they that the pithy catch-all WS-* is generally used for convenience. Some people treat the terms SOA and Web Services synonymously, so there's a degree confusion or misinformation going the rounds. (They're not synonymous, but Web Services can form part of an SOA design.)

Like others, I'm getting annoyed by all this excessive hype about "Web 2.0" and I've already predicted its inevitable demise ... See Web 3.0 is Underway -- but "Web Pi" is unreachable ... I like the graphic so much that I'm repeating it here:


Apparently somebody else quite independently has come up with the same construct. See The we is evolving into web pi (though without having fleshed out the concept very far, only proffering "pi is good as u can C").

All that aside, it was two web interactions earlier today that irritated me top the point that I had to vent some steam in this blog.
To me, the most ridiculous thing about "Web 1.0" (not even Web 2.0) is that it's based on the fragile Web Browser as the delivery vehicle, rather than some sort of session-aware rich client.

And, as often happens, it was only a little thing that drove me over the edge today: I was carrying out two extremely simple browser-based transactions.

Firstly, while doing some Internet banking at the ANZ Bank website, I quite inadvertently pressed the Back button on the left side of my mouse (the result would have been the same if I had pressed the Back button near the top of the browser window). You already can't say what happened, can't you, because it has happened to you too? I got an error message saying, in effect, "You idiot, you are not allowed to use the browser Back button at this time. For your safety, you have been disconnected. Please log in again and restart your transaction. (By the way, did we tell you that you're a moron?"

How repugnant this is! How can they keep getting away with this when another Australian banking institution's site that I also use for Internet banking gracefully takes me back as page, as I expected. Is it not fair to expect that if one bank can do it properly, they all should? (By the way, apart from this fundamental design flaw I find the ANZ Bank's site quite nice to use.)

Secondly, a little later in the day, when three or four pages into filling out a multi-page questionnaire at the Australian government's Centrelink site, I inadvertently did the same thing again. Fancy me being so naive to expect the Back button to take me back one step here, either! The principle is the same, however in this case I was told:
Error 500: Unable to restore flow execution with key '_coed-2907-2533-8831-4187A77DB2BA_k0512D7BE-125B-2129-A2FA-5C769C52F9EB' -- permission denied.; nested exception is org.springframework.webflow.execution.repository.support.InvalidContinuationIdException: The continuation id '0512D7BE-125B-2129-A2FA-5C769C52F9EB' is invalid. Access to flow execution denied.
So until they sort out some simple architectural matters such as proper handling of the browser's Back button, why are they progressing at breakneck speed toward "Web 3.0" or whatever comes next at the bleeding edge of the hype cycle?

The whole issue of browsers (in all their flavors) versus "fat clients" or "thin clients" with their various advantages/disadvantages needs to be more fully worked on. And even if the industry moves toward SaaS (Software as a Service) with centralized Web processing via ultra-fast broadband, there's still no way that I would carry out certain types of activities on anything but a local Rich Client platform, with local control (of backup, security, performance, etc). Well, them's my preferences; I fully understand that yours might be different.

No comments:

Post a Comment