The Java Community Process: What's Broken and How to Fix It

In a panel discussion today at TheServerSide Java Symposium, Patrick Curran, Head of the Java Community Process, James Gosling, and 
Reza Rahman, member, Java EE 6 and EJB 3.1 expert groups, discussed the state of the JCP. Moderated by Cameron McKenzie, Editor of, they discussed what's wrong with JCP and ways to fix it.

What's wrong with the JCP?
Reza Rahman was quite supportive of the JCP. "I work as a consultant, and it's much better than getting a decision made a large company," Reza commented. He gave the JCP "Five stars" and explained that as an individual, he was able to have an impact on things that mattered to him.
Cameron asked, "Now all these JCP problems came after Oracle acquired Sun, right?" To which the crowd had a good laugh, and the panel all agreed many of the JCP problems existed under Sun. How is the JCP handled differently under Oracle than Sun? "Pretty similar," said James. Oracle "tends more towards practicality" said Reza. "I'm glad to see things moving again, we've got several new JSRs filed," Patrick commented.

How to Fix It?
They all agreed greater transparency is a top issue. Without it, people assume sinister behavior whether it's there or not. Patrick said that currently spec leads are "encouraged" to be transparent, and the JCP office is planning to submit JSRs to change the JCP process so transparency is mandated, both for mailing lists and issue tracking. Shining a light on problems is the best way to fix them.

Reza said the biggest problem is lack of a participation from the community. If more people are involved, a lot of the problems go away. "Developers are too non-chalant, they should realize what happens in the JCP has an direct impact on their career and they need to get involved." Reza commented.

Got Involved!
During Q&A, someone asked how a developer could get involved. They answered: Pick a JSR you are interested in and follow it. To start, you could read an article about the JSR and comment on the article (expert group members do read the comments). Or read the spec, discuss it with others and post a blog about it. Read the Expert Group proceedings. Join the JCP (free for individuals). Open source projects have code that you can download and play with, download it and provide feedback. Patrick mentioned that the JCP really wants more participation. "One way we are working on it is that we are encouraging JUGs to join the JCP as a group, and that makes all members of the JUG JCP members," Patrick said.

They commented that most spec leads are desperate for feedback. "And, please get involved BEFORE the spec is finalized!" James declared. Someone from the audience said it's hard to put valuable time into something before it's baked. Patrick explained that Post Final Draft (PFD) is the time in the JCP process when the spec is mature enough to review but before the spec is finalized. The panel agreed the worst thing that could happen is that most people in the Java community just complain about the JCP without getting involved. Developer Sumit Goyal, conference attendee, thought it was a healthy discussion. "I got insights into how JSRs are worked on and finalized," he said.

Key Links
The Java Community Process Website
Article: A Conversation with JCP Chair Patrick Curran
Oracle Technology Network
TheServerSide Java Symposium


There's an elephant in this room. It's the same elephant that was in the room when Sun was in charge. Back then, Oracle said they hated the elephant and it should be shot. But when they took over, they got together with Apple and IBM and shot the open source community instead. The elephant is that this community is only "open" when its activities don't conflict with Oracle's. If ever they do, rules will be made up out of nowhere to make the threat go away and ridicule the folk who caused it. So the only people who will get "involved" in the JCP are people who don't care about that. Fix that problem - put control in an independent foundation, for example - and people will come back in droves. In the mean time, pretending the elephant doesn't exist and exploiting the gullibility of "user groups" wins Oracle no credit whatsoever.

Posted by TC on March 17, 2011 at 10:00 AM PDT #

I think James had it right: the JCP is "pretty similar" from Sun's time, what is not necessarily a good thing... The importance of the JCP is to be a level playing field where all parties are comfortable in sharing their ideas and efforts, because they have stake and similar rights on the result of the process, that is, on the resulting Java specification. The JCP was always a little unbalanced. The obvious unbalance was Sun's veto power, but this is a minor one. The main issue is probably that the umbrella JSRs (JSE, JEE and JME) are perpetually under Sun's leadership, and a spec leader is clearly in an advantage (to be fair, that is in part balanced with the amount of work it has to put in). But the issue Oracle has to deal with is that this JCP unbalance was mostly seen as minor, since the industry as a whole looked at Sun as a minor player. Although with some complaints, most simply lived with Sun's extra power. It was small, because Sun was small. And how small Sun was became clear on its inability to move the JCP in the last several years. Oracle is not minor, and its seat of power in the JCP makes things a lot more unbalanced, and so, more people are worried. But, even that would be probably OK, if the rules of the JCP are clear and respected. I think we can all live with slightly unbalanced, but checked power. The issue the JCP has to deal with now is how unchecked this power has become, since the Apache TCK issue, and if this is a real or a perceived issue. Apache considered that they did not have the expected rights on the resulting specifications. If the JCP fails to provide their members with the level playing field, then it's reason to exist goes away. My opinion is that transparency is important, but making sure there is an equal standing among JCP members is a fundamental part of the JCP. The process will fail or succeed based on its ability to guarantee this equality. The JCP needs to be a place where no one can bend the rules. Transparency can make that clear and help with perception, but transparency alone cannot guarantee it. I personally believe in the benefits of the JCP, and it is worth fighting for the changes. The JCP may be "pretty similar", but the power shift that happened rocked the boat. We need to strike a new power balance, or the boat will turn. I hope that all realize that if the boat turns, we all sink. Bruno.

Posted by Bruno Souza on March 19, 2011 at 03:21 AM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed

Insider News from the Java Team at Oracle!



« June 2016