Digital Edition

Open-Source Java: Oxymoron... or Solution?
Open-Source Java: Oxymoron... or Solution?

(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."

" 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 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 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.

About Jeremy Geelan
Jeremy Geelan is Chairman & CEO of the 21st Century Internet Group, Inc. and an Executive Academy Member of the International Academy of Digital Arts & Sciences. Formerly he was President & COO at Cloud Expo, Inc. and Conference Chair of the worldwide Cloud Expo series. He appears regularly at conferences and trade shows, speaking to technology audiences across six continents. You can follow him on twitter: @jg21.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

(My IE6 browser sent this b4 I could
finish it).

I'd say wait until Sun was in a better
position over MS, then release more of
an open source version of code.

The problem is however that since it's currently free now why bother.

To open source Java too much would be akin to what happened with the various
flavors of Unix and Linux.

All good versions but which one?

I am an open source advocate, but in this case I think I have to concede my religion for the business world's reality. Simply stated, Java is succeeding. It has in several areas gained the mindshare and is beating Microsoft. This is largely because of its stability and platform independence, but we take for granted that at its core it has a strongly directed stewardship. Sun has kept its focus and moved Java forward with a singular vision. A fork in Java, or bickering over direction or any other number of issues that we do not face today could arise if Java were open sourced. I think Sun's true failing at this point is its slowness to respond to developers needs, mostly in the form of bug fixes. If Sun were able to improve this area I think much of the fervor surrounding open source would quiet, and the remaining voices would transparently reveal their true desire, and that is religious conversion. There is no overwhelming argument, as of today, that an open sourced Java would be a better Java.

Subscribe to the World's Most Powerful Newsletters


Bill Schmarzo, author of "Big Data: Understanding How Data Powers Big Business" and "Big Data MBA: D...
With 10 simultaneous tracks, keynotes, general sessions and targeted breakout classes, @CloudEXPO an...
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple ...
CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018,...
@DevOpsSummit at Cloud Expo, taking place November 12-13 in New York City, NY, is co-located with 22...
The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news an...
Digital Transformation: Preparing Cloud & IoT Security for the Age of Artificial Intelligence. As au...
Bill Schmarzo, author of "Big Data: Understanding How Data Powers Big Business" and "Big Data MBA: D...
The now mainstream platform changes stemming from the first Internet boom brought many changes but d...
"We began as about five years ago as a very small outfit. Since then we've transiti...
DevOpsSummit New York 2018, colocated with CloudEXPO | DXWorldEXPO New York 2018 will be held Novemb...
Machine Learning helps make complex systems more efficient. By applying advanced Machine Learning te...
The Internet of Things will challenge the status quo of how IT and development organizations operate...
More and more companies are looking to microservices as an architectural pattern for breaking apart ...
With the proliferation of both SQL and NoSQL databases, organizations can now target specific fit-fo...
Andi Mann, Chief Technology Advocate at Splunk, is an accomplished digital business executive with e...
In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and ...
Adding public cloud resources to an existing application can be a daunting process. The tools that y...
Organizations planning enterprise data center consolidation and modernization projects are faced wit...
Serveless Architectures brings the ability to independently scale, deploy and heal based on workload...