AJAX in Action

Christopher Keene

Subscribe to Christopher Keene: eMailAlertsEmail Alerts
Get Christopher Keene: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Related Topics: RIA Developer's Journal, Java EE Journal, Java Developer Magazine, AJAX World RIA Conference

RIA & Ajax: Article

JavaOne 2008: Chris Keene's Prescription for Curing the Java Flu

I attended the JavaOne show last week, after a 4 year gap

At WaveMaker, we have hitched our wagon to Java so I hope very much that JavaOne is showing us the ghost of Java present, not the ghost of Java to come. The Sun promise to put Java runtimes everywhere is meaningless if nobody wants to develop for those runtimes. Adobe and Microsoft are doing a far better job making their tools simple enough for mere mortals and focusing on the presentation layer.

I attended the JavaOne show this week, after a 4 year gap. What a difference - who knew Java could be so boring? On the other hand, this is what it feels like to go to a show for a technology that has lost half of its market share in the last 4 years (at least when measured by O'Reilly book sales - not a particularly reliable source but better than no source at all). If you don't like that source, check out Andi Gutman's recent post that Java is losing the battle for the modern web.

Let me be clear here - at WaveMaker, we have hitched our wagon to Java and hope very much that JavaOne is showing us the ghost of Java present, not the ghost of Java to come.

Trade shows in general have been eviscerated by the flood of technical information on the web. But even in the new "I'm only here for the Tchotchkes" world of conference attendees, this was a surprisingly desultory affair.

Aisle after aisle was populated almost solely by people in ugly sports shirts wearing a vacant gaze that we all reserve for particularly humiliating situations. In fact, the only booth which seemed to have any mojo was the - you guessed it - schwag booth from Sun.

This morning, I found out what was wrong. I got one of those delightful ALL CAPS emails from JavaOne informing me that we had all been the subject of a viral attack by the dreaded Norovirus. So that was it!

There is something seriously wrong, not just with JavaOne, but with Java. After 10 years, Java remains an extremely complex development environment with nothing even approaching an easy learning curve. Microsoft has gleefully filled this vacuum, driving a vast J2EE to .Net migration at the low end of the market that nobody in the Java world seems willing to acknowledge.

The Sun promise to put Java runtimes everywhere is meaningless if nobody wants to develop for those runtimes. Adobe and Microsoft are doing a far better job making their tools simple enough for mere mortals and focusing on the presentation layer.

The news at the show was that Sun's front end technology, JavaFX, was *still* not ready. The world needs Sun to stand behind one of the 200+ Ajax frameworks already out there, not create yet another one. While we're at it, why can't they just put more effort into an Ajax toolkit they have already "partnered" with, like Dojo?

Here is my prescription for curing the Java Flu:
  1. Fight for the low end: in modern warfare, death may come from above. In technology, death comes from below. Ten years from now, who will have more power over IT - web designers or core developers? If Microsoft and Adobe win the designers today, Java developers will be the Cobol developers of tomorrow.

  2. Make Java easier: something is wrong when very useful but also very complex code frameworks like Spring are considered the "easy" way to do Java development. Java needs to be easy enough for your mother to build her web-based phone list with it. I'm talking Hypercard/Filemaker/Access easy.

  3. Make Java prettier: just put a bullet in JavaFX and adopt something with momentum like Dojo or Ext. If you just can't stomach Javascript, then adopt GWT.

  4. Make Java fun: can't do this without doing the first three items. For an example of one attempt to make Java easy, check out the WaveMaker download.
Remember when people built cool web apps with Java? When was the last time you heard about a cool web app that wasn't written in Rails or PHP? OK, people still build lots of cool stuff in Java, but the love is gone and it's just a day job now.

More Stories By Christopher Keene

Christopher Keene is Chairman and CEO of WaveMaker (formerly ActiveGrid). He was the founder, in 1991, of Persistence Software, a San Mateo, CA-based company that created a new approach for managing data in high-transaction banking and communications systems. Persistence Software investors included Cisco, Intel, Reuters and Sun Microsystems. The company went public in 1999 on the NASDAQ exchange and was sold in 2004 to Progress software.

After leaving Persistence Software in 2005, Chris spent a year in France as chairman of Reportive Software, a Paris-based maker of business-intelligence tools, and as an adjunct professor and entrepreneur-in-residence at INSEAD, a leading graduate business school.

Comments (6) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

Most Recent Comments
HommeDeJava 05/15/08 01:35:05 AM EDT

GWT is what JSF would have to be...

Building on over six millions Java developers and sound expertise of Rich Webapps the Google Web Toolkit (GWT) could become the next big thing for Java development.

GWT and Java-to-JavaScript compilation are already big. In fact, GWT the open source "client-centric" Java framework makes writing Rich Webapps like Google Maps and Gmail easy for Java developers who don't speak JavaScript as a second language.

GWT is not just good to build Ajax Webapps, GWT is also good to build "desktop-like" applications that run in a browser. http://code.google.com/we btoolkit/

c keene 05/14/08 02:50:47 PM EDT

The only reason I think that Java should be good at web development is that's what people *used* to do with it ;-)

Remember when Java powered the dot in Sun's dot com? Remember when the signature sample app for Java was a dorky e-commerce pet store?

Just because it is powerful, doesn't means that it has to be extremely difficult to learn!

The point of the article is not to drive indignant Java fanboys to their spittle-coated keyboards to pound out a trollish response, but to start a debate about what we can do to make rich web apps easier to build in Java.

Web apps are by no means the only thing you can build with Java, but they are a pretty important sub-category. Java is not the perfect language, but it is the closest thing we've got and a substantive discussion about how to make it better is the best way to keep it on top!

darted 05/14/08 10:23:21 AM EDT

You know I thought about this and the responses.
I don't think you need to be flamed.
However, I do think your logic is flawed.
1) Book sales when most of the doc is free and the language is reasonably mature will naturally go down.
1a) Did you check the sales of book of technologies around Java like Java Web Services, XML and Java, etc?
2) Ease of development. Well, someone has to have a language that can do heavy lifting easily and that does not necessarily lend to cookie cutter development. That said, Java is hard to develop in? Not really, it is complex because it can do so many things in so many different ways because in part of the many open source solutions to things so you are not locked into the Sun / IBM / etc. way.
This leads to 'hard to develop'. Who said creating web pages is what Java should do? Creating enterprise ready web applications that are supported by web pages, yes. Could it be easier? Sure. Is JavaFX the wrong or right answer? Don't know. But anything that lets me write one set of code for multiple platforms from desktop to mobile phone is a 'good thing' in my opinion.

