- 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.
- 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.
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!?