In a change from previous licensing arrangements, on February 24 Sun Microsystems made the Java 2 Software Development Kit (SDK) source code available for immediate download. Those who wish to use the source code for noncommercial research purposes can download the code at no charge, after accepting a long license agreement. (See this article's sidebar for download information.)
According to John Zukowski of the MageLang Institute and JavaWorld, developers will receive the benefit of keeping their innovations proprietary, instead of sharing them with Sun:
"What they've done now hasn't really changed the access but [it does allow] you to do different things with that access. Previously, any changes, improvements, enhancements a company made had to be returned to Sun ... [Such changes were then] provided to the other licensees. This discouraged improvements."
Moreover, according to Sun, licensees can share innovations among themselves without informing Sun or paying any additional royalties.
The new licensing model requires no up-front licensing fees, but Sun does require royalty payments from licensees who modify the source code and then distribute derivative products for internal production use or as commercial products.
The Java 2 SDK code release is part of Sun's Community Source Licensing program, which also includes other Sun technologies such as Jini. According to Sun, the new model blends the best aspects of open source and proprietary software license models.
"When we were looking at ways to change the licensing model, there used to be two choices: open source -- opening it up to everyone -- and proprietary," says Elizabeth McNichols, spokesperson for Sun. "The Community Source License tries to combine them both in an effort to evolve the technology while maintaining compatibility."
The 7,613-word Java 2 SDK Community Source legal document includes five license categories: Research Use, TCK (Technology Compatibility Kit), Internal Deployment Use, Commercial Use, and Trademark Use. (For the complete Java 2 SDK license, see Resources.)
While the Community Source License isn't "open source" as defined by other licensing models such as the GPL, according to Zukowski, "It's open in the sense that as long as the changes you make pass the compatibility test, you can keep them, instead of passing them on to Sun."
At the February 11 CityJava user group meeting in San Francisco, a panel of industry leaders -- including Jim Mitchell, VP of architecture and technology for Sun's Java Software Division -- discussed open source vs Sun's Community Source License program. One issue of contention among the panelists was the length and complexity of the license agreement for Sun's Jini technology as compared to open source licenses, a concern many believed would carry over to the as-of-then unpublished Java 2 license.
Tim Wilkinson, CEO of Transvirtual, asserted, "One of the problems with the [Jini] licensing ... is it's too complicated. And if somebody wants to start developing for it and it's complicated, and they don't have a lawyer, then they're just not going to do it ... You need to reduce the barrier to innovation."
Mitchell, speaking about the Java 2 license agreement prior to its February 24 release, acknowledged to the panel his own concern: "I'm nervous about its length -- I'll admit that. And I will do my best to go in and red-line it and take things out of it ... The one great thing I do say about open source is the license has the right length -- it's zero."
In a matter related to the Java 2 source code release, Sun plans to release the source code to Personal Java the week of March 1 to 5 and the source code to Embedded Java sometime in the near future, according to Sun's McNichols.
Just as Sun promised, it is fairly easy to download the Java 2 source code. Follow these steps:
The complete Java 2 SDK -- 69.8 MB uncompressed -- contains 7,293 files located in 884 folders.
Learn more about this topic
- For the complete Java 2 SDK license agreement, go to http://www.sun.com/software/communitysource/java2/license.html
- To create a Sun user account for software downloads, go to http://jsecom4.sun.com/ECom/docs/Welcome.jhtml
- For a Sun Community Source Licensing FAQ, go to http://www.sun.com/software/communitysource/faq.html
- To read the reasoning behind Sun's new licensing model, see "Sun Community Source License Principles," by Richard Gabriel and Bill Joy, at http://www.sun.com/981208/scsl/principles.html
- For other downloads from Sun, visit the Community Source Code Licensing Community home page http://www.sun.com/software/communitysource/index.html
- The CityJava San Francisco Java User Group site includes transcripts of recent meetings (including the February 11 open source discussion), presentations, and schedules for upcoming meetings http://www.cityjava.org/