Most Read This Week
Java Industry News
Open-Source Java: Oxymoron... or Solution?
Open-Source Java: Oxymoron... or Solution?
By: Jeremy Geelan
Jul. 28, 2003 10:15 AM
(July 28, 2003) - James Gosling, co-inventor and the face, if you will, of Java, was his usual charismatic self at JavaOne this year - see for example JDJ editor-in-chief Alan Williamson's account of Gosling's keynote address, which Williamson deemed "pure gold and worth the trip."
But much at JavaOne each year takes place off the keynote stage, in the technical sessions of course, but also in the labyrinthine press-briefing areas, where Sun's executives and project leads meet with technical and business journalists from all over the world from morning till evening, on a scale often unappreciated by the average JavaOne attendee, who maybe thinks that Fortune 500 execs just take long naps in between their public appearances.
At one such briefing, Gosling mentioned to the technology journalist Carol Sliwa that in his belief Java should become "more open source."
There remains enough difference of opinion on the issue at Sun, Gosling told Sliwa, that he isn't able to predict when - or even if - Java would be made open-source. "We actually do open-source a lot of stuff," he said, "but not the core bits. And we've talked about slicing up the core so that some of it is open-source."
"Java.net Filled to the Gills with Open-Source Projects" Says Schwartz
Sliwa reported Jonathan Schwartz, the overall head of Sun's software group, as saying that he, Gosling, and others had just published the Java Research License, which allows more open-source development on core parts of Java. And Schwartz also pointed out that the Java.net online community that Sun introduced to coincide with JavaOne is "filled to the gills with open-source projects with Java."
Schwartz added, apparently, the observation that anyone who wants to experiment with core parts of Java - everything under the guts of the (virtual machine), the language constructs themselves - "is more than welcome to do so."
"But they can't introduce them into the commercial domain," he noted.
And so the question is begged. If Sun were to open-source Java, would it be the beginning of a new phase of creativity for the language, pervasiveness for the platform, and prosperity for the Java developer? Or would it herald the commercial demise of Sun Microsystems, exposing it to the same kind of problems it ran into when Microsoft violated its contract to use Java by trying to introduce a version that was incompatible with Sun's Java specifications? ("If Java was open-source," Gosling told Sliwa, "Microsoft could take it, deliver it as it sees fit and drive a definition of Java that was divergent from the one that the community wanted to be compatible. And to the victor would go the spoils of that nefarious action.")
"Tension - a Fundamendal Dynamic with OSS," Says Sun's Muller
Another Sun stalwart who has commented publicly recently on the Java & Open Source issue is the CTO for Sun's Desktop Division, Hans Muller - who has been at Sun for 15 years and has been involved with desktop GUI work of one kind or another for nearly all of that time.
Writing at Sun's new java.net site, Muller states that in his view the "fundamental dynamic with OSS is the tension between the community that controls the evolution of the software, and the possibility that a subset of that community might fork the code."
"The developer community doesn't want a fork because that would diminish or even eclipse their accomplishments as well as reducing the size of their workforce," he continues. "On the other hand, evolving stable, working software requires a process that controls if and when contributions are incorporated. In small OSS projects this control might be vested in one or two hackers."
Muller goes on to address the difference between free software on a small scale and free software on the scale necessary to be construed as a commercial platform.
"In larger projects," he writes, "there's usually a hierarchy of reviewers and 'committers' who are trusted to gatekeep the main code base. It's up to the gatekeepers to maintain the balance between the stability of the software and the stability of the community itself. If they fail to do so, the project will fade or fork."
"The dynamics of OSS software are more unpredictable when many relatively autonomous OSS projects are combined into a large system, like GNOME or a complete desktop Linux distro," Muller explains. "The tension that keeps the atomic projects together doesn't work as well at the molecular level. If OSS project B depends on OSS project A, the forces that ensure that A will continue to sustain B are social and sometimes commercial."
"Project A [is] less likely to change in a way that would be incompatible with the goals of B if the projects have developers in common or community A views B's success as part of their own. Similarly, a common commercial interest can help maintain the synergy between the two projects. But what happens when the two communities aren't even aware of each other? Similarly, what happens when there's no social or commercial overlap between the two projects? Commercial projects are usually loath to rely exclusively on synchronicity."
When asked by Carol Sliwa whether he thought Java could go open-source soon, however, James Gosling was somewhat more sanguine: "It could conceivably happen soon," he told her.
"A Kind of Funny Company" Says Gosling of Sun
"Although Sun is kind of a funny company," he added. "I don't really know what the right word is. We aren't like a dictatorship. We don't have somebody in the center that's the ultimate control. We aren't like a really hierarchical company. We're a consensus company, which in some ways is lovely and in some ways is completely maddening."
"I am certainly one of the people who would love to make [Java] open-source," Gosling noted. "But it's hard for two reasons. One is that open-source ways of dealing with software work really well so long as you get this sort of collegial atmosphere. If you happen to have a bully on the block who is really strong, it really doesn't work. We have this history of having been victimized, and there are lots of people who are nervous about that."
"The other issue is that when you've got a platform technology like Java, there are really two sides to the community. There are the people who are building the platform, and the people who are using the platform. From the point of view of the people who are using the platform, one of the most valuable things about Java is the consistency, the interoperability. And from the platform providers' side of the world, they feel it's this sort of tension. On the one hand, they just want to go off and do whatever they damn well please. On the other hand, they know that if they did that, they'd be cutting themselves off from some developers."
"Being involved with interoperability," Gosling observed, "is something that most manufacturers have this love-hate thing with. So we've tended to have our licenses be as close to open-source as we can be, while maintaining the one thing that we really care about, which is interoperability."
Sun's Hans Muller makes the same point, more or less, though he expresses it slightly differently. "I think that one of the primary reasons that Java is not an open source project," he writes, "is that, given the size of the developer community, forks are unacceptable. In other words the millions of developers who build software on top of Java value its stability more than they value the right to get under the hood and fix it."
In Winchester's view, speaking as a member of JDJ's distinguished editorial advisory board, thought-leading magazines like Java Developer's Journal should interview both sides on the "Should Java be open-source?" question and also cover the vexed issue that quite a lot of corporations still don't use open-source solutions just because open source is perceived as being a risk.
"I know of many cases where people practically re-invent Struts just because their corporate IT strategy precludes them from using it," he says. "The logic of this is totally alien to me, [so] we should try and find IT managers at companies that don't use open source and ask them why, and also find IT managers of companies that do and get their feedback."
JDJ Industry Newsletter is very interested in hearing back from readers of JDJ and any of SYS-CON's other Java-related magazines as to whether this is indeed something they'd like to see explored, or whether they consider it just an academic discussion about what could be, unrelated to what is now.
Reader Feedback: Page 1 of 1
Subscribe to the World's Most Powerful Newsletters
Today's Top Reads