Mutant World

Thursday, August 14, 2008

Java's uncertain future

Java's future looks to me very uncertain in this period.

I started studying Java during 1999 summer, and working with it since then.

Many things happened since the release of JDK 5.

Many key people left Sun for other companies (and wow, the list of those names is truly impressive; among them Josh Bloch, Neal Gafter, Gilad Bracha, most of the Swing core team - Hans Muller, Scott Violet, Chet Haase, etc.)

Sun itself is not performing very well these days (profit plunged 73% in the last quarter).

Sun has open sourced Java.

Yet, there is no JDK 7 plan.
You heard that right, no official JSR has been opened yet, when we were used to have release of version N of the JDK and official JSR for version N+1 almost immediately opened.
But not this time, and noone seems able to predict neither when JDK 7 will be released, nor what it will contain.

There is OpenJDK.
Can anyone tell me the difference between JDK 7 and OpenJDK ?
And I am not meaning the obvious ones, but why two efforts, and how are they synchronizing ?
I never thought that open sourcing the JDK was such a great idea, from the point of view of developers, though it was probably such a good move for other fields that developers could be forgotten.

There is JDK 6 and JDK 6 update 10. Mmm. More confusion.

The closures will (most likely) not be part of JDK 7, but everyone talks about the "upcoming language changes in JDK 7" yet there is no official JSR, nor for JDK 7 nor for closures. Oops.

Java blogs are beginning to label Java as the next legacy language, but it surely will still live for many many years. I hear the same of COBOL.

It appears as if Sun released the command of the Java ship and let its best commanders flew away.
It would not be bad to see a real move from Sun about Java (because strong statements are just that, words), because hey, the ship seems DIW, dead in water.

It's 2008 summer, and I am studying Ruby.

But the worst indicator is that Hani and its Bileblog are quiet: he cannot desecrate the last moments of a dying era, can he ?

Labels:

12 Comments:

  • At JavaOne, we were told that Java 7 would be targeted for summer 09'. As you point out, that is clearly not going to happen. Java 6 (which contained no languages changes at all) took 18 months from JSR to release.

    Even Neal Gafter has begun to call for some leadership (
    http://www.infoq.com/interviews/gafter-closures-language-features-optional-typing)

    To me the saddest part about the whole story is that while the closure war is raging and SUN is arm wrestling Adobe on the RIA front, all the smaller and simpler improvements which could really make life easier for the average corporate developer (ARM, properties etc.) are completely neglected. Why they would neglect their crown jewels is beyond me.

    By Blogger Casper Bang, at 16 August, 2008 17:18  

  • Don't just study Ruby... I'm a full time Rails dev and it is great. BUT... do not discount C#, .NET and Mono. I was stunned at how great C# is, and amazed at how Mono works so well for building GUI apps on Linux... far better than Java/Swing. The combination of both Ruby and .NET skills will make you a better developer, unique and keep you easily employed for the next decade. There will be lots of Java maintenance work too, but it will hardly be exciting. Cheers.

    By Blogger Clinton Begin, at 16 August, 2008 17:46  

  • By Blogger Simon Brown, at 16 August, 2008 19:29  

  • Personally, I'm rather glad to see that Java is beginning to stablize, even if itnis just a side effect of Sun's mismanagement. Java is (a needs to remain) the common language that every developer is familiar with. I'm hopefull that with the new trend toward a more diverse language landscape and the rise of polyglotism we will begin to see more and more languages in individual projects, each one choen to fill a specific niche. If only as a platform, Java is going to be around for a long time, but I hope that it allows the pursuit of new, "hip" features to remain relegated to alternative language like Scala and Ruby. It should be an interesting development to watch.

    By Blogger Daniel Spiewak, at 16 August, 2008 20:31  

  • You do not mention companies like IBM, Google, Oracle or Intel. Do they not exist in your universe? Why do bloggers always refer to Sun as if Sun would be the only company backing up Java-technology?

    Anyway... I hope that companies like Google, Intel and IBM will create Java's successor as fast as possible.

    Java's successor will be a full parallel language. Anybody remembers the Transputer's Occam-language?
    Something like that will probably succeed current Java-technology by staying backwards-compatible to existing Java-codes.

    By Blogger Ulrich W., at 17 August, 2008 12:51  

  • "Why do bloggers always refer to Sun as if Sun would be the only company backing up Java-technology?"

    Because they are the original architect behind Java and holds veto right in the JCP committee where things are really decided?

    Umbrella corporations, while toying with their own JRE and "productivity extensions" have rarely impacted the language per se.

    By Blogger Casper Bang, at 17 August, 2008 16:22  

  • The future is always very uncertain :)

    By Blogger pg, at 17 August, 2008 19:36  

  • Why Ruby instead of Groovy or Python or PHP, do you makes a marketplace choice ?
    How excellent Java expert, you find comfortably with groovy.

    By Anonymous Max, at 18 August, 2008 13:17  

  • This comment has been removed by the author.

    By Blogger info, at 02 September, 2008 21:14  

  • ciao simone

    i've awaited to answer because the answer was still to come.
    read today's infoq at http://www.infoq.com/news/2008/09/invokedynamic_day
    compare it with polyglot programming at http://ola-bini.blogspot.com/2008/01/language-explorations.html and you'll find yourself studying ruby, groovy and the like to get them to the jvm :)

    so the only sure thing is that java _as a language_ will almost certanly lose power in the future, though not so soon, imho

    By Blogger Federico Fissore, at 02 September, 2008 23:09  

  • Ruby it's a beautiful and expressive Object Orientd language, and I was reported that on webapps Ruby is overcoming Java in US, so... have fun!

    Anyway future is about domain-specific languages, so give also a try to antlr :)

    By Anonymous Bruno Bossola, at 18 September, 2008 19:08  

  • C++ did not changed since - I think - 1999... This doesn't mean it's dead (obviosly not, since C++0x should be here in a year). I think the general "great crisis" is affecting information tecnology as much, or even more than, industrial production. We should just be patient, an continue to focus our energy in developing high quality software: when better times will arrive, we will again have time to dedicate to new tools and tecs!

    By Blogger Miki, at 26 November, 2008 23:29  

Post a Comment

<< Home