InfoQ

Interview

   Good News: We have re-worked our video infrastructure to provide more reliable service. Please email bugs at infoq.com with any problems.

Patrick Curran discusses the Java Community Process

Interview with Patrick Curran by Scott Delap on Mar 03, 2008 08:00 AM

Community
Java
Topics
Leadership,
Community
Tags
JCP
Summary
In this interview, new JCP chairman Patrick Curran discusses his goals for the JCP, what role standards play, the interactions between innovation and standardization, the impact of OpenJDK, the Java SE TCK and Apache Harmony, the shift in app servers from Java EE to SOA, future Java technology standardization, interesting and successful JSRs, and the future of the JCP.

Bio
Patrick Curran is Chair of the JCP. In this role he oversees the activities of the JCP Program Office including driving the process, managing its membership, guiding specification leads and experts through the process, leading the Executive Committee meetings, and managing the JCP.org web site. Patrick has worked in the software industry for more than 20 years and at Sun for 15 years.
We're at QCon San Francisco and I am here today with the new chairman of the JCP program, Patrick Curran. Patrick, glad to have you today. Would you start out and tell the viewers a little bit about yourself and how you became involved in the JCP process?
Along those lines I am sure when you came into the position you had a mental list of things you would like to accomplish and improve upon. Are there some of those that you would like to share? What are your hot button issues?
One of the main things that comes out of the Java Community Process and these various JSRs is standards. Would you talk a little bit about why these standards matter in today's landscape of open source and some of these rapidly changing projects that maybe are officially standardized from a spec basis versus what comes out the JCP?
It is important to note that those things aren't mututally exclusive -- you can have open source and standards and they are very complimentary. But on the other side of that, a lot of developers recently are involved in a lot of popular open source projects, they don't start from the standard basis. You have got things like Spring, for instance, they tend to stay away from anything that is going to slow the process down. How do you balance the need for standards and yet not handcuffing innovation so to speak?
I think another area that people are particularly interested in with the Java Community Process, and the different JSRs more recently since Sun has announced the OpenJDK project and open source Java. It's assumed that a lot of these JSRs are going to basically guide where Java goes. Could you talk a little bit about where that's at today and where you see that going, and in the next year or two, as Java evolves from being something that was largely developed by Sun, it's now being largely developed by the community?
Earlier you mentioned that you had been involved with some of the TCK activities primarily over the course of the last couple of years before your current position. Could you comment a little bit on the situation with the TCK that Sun uses for OpenJDK with respect to Apache Harmony? I guess I am assuming, being as well versed as you are with it, could you talk about some of the reasoning for some of the decisions that have been made with that?
It seems like a lot of the app server vendors have become less interested in what was traditionally JEE and they moved on to other areas like SOA. How has that shift affected the JCP process?
Given your experience with standards, what segment of Java technology do you think needs to be standardized next, just because the market is driving in that direction? Any one in particular you are pointing to?
A lot of times we hear about JSRs and things in the community process that people don't like. So you hear all the bad side of the world so to speak. Is there a particular JSR that went through development or in process now that you hold up as a shining example of "Hey this is how things are supposed to work"?
I think I would say in terms of success. We talked about some of the traditional things that people think about in terms of the standards for Java EE for instance. But there is a whole list of JSRs. Is there any one in particular that you would hold up as an example?
Another question would be: how do you stop the JCP from being a marketing vehicle? Some people have complained that with different JSRs whether it is Groovy for instance or maybe the recent Web Bean specification that's been primarily championed by JBoss that it's largely there to satisfy self-interests in a sense.
A second ago we talked about a JSR from the example perspective, of being a shining example-type JSR. But there are a lot of JSRs out there, what do you think is the most interesting JSR?
Finishing our conversation here today what types of changes would you like to see in the JCP either in terms of the process or the community, interacting with it over the course of the next couple of years?
show all  show all

1 comment

Reply

Response to Apache Harmony by Paul Fremantle Posted Mar 6, 2008 6:14 AM
  1. Back to top

    Response to Apache Harmony

    Mar 6, 2008 6:14 AM by Paul Fremantle

    I thought there might be some interesting response from Patrick to Apache's concerns about the TCK. After listenening to this 3 times, I guess the best I can make of it is the following argument:

    • Sun set up the JCP so that the company in charge of a particular part decides the licensing
    • This isn't any more unfair than other standards groups like the W3C because if this was the W3C you would give them the license instead
    • Sun is in charge of the JDK
    • Therefore Sun gets to decide the terms for the JDK
    • Sun is doing Apache a big favour by not charging them for the TCK
    • Apache and everyone else has to collaborate within the JCP because thats the only standards forum for Java
    • Its ok that Apache doesn't like us because we are all a big family and families have rows sometimes
    Did I get it right?

Exclusive Content

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.

Segundo Velasquez and Agile as Seen Through the Customer's Eyes

Deborah Hartmann interviewed Segundo Velasquez about his experience as customer with an Agile team during the initial phase of software design of a product.

Fine Grained Versioning with ClickOnce

David Cooksey shows how to fine grained versioning to a ClickOnce deployment using an HttpHandler written with ASP.NET, making partial rollouts to a test audience much easier.

Implementing Manual Activities in Windows Workflow

Windows workflow (WF) is an excellent framework for implementing business processes, but lacks support for human activities. This article describes a completely generic approach for changing this.

Markus Voelter about Software Architecture Documentation

In this interview taken during OOPSLA 2007, Markus Voelter talks about the importance of documenting the software architecture, and gives some good and also bad examples on how it could be done.

Voca, UK's largest payment processing engine running Spring

William Soo and Meeraj Kunnumpurath discuss the Voca transaction processing system, architectural challenges and requirements, Voca's Spring/J2EE architecture, and the future SEPA architecture.

Patterns for securing architectures

Security is about trade-offs. Only a few have the expertise to design good security. This talk focuses on Security Patterns, such as Role-based Access Control, Single Access Point, and Front Door.