Each year, the Java Community Process (JCP) holds elections to fill a portion of the seats on the executive committees that oversee the Java SE, EE, and ME standards. This year's elections have already started, and online voting will be available through November 17th on the JCP's 2008 election Web site.
Artima spoke with JCP chair Patrick Curran about the significance of this year's elections:
Frank Sommers: What is the JCP asking developers to vote on?
Patrick Curran: Voting is for members of the JCP executive committees (ECs). You can think of the executive committees as the board of directors for the JCP. There are two separate bodies: one focuses on Java ME, and the other on Java SE and EE.
Each committee consists of sixteen members. Sun has a permanent seat on each committee. Ten of the other fifteen members on each committee are nominated by Sun, but those seats are also submitted for election. We call those ratified seats. The remaining five seats on each committee are open for general election, and anybody can nominate themselves for those seats.
The primary responsibility of the executive committees is to review and approve JSRs [Java Specification Request] as those specifications go through the community process. They are also responsible for the process itself: Designing the governance model for the organization, and defining the processes that must be followed by the expert groups developing the specifications.
People serve on the ECs for a period of three years. The seats are staggered such that each year about five or so seats come up for re-election.
Three of those five are ratified seats. In nominating people for those seats, Sun tries to achieve a balance between geographical representation, different sectors of the industry, and between different interests, such as commercial organizations, the interests of non-profits, or open-source projects. That [nominating] process has just finished for this year.
Each year, the period for open elections is two weeks. During that time members of the community can nominate themselves, and members can cast their votes for candidates for the open seats. We have two seats open for election on each executive committee at the moment.
Frank Sommers: Who is eligible to vote?
Patrick Curran: Everybody who is a member of the JCP community can vote. There are about 1,200 JCP members. About eighty percent of JCP members are individuals. As well, all the major corporations that have anything to do with Java, either as consumers or producers of the technology, are members of the JCP.
Each company joins as a corporation, and many of their employees then participate in JCP activities. For example, IBM is a corporate member, and so is Nokia, and each of them has probably thirty, or even fifty, employees participating in various aspects of spec development.
In addition to joining as a corporation or as an individual, we also have non-profits, such as open-source groups, like the Apache [Software] Foundation or Eclipse. We have some Java user groups that join as an organization as well.
Every JCP member gets the right to vote: they get one vote for each candidate that is up for election in each phase. Voting is done online. The election is conducted by PriceWaterhouse Coopers to ensure that everything is above board and neutral.
Frank Sommers: Can you tell us about the candidates who were elected through the ratification process this year?
Patrick Curran: Three members were elected to the SE/EE executive committee through the ratified part of the election. Two of them are new, and one of them is a sitting member who was re-elected. The sitting member is [the company] SAP, who I like to think of as representing users or consumers or Java rather than platform vendors.
Ericsson was nominated as well. They already have a seat on the ME Executive Committee, and you first think of them as a mobile phone company. But they are also a major manufacturer of the back-end systems that make the mobile phone system work. In fact, they claim that forty percent of all cell phone [traffic] goes through their systems, and the back-end systems they build are standards-based, and are based on Java. For these reasons, we felt that it would be good to have them on the EE side as well.
Sun also nominated SpringSource, in the person of Rod Johnson, to have a seat on the SE/EE committee. Rod has been a strong critic of the JCP, but also a strong supporter. He has some serious concerns about the way the process has worked, and has ideas about how to reform it, many of which I share. He believes in participating, has participated in many JSRs, and is coming in with an agenda of pushing openness, transparency, and community involvement, all of which I support.
On the ME side, there are no significant changes: Three sitting members were re-nominated and re-elected: IBM, Nokia, and Phillips Electronics. Phillips represents a slightly different part of the ME business, with consumer electronics, DVD and Blue-ray, and so on.
Frank Sommers: Who are the candidates standing for election for the open seats?
Patrick Curran: We have just started the open election process. On the SE/EE Executive Committee, the seats that came up re-election were Intel's and that of Hani Suleiman. Hani decided not to stand for reelection, but Intel did so, and Intel is on the ballot. In addition, we have three individual candidates: Werner Keil, Matthew McCullough, and Shashank Tiwari. Thus, at least one individual candidate will certainly be elected to the SE/EE committee.
On the ME side, we have another individual, Jean-Marie Dautelle, who also decided not to stand again. Sony-Ericsson is running for reelection to the ME committee, and we also have Aplix, a company based out of Japan. They have run a couple of times in the past, and are fairly significant contributors to the JCP as participants in a whole bunch of JSRs. We also have one individual candidate, Sean Sheedy, who ran last year and came close to [getting elected] then. It's not clear, therefore, if we will end up with a non-corporate member on the ME side, or with two corporate members.
Frank Sommers: How do you find the balance between individual and corporate members on the executive committees?
Patrick Curran: It's always important to try and strike a balance between corporate and individual members. Corporations are the major contributors to the Java Community Process, as they are to all open-source projects.
People sometimes think of open-source projects as individualistic and free from corporate influence. There are some people who are fortunate enough to be able to do the work in their spare time. But if you look [at] who is paying people to do the work, in practice the majority of the work gets done by people who are paid by corporations to do that work. I certainly don't want to argue against the value of large corporations.
If you look at current EC membership, on the SE/EE side we have big corporate players like Fujitsu, Google, Hewlett-Packard, IBM, Intel, Nortel, Oracle, SAP, or Sun. But we also have the Apache Software Foundation, the Eclipse Foundation, RedHat, and we have currently Hani Suleiman, as well as Doug Lea, an academic and a well-known expert. So we have quite a healthy mix between corporations, open-source groups, and individuals.
The ME Executive Committee is a little more homogeneous. For example, Ericsson, IBM, Intel, Motorola, Nokia, Orange, Phillips, RIM, Samsung, Siemens, Sony-Ericsson, Sun, Vodaphone, Time-Warner, Qisda, a company from China, all have a seat on the EC, as does Jean-Marie Dautelle, an individual. It's pretty heavily dominated by the cell-phone guys, although we have Phillips representing the consumer electronics area. Time Warner Cable joined as a new EC member last year from the TV industry. There are no open-source groups on the EC committee, perhaps because open-source is more of an SE/EE phenomenon.
Frank Sommers: Why is there a need for two separate executive committees?
Patrick Curran: Currently, the ME and SE/EE committees are separate. When it comes to voting on JSRs that come before the process, they vote separately. If you have a specification for some technology intended for mobile phones, for example, then that specification proposal will be reviewed and voted on only by the ME Executive Committee. For desktop or server technologies, it would be reviewed by the SE/EE Executive Committee.
The meetings of these executive committees tend to be combined. We meet approximately monthly. For the most part, the work we do as a committee is around issues of governance and process. In those situations, we tend to act together.
There has been some discussion about the possibility of combining the two executive committees. There are arguments for, as well as against, that. An argument for combining the executive committees is that we are beginning to see some convergence between ME and SE. As smaller devices become more powerful, it's possible that a few years from now there will not be as big a difference between the underlying platform for ME and SE, because the ME devices will be powerful enough to run an edition of SE. And, as SE becomes more modular, it becomes more feasible to do that as well.
It's still true that the business model and the business ecosystem for the mobile space, on the one hand, and for desktops and servers, on the other, are still different enough that there are strong arguments for considering them separately. We may end up with a common board of directors that deals with the administrative and policy aspects of the JCP, and separate architecture groups that deal with the different platforms.
Frank Sommers: How has open-source Java changed the JCP?
Patrick Curran: In many ways. For example, we have Apache and Eclipse as JCP members. A lot of JSR development is done these days through Apache, and we may see more of that done through Eclipse as well.
Some JSRs do their work as completely open-source projects, and the reference implementations and the TCKs are developed entirely in an open, collaborative process, and are licensed under an open-source model. This is definitely an increasing trend, certainly in SE and EE, where open-source is becoming the default way of doing things.
We haven't seen that with ME so much, because the business models are different, and are still somewhat more proprietary. But in the ME space, too, we're beginning see increased openness. People are still grappling with this, and are trying to figure out exactly what the business model is, but open-source is becoming more popular there as well.
As the lead for the SE and EE platforms, Sun is committed to doing all the work on those technologies in the open, and that work will be licensed in an open-source manner.
Open-source is not only affecting our work, but also impacts how we operate. In the past, we tended to be a little exclusive: You would have an expert group working on a JSR, and they tended to work in private. Some expert groups operated on private mailing lists, and you wouldn't hear much from them for several months, until they had another revision of the spec to publish for public review.
That's very much changing. We've had lots of discussions within the JCP about what we call transparency: ways in which we can open the process up so that people can see what is happening, and ways that make it easier for people to participate. Things like having open mailing lists so that interested people can, at the very least, see what the expert group is discussing, is one example of that.
Of course, you have to strike a balance there: if you want some technical work done, it's often more efficient to have a smaller group working closely together than to allow 1,200 people to comment and make suggestions. So you'd better strike a balance.
About half of the current JSRs are already doing this in various ways, tracking their progress out in the open. Many have wikis where people can contribute. It's possible that, as we formally revise our process document, we actually begin to require some of those behaviors, rather than strongly recommend them. However, I'm a believer in consensus and persuasion rather pushing people.
As I mentioned, about eighty percent of the JCP's members are individuals. I'm glad that we have individuals participating in the JCP, but we're still struggling with the best model for them to do so. Having them participate as organized groups, rather then as isolated individuals, might be the best way to go. Open-source communities could join as a community, Java user groups might join as a group, and so on. We're still working on that.
We have to keep in mind that a standards body is not an open-source organization: To try and do standards development where only individuals participate, would just not work. You need the big players because they will ultimately be producing the technologies, as well as consuming them. But you also need to pay attention to the needs of the developer communities, those who will be voting with their feet—or keyboards. They either adopt your technology enthusiastically and spread it, or make it irrelevant, if they think that you didn't get it right, and that your technology is not meeting their needs.
Frank Sommers: Is there anything you'd like to add?
Patrick Curran: Just a reminder to JCP members to come out and vote. There was a big turnout last week for the US presidential election. It would be nice if we could match that for the JCP elections! This is your organization, and your vote counts.