Eric S. Raymond, president of the Open Source Initiative, started it; IBM pursued it; and now Sun Microsystems Inc. is offering to talk with IBM about open-sourcing Java. And, open-source analysts and leaders are delighted by this move.
While not all open-source leaders are excited about the move. For example, Linus Torvalds, Linuxs father, though doesnt care that much if Sun open sources Java or not. While “open source is always good … I dont have any personal stake in it, and I dont complain about other peoples licenses, i.e. if Sun doesnt want to open source it, thats their decision, Im not going to butt in.”
Most though, such as Bruce Perens, director of Software in the Public Interest, a nonprofit open-source development organization, welcomes the move. Hes also quick to point out, “There have already been a number of open-source projects working on Java for a long time.”
Indeed, the Apache Software Foundations Jakarta Project has created and maintained open-source solutions on the Java platform for years including such popular programs as Tomcat, which supports Java Servlet and JavaServer Pages technologies; Struts, which provides an open-source framework for building Java web applications and related projects like Ant, a Java-based build tool.
Nor, is Apache the only group active in this area. The Eclipse Foundation has developed a popular open extensible integrated development environment (IDE) with strong Java ties.
Perhaps the most important already existing Java open-source effort is JBoss Groups self-named JBoss J2EE application server. According to BZ Researchs, a research group that studies software development, 2003 Java Study that JBoss was the fourth most popular J2EE server with 27 percent of the market after IBMs WebSphere, BEAs WebLogic and Oracles application server.
IBM and Sun have also contributed open source to Java related projects in the past. The best known of these projects are IBMs Jikes, a Java compiler and Suns Project JXTA, a set of open source peer-to-peer protocols with 16,000 member strong community.
Despite the popularity of the open-source way with Java developers, attempts to open Java up even more have met resistance. Brian Behlendorf, as a board member of Apache, explains that while, “We have been a member of the Java Community Process (JCP) for a couple of years now, working from within to advocate the notion of and benefits from open-source implementations of all Java application programming interfaces (APIs), particularly those related to the fundamental platforms within Java.”
At the same time though, Behlendorf adds, “Weve respected the desire of those in the JCP, including Sun, but also several other Executive Committee participants, to see uniformity and consistency in Java implementations through the process of Technology Compatibility Kit (TCK) testing, though it is this requirement that has been difficult to reconcile with the more Darwinist approach to conformance used by open-source development projects, whereby non-conformance is seen as a bug and is fixed, or people stop using the buggy implementation.”
Behlendorf adds, “Despite this difference in philosophy, Apache has been successful in helping the JCP articulate an approach that allows for open-source implementations of JCP-defined specifications (JSRs), with a $3M pool of money available from Sun to fund conformance testing, so that open-source implementations can certify particular releases as conformant to the specification, and use the appropriate trademarks. However, not all existing JSRs allow open- source implementations, nor is it a requirement to allow it. Apache has advocated that the JCP change its rules to allow all JSRs to be implemented under open-source licenses.”
Behlendorf continues, “If this debate can help move the JCP to allow open-source implementations of all JSRs, a complicated task, since many JSRs implement patents and other intellectual property held by JSR participants, and if it causes IBM, Sun and other JCP participants to build more open-source implementations of RIs and TCKs, then thats a good thing. This should not be understood as an IBM versus Sun debate, because Sun is not the only JCP participant or EC member who has had difficulty understanding how to reconcile the JCPs mission with this approach. Apache has had to make the case to many different JCP participants, but weve sensed a very gradual opening up at all levels. If this pushes it past the tipping point, hurrah! Apache is ready and willing to help.”
More from Bruce Perens
Perens though thinks that Sun, and not the other JCP members, has been the real problem with making Java truly open. “Sun has a multiple personality disorder when it comes to open source. With Java, Sun was afraid that IBM would run away with it if they open- sourced it.”
So whats different now? According to Perens, “Perhaps Sun is waking up to the fact that it has too many enemies. It cant fight Microsoft Corp. and IBM and open source. It needs friends somewhere.” And, in particular, its getting “late in the game and Microsofts Visual.Studio.Net continues to gain supporters.”
Stacey Quandt, principal analyst for the Open Source Development Labs (OSDL), agrees. “For many end-users the issue is not so much the battle for the enterprise platform but about applications. With so many customers making decisions about Java vs. .NET there would be a tremendous benefit if IBM and Sun could agree on an open-source implementation of Java.”
Raymond seems to think that Sun is taking this seriously. In a note to eWEEK.com, he wrote, “I am having interesting conversations with people inside Sun. More detailed comments than that would be inappropriate at this time.” Other reports have IBM and Sun already meeting to discuss open-sourcing Java.