Return of the Rich Client - .NET 3.0 Meets the NY Times
Listening to all the Web 2.0 hype, you would think rich client applications have gone the way of DOS and dinosaurs. But it appears that the New York Times didn't get the memo, and they have the killer app to prove it.
The New York Times has released a beta of the Times Reader to critical acclaim. While some question the logic of creating a separate application just to view website content, they cannot actually find fault with the program. The readability enchancements alone are just too good. As Rafe Needleman says. "I admit that if I wanted to take a stand against this type of application, I could simply not use it--the Times' Web site has the same content. But the New York Times Reader really is a better way to read the Times' news."
The Times Reader isn't your typical rich client application. By leveraging Microsoft's ClickOnce technology, the application is updated automatically without user involvement. New features are automatically downloaded and installed whenever the user starts the program.
The presentation is done with Windows Presentation Foundation (WPF), a component of the soon to be released .NET 3.0. This gives the NY Times developers unprecedented control over the layout. Unlike a web browser, which has trouble displaying columns, the Times Reader can freely flow text from column to column as the page resizes. There are no scroll bars, users simply use the arrow keys to turn the page. And because it is an installed application, it can include the fonts used in the print edition of the NY Times. Other features not normally available to browsers include deep support for off-line viewing, automatic tracking of read pages, and the ability to annotate pages with your own notes.
Can this the beginning of a renaissance in rich client applications?
ClickOnce = WebStart for .net?
Re: ClickOnce = WebStart for .net?
Joost de Vries
Not cost effective
Why is everyone thinks rich clients are dead?
It's like people say "Web apps are cheaper, because we can update everybody in one go". But we just wrote a live update for a desktop app we are developing. You know what? It only took 2-3 days to implement! Every app can afford to implement live-update, even if it doesn't use .NET or Java WebStart. It's not that hard to do.
We implemented live-update because Java Webstart doesn't let you make upgrades only available for people with valid licenses. And how do you do that in your web app, by the way? Let peopel continue using what they already paid for, without having to upgrade to the next version? Very easy with live-update, very messy with web apps.
And, it's not like web apps are *always* easier to install than rich client apps. You can just download and run a .exe file without saving it. When you close the app, it's gone. It's the same with Java Applets.
Yes, more and more apps will become web apps, but not *all* apps. Not yet at least. There are still times where people need to be able to run apps offline, or where the app is too big to be downloaded on demand, and where a web app just isn't suitable.
Re: Not cost effective
History repeats itself, but there is nothign wrong about it, if we evolve each iteration. So, web is not a mainframe client and smart clients are not old PC app.
Give it a try
Rich Client is simpler
This does'nt mean that your application isn't well egineered, in contrary : you very well can have your layers and seperation of concern in the "Fat" Client. In contrary, you do not have to start tearing apart layers, because of distribution.
For many a opertioaal Entreprice Application, such a architecture is completely sufficient. You have a application, which is simpler, robuster, easier to develop and maintain.
Deployment issues, which you have for such a "Fat" Client, can be adressed, with other application transparent technology, eg. Citrix Mainframe or VNC Technology. I very much believe, that the Java Community, would be well advised to embrace Rich Client Technology, not "only" through RIA, which really is moving the code to the client again. Sometimes i suspect that the Rich Client vs Internet "fight" is very much a "political" one and does'nt adress "real" requirements of enterprice computer.
What i would like to see, is more technology, which protects your investments in your application code, but let's you "exchange" or develop a new UI more quickly, be it Web or rich. In this area, i think Oracles ADF Technology could be showing a way. But sadly Oracle is also emphazing on the JSF/Ajax Client and not enought the Swing Rich Client capabilities.