In November 2006, Sun Microsystems began making all of its Java technology implementations open source, offering them under the GPL. More than two years later, reactions are mixed as to what exactly has been the impact of this momentous change.
Some, including the chief executive at Eclipse Foundation and Sun's own James Gosling, considered the father of Java, have seen little impact. "That was mostly about community relations," says Gosling, who is CTO of the client software group at Sun. "So far, I think it hasn't had too much [effect]," says Mike Milinkovich, executive director of Eclipse, which was spawned in an IBM-based effort to build Java tools.
[ Sun also has made its Solaris Unix open source, an effort belittled by the Linux Foundation. Is Solaris on its deathbed? ]
But Sun's Jeet Kaul, senior vice president for the Java client group at Sun, sees it differently: "We have gotten a lot of people who have taken up the code and started building solutions with it. So the adoption that we have had, the adoption curve has grown dramatically ever since we did open source," he says. But he could not cite specific adoption figures.
"Sun's revenue for Java has increased ever since we did open source and has increased by double-digit numbers," Kaul says. Opportunities have increased in areas such as support, services, and solutions, and Java revenues will grow in 2009, he adds.
The open sourcing of Java had been sought by parties such as IBM and BEA Systems, which argued that such a move would boost innovation. Sun initially resisted, citing concerns about potential forking of the platform. But the company relented and made the switch, arguing that the open source move would inspire a new phase of developer collaboration and innovation.
Today, open source implementations from Sun include OpenJDK for Java Platform Standard Edition (Java SE), GlassFish for Java Platform Enterprise Edition (Java EE), and Mobile & Embedded Community for Java Platform Micro Edition (Java ME).
Java now more easily bundled with open source tools
Sun urged the open source community to include the GPL-enabled distribution of the Java Development Kit as part of open source repositories commonly included with GNU/Linux distributions. And it has had some success in that effort; for example, OpenJDK ships as part of the Red Hat Fedora Linux variant. Red Hat Enterprise Linux 5.3, unveiled on Tuesday, also features OpenJDK.
Java for Linux had long been available for download, so in a sense it was as accessible as any open source code, says Gosling. But to let open source providers include the Java code in their products required a new licensing agreement at Sun, which took some time to develop. Today, Debian, Red Hat, and Ubuntu are license-compatible with Java and thus can bundle it, he adds. The open source move by Sun has made it much easier to get Java on Linux, concurs Geir Magnusson, Jr., director of the Apache Software Foundation.
Being open source may not have dramatically changed Java usage, but it has made some users happier about Java. "It's not that I picked up Java because it's open source, but that's when I considered it more," says Harald Rudell, a software engineer for Filmsoft. With the source code, Rudell says that all he needs to do is press the F3 key to view the source if there is a problem. "It's a waste of time to use something where you don't have the source code," he adds. "I used to be a C++ programmer, but I think Java is way better now." However, it does take a long time to get problems fixed with Java, Rudell says, unlike Ubuntu, where problems are fixed right away.
Aleksandar Gargenta, a senior consultant at open source training firm Marakana, says having Java open and available makes the Java community stronger. "Personally, I haven't seen much of an impact because it doesn't affect me and what I do. But for the community, I believe that it solidifies the future of Java and basically makes it a more compelling technology," he notes.
Little impact seen on Java development
Despite the broader availability of Java in open source products, Sun's inclusion of the open source community in Java's development has been limited. Kaul says that's because Sun is behind in the logistics of supporting those who want to actively contribute.
Eclipse's Milinkovich says Java remains very much a Sun-driven community. "I honestly haven't seen [Sun's open source move] changing the dynamics of the Java ecosystem," he says.
Milinkovich would like to see more support for the Apache Harmony version of Java. But Sun and Apache have disagreed over terms of a compatibility testing kit for Harmony, with Apache arguing terms of the license for the kit put restrictions on its users.
Rod Johnson, founder of the popular Spring Framework and CEO at SpringSource, says he has not seen much effect on the language part of Java since the open sourcing. "We think that Sun open sourcing Java is a good thing, but we also think with the language itself, Sun was already doing a fairly good job running it."
Sun's initial fears about forking of Java, leading to fragmentation, have not been realized. "Obviously, the community really doesn't want to fork Java," Johnson says. "One of the strengths of Java is it's been very unified, historically," he notes, adding that Sun has done a good job of avoiding incompatibilities.
Where Johnson sees a desire of open source community involvement with Java is not in the language but in the non-Sun open source frameworks, servers, and software that sit on top of the Java platform. For Java itself, "I'm not sure that there's really been that much growth in the community outside Sun," he adds.
"The fact that such a major platform is open-sourced, that fact that most people can grab it and play with it, do what they want with it, I think is very significant," says Patrick Curran, chairman of Java Community Process (JCP), which provides an official means to update Java technology. (Johnson, Magnusson, and Milinkovich are also JCP executive committee members.)
But Curran says he had not seen any change in the technical direction of Java as a result of the open source effort. "What it does change is the way that development is done. It provides much greater access to many more people, but I don't think it necessarily changes the technical direction because -- despite the fact that things are being done in an open source manner -- you still have a core group of people who have a very clear sense of what it is they want to do and where they want to take the platform," he says.
But Curran has noticed lately more Java specification requests (JSRs) to amend Java are being done in an open source manner.