Tuesday, May 17, 2005

James Gosling on Harmony

DevX interviewed James Gosling on the recent Harmony open source JVM announcement. I'm far from being an open source zealot, but even with my passing understanding of software licensing, I nearly choked on the morass of FUD spewed during the interview. Either DevX misquoted, or James Gosling sacrificed his own credibility to toe the company line. James starts off by asking how Java could be any more open:
It's often difficult to get a good picture from the open source community of what they actually object to in what we're doing... Since day zero, 10 years ago, all of our sources have been open and available.
What good is looking at the source code if you can't actually do anything with it? To his credit, Sun did just recently add an additional license that allows you to run your changes internally (up until a month or so ago you couldn't even do that). To my understanding, unlike an open source project, you still need Sun's permission to redistribute their JVM with your operating system, office suite, etc. One of the key benefits of open source technologies is users' ability to innovate without permission or approval from a central authority. Next, James alludes to responses from, "the enterprise development community." In this context, he could mean vendors, corporate developers, or both. The degree of naivete in his feedback points to a subset of corporate developers with a lack of understanding of open source: "we hear very strongly that if this thing turned into an open source project—where just any old person could check in stuff—they'd all freak." Anyone who knows anything about open source knows not just anyone can commit changes; to indicate otherwise would be disingenuous. James adds, "They'd all go screaming into the hills." Many developers already have, and many of those did so without even trying Java. One word: Mono. Gosling continues, "for most users, we're actually pretty close to the Apache license. You can do an awful lot of stuff with our system before you run into license restrictions." I'm dumbfounded by the audacity of this statement. Comparing Sun's Java license to the Apache license? If your license covers 90% of users, wonderful, but what are the remaining 10% of users supposed to do? Create an open source alternative, obviously. James concludes the first part of the interview with a comment on the state of open source licensing:
In the open source community, if you actually care about being legally clean, it's a nightmare. Most people don't actually read the licenses. Every day or two there's something about someone getting hammered for GPL violations, and most of the people who are doing it don't even know it.
First off, what does the GPL have to do with anything? Second, could these be the same uninformed developers that objected to open sourcing the JVM? By comparison, the Apache license is completely free, no confusion, no strings attached. In regard to staying, "legally clean," I've found the Apache license much easier to grok and adhere to than any one of the many Sun licenses.


Blogger Alex said...

In your post on Java and open source you ask "What good is looking at the source code if you can't actually do anything with it?"

As a Java developer, there's been a number of times where having the source available has allowed me to look into the JDK and discover why something isn't working properly. In several cases I discovered bugs (or perhaps Sun would like to consider them limitations) in the JDK that helped me really understand a problem and get past it. If the JDK was a black box, I could've been stuck a whole lot longer.

Is it as good as having an open source Java? Clearly people think there's advantages to open sourcing Java. But I can say that what Sun has done so far is better than nothing at all.

(Nice blog by the way.)

8:22 PM  

Post a Comment

<< Home