Santa Clara, California-based Sun announced that the first components of Java SE to be released under an open source license will be delivered before the end of the year, while it is also planning to open source its implementation of Java ME for mobile/embedded devices.
It is hoping to have a complete open source Java implementation available in a little over 12 months time, but Phipps admitted that in order to do that the company will have to work around some copyright licensing issues.
We’re aware of a few places in the code where we don’t have enough rights. We’ll look at how we can fix it, he said. That might mean Sun developers writing workaround code, or Sun going cap in hand to open source Java projects such as Apache Harmony or GNU Classpath for code contributions, he admitted.
Phipps added that he had met with representatives from Apache Harmony and GNU Classpath at the recent OSCON event to explore how the projects could work together on licensing issues and the future of open source Java in general.
Sun faced similar problems with its plan to open source its Solaris operating system, as ensuring it was acting within its rights became of five-year project, said Phipps. For the Java platform it’s a good deal easier as we wrote most of it, he maintained, although he added that there is some third party code and some that Sun has acquired that it may not have the rights to.
On the acquired code side, Phipps said the right to share code with unnamed third parties was not necessarily something that would have entered conversations concerning the acquisition of copyrighted work in the past.
Despite the hold up, Phipps said the initial Java SE components would be released by the end of the year, with a full implementation expected in 2007. This time next year there’ll be very little that is not open sourced, he said.
Phipps said open sourcing Java SE is part of a two-year project formerly known as Mustang and now known as JDK 6.0 that already boasts 350 contributors. The only thing stopping that being an open source project is that it’s not, at the moment, under an OSI-approved license, he said, adding that Sun was still working on the details of which license it will use.
Despite reports elsewhere that the Java C compiler and Hotspot virtual machine will be the first components to be released, Phipps maintained a decision has not yet been taken on that. What has been decided is that Java ME will also be open sourced.
We’re intending that Sun’s implementation of Java ME will go open source as well, about the same time as Java SE, Phipps said, while also announcing the launch of a new Java portal where the community can get involved in the open source Java process.
I don’t think that I or any of the people inside Sun know [for definite] how to take Java and turn it into a successful open source project, Phipps said, noting that while the company had its own ideas, it wanted interested parties to get involved and contribute their ideas.
The site can be found at: http://community.java.net/jdk/opensource/.
The open sourcing of Java has become something of a Holy Grail for many in the IT industry after repeated calls on Sun to open up the source code, but Phipps also played down the impact that open sourcing Java SE will have on users, developers and the Java development process.
There’s a scale of benefit. At the one end it won’t make the slightest bit of difference to some people, he admitted, noting that the ability to modify the code will be of little interest to the majority of Java users. I actually think that the end user impact will be quite small, he explained.
While Java developers might be more interested in tweaking code and fixing bugs, Phipps admitted that even this is a niche market. What I do think we’ll see is it will become easier for bugs to get fixed by the people who find them, Phipps said. There are precious few people who really care, he added. I don’t think Java developers are going to be that affected by this.
Putting that statement in context, Phipps noted that while it is beneficial for everyone that the Linux operating system code is open source, the number of developers that actually modify the code and contribute back to Linux is very small.
It remains to be seen how open sourcing Sun’s Java implementation will impact the dynamic between Sun and the other major Java software vendors, and it could be that some will get more involved, but Phipps noted that they have always had the ability to do so through the Java Community Process.
One benefit Phipps did predict is that those Java vendors will have to be more innovative to distinguish themselves from the pack, now that the base implementation will be a freely available commodity.
In the medium to long term I think the Java community will see an increase in innovation thanks to the move towards open sourcing the code, he said, although he also said he did not expect any knock-on effect on the JCP. What the JCP is doing is specifying standards, what the [open source Java software] communities are doing is implementing that standard. It doesn’t mean a change in the JCP. There’s not a direct link between the two.