- terminal clients where the computation is remote and user experience is feeble, to
- desktop clients where the computation is local and user experience is vivid and powerful, and now to
- brower clients where the computation is remote and the user experience is in equal parts feeble, vivid, and underpowered.
Why have we ignored so much of the 30 years of user experience advancement? What has happened to the once common best-practices such as:
- Building on a small set of data visualization components.
- Building on a small set of interaction behaviors.
- Modeless interaction.
- Direct interaction
- Context and task-based help.
- Focus on the data and not the application.
- Ready transfer of skills and experience.
We have wasted 10 years of tool progress to the stupid wars between browser vendors (which continues today with Chrome, Safari, etc) and the wholecloth reinvention of user experience by a largely unhistorical crowd of web application practictioners.
In the early days of the internet, well before Web 1.0 (yes, ONE POINT ZERO) was even articulated, there was discussion of the "X Internet" or the "executable-internet". The expectation was that desktop clients would merge with the browser to create data-rich and community-aware tools built on the desktop platform with both local and remote data. We see some of this today in tools like Quicken, Google Earth, and many iPhone applications. What is disheartening is that the executable-internet was discussed over 10 years ago.
Mozilla was right with XUL. And Microsoft was right with COM (and its kin). And Sun was right with Java. I wish practictioners spent more time assembling powerful tools and spent less time reinventing feeble ones. The broad availability of web-services (RESTful or otherwise) and the rise of mobile platforms as the dominant platform are encouraging.
Reject your vendors next feeble browser only tool and say where is my x-internet tool!?