The JCP is Dead to me, Long Live Java

I’m a great believer in community, openness and transparency. I have lived the majority of my life believing in teamwork, collaboration and honesty.

When I was a schoolboy I played Volleyball. My coach taught me the importance of working hard within a team and, as a result, I was lucky enough to be selected for the England Schoolboys Squad. During the final squad selection process I suffered a pretty bad injury that prevented me from participating in the traning sessions. Rather than sit at home sulking I took my coaches advice and helped the remaining players demonstrrate their skills. I worked hard to both hide my frustration and ensure that the team was prepared to play without me.

On the day the final squad was selected I was the first to be called into the Managers office. Naturally I expected to be dropped, I wasn’t fit. Instead of dropping me the Manager explained that a team needed motivators and leaders as well as raw talent. Apparently he had seen two of those three qualities. To my amazement he asked me if I would take the role of Vice-Captain, focussing on team spirit and cohesion.

I was proud and amazed, but more importantly I’d learned a great deal about the importance of teamwork and collaboration.

A few years later my fun seeking took a turn towards some of the less healthy pursuits in life. Music became more important to me than sport and, after a series of false starts, I ended up managing a Dub Reggae band based in the crescents of Hulme in Manchester. This area was a horribly run down and deprived area, but it was a place of wonderful community and togetherness (if anyone cares the ExHulme site is devoted to how the area was back then, there’s even a photo of the band in its early days, with a very flattering although not quite true heading).

The band was called Community Charge, a play on a hated Tory policy of the time and a call to arms for the community to rally and charge against such policy. Through my time building the band and crew to a team of 16 people I learned that a handful of individuals with passion, vision and talent could rally huge numbers of individuals for a cause, entertain, have fun and even earn a living.

Fast forward a few more years and I discovered FidoNet and open source software as a means to reducing costs in organising and managing our tours. I immediately felt at home, the whole idea of people coming together to share skills in order to achieve more just felt “right”.

A few more years later endless touring had taken its toll. I went to University as a mature student in order to reinvent my career. I learned more from open source communities than from my lecturers. I became a committer on my first Apache project and I took an unexpected career move into academic research. My open source mentors helped keep me ahead of the curve. I contributed back and was rewarded with recognition and support that would have been far too expensive otherwise. I became an independent contractor and never looked back.

As a Java weenie I rejoiced when the 1998 creation of the Java Community Process (JCP) promised to allow the future of the language to be openly defined. Whilst the language itself wasn’t open source, at least the process for defining the language was open and reasonably inclusive.

More fast forwarding and Sun Microsystems announced that they were going to open source their Java implementation. The licence they chose was not a license I like to use, but OpenJDK is a free and open source implementation of an openly defined language. What’s not to like?

I’ll tell you what’s not to like – there’s a trap.

A trap that many in the community were not recognising. There are hidden restrictions that mean I (and you) can’t modify OpenJDK to suit our needs. If we do modify it we have to choose between either remaining protected from patent litigation or conforming to the GPL, the chosen licence for OpenJDK.

Similarly you can’t create an independant open source implementation of Java and protect users from patent litigation whilst also conforming to the Four Freedoms and/or the Open Source Definition.

This trap was put in place by Sun Microsystems and The Apache Software Foundation (ASF) fought hard to remove it. The ASF has served on the JCP Executive Committee for the past 10 years, winning the JCP “Member of the Year” award 4 times, and recently was ratified for another term with support from 95% of the voting community. The majority of the EC members, including Oracle, have publicly stated that restrictions on distribution such as those found in the Java SE 7 license have no place in the JCP

Sun did not remove the trap (despite a contractual obligation to do so) but they chose not to trigger it either. instead they chose to keep it primed for a day when it might be sprung.

Today Oracle own Sun Microsystems. One of Oracles first actions was to make it clear that they were not going to change the licencing terms for Java (despite a contractual obligation to do so). Even worse, Oracle sent clear signals about their strategy for Java – they were going to trigger the trap.

Since none of my business activities have ever made me rich I’m not about to tell Oracle how to run their business. However, I do claim to know a thing or two about openness, transparency and fairness.

Oracle are free to play the closed game with Java, but I object to being lied to.

The java specification is not open, OpenJDK is not open – Oracle should stop the lies.

I’ll skip over the fact that Oracle objected to the trap when they might be caught in it, but are willing to use it now they own it.

I’ll also skip over the fact that James Gosling, the creator of Java, has quit Oracle over their handling of the Java language team (Gosling told eWeek that “Oracle is an extremely micromanaged company. So myself and my peers in the Java area were not allowed to decide anything. All of our authority to decide anything evaporated.”)

Instead I’ll just add my support to The Apache Software Foundation who have resigned from the JCP EC. I’ll also add my support to the two distinguished individual members, Doug Lea and Tim Peierls who have resigned in protest over the same issue.

I object in the stongest possible terms, to Oracle claiming that Java is open when in fact it is “proprietary technology that must be licensed directly from the spec lead under whatever terms the spec lead chooses.”

The JCP is dead, will Java continue as a proprietary technology or will the community step up?

Disclosure: I'm a member of the Apache Software Foundation. In this post I speak entirely as an individual, 
not as a member of the Apache Software Foundation or as a member of the OSS Watch team.

4 thoughts on “The JCP is Dead to me, Long Live Java

  1. Ross Gardler Post author

    Oracle continue to misdirect us:

    Oracle claims that winning a vote means the ASF is wrong [1]. I would encourage the reader seeking the truth to review the comments on the JSR 336 vote [2].

    The “yes” vote was not a vote against the ASF position. in fact, a significant majority of members (9 of 15) explicitly state that they voted yes on technical merit only whilst expressing concern about licensing issues.

    Not one member commented in support of Oracles position.



  2. Pingback: Origin stories

Comments are closed.