Sun: A real open source Java community: "That is our Goal"
Today's announcement of ME's open sourcing this year and SE by next year is part of Sun's strategy to provide transparency to their process. They will be reaching out to the community in this fashion every 6 weeks from nobuilding a community around the open source java platformw on. In addition to ME, some large parts of SE will be open source by the end of the year, which may include the javac bytecode compiler and the HotSpot VM. "We don't know exactly what will be released or in what order yet., Bob said. On what's preventing them from moving faster, it's "most of it has to do with the size of the code and how fast we can go through it, the other side is legal embcumbrances...it comes down to resources more than anything else."
The rest of the JDK will be released in early 2007 however some parts of it are will not be able to be relesaed due to legal encumbrances and will have to be released as binarie. Sun licensed some code from other companies that is causing them difficulty in terms of open source, such as font rasterizers. While there are external open-source alternatives, they don't quite provide all the functionality needed. Bob is hoping that the community itself will rise to the task to implement open source alternatives of some of these binaries if a strong open source community around Java will develop.
Licensing remains a huge issue. Sun hasn't chosen a license yet. "We're down to half a dozen licenes that we're looking at...GPL - we haven't excluded that, what it comes down to is choosing a license that is acceptable to the largest body of developers possible," Bob said. On licenses, Geir Magnusson commented that "their CDDL is a fine license...that would still give people freedom over what to do with their intellectual property." With regards to the possibility of GPL, Geir pointed out that GPL is unclear when it comes to elements of managed runtime environments like JITs, late-binding, and it also prevents innovators from creating proprietary ports of Java to new hardware and operating systems. Geir added that:
the notion of compatibility enforcement may be used as an argument for the GPL, but I think it's rather weak - compatibility is very important to the whole ecosystem at this point (who wants broken java?) and the brand is very valuable - and you can only use the brand when you pass the TCK and are proven compatible.The point that a strong license by itself isn't absolutely necessary protecting Java seemed to also be made by Bob Brewin himself when he told InfoQ that "a strong license with a strong community behind it will self correct. You always run the risk of people forking the code but most healthy communities don't allow it, just like people can't corrupt Apache."
In addition, the license itself is only half the story to a successful open source Java platform. InfoQ asked if there will be system that allows non-Sun people to take meaningful leadership roles on key parts of the stack. "It is about building a community around the open source java platform, I would hope that we have external leadership...That is our goal." Asked about what Sun's role with regards to Java be 2 years from now after such a community is established, Bob replied "I'm hoping it doesn't change in that we will remain very active in the Java community, trying to be a voice or conscience about maintaining compatibility, stability, and a resonable pace of evolution, but we want to make sure that this is a real community and not just a Sun thing, so it does mean that we have to cede some responsibility to the community."
The importance of building a real community was also echoed by Geir, saying that with Glassfish, "not all participants are on equal footing", contributions must have shared copyright with Sun. "I think this is a problem because I'm guessing Sun competitors won't be interested in helping Sun do that w/o opportunity for reciprocal gain. This is the level community what we set out to achieve in Harmony - namely a broad collaborating community of peers around Java - and it could be achieved by Sun too." What will the impact of an open source Java have on Harmony? "If it's open source and closed community - I'm guessing many in the Harmony community will continue to produce a compatible implementation, under a liberal license, by an open and inclusive community," Geir said.
Some of the large drivers for an open source Java is making Java Linux friendly. Another has to do with intellectual property concerns of emerging countries worried about depending on US owned-IP (which could put them at risk under embargo). Bob added that Java not being open sourced is even limiting adoption in developed countries. "Even in the US, some governement projects won't let you bid unless it is based on open source software." "The IP concerns are always going to be there, at least for a while, however knowing that there is protection on how the code is used provides transitive protection for people using the code."
Going forward, "what we really want to do is get feedback from the community on how we should do this, how it should be structured and governed", Bob said. To that end, Sun recently launched an open source JDK portal to track what's going on with the effort, as well as a discussion forum on the topic. Among the first blogs they will likely want to read is a recenty entry by Geir Magnusson, where he lays down advice and potential roadmap for open sourcing Java.