Comments
Richard Davies wrote: The UK has a good crop of technology pioneers in cloud computing - for example ElasticHosts, FlexiScale, Flexiant, OnApp - and also some strong government initiatives such as G-Cloud. We will have to see whether this kind of technical leadership converts into swift mass-market adoption or not.
Cloud Expo on Google News

SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
It's Not Over Till the Fat Client Sings
It's Not Over Till the Fat Client Sings

Reports of Java's death on the desktop may be somewhat premature. A recent Giga group report, "Return of the Rich Clients", predicts that in the next three years browser-rich clients will grow by 350%, stand-alone clients by 250%, while HTML will decline by 50%. Two major facts are contributing to this change: problems associated with traditional client development being solved and HTML not providing a powerful enough user interface for all GUI requirements. Both of these are good news for Java.

For stand-alone clients, Java has advanced on several fronts recently. The J2SE team delivered substantial performance improvements to Swing in 1.4.2, as well as a great Windows XP and GTK look and feel. Meanwhile the Eclipse project created SWT that uses a rich set of cross-platform native controls over and above those provided by AWT. Newsgroup flame wars often pitch the two as rival GUI toolkits; however, hopefully this will become a thing of the past as the current interoperability problems are tackled.

One of the problems associated with traditional client/server development is a systems management issue of how to ensure that the software at all end points is kept up-to-date. HTML largely avoids this by creating the page marking up the client UI each time a request is made to the Web server. Arguably, this on-demand preparation of the GUI is the single largest reason HTML has become such a ubiquitous programming model. Java Web Start, however, solves the original distribution problem by using the Web as a mechanism to deliver a traditional Java application to the client. Each time the program is run it checks against the Web server to see whether a newer version is available and, if required, downloads the updated JAR files. JWS programs run within Java's security model; however, client-side caching and the use of local JRE avoid the issues that plagued applets.

Several Java hybrid clients also exist that run Java on the server, but instead of delivering HTML to the browser, they use plug-ins to create a richer UI experience. With the ultra-lightweight client from Canoo, a J2EE programmer uses Swing peer classes as if writing client-side Java, requests are marshaled back and forth as XML, and a full Swing GUI is actually created on the client. The RSWT SourceForge project does the same except it uses SWT as its Java toolkit. Other examples of Java hybrid technologies are classic blend, droplets, and thinlets, all of which deliver a rich GUI to the user through a Java server-side programming model.

It's not going to be easy for Java to win back the client as it faces stiff competition from Microsoft with Windows Forms, and Visual Basic as the incumbent client development language.

With this level of activity in the client Java space, Java Developer's Journal is launching a new section entitled "Desktop Java." This will include solid technical content to help you understand more about the various projects and technologies, as well as editorials and news. The mistakes have been made, the lessons learned, and Java is now well positioned to recapture some of its lost pride as a GUI platform. We hope you enjoy the new section.

References
1.  "Return of the Rich Clients" report available to registered Giga customers: www.gigaweb.com
2.  SWT/Swing: Click Here!
3.  Java Web Start: Click Here!
4.  ULC: www.canoo.com/ulc
5.  RSWT: http://rswt.sourceforge.net
6.  Classic blend: www.appliedreasoning.com/products_what_is_Classic_Blend.htm
7.  Droplets: www.droplets.com
8.  Thinlets: www.thinlet.com

About Joe Winchester
Joe Winchester, Editor-in-Chief of Java Developer's Journal, was formerly JDJ's longtime Desktop Technologies Editor and is a software developer working on development tools for IBM in Hursley, UK.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

I am both a Java programmer and a Windows programmer, and my experience has shown Java will never be able to build anything more than a fair windows client app.

For example, spell checking is a must have in any good client app. Contrast the huge amount of coding needed to be done in the Java app compared to the few lines of Word Basic in native Windows app.

What do you say, when the user asked why the business specific words they entered in Word are not showing up in your spell checker?

For example, your application displays bitmaps and the user notices a flaw and wants to edit it. In the native windows app the user just right clicks on the bitmap, and the application menus turn into the ones in paint and the user does the edit, clicks save, and the application menus turn back. What do you do to make your Java app do that?

