You might look at the Apache Software Foundation’s threat to quit the Java Community Process as like a spoiled child threatening to take his toys away because the other kids won’t play nice. But it’s more than that; this battle has been going on for more than four years and it is no playground matter.
In some ways this case is more like the line from the movie “Brokeback Mountain,” with ASF saying to the JCP: “I wish I knew how to quit you.” Because the JCP needs ASF and vice versa.
In a Nov. 9 statement the ASF board said Apache would quit the JCP board seat that it was re-ratified for recently if it did not receive the Java Test Compatibility Kit (TCK) for its Harmony implementation of Java that it has been seeking.
Apache quitting the JCP presents a sticky situation for Java developers, the JCP and the entire Java community. ASF initially took the fight to Sun when Geir Magnusson Jr., Apache’s vice president of JCP relations wrote an open letter to, er, opened up a can, on Sun Microsystems’ CEO Jonathon Schwartz in April of 2007.
But Sun would not budge on giving Apache a TCK for Harmony and now that Oracle owns Java, it does not look like they will either.
Al Hilwa, program director for applications development software at IDC, said:
“In the wake of the Oracle and IBM agreement on OpenJDK, Harmony will effectively have no future. This is cause for ASL to re-think why it is even in the JCP. Oracle has a bit of a quandary on its hands, if it supports a parallel implementation of Java like Harmony in open source it would set itself on a road where it may no longer be able to fund any R&D in Java internally. There are a few hundred people that work at Oracle whose salaries are paid from Java licensing and whose work is critical in evolving Java and keeping it relevant. Providing the TCK to Harmony and the Android lawsuit have to be seen in the light of trying to keep Java alive. I am not sure I buy the notion that if Java was freely available in the form of Harmony it would be maintained and evolved in a way that would keep it viable.”
What does this all mean for the Java community? Well, some see doom and gloom, in that the JCP may be on its way down.
Mik Kersten, creator of the open-source Mylyn project and CEO of Tasktop Technologies, told eWEEK: “The JCP is on the verge of a meltdown. Apache’s threat to depart, Doug Lea’s resignation and the voting down of one of Oracle’s candidates for a ratified seat are all indicative of what could be the biggest crisis since the JCP’s creation. The next few moves will determine whether the Java Community Process regains its relevance or ceases to exist as what developers and vendors consider a -community process.'”
Doug Lea, formerly an individual member of the JCP executive committee and a computer science professor at the State University of New York at Oswego, resigned from his post in October 2010, seeking not to be ratified for another term.
Lea posted a statement giving his reasons for resigning from the JCP. It read in part: “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.”
Further, blasting Oracle, Lea said:
“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.”
Recent JCP Elections
Meanwhile, in the recent JCP elections, Hologic, a company nominated by Oracle, was voted down and not ratified as a member of the JCP’s executive committee. Some in the Java community, such as Stephen Colebourne, a Java developer and ASF member, openly questioned the viability of Hologic as a candidate for the JCP’s executive committee in the first place – claiming that Oracle was attempting to stack the deck.
Oracle nominated Apache, Red Hat and Hologic. In an Oct. 20 post, Colebourne said:
“The first two (Apache and Red Hat) are simply being re-nominated for the ratified seats. However, Hologic replaces the well known concurrency expert Doug Lea in the third spot. (3 years ago, Nortel was the third ratified seat, however they dropped out of the JCP. Doug Lea was ratified 1 year ago on a special 1 year term)
The first point is the departure of Doug Lea. This could be a deliberate -removal’ on the part of Oracle, or it could be a desire by Doug Lea to exit the politics of the JCP. There is no evidence on this one way or another – my gut tells me it was Doug Lea’s choice.
The second point is that I, and many others have no idea who Hologic is and why they are a good choice to represent the Java community (the ‘C’ in JCP!).
A simple Google search reveals that Hologic and Oracle are best buddies.”
Well, Hologic did not get in and now the ASF is threatening to get out of the JCP.
The ASF has a very important voice in the JCP because it can represent a range of leading Java developers in the standards development process, John Rymer, a Forrester analyst told eWEEK. Oracle’s standards process for Java would be weaker without ASF both included and playing an active role, he said.
However, Rymer added:
“That being said, ASF has apparently decided the time has come to either resolve the TCK dispute or move on. Oracle may be able to resolve the conflict between providing the TCK to ASF and being the sole source of core Java technology. But I doubt it. ASF has in the past demanded a conventional TCK license without special conditions. First Sun and now Oracle have refused. For Oracle to be the sole source of core Java, it cannot allow ASF to distribute Apache Harmony under the Java brand with normal rights. And so resolution would seem to require a special TCK license, a nonstarter until now.”
Meanwhile, Mike Milinkovich, executive director of the Eclipse Foundation, which has up to now supported ASF’s position, told eWEEK: “It is not terribly surprising that Apache is taking this step, given how long the dispute has been going on. I hope that Oracle and Apache make one last attempt to find a solution to the dispute. Having Apache no longer actively implementing JCP specifications would clearly be a blow to the entire Java community.”
Indeed, it would be a big blow. And although Milinkovich has blogged about how it is time to move beyond the ASF’s squabble with the JCP/Sun/Oracle, he also has to know that if Apache pulls out of the JCP it will make it much more difficult for Eclipse to vote “yes” on Java 7, as he has pledged to do. That, in addition to the political damage Apache’s move would do to the JCP and to Java in general, would put Eclipse in a tough position.
In addition, some observers queried on the issue of Apache quitting wondered whether ASF’s withdrawal from the JCP would impact its other projects that do have TCKs, including Tomcat, Geronimo, and OpenJPA.
However, Apache’s Magnusson responded to that, saying:
“If the ASF withdraws from the EC, or stops being a member of the JCP that’s independent of being able to get and use TCKs to test implementations of specifications. There’s no requirement that an implementer of a specification needs to be a member of the JCP.
“Further, any release that has passed a TCK is a compliant implementation of the spec it implements — that cannot ever be taken away.”
Jeffrey Hammond, another analyst with Forrester Research said of the Apache ultimatum, “I certainly take Apache at their word, and I think it would be a shame if it happens, but I’m not sure how much immediate impact it would have with enterprise IT shops, other than giving Oracle a further black eye with OSS developers.”
Hammond also told eWEEK:
“Right now Oracle holds all the cards with respect to Java, and if they choose to close the platform then I don’t think there’s much anyone can do about it. Some customer might actually be more comfortable with that in the short term if it leads to renewed innovation. In the long term I think it would be counterproductive, and hasten the development of Java alternatives in the OSS community – and I think Apache would be happy to have a role in that if things continue along their current path.”
Responding to his Forrester colleague’s comments, Rymer said, “We need to clarify what we mean by -closed’ when describing what Oracle is doing with Java. Oracle can (and will) claim that Java SE is based on standards and freely available via the OpenJDK project. However, Oracle is trying to become the sole source of Java SE – that development would result in the -closing’ that Jeffrey refers to. If Oracle achieves its goal of becoming the sole source, the result will be a closing off of innovations like Google Dalvik.”
The very public airing of this battle between the JCP and Oracle/Sun has put the sausage-making process of the stewardship of Java front and center. The ASF’s position is what has prevented the Java 7 JSR from being proposed, let alone passed. And, as with so many things, you have to think of the money. Would ASF have a chance of taking on Oracle in court? In addition, there are significant dollars at stake due to the licensing of Java ME.
Forrester’s Rymer also points to the business side of things when he says:
“One thing that puzzles me is IBM’s role in this dispute. IBM has been a big backer of ASF and its Java projects, including Harmony. We think IBM turned away from Harmony in -renewing’ its partnership on Java with Oracle. ASF’s ultimatum to Oracle must be related to IBM’s move, we just don’t know exactly how. I expected that IBM would continue its strong support of ASF as a counterweight to Oracle.”