Has anyone ever created a web-based application that wasn’t flaky and prone to data loss?
Every time Facebook comes out with some new functionality, the entire service gets slower, and harder to use. I’m not sure that there could be a more efficient way to lose text as it is entered than by trying to type it into Facebook in real time, disappearing into limbo as some new advertising link is downloaded, or a content change causes the whole page to slide out of visibility. I’ve been using web-based email for over 15 years. Without any useful increase in the basic functionality (other than some vendors being able to control spam), every year it gets slower and less reliable. Recognizing my impatience with the thing, Yahoo Mail sometimes offers to let me revert to the ‘classic’ and more simple version, the less attractive but infinitely more reliable interface. Unfortunately, it never seems to offer to let me do this unless I’m at such a low bandwidth location that online text entry is infeasible.
Wacky web isn’t just a consumer problem. Like most Gartner bloggers, I use Live Writer to create my blog entries locally. Could there be a simpler text editing process than creating the short and minimally-formatted material that constitutes the typical blog posting? Yet few bloggers have the patience to do all of their text entry and editing online through a web browser. If you’ve ever tried to paste some pictures into a blog and make sure the thing comes out the way you expected, you’ve had even bigger motivation to use a local client for composing blog server material. Inside Gartner, we’ve been experimenting for at least a year with a browser-enabled package of high interest to all customer-facing staff. The amount of mobile code modules and dynamic content downloaded on an ongoing basis means that every user has their own special failure modes. There’s a lot to be said for the Lotus Notes and Outlook clients. I’m pretty happy with the calendar and email clients on my iPhone, which reliably cache data locally, gracefully and almost invisibly dealing with the inevitable perturbations of the packet-based Internet.
Thick clients are reliable and provide a rich experience, but are old-fashioned and don’t generate the right color of money. Thin clients are cheap and functional, but few have the courage to implement something so mundane. As a result, we’ve been saddled with the middleweight client, a beast of a thing that maximizes the disadvantages of all possible network architectures.
I’m been told that the solution to this problem is HTML5, which I’m further told is not really a single technology, so much as a set of related things that have equal rights to the same dorky logo. We will increasingly overload the stateless HTTP protocol with state mechanisms, becoming even more dependent upon ever greater volumes of code that is downloaded in real time. We’ve already reached the point where the browser (ie the malware invitation layer), just one layer in a growing stack of nested mechanisms, is itself more complex than a Sun 3.
I’ve got a simple solution to inflated expectations, technology bloat and pervasive plugins. I suggest that instead of using the old, unfashionable term ‘client server’ to refer to the simplest, most secure, and most reliable form of networked computing, we rename it as ‘HTML 6’.