Web Applications Must Die
Close behind the obligatory text editor and IDE, there are two applications everybody on our software team uses a lot on a daily basis.
Both perform roughly the same job - they allow us to enter data in a central database, then present us with different views of the data, let us run queries and summarize the results. (One of them has more serious obligations handling one particular form of local view of the data, but I’m mostly talking about its other duties here.) Both are used by virtually the same set of people, most of them sitting in the same room; both of them are occasionally used by people around the globe, which are given access to our databases, and connect to them thanks to the wonders of the Internet.
But these two applications aren’t created equal. One of them presents a rich, responsive interface, with all kinds of filtering, sorting, cross-referencing of relevant data. The other is slow, clunky, takes a constant amount of time (couple of seconds) to query the server even for the most mundane of tasks, and is chained to the UI conventions of an ancient presentation framework designed 10 years ago to fulfill completely different tasks.
The two applications fulfill similar needs to similar groups of users. It makes exactly the same sense for both of them to be implemented as Web apps, rendering inefficient HTML, doing needless roundtrips to the server, relying on the mercy of not one, but two intermediaries (the browser and the web server). Thankfully, the first application is a native Win32 app.
I love the UI of Gmail, but I would gladly switch to a desktop email reader with the same UI conventions, connecting to a database somewhere in the world. What I like about Gmail is not the fact that it renders through my browser, but its nice, unorthodox UI. I use a great little local-client Gmail on my mobile phone, written in Java; it beats the crap out of even the mobile-optimized server-side Gmail running through Opera Mini. For purely political reasons Google will never release anything like that for the desktop - but I bet the experience would be vastly superior to even the snappiest AJAX-rendering browser.
Web applications are a wonderful thing, but they are not the only solution to everything. Having more than one user to an application, and even having remote, off-site users, is not a good reason by itself to suffer through HTML forms and stateless HTTP request/responses. AJAX tricks may make the user interface slightly more responsive, but it won’t ever turn Flickr into Picasa. Doing a quick and dirty job through a browser might be OK for something I do once or twice a month (e.g. paying a bill online, or ordering books), but for something that I use dozens of times a day - e.g. email, or bugtracking, or code reviews - I prefer a native client.
The good native application in the true story above is TortoiseSVN. The crappy web application is the Mantis bugtracker. Any comments suggesting that I replace Mantis with superior bugtracking brand XXX must include offers of assistance with converting about a dozen home-grown tools around it, with migrating around 10k bugs from 8 projects, and retraining on the order of 50 people, most of them fairly conservative artists.
November 27th, 2007 at 3:14 pm
[…] This is the cached version of http://assen.shtrak.com/?p=72 We are neither affiliated with the authors of this page nor responsible for its content. Web Applications Must Die […]
February 25th, 2008 at 5:41 am
Pheromones And Fulfilled Sex Lives
Scents and fragrance play a crucial role in developing a good impression. In fact, many male lovers become special and are remembered by women because of the way they smell.
October 16th, 2009 at 7:42 pm
Speaking AS a web dev, I agree 100%. HTML was a good-enough solution to the original (CERN) problem. CSS is wonderful. JavaScript implementations are like standards; every one is different. But now we’re about to fall over the edge of the pit^H^H^Hbrave new world, HTML 5. You will never think about ‘pigs’ and ‘lipstick’ in the same way, ever again. HTML 5 will be “good enough” when pigs achieve orbit entirely without external assistance, by lipstick or other accelerants.
December 10th, 2009 at 5:23 am
The way you have described this is very thorough. I will link your blog page to mine.