Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Can Oracle Turn Java Around?

Can Oracle Turn Java Around?

Leia em Português

This item in japanese

A lot has happened in the last week or two in the Java space. Oracle has remained silent throughout, but the silence is deafening.

The start of the proceedings kicked off with IBM joining OpenJDK and (effectively) disbanding Harmony. One JVM down, one to go. The Apache Software Foundation board has made their thoughts known since; they thank IBM for their contributions to date and very much hope for Harmony's continued survival with other contributors.

This prompted a number of responses across, included Mike Milinkovich at Eclipse, leading to his thoughts on Java 7 adoption as a result. However, he clarified that as it currently stands, the Java 8 proposal needs a re-think on the modularity layer to work better with existing de-facto standards.

Stephen Colebourne has been digging into the JCP and initially suggested that the JCP should be split in two as it has become clear that the Java SE components are controlled solely by Oracle rather than being voted as part of the JCP itself. However, he then claimed that Oracle are stuffing the ballot by bringing on one of their long-term customers, Hologic, onto the JCP board. This is the first time that most in the Java community have heard their name; the other two Oracle nominees are Apache and Red Hat. Up for re-election are Google and Eclipse, amongst others.

Whilst Stephen first identified Doug Lea's departure from the JCP, it was Doug's statement about why he left that is probably most damaging:

I believe that the JCP is no longer a credible specification and standards body, and there is no remaining useful role for an independent advocate for the academic and research community on the EC.

His observations are that the JCP was originally intended as a melting pot of ideas and collaborations to bring together an advance of the Java platform and ecosystem. However, many of the tools that today Java developers use haven't gone through the JCP: Servlets were initially designed outside and later brought in; Spring has been working with the community and brought dependency injection to the masses; Apache continues to host the majority of open-source Java toolset and both the de-facto Java build tools of Ant and Maven were never JCP standards but are still used daily. Neither the de-facto standard JUnit (or the lesser known but arguably better TestNG) testing frameworks have ever been near a JSR. And arguably, JSRs have helped create mediocrity in a number of ways; many shun the Logging API for Java and use Commons Logging instead, or one of the compatibility layers that use the same API. (In fact, the existence of Apache Commons confirms that standards-driven development often miss out of general utility libraries.) Doug suggests that the JCP can be nothing more than a rubber-stamp organisation for Oracle:

Rather than fixing rules or ceasing violations, Oracle now promises to simply disregard them. If they indeed act as they have promised, then the JCP can never again become more than an approval body for Oracle-backed initiatives.

For other efforts, I cannot recommend to anyone that they use the JCP JSR process, as opposed to some other group/organization/body, to gain consensus for proposed specifications. So I expect to see fewer submissions as people begin to realize that other venues provide better opportunities.

Neil Bartlett suggests that there is already a standards body for Java that is better than the JCP:

However, a credible specification and standards body does exist in the Java universe. I will leave its identity as an exercise [OSGi], but let me just point out a couple of its nicer characteristics:

  • It produces fantastic quality specifications.
  • It has worked effectively for over ten years as a collaboration forum for competing companies.
  • Oracle is a very active member, but Oracle doesn’t own it. Indeed, all the full members have exactly the same rights.
  • All its specifications are open, and come with a non-assert patent pledge from the members.
  • TCKs are freely available to open source projects, and the majority of the RIs are in open source already.

Throughout this, Oracle has remained silent. With the results of the JCP election being posted after the elections close on November 1st, Oracle may choose to wait until then before publicly responding. But Ian Skerrett of the Eclipse foundation think that Oracle needs to get a clue about how to handle community instead of treating them as customers:

I hate to tell you but you need some help with the Java community. The basic problem is that people don’t trust you and you aren’t very good at community building; in fact you are pretty bad at community marketing.

Right now lots of people are talking about Java but there is a silent void from you. The conversation is happening and you aren’t participating, so people speculate and hypothesise; not great for building trust.

This has been brought to the fore with Apple deprecating Java on its Mac platforms, strongly suggesting that Apple will no longer be shipping Java on existing or future versions of its operating system (it's already been confirmed that it will ship without Flash installed). An email, purported to be from Steve Jobs, suggests that Apple shipping JVMs may not be the best way to do it; the implication is that another player (like Oracle) would be better placed. There are many that think Apple's tight integration with the display pipeline, as well as the recently-released hooks for the fast shutdown, might suffer outside of the Apple platform.

Of course, Oracle may not worry about the lack of Java on the Mac platform. There's relatively few Java applications on the client anyway; and despite efforts by Apple to bring Mac OSX to the server, Apple's legendary secrecy and hidden hardware roadmap is incompatible with most server-based purchasing requirements. Oracle doesn't even ship its namesake database product for Mac; though some of its database tools are Eclipse based which (currently) runs on OSX.

Whatever the reason, Oracle is doing itself no favours by remaining silent on the issue, and the damning of the JCP by Doug Lea coupled with Ian's comments indicate that whilst Oracle is in control of the Java platform, it has lost its connection with the Java community. And although OSX is a minority platform (taking up less than ten percent of Eclipse visitors), Apple has been seen as a technology leader and one that cuts dead-wood (floppy drives, parallel ports and now built-in optical and hard drives) when it begins the transition to obsolescence.

We did ask Oracle for a comment but they declined our invitation.

Oracle needs to clarify what is happening with the JCP, and comment on OSX's removal of Java. Oracle can still turn this around, but the silence is damning. Oracle may have bought the rights to Java, but it hasn't bought into the Java community. 

Rate this Article