Mitch Pronschinske is the Lead Research Analyst at DZone. Researching and compiling content for DZone's research guides is his primary job. He likes to make his own ringtones, watches cartoons/anime, enjoys card and board games, and plays the accordion. Mitch is a DZone Zone Leader and has posted 2576 posts at DZone. You can read more from them at their website. View Full User Profile

R.I.P. Harmony

  • submit to reddit
This week IBM announced that it will be joining Oracle in the OpenJDK and subsequently abandoing the Apache Harmony project.  While some are excited about the contributions that IBM will bring to the OpenJDK class libraries (IBM probably won't contribute to the JVM because they have their own competing technology), other Java community leaders like Stephen Colebourne, who has been following the Harmony controversy for many years, are disappointed that things had to happen this way.  It seems unlikely that another company would step in and keep Harmony alive since Oracle's lawsuit against Google's Harmony-based Dalvik VM essentially destroys any chance that Oracle will release a TCK for Harmony.  The project is likely dead in the water (i.e. headed to the "attic").

"In my opinion, Sun Microsystems behaved atrociously towards Apache Harmony," Colebourne blogged.  In the JSR 270 specification it clearly stated: "Nothing in the licensing terms will prevent open source projects from creating and distributing their own compatible open source implementations of Java SE 6, using standard open source licenses."  Colebourne blames Sun's "executive level" for breaking this promise and the associated legal agreements with the expectation that the Apache Software Foundation (a non-profit) would not sue.

Today, the legal agreements that entitle Apache to the TCK are no longer valid.  With the seemingly immanent death of Apache Harmony, Colebourne believes there's a chance that Apache could leave the JCP and this action, he says, "could terminate projects like Apache Tomcat, Geronimo, MyFaces, OpenEJB and OpenJPA in their current form."  However, each of those projects also provide good reasons for Apache to stay in the JCP.  

The JCP Meeting that Preceded IBM's Announcement - What Was Decided?
IBM made the logical decision when it realized that Harmony would never be recognized as Java and decided to move it's developers to OpenJDK.  A JCP meeting was held last week where IBM first announced its decision to join OpenJDK.  Oracle's Senior Director of Project Management Henrik Stahl blogged about a few details from the meeting, but he left the Java community guessing when he said, "This organization [the JCP] has been hugely successful in pulling together a wide range of organizations and individuals, but it is 15 years old and there is always room for improvement.  There were some really good discussions on this within the JCP last week, but you'll have to wait a little bit longer for a more detailed update on that topic :-)"  Hopefully the much-needed reform for the JCP is finally on the way.


Otengi Miloskov replied on Tue, 2010/10/12 - 11:13am

Booooo!!! Oracle booooooo, Oracle crying like baby in 2007 so Sun could free JCP and give a TCK to Harmony, and now look Oracle with their BS, They are a bunch of lawyers, oh oops sorry I mean a bunch of liers hahah. Long live Harmony.

Otengi Miloskov replied on Tue, 2010/10/12 - 11:16am

By the way, Welcome to the new Cobol(Oracle Java) of the 21th century driven by corporate folks wearing black suits and a tie.

Jonathan Fisher replied on Tue, 2010/10/12 - 11:24am

Well I disapprove of Oracle's handling of Java so far, and their absolute disrespect to the JCP... I think this is just fine. OpenJDK IS GPL licensed, and while that is not as for as the ASL, it's still open source. Am I missing something?

Jacek Furmankiewicz replied on Tue, 2010/10/12 - 11:36am

Well, pragmatically I would prefer one great open source JVM, rather than multiple average ones. So as long as OpenJDK is still GPL, I see no reason to cry over this. Reality is that I don't know of a single project going into production using Harmony.

But of course the Android link is the interesting story here :-)

Martin Spasovski replied on Tue, 2010/10/12 - 1:38pm

So Oracle let IBM to have a share of influence in the development of JDK, so they'll support them in their lawsuit against Google Android? Or is it only me who sees this latest development that way.

Jilles Van Gurp replied on Tue, 2010/10/12 - 2:27pm

Harmony is neither dead nor dying. What happened yesterday was an uncommitted party (IBM) leaving the Harmony ecosystem. This means that the lead defaults now to Google, who was the main stakeholder anyway for some years now.

That is good. Google has single handedly turned around the disaster that was J2ME. Assuming they'll eventually sort out the patent mess (and given the stakes, they will) that removes from the equation all the partners that had very little to bring to the table when it comes to mobile Java. Meanwhile, Oracle and IBM need to demonstrate through actual technical innovation that they are still relevant in the Java world. Last time I checked, the enterprise Java world was dominated by things like Spring (under the Apache license) rather than any JCP efforts. Oracle bought an empty shell. Filing patent related lawsuits left and right is probably not going to be very helpful since that tends to scare away customers. So, I'm hoping that this will end pretty quickly. Once it does, all parties can get back to moving the agenda forward on the run-time, language, and APIs. There is a lot of stuff that needs to start happening there and if Oracle won't do it, others will do it for them. In a nutshell, that's why Google is shipping Harmony rather than CDC. I'm pretty sure Google would have preferred to stay in the Sun community a few years ago if only Sun was not being so unreasonable.


