Ten years later, the open-sourcing of Java remains a point of contention, with many in the community extolling the importance of an open Java, while others remain critical of its handling, including the belief that Sun Microsystems didn’t go far enough.
Sun Microsystems officially open-sourced Java on Nov. 13, 2006—a move long pined for by the industry at large. Java’s code had already been accessible prior to that date—a strategy that helped boost the platform from its earliest days, notes Java founder James Gosling.
“The source code for Java was available to all from the first day it was released in 1995,” says Gosling, who is now chief architect at Liquid Robotics. “What we wanted out of that was for the community to help with security analysis, bug reporting, performance enhancement, understanding corner cases, and a whole lot more. It was very successful.”
Java’s original license, Gosling says, allowed people to use the source code internally but not redistribute. “It wasn’t ‘open’ enough for the ‘open source’ crowd,” he says.
IBM at the time wanted Java to be contributed to the Apache Software Foundation, where it would have been distributed under the Apache license. Ultimately, Sun chose to shift Java to the GNU General Public License, which then-Sun CEO Jonathan Schwartz called a “momentous” change. Under the GPL, derivatives of Java would also have to be distributed, a shift intended to help Java better fit in with the open source community, Gosling says.
Since the open-sourcing, Sun and, in turn, Oracle (which acquired Sun in early-2010) have remained in the driver’s seat for Java’s evolution, although other parties have contributed to the code. While Gosling has taken Oracle to task for its handling of Java at times, he sees the open-sourcing as beneficial.
“It’s one of the most heavily scrutinized and solid bodies of software you’ll find. Community participation was vitally important,” he says.
A former Oracle Java evangelist, however, sees the open source move as watered down.