I did not get to go to Java One in person. I did go virtually and watched the keynotes. I will get the other parts as I can on the web...
Is the 'love' gone? Not really, but it is no longer the latest and greatest 'cool thing' and that means it is mature enough to be used in long term business applications. Not that it is dying off.
BTW, COBOL - still has more lines of code in production than any other language - Java enables us to use that legacy code in new and 'cool' ways without the expense of replacing it which in most cases will just not happen any time soon.
True new development is not happening in COBOL (I hope), but plenty of maintenance / enhancement is.
Just a Day Job? Wow. In my experience many programmers are in it for the money not for the love of the language or anything else. Those of us that are in it because it is our hobby, career and job are very happy. Not all of us chase the ever elusive 'perfect language'.

Pablo 05/13/08 04:08:07 PM EDT

It would be nice if Grandma could fix the plumbing in your house too. Sorry, but unless Grandma is a Master Plumber that's probably not going to happen.

Betty Crocker development approaches have been tried before (HyperCard, Visual Basic & etc.). They’re great if all you want to do is make a simple Betty Crocker application. But if you try to do something just a little outside of the box or scale it, you end up setting off the smoke alarm.

Rob 05/13/08 04:45:30 AM EDT

I have to agree with Chris - I have been a developer and Java architect since beta 1.0 and see the increasing complexity has increased the development time, cost to develope and a very high skill level to develope. I don't see such a problem with PHP and C# although no walk in the park has better tools and is approaching enterprise performance. Java seems to be applied only to the large enterprise level, being too costly, development wise, for smaller application. Unfortunately smaller application are the vast majority on the web and the developers using the tools (PHP, Ruby) will become the enterprise makers of tomorrow and fewer and fewer will be in Java. Kinda reminds me of when I asked a Sun VP of Marketing back in the late 80's if they were going to make Sun Solairs easier to management (or any Unix at that time) and he look like I was crazy and said WHY?
You are right Chris - Java needs to become easier to develope and try and migrate down to less than enterprise. I know many of you will disagree with me and I hope I am wrong but maybe Sun and Java all need a dose of reality.

Pedro 05/13/08 02:49:23 AM EDT

"Adobe and Microsoft are doing a far better job making their tools simple enough for mere mortals" -> There are still mediocre people like you that like to be called mere mortals. Who told you that Java is for your mother to build an app? It is for an enterprise architect to build a mission critical banking system. And your sources are book sales? don't you have anything better to try to create FUD around Java? And you think there will be someone who can believe your c... Be serious, you are just trying to create waves (WaveMaker is the name of your attempt to make a company, right?), but it sounds more like a drawn trying to surface. People like you deserve frameworks like .NET. And you are right, this is not for everyone, but there are still other careers to go for. Gardening for example?
PS: The real mistake of JavaOne is to let something like you to get in.