I was asked to co-author a white paper on the state of rich clients in this “Web 2.0” world. As I thought about it, “rich client” doesn’t seem an appropriate term for the state of the art interfaces of today.
Rich clients were developed to inherit some of the server’s processing responsibilities and lessen network traffic. The idea was to distribute the application architecture in the direction of the user to preserve server resources and bandwidth. What’s happened in this service-oriented and large-piped world, is that the architecture has been distributed radially. Now, servers become repositories for small and discreet bits of functionality and content. In addition, if someone else is already providing a particular service (say, geocoding), you don’t even need the infrastructure to support it. The best clients today are merely aggregators of service-oriented and syndicated information or services.
It seems to me that a better term for these interfaces would be “thick skins.” Thick skins are ways of collecting various “feeds” of content and function in one interface.
My favorite thick skin right now is NetVibes (http://www.netvibes.com), which I use to view my friends’ blogs, keep track of communications from my company, view information (stocks, weather, etc.), aggregate news feeds I like, keep basic to do lists, etc.. In short, NetVibes is limited only by your imagination and ability to code in JavaScript. Apart from the to do lists, very little client-side processing is done other than arranging the “widgets” (for lack of a better term) on the page and between tabs.