Manuel Jordan replied on Tue, 2010/10/12 - 9:04pm

"could terminate projects like Apache Tomcat, Geronimo, MyFaces, OpenEJB and OpenJPA in their current form." 

Very worry about that

Jacek Furmankiewicz replied on Tue, 2010/10/12 - 9:43pm in response to: Manuel Jordan

Apache is not employing any of their developers, anyway...if this happens, they will just move to source code somewhere else like Github and continue.

MyBatis (ex. Apache IBatis) has done this already, left Apache and moved to Google Code:

So it's not the end of the world in any way...would not be great though.

Guido Amabili replied on Wed, 2010/10/13 - 4:05am in response to: Jacek Furmankiewicz

How is the Google Application Engine platform different from the Dalvik VM ?

It does also not implement the full Java SE specification, so is Google allowed to run such a modified Java Runtime ?

Anyway, since I switched my project from JavaFX to GWT, I think I will soon leave NetBeans and Glassfish.

Not really impressed with Oracle's lead so far......... Shutting down OpenSolaris, Raising the price of MySQL, OpenOffice forked..... looks like they are closing everything just to milk the cow even if it dies....






Igor Laera replied on Wed, 2010/10/13 - 6:01am

For me, the question is: what to we, as coder, expect from Java? I don't think I will ever use a self patched SDK/openSDK in any production; I even doubt I would ever work in a project which would like todo that.

Oracle might be the bad boy here, but -man!- they know techology. I strongly believe, that the SDK will be less stagnant in performance/features and lots of those 10 year old problems in Bugzilla will finally be tackled.

Sun let the "open" part of Java start smelling and people started to invest significant time in non-Java languages like Scala and new ways of dealing with partitioning of services aka OSGi containers. Since JVM 1.5 they were not really able to focus this community power to anything bigger then some lame syntactic sugar and a DOA flash clone.

Harmony is a nice place to play around with an open JVM, but I think this job moves more over to the more general LLVM. And I don't think that I want to bet my (professional) future on the fact that Google has to step always in when the rest of the industry has just a bad haircut day.

IBMs move is logical. Whatever Harmony is or was, the impact was already limited. You simply can't build such infrastructure without more people building it. One company alone wouldn't push Apache or Tomcat, and any serious openJDK shouldn't do either.

Jacek Furmankiewicz replied on Wed, 2010/10/13 - 8:29am in response to: Guido Amabili

There is always choice. We are already looking at PostgreSQL and Maria DB as an alternative in case Oracle goes crazy with MySQL license prices (and it seems this is what they want to do).

Dario Laverde replied on Wed, 2010/10/13 - 2:27pm

@Jonathan and @Jason, yes you are missing the point that it's not GPLv3 (deliberately) which would have closed the patent hole - i.e. using GPLv2 allowed for the patent clauses & field of use restrictions so it's not really free to distribute. Apache Harmony would have to be re-born as a cleaner white room implementation to sidestep the patents (assuming that's possible), and of course not use the "Java" name.

Peter Blakeley replied on Wed, 2010/10/13 - 5:37pm

Oracle keeps using the word "open" in all blogs and in any mention of java, I find no evidence of open in their dealings as all important decision's are made behind closed doors and the proclaimed by the "Oracle"

Google with GWT and Andriod provide real value for java developers like me (15 years) and Oracle seems hell bent on destroying Andriod (although unlikely). Java's mobile efforts are painful and unprofitable to small developers.

Oracle's behaviour with openSolaris, mySQL leaves me with little confidence in the process.


James Selvakumar replied on Thu, 2010/10/14 - 2:11am

At one point of time I use to bet by "Sun standards" aka stuff like JSF, EJB etc. Fortunately, I'm moving away from these so called "standards" and started using stuff like Spring, Wicket etc. The only thing that I'm still hanging to is the NetBeans IDE (apart from Java itself..!) which somehow is not letting me to move towards Eclipse.

 From the comments above, we can sense one thing though! That developers are losing confidence in Oracle and it's bandwagon. (Well, did they have confidence at first place? :-) )

Otengi Miloskov replied on Thu, 2010/10/14 - 10:34am in response to: James Selvakumar

Me I moved away since 2007 from the so called sun standards, I dont use anymore JSF, EJB etc, EJB3.1(it is nice but I think is to late). For me is Apache portfolio as Apache Click and Apache Wicket, Spring and Hibernate and of course I use Eclipse. The only thing Im thinking about is if continue with Swing for desktop like apps or move to apache pivot. because it was good news JavaFXscript is dead finally and development will focus to Java but I dont trust JavaFX2 aka Swing++ cause Oracle way of doing things and still only vaporware.

Liezel Jane Jandayan replied on Thu, 2011/08/25 - 7:12am

OpenJDK has comparatively strict procedures of accepting code contributions: every proposed contribution must be reviewed by two of Sun's engineers and the contributor must have signed the Sun/Oracle Contributor Agreement.Test demonstrating that the bug has been fixed. Initially, the external patch submission process was slow and commits to the codebase were only made by Sun engineers, until September 2008.-Jonathan Berkowitz

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.