Sun's Open Source Java Moves Are Bold, Smart, and Limited
Sun's recent decision to open-source some elements of Java is pretty exciting -- but a few years overdue, says InformationWeek columnist Eric A. Hall
Sun also announced that the Java Enterprise Edition platform would be released under GPLv2 through their GlassFish project, which is Sun's own Java EE application server that more-or-less competes against application servers such as Red Hat's JBoss and IBM's WebSphere. GlassFish was already available as open source under Sun's CDDL license, and it's not clear that releasing it under GPL will help GlassFish grow into a full-service Java EE platform, but it certainly doesn't hurt.
There are also things that Sun has said they will not be releasing to the open source community. Most notably, Sun is keeping control of the Java language to itself, and is not allowing core components such as APIs to be tweaked by the hoi polloi. Whereas languages like Perl and PHP are developed in an open environment and are capable of being extended by anybody that can demonstrate a need and benefit (although single-source interpreters usually serve to enforce consistency by minimizing actual diversity), Sun has developed Java as a "standard" language and has stated unequivocally that they will retain executive control over the core language for the foreseeable future. In this regard, it's not Java that is being open sourced, it's Sun's Java software.
Likewise, Sun is retaining most of the Java "branding" such as the steaming coffee cup logo, as well as the Java name itself, although they have published guidelines that allow for their use.
Sun is also going to continue offering commercial licenses for the code that is being released, for multiple reasons. For one thing, it allows the existing encumbered code to continue to be made available to the organizations who have already agreed or will agree to comply with the terms of the relevant licenses. For another, it provides a way for developers to avoid some of the GPL language and limitations-if an organization needs to incorporate specialty libraries into the core software for some reason, but is unable to do so while also satisfying the GPL requirements, then a commercial license from Sun would allow them to do so without conflict.
This isn't a scenario that most people will need to be concerned with, however, since Sun has adopted the GNU Classpath exception license for their Java SE components. Under those terms, Java applications that make use of the JVM are not automatically bound by the license terms associated with the JVM, but instead are treated as separate entities for license purposes. As such, the only people that really need to worry about the GPL licensing restrictions are people who muck with the core components, and that's only if they are not using a commercial license from Sun.
The Business of Going DigitalDigital business isn't about changing code; it's about changing what legacy sales, distribution, customer service, and product groups do in the new digital age. It's about bringing big data analytics, mobile, social, marketing automation, cloud computing, and the app economy together to launch new products and services. We're seeing new titles in this digital revolution, new responsibilities, new business models, and major shifts in technology spending.