Carlsbad Cubes Wolf Paulus

software

Does Eclipse's RCP mark the return of the fat client?
By Wolf Paulus <wolf@wolfpaulus.com>

Posted Friday, March 11th, 2005

Replacing the old client server architecture with the web application architecture made quite a few folks very happy. Besides hard- and software sales people who were given new arguments to sell new stuff, the IT guys were just lovin' it. Zero admin on the client side had finally become reality.
Users of all the new and cool web desktops on the other hand slowly discovered some serious flaws. Many of those much-appreciated conveniences like right mouse-clicks, re-ordering columns, stretching column widths, fast scrolling, etc. or just keeping state, were gone.
Ask yourself, why do most users prefer an e-mail client like Outlook or Thunderbird over mail.yahoo.com or hotmail.com. GoldMine over salesforce.com, Quicken over ..bank.com, the list goes on an on.

It's not over before the fat client sings...
Don't read into this that I would like to see us going back to the old fat client days. However, there is a pattern here. Deploying the web application architecture we have sacrificed usability for maintainability. Considering that mostly IT-departments make the decision what solution to buy/deploy and that they are the once benefiting the most, it's no surprise to see the growing number of web desktop driven solutions.
The success of the web desktop however, brings another disadvantage to light, which is its uniqueness in design and lingo. Where is the menu? Top, bottom, left, or right? What was that called? Open, enter, perform, submit, commit? Long gone seem the days, where an application style guide was used that ensured that if you knew how to navigate one app, you'd know it for all, but hey wasn't that one of the reasons why Windows 3.0 was successful in the 1st place?
Old fashion MS-DOS apps, while looking very differently, had some of the same problems we experience today with web desktops: the absences of a uniform nomenclature and look and feel.

Zero-Admin distribution
One of the most compelling advantages web desktop offer, is that changes made on the content / app server are immediately available to all clients, without explicitly installing or updating any software. A distribution solution like Java Webstart (embedded part of any Java Runtime (JRE) since Java 1.4) however, is capable of providing the same user experience. Client applications like the Theodore Editor or the Verity-LiquidOffice-Management-Console check for updates on every launch. If updates are available, they are force onto the user, which ensures that a server never has to deal with outdates clients, protocols, etc.

Thin means distributable - patch day mean p.o.s.
Even with broadband being available almost everywhere, client applications requiring more frequent updates have to be thin. Updating a couple mega bytes on a weekly basis is hardly acceptable - if you are on Windows and install Mircosoft's security patches regularly (MS' patch day) you know what I mean.

Fortunately, GUI rendering engines like Thinlet or SwixML are extremely small (50k) and were built with thin client architecture in mind.

When is a thin client also rich client?
While Java Webstart combined with Thinlet or SwixML allows creating small client application, the richness is not inherited but has to be designed into the application by the developers.

Where to go from here?
Alternative approaches to the afore mentioned would include:
- Mozilla.org's XUL: Mozilla's cross-platform user interface working with XPCOM components, written in C, C++, and JavaScript, and can be used from C, C++, JavaScript, Python, and with Perl extensions.
- Eclipse Rich Client Platform RCP, which looks promising but is everything but thin. The runtime alone is 6.7 MB (about 137 times the size Thinlet). Moerover, no automatic update capabilities have been built-in yet.

A Look at Rich Internet Applications
This article [published in ORACLE-Magazine, Aug-2004, pp.59] features Thinlet and the Theodore Thinlet Editor, describing technologies for going beyond the aging HTML standard.

Any thoughts?


Disclosure: This blog is written and edited by me, it contains my words and my opinions only, and does not contain any content which might present a conflict of interest.
I am not compensated to provide opinion on products, services, websites and various other topics. This blog does not accept any form of cash advertising, sponsorship, or paid topic insertions. However, I will and do accept and keep free products, services, and other forms of compensation from companies and organizations. All advertising is in the form of advertisements generated by a third party ad network and identified as such.
I will only endorse products or services that I believe, based on my expertise, are worthy of such endorsement. Any product claim, statistic, quote or other representation about a product or service should be verified with the manufacturer or provider.

Published on: Friday, March 11th, 2005  •  Category: [software]

Article URL : http://wolfpaulus.com/journal/software/richclient.html