During my sojourn at the Open Source Business Conference, I spent a few minutes with Tim Bray and Bill Vass of Sun. Tim is Sun's director of Web technologies (and one of the authors of the XML specification) and Bill is the company's CIO (and former CIO of the U.S. Army, 2.4 million users).
Men of Sun: Tim Bray (left) and Bill Vass
Bill wanted to clear up confusion about open source, proprietary and open standards. He provides some definitions on his very low frequency blog.
The issue today is that many vendors are distributing products that include various combinations of the three. Open standard is the most important, in that it should guarantee that multiple vendors can take advantage of "standards" and deliver solutions that are interchangeable with minimal hassle. Open source has various licenses, including the GPL, and relies on community development, where anyone can modify the code and contribute back to the community. Proprietary, closed source is just what it says. Now we are seeing the three types in various products under the commercial open source umbrella. It's where purity of intention and open source goodness meets business realities. Nobody wants a level playing field unless they are forced to play on one.
Given the Sun executives say that the company is open sourcing all of its software (and some hardware as in OpenSparc), I asked Tim and Bill about open sourcing Java. "We are in favor of open sourcing things," Tim said. "With Java, we have one concern. From an end user point of view open source is good. They get bug fixes faster, but the Java definition is a binary that passes the TCK [Java Compatibility Kit]. I suspect that open sourced Java would not result in faster bug fixes because of the way it is defined. If you go to JavaOne and talk to developers, they care about compatibility. So, I am definitely of two minds, and I'm not convinced that it will produce practical upside or developer benefit. But, we are not deaf. Legions of voices are crying out for it. At some point, you decide it's more important to make [the cries] go away."
Tim also said that open sourcing Java has different issues than OpenSolaris. "Solaris doesn't have an explicit careful definition like Java," he said. "The TCK is a mammoth piece of work, and that's why Java is portable to such an extent. The potential forks arising would be damaging to the entire marketplace. I'm getting less worried about forking as years go by, but some commercial entities might find some advantage in forking Java. I think it's absolutely clear that when and if company takes positon to open source Java, it would be a big job and take time."
That said, the horse has left the barn, unless Jonathan Schwartz wants to retract his statements about open sourcing everything. Vass noted that it took seven years to indemnify all the Solaris code before it could be open sourced. Sun didn't own all the pieces and either had to get agreements from third parties or engineer out unlicensed code. Vass also said the eliminating bad code and unwanted comments would be time consuming. Regarding an entity trying to hijack Java, Tim didn't name names (IBM comes to mind). My colleague David Berlind has written extensively about open sourcing Java. The upcoming JavaOne conference in May will likely have some news on the open source Java topic...