The Java Community Process, or JCP, was created by Sun as the standards setting body for the Java language, libraries, and runtime. From 1998 to 2009, Sun ruled the JCP with an iron fist, but now that Oracle is calling the shots that will inevitably be changing.
Recently, I discussed the topic with Tony de la Lama, senior vice president of research and development, at Embarcadero Technologies. Tony was a JCP founding executive committee member from 2000-2003 and prior to joining Embarcadero was general manager of Borland's Java business, so he knows a thing or two about how the JCP works (or fails to work).
[Ed] Will the Java Community Process continue to exist? If so, what will it look like?
[Tony] It’s no coincidence that Java has been a successful platform, changing the technology landscape for businesses in profound ways. The fact that Java was not driven by a single vendor and instead has taken a managed community based approach as a way to evolve the technology is a direct reason for the platform’s wide acceptance and continued relevancy to businesses of all sizes.
If there’s a major focus area to improve however, it would be the JCP’s speed and agility which correlates to the Java platform’s evolutionary velocity. There are many fine technologies being developed outside of the JCP process and are later brought into the platform, but why haven’t those technologies incubated from within the JCP? For the JCP to stay relevant it needs to look for ways to develop a bias for speed in idea incubation, implementation and ultimately inclusion of new technologies faster than has been possible in the past. No more battles as elephants position themselves, let the technologies compete on their own merits and let the beauty of the many driving technology, replace the slow pace of the few.
An alternative strategy is for Oracle to wipe the slate clean and start over by establishing itself as the official corporate sponsor of Java with decision making powers to guide a highly mobile and fast moving repository of all open source projects related to Java. New Java technologies would begin life on Java.net and with the input of an advisory body those technologies showing the most promise would be promoted to officially sponsored Java projects. Sure, there could be some politics but this is always the case in these situations. Ultimately, the ongoing success of the Java platform will be the responsibility of Oracle, its advisory committee and the users. If Oracle wields too tight a control that negatively affects the platform the users will complain.
[Ed] What will the JCP’s role be in dictating the future of Java?
[Tony] Incubation of many successful enterprise technologies could have happened in the JCP but it was deemed too restrictive, bureaucratic and slow. If you want to slow something down, you could initiate a Java Specification Request (JSR) and then wait for years in some cases to see that technology appear in the platform. Worse (or better to most), many successful technologies had to be incubated outside JCP first and achieve broad adoption before being brought into the Java platform via the JCP. I see a stronger benefactor role for Oracle with an advisory group becoming the guiding force behind the platform.
[Ed] Could the JCP benefit from being restructured as a vendor-neutral organization like the Eclipse Foundation?
[Tony] Yes, the Eclipse Foundation has shown great success in marshalling community involvement around the Eclipse tool set. Java, however, is a broader and more dense technology with application at many levels in business. Complex, highly optimized platforms require deep involvement by participants and careful thought around implementation, testing and performance. That being said, Eclipse allows great freedom in a very open environment which could stimulate creative thought.
[Ed] What does Oracle’s desire to revitalize the JCP mean for the future of the Java specification?
[Tony] Good for everyone as they still show commitment to a participatory governance for Java and a willingness to improve the process.
[Ed] Could Oracle seize Java IP by withholding TCKs (compatibility tests) for the JDK?
[Tony] I couldn’t imagine Oracle “seizing” Java in the negative sense of the word, but if Oracle saw fragmentation or if Java is no longer seen as a leading edge platform for innovative computing technology, Oracle could exert tighter control to reset direction by eliminating negative political ambitions, tuning up processes and setting short, medium and long term goals for the platform. Occasional interventions in direction by Oracle would help ensure Java’s success as well as ensure its continued commercial viability.
[Ed] Will Apache get the TCK under the terms it wanted?
[Tony] It is difficult to predict what Oracle might do. As Oracle supported Apache’s position in the past I expect a resolution to the impasse is forthcoming. How Oracle handles this situation will indicate how they will manage the Java process.
[Ed] What's your best guess about when Java 7 will be out?
[Tony] The Oracle/Sun acquisition has impacted the release. No doubt that removing the uncertainty will accelerate the schedules and ultimate release. I expect to hear official word on this very soon.