InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Sun: A real open source Java community: "That is our Goal"

Posted by Floyd Marinescu on Aug 15, 2006

Sections
Operations & Infrastructure,
Enterprise Architecture,
Development,
Architecture & Design
Topics
Open Source ,
Business ,
Java
Tags
Community ,
Java SE
Earlier this year, Sun committed to open sourcing Java eventually, (see InfoQ coverage that also discusses Harmony's influence). Despite not providing a timeframe, it was a clear change in tone for the company which up to that point had always denied the possibility.  Sun has now committed to open sourcing Java Micro Edition this year, and all of Standard Edition next year.  InfoQ spoke to Sun's Bob Brewin, co-CTO of Software to find out the details.   InfoQ also spoke to Geir Magnusson, lead on the Apache Harmony open source Java effort to get a community perspective on the news.

Today's announcement of ME's open sourcing this year and SE by next year is part of Sun's strategy to provide transparency to their process. They will be reaching out to the community in this fashion every 6 weeks from nobuilding a community around the open source java platformw on.   In addition to ME, some large parts of SE will be open source by the end of the year, which may include the javac bytecode compiler and the HotSpot VM.  "We don't know exactly what will be released or in what order yet., Bob said. On what's preventing them from moving faster, it's "most of it has to do with the size of the code and how fast we can go through it, the other side is legal embcumbrances...it comes down to resources more than anything else."

The rest of the JDK will be released in early 2007 however some parts of it are will not be able to be relesaed due to legal encumbrances and will have to be released as binarie.  Sun licensed some code from other companies that is causing them difficulty in terms of open source, such as font rasterizers.  While there are external open-source alternatives, they don't quite provide all the functionality needed. Bob is hoping that the community itself will rise to the task to implement open source alternatives of some of these binaries if a strong open source community around Java will develop. 

Licensing remains a huge issue. Sun hasn't chosen a license yet. "We're down to half a dozen licenes that we're looking at...GPL - we haven't excluded that, what it comes down to is choosing a license that is acceptable to the largest body of developers possible," Bob said.   On licenses, Geir Magnusson commented that "their CDDL is a fine license...that would still give people freedom over what to do with their intellectual property." With regards to the possibility of GPL, Geir pointed out that GPL is unclear when it comes to elements of managed runtime environments like JITs, late-binding, and it also prevents innovators from creating proprietary ports of Java to new hardware and operating systems.  Geir added that:
the notion of compatibility enforcement may be used as an argument for the GPL, but I think it's rather weak - compatibility is very important to the whole ecosystem at this point (who wants broken java?) and the brand is very valuable - and you can only use the brand when you pass the TCK and are proven compatible.
The point that a strong license by itself isn't absolutely necessary protecting Java seemed to also be made by Bob Brewin himself when he told InfoQ that "a strong license with a strong community behind it will self correct. You always run the risk of people forking the code but most healthy communities don't allow it, just like people can't corrupt Apache."

In addition, the license itself is only half the story to a successful open source Java platform. InfoQ asked if there will be system that allows non-Sun people to take meaningful leadership roles on key parts of the stack. "It is about building a community around the open source java platform, I would hope that we have external leadership...That is our goal." Asked about what Sun's role with regards to Java be 2 years from now after such a community is established, Bob replied "I'm hoping it doesn't change in that we will remain very active in the Java community, trying to be a voice or conscience about maintaining compatibility, stability, and a resonable pace of evolution, but we want to make sure that this is a real community and not just a Sun thing, so it does mean that we have to cede some responsibility to the community."

The importance of building a real community was also echoed by Geir, saying that with Glassfish, "not all participants are on equal footing", contributions must have shared copyright with Sun. "I think this is a problem because I'm guessing Sun competitors won't be interested in helping Sun do that w/o opportunity for reciprocal gain. This is the level community what we set out to achieve in Harmony - namely a broad collaborating community of peers around Java - and it could be achieved by Sun too." What will the impact of an open source Java have on Harmony? "If it's open source and closed community - I'm guessing many in the Harmony community will continue to produce a compatible implementation, under a liberal license, by an open and inclusive community," Geir said.

Some of the large drivers for an open source Java is making Java Linux friendly.  Another has to do with intellectual property concerns of emerging countries worried about depending on US owned-IP (which could put them at risk under embargo). Bob added that Java not being open sourced is even limiting adoption in developed countries. "Even in the US, some governement projects won't let you bid unless it is based on open source software."  "The IP concerns are always going to be there, at least for a while, however knowing that there is protection on how the code is used provides transitive protection for people using the code."

Going forward, "what we really want to do is get feedback from the community on how we should do this, how it should be structured and governed", Bob said.  To that end, Sun recently launched an open source JDK portal to track what's going on with the effort, as well as a discussion forum on the topic.  Among the first blogs they will likely want to read is a recenty entry by Geir Magnusson, where he lays down advice and potential roadmap for open sourcing Java.

No comments

Watch Thread Reply

Educational Content

Jesper Boeg on Priming Kanban

In this interview, Jesper Boeg, author of the new InfoQ book – Priming Kanban, discusses the keys to using Kanban effectively, and how to get started if you are currently using other approaches.

New-age Transactional Systems - Not Your Grandpa's OLTP

John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.

Cool Code

Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.