an FranciscoAt a press event here on August 14, Sun announced plans to open source components of Java SE (Standard Edition) and all of Java ME (Micro Edition) by the end of 2006. The javac
bytecode compiler, JavaHelp
online help and documentation system, and Java HotSpot Virtual Machine
are the Java SE offerings. The Java ME release will include the Connected Device Configuration (CDC
) and Connected Limited Device Configuration (CLDC
Sun is committed to using an OSI-approved license for the releases but has yet to determine which one. Laurie Tolson, Sun's vice president of developer products and programs, who stated that licenses are strategic, said, "We're looking at all licensesGPL, Apache, and CDDL are in the mix."
In a blog posted the same day as the announcement, Geir Magnusson, co-founder of Apache Harmony, an open source implementation of Java SE, wrote, "I can live with the CDDL and other soft-copyleft licenses. At least then, people could choose how they wished to license the IP for the things they created that were truly new. Maybe the best solution is the CDDL for core stuff, and BSD-like license for the not-critical-to-compatibility parts."
Tolson said the primary focus in Sun's open source moves is maintaining compatibility. A few Sun officials also stressed the importance of keeping all the pieces compatible. Ray Ganz, Sun's manager for the JDK community, said, "many businesses that have strategic investment in Java don't want to see the platform fragment." He added that leery engineers, whose Java programming skills currently enable them to work anywhere, fear a forked platform could limit how well those skills translate and possibly shrink their job market.
However, an open source Java means Sun relinquishes its mandate for compatibility requirements. "We can not require compatibility, but we'll do our best to encourage it," said Mark Reinhold, the Chief Engineer for the Java 2 Platform, Standard Edition.
Sun plans to release its remaining Java components by early next year, and Tolson acknowledged that one reason Sun chose these particular components is they are less encumbered by IP entanglements. "Sun has to respect IP," Reinhold explained. "There are bits that we can't release the source code for."
These bits are critical portions of the Java codebase that Sun purchased. An example is the font rasterizersoftware that determines exactly how characters are drawn and displayed. Its function may seem minor, but according to Reinhold, ripping it out and replacing it with a Sun-developed equivalent would require years of engineering work.
Magnusson blogged, "I know from my experience at both IBM and Intel in OSS code contributions, it's prudent to go over the code with a fine-toothed lawyer, even when the code was specifically written to be clean-room and clear of external IP issues. I'm really hoping that those with the encumbering IP help out and make this easy for Sun."
Sun is also counting on the community cultivated around its open source releases to help overcome these barriers, for example, by developing an open source font rasterizer. In fact, Tolson identified engaging the community as a key to this initiative. She said Sun has traveled around the world to solicit developer input, most recently at OSCON, the O'Reilly Open Source Convention, at the end of July, and will continue to do so as more bits get open sourced. The launch of a new community Web site for all things open source Java is part of the outreach effort.
Ganz envisions a broad community where users with distinct interests will congregate to share their ideas. "People can take what they're interested in, go off and innovate around it, and then bring it back to the common." In Ganz's view, growing the ecosystem this way will open up other markets for Sun, such as governments that currently are using only open source software.