For example, your application organizes files and have preview capability for text, sound, and video files. Native window apps can have the windows media player do it with a single fuction call.

And so on...

Is you look at Flash and consider
later versions of Javascript and
DHTML you can send and receive
hidden forms and thus of a thin
client now that does not jump
pages but rather looks and acts
like a desktop client. You can
do this cross platform too. And
a functional reactive specification
of GUI layouts and wirings are about
1/10 the size of an OO specification.

There was one wonderfull thing about HTML clients (they did not only work under windows!) the world is moving into new operating systems (OSX,Embedded devices, Linux, etc) java runs there where .NET does not and this is why only Java clients can replace HTML thin clients. .NET cannot offer the technology needed to satisfy all the requirements made by users. Now just immagine if you sold a web site to a graphics studio which already invested $1000'nds of dollars in MAC and SGI and you wrote a thick client with .NET. I guess you can't sell them your software because they can't use it!.

How can you even begin comparing the improved Swing or SWT to .net Windows forms. You've got to be dreaming. Yes, fat clients are coming back, but not with the offerings Java currently has to offer. Java on the server, taking SOAP with .net fat client is much more believable. Yes, i live in both world, and yes i objectively can compare the two, and their strengths


Your Feedback
Frank Moseley wrote: I am both a Java programmer and a Windows programmer, and my experience has shown Java will never be able to build anything more than a fair windows client app. For example, spell checking is a must have in any good client app. Contrast the huge amount of coding needed to be done in the Java app compared to the few lines of Word Basic in native Windows app. What do you say, when the user asked why the business specific words they entered in Word are not showing up in your spell checker? For example, your application displays bitmaps and the user notices a flaw and wants to edit it. In the native windows app the user just right clicks on the bitmap, and the application menus turn into the ones in paint and the user does the edit, clicks save, and the application menus turn back. What do you do to make your Java app do that? For example, your application organizes files and hav...
John Small wrote: Is you look at Flash and consider later versions of Javascript and DHTML you can send and receive hidden forms and thus of a thin client now that does not jump pages but rather looks and acts like a desktop client. You can do this cross platform too. And a functional reactive specification of GUI layouts and wirings are about 1/10 the size of an OO specification.
Christopher Stura wrote: There was one wonderfull thing about HTML clients (they did not only work under windows!) the world is moving into new operating systems (OSX,Embedded devices, Linux, etc) java runs there where .NET does not and this is why only Java clients can replace HTML thin clients. .NET cannot offer the technology needed to satisfy all the requirements made by users. Now just immagine if you sold a web site to a graphics studio which already invested $1000'nds of dollars in MAC and SGI and you wrote a thick client with .NET. I guess you can't sell them your software because they can't use it!.
Jwahar R Bammi wrote: How can you even begin comparing the improved Swing or SWT to .net Windows forms. You've got to be dreaming. Yes, fat clients are coming back, but not with the offerings Java currently has to offer. Java on the server, taking SOAP with .net fat client is much more believable. Yes, i live in both world, and yes i objectively can compare the two, and their strengths
Latest Cloud Developer Stories
Rackspace Hosting, the service leader in cloud computing, on Thursday announced its acquisition of SharePoint911, an industry leader in SharePoint consulting, training, and "JumpStart" services within SharePoint. The unification of both companies provides capabilities to deliver ...
With Cloud Expo 2012 New York (10th Cloud Expo) now under four months away, what better time to start introducing you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have techn...
Nimble, the social CRM platform has announced the launch of Nimble 2.0, billed as the “most social” CRM platform on the market today. Nimble was designed entirely with social CRM in mind and is the first social business platform that empowers companies with the ability to get clo...
2011 was a year of rapid adoption for public and private cloud services. Instant and on-demand server provisioning was the driving force behind the massive growth. On top, cloud server templates and script automation simplified application installation for simple and pre-defined ...
"Having been in the IT field for many years, I believe the cloud computing chapter in the industry is an exciting one and I am proud to be a part of it," said National Reconaissance Office (NRO) Chief Information Officer Jill T. Singer Tuesday, as it was announced that she was on...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE