Open-Sourcing Java Will Create Incompatibility Risk, Sun Exec Warns
Open-Sourcing Java Will Create Incompatibility Risk, Sun Exec Warns
SAN FRANCISCOWhile there is no inherent discontinuity with making Java open-source and keeping the technology compatible, the community will have to remain vigilant in this regard, according to a Sun executive.
"I do not think anyone wants to break Java compatibility, but any of the large licensees with the market power to distribute their own version technically could do so, intentionally or unintentionally," Simon Phipps, chief open-source officer at Sun Microsystems, said in an interview with eWEEK at the annual JavaOne conference here.
As such, keeping the compatibility controls is very important to make sure that no onenot Sun, not IBM, not Nokiacasually or intentionally, causes that shift, he said, adding that breaking compatibility would not necessarily be obvious.
A new feature could be introduced and the underlying technology in that feature could actually not be 100 percent pure Java and compatible.
"You can find a market embracing something because of the market power of the supplier rather than because of the purity of the technology. That is why we, as the Java community, have to remain vigilant as I dont believe anyone would be dumb enough to make an outright attack," Phipps said.
The people who care about Java compatibility the most are the members of the JCP (Java Community Process), with the biggest recent growth in the community coming from end-user organizations joining the JCP, he said, adding that the plan is to get even more individual developers on board.
Asked what benefits completely open-sourcing Java and licensing it under an open-source license would bring, Phipps said it would result in the Java platform being considered as a free technology available for use by all.
People confuse forking with incompatibility, he said, noting that something could fork and still be compatible.
"I dont think there is any inherent discontinuity with making Java open-source and keeping Java compatible. Compatibility must be seen as preventing any party from taking unfair advantage of the marketplace, so that the customer gets the best value proposition, which is lots of competition, lots of richness and innovation," Phipps said.
Citing OpenOffice as an example, Phipps pointed to the fact that a version of OpenOffice.org has been built for the Macintosh, known as NeoOffice, and that is a fork of OpenOffice.org, but it still retains perfect support for the OpenOffice formats and for Microsoft Office.
"There is no difference whatsoever in its compatibility with previous versions, and you can freely exchange documents between NeoOffice and OpenOffice.org. What that fork has done is address a new market while retaining compatibility," he said.
Asked how long he thought it would take to open-source Java, Phipps said he expects this to be a lot easier and quicker than open-sourcing Solaris, but he also pointed out that not all of the Java code can be open-sourced and there will be some due diligence and re-engineering work necessary.
"But I do believe open-sourcing Java will be a lot easierand I would hope quickerthan open-sourcing Solaris was, and the plan is for this to happen expeditiously," he said.
With regard to comments by newly appointed Sun CEO Jonathan Schwartz to eWEEK that Ubuntu Linux will soon be running on its Niagara chips, Phipps said this is a "fascinating idea. The code certainly exists, and beyond that I believe the shape of the operating system market is gradually changing," he said.
The marketplace is selecting the GNU userland and not any particular kernel. Going forward, Phipps said he expects to see this style of userland on top of a variety of kernels and chip architectures being the way that differentiation happens in the marketplace.
"I would welcome a full industrial-strength Ubuntu on SPARC. I think it is just exactly where the market is headed. Its being mature enough to recognize that a diversity of kernels and chip sets is a strength and a richness that grows everyones opportunity," he said.
Earlier this week, Sun announced agreements with the Ubuntu and Debian Linux teams and three OpenSolaris-based projects to distribute the JDK (Java Development Kit) virtually unencumbered with their operating systems.
Next Page: Sun announces a new Java license.
Sun also announced a new Java license, the DLJ (Distribution License for Java), which replaced the old binary license for Java that had several clauses toxic to GNU Linux distributions, including the fact that the binary license required that the JDK or JRE ship with a Java product; that it was not shipped with any technology intended to replace any part of Java; and that liability was carried for those people who downloaded or used that software, Phipps said.
"All three of those are unacceptable to the GNU Linux distributions, in particular to Debian. The consequence of that is that the package management that went with Java SE on GNU Linux also didnt evolve with the platforms, so the packages that you had available for installing Java on GNU Linux were not very good," he said.
This was not intentional, but rather because the focus was on commercial licensees. "The thing that people have to understand about the Java market is that, here, compatibility means making sure that there is no one in the market who is able to take unfair advantage.
"So it isnt about controlling it so that Sun can take advantage; its about controlling it so that no one can take advantage. Paradoxically then, people actually ding us for not taking advantage of Java," Phipps said.
One of the reasons Sun has resisted open-sourcing Java until now is that an open Java could allow companies like Microsoft and IBM to outmuscle it on the marketing side. "Its a two-edged sword: The more freedom you give people because its good and you get more usage, the more people decide they dont want to live by the rules of compatibility and they break away," John Loiacono, Suns former executive vice president of software, told eWEEK.
But Peder Ulander, Suns senior vice president for software marketing, told eWEEK at JavaOne that the fear of being outmarketed and outspent by a competitor is no longer an issue as people want to work with the innovators and the drivers behind the technology.
Phipps said the point of the Java license when it was written was to make sure it prevented commercial entities from taking advantage of Java in a way that was unfair to the community. While the license was phrased to prevent that, an unfortunate side effect was that noncommercial distributions like Debian were unable to carry Java.
But Phipps also points out that the DLJ is not an open-source license, but it does now make the license acceptable for inclusion in the non-free repository.
Sun has engaged directly with the communities on this, with the Sun Java legal, marketing and engineering teams all engaging with the Debian, Ubuntu and Gentoo communities to work out what was wrong with the license and to come up with a new one that was acceptable, he said.
Sun Java engineering has also worked on creating the parts that communities would need to build their own packages, and a community called JDK-distros has been created that contains all the bits necessary for any GNU Linux or OpenSolaris operating system.
"All of the scripting and other packaging parts are licensed under the MIT license so that they are compatible with the GPL, CDDL and any other licensing mechanism," he said.
This now means that Sun Java 5 is available for installation on Ubuntu, Debian and Gentoo the same way everything else is installed. This also means that, because Java SE is a perquisite for other packages like NetBeans, GNU Linux is now a viable platform for packages that depend on 100 percent pure Java, Phipps said.
This was a very important removal of an "unfortunate obstacle to the success of 100 percent pure Java on GNU Linux and OpenSolaris," he said.
Check out eWEEK.coms for the latest open-source news, reviews and analysis.