Jean-Christophe Collet's Weblog
Jean-Christophe Collet's Weblog

20040708 Thursday July 08, 2004

Sun and OpenSource: Old but estranged friends?

Something that really ticks me off lately is the whole "Sun vs OpenSource community" thing!

Really, it's ridiculous! It's like watching two very old friends having bitter arguments, while forgetting how much they owe each other, and how much they need each other. Both party are guilty here, if you ask me (and if you didn't ask, or don't care,then stop reading now).

Let's start with full disclosure: I have been involved with the Open Source Community long before it was even called that, back when it was still called "Free Software". Heck, I was one of the main contributors to one of the most notorious, and most enduring (17 years and counting), project. I also co-founded a small not-for-profit organization dedicated to Free Software, which later, much later, became the French branch of the Free Software Foundation. Although I have to admit, my participation was minimal, specially compared to the main guy behind it, Loic Dachary (Hi Loic, how you doing?). But I still ended having that guy as a guest in my place for 10 days, which was quite an experience, as those of you who ever met him may imagine, but that is another story (maybe another blog entry, who knows). Ever since, I have been, and continue to be, a vocal proponent of Free Software and Open Source.

On the other hand, I joined Sun Microsystems almost 10 years ago and I have been invovled with Java, one way or the other, since the beginning (1995 and JDK 1.0.2 if you can believe it). And for the past 4 years, I have been integral part of the Java Engineering team, here at Sun.

So, why this rather long, and I apologize for that, disclosure, to the risk of looking like I'm bragging? Because it shows pretty clearly where I come from and where I stand: I have one foot firmly on each side of the fence (and we all know how uncomfortable it can be, specially when said fence is getting taller with each passing day. Ouch!). The being said, it doesn't mean I'm not bragging too.

Now, back to the main point: Sun and the Open Source community. You know, I remember a time when Sun was so completely synonymous of Free Software that almost all Free Software, including the GNU project, the X11 project, and hundreds of others, were developed primarly on Sun's platform. It used to be that the default configuation to these softwares was for SunOS. There were a number of reasons for that, but more importantly, it benefited both sides. And that special relationship is one of the reasons I joined this company in the first place. Then things started to change, and that relationship got looser. If I do remember well, the first release of Solaris (or SunOS 5) was the trigger, for 2 main reasons: First, it was based on a commercial Unix (System V.4 to be exact) instead of BSD. Second, Sun stopped providing compilers for free with the OS (which, to this day, I still think was a major mistake, but that's just me). Since then, both parties have drifted even more apart. And nowadays, most Open Source projects are developed on Linux, to the point where, more and more often, I actually do have to do dome porting (and I do mean the "messing around with the source code" kind of porting) when I want to run some OSS applications on my Solaris box. The horror, the horror! Specially to a guy who fondly remembers the days when he just had to type 'make' and wait for the build to finish.

Now, when Scott McNealy claims, on stage at JavaOne last week, that no other company contributed as much as Sun to the Open Source idea, he is absolutely right! And I wish the community would remember that. After all, aren't they the same people who are big on giving credit when credit is due?

Of course, Sun, as a company, should also remember that it did benefit quite a lot from all the contributions to Open Source. For instance, the main user interface of Sun's products is based on X11, right? And all these sales to academia, among many institutions, were without any doubt helped by the knowledge that there was this huge pool of free software just asking to be run on Sun's hardware! It was, and still is, a two way street. Both side should have realized that a long time ago, don't you think?

Let's talk about OpenSourcing Java, which seems to be the main point of dissension these days. I, for one, would love to get some of the benefits of the Open Source modus operandi when it comes to Java. Particularly as one the developers working on it. I have wished so many times that we could use the "release early, release often" model, and I would love to get direct, or indirect, help (in the form of code, suggestions or discussions) from all these talented developers out there. Also, considering my background, I would love that out of principle

But you know what? It's not going to happen. And it's almost certainly better that way! I won't go over all the arguments again, as you're probably tired of hearing, or reading, about them. Except for the main one: Write Once Run Anywhere is the obvious decisive factor here. I have turned this all over my head many, many times, and I can't figure a way to keep that without a tight control. It's that simple.

Let me also state again, as many have before me, that nothing stops you from creating an fully OpenSource version of Java. At least, nothing in theory, since all specifications are completely open. But I do know that it is incredibly hard! Almost impossibly hard, because there is more to binary compatibility than following the specifications. A lot more. And Sun should acknowledge that.

Which brings me to this question: What can we do to bridge the gap between Sun and the OSS community? How can we get these two, somewhat, estranged friends to be in good terms again?

To the Open Source Community, I'd say: lay off Sun's back a little! And remember to give credit when credit is due for crying out loud!

To Sun, I'd suggest to find ways to make life easier to the OSS developers and distributors. Why can't we have a license that makes it possible to easily redistribute the JDK with every Linux distribution? Why can't we find a way to make it easier for the developers of Kaffe or GNU Classpath, for example, to test the conformity of their implementation? And overall to play nice and fair with the community.

To me it doesn't seem like it would take a lot of efforts to make all this happen. But I have been known, at least to my friends and relatives, to be somewhat of an utopian. But, you know, sometime utopies do happen.


So what do you say? How about being friends again?

(2004-07-08 10:51:08.0) Permalink Comments [8]

Comments:

excellent post! seriously. this is truly spot on.

Posted by gonzo on July 08, 2004 at 08:08 PM CEST #

Free software =! open source. Yet another example of how Sun doesn't have a clue. Also, Java doesn't run anywhere today except where Sun decides to write/license a JVM. With an open source JVM, Java truely could be run everywhere without Sun holding it back.

Posted by Anonymous on July 08, 2004 at 08:47 PM CEST #

ASSERT (free software != open-source) == true), but I think he was talking about free as in speech, (fsf,gpl,lpgl...) Sun is still heavily involved with levels of the GNU stack up through openoffice. One point I would disagree with the blogger is that for the most part, the open-source "community" plays quite well with Sun. Competitors have spread FUD and the press regularly GNU/linux with Linux. I wonder what platform Anonymous would like a JVM ported to?

Posted by bnitz on July 09, 2004 at 12:07 AM CEST #

What I meant to say is that the press often presents open-source and linux as being a single entity. GNU/linux and branded Linux distributions are confused with the linux kernel. Sun has its own kernel (soon to be opensourced?!), but it contributes to other parts of the GNU stack (see http://www.sunsource.net) which work on Solaris or linux.

Posted by bnitz on July 09, 2004 at 12:58 AM CEST #

Good points in this post. However, you state correctly that by Sun moving away from a free BSD and by not providing free compilers, it actually moved away from being a rather "free" OS. Wouldn't you think that this of course gives enough incentives for "free software" guys (not necessarily open source guys!) to criticize the platform and to stop developing for it? I am the last to give Sun credit for its contributions to several projects, ranging from OO to Gnome. But it's ongoing contributions to FLOSS software were not always aligned with statements or actions from upper management, which e.g. supported SCO by buying licenes, which was seen as an indirect attack on Linux. "Give credit, where credit is due" is a nice thing, but "fair play" is also a principle which should be observed by both sides.

Posted by spaetz on July 09, 2004 at 08:49 AM CEST #

OUTCH, of course I meant: I am the last to ***NOT** give Sun credit for its contributions to several projects

Posted by spaetz on July 09, 2004 at 08:50 AM CEST #

Salut Jean-Christophe, well, I must admit I had the same impression about the 'Sun vs. free software movement' fight. Sun, unlike some other companies, contributes (a lot, even) to various free software efforts. Thanks for that! From the free runtimes developers, I don't think anyone has demanded that Sun give away their crown jewels, i.e. release their implementation under an OSI certified open-source license. There are some things that would encourage better compatibility of Kaffe & Classpath, like access to the TCK under reasonable, GPL-compatible terms. Afaik, the TCK for 1.4 was intertwined with the runtime code, so it couldn't be released separately. As far as I've seen in the JSR for 1.5 (or is that 5.0 now?), it is supposed to be detangled from the runtime code, so it could be licensed under terms different from the SCSL. I have received no replies on the definite terms of the TCK for 1.5, though, in the last 2 months :( There are a few more issues, like the obnoxious API subsetting terms in the documentation license, that seem to go against the 'bazaar' development style that's common in the free software world. See http://www.peakpeak.com/~tromey/blog/2004/06/25/#free-java5 cheers, dalibor topic, still waiting for an answer to licensing conditions for 1.5's TCK :(

Posted by Dalibor Topic on July 10, 2004 at 11:18 PM CEST #

Salut mon gars. Je ne resiste pas au plaisir de pourrir ton blog avec un peu de francais (et sans accents s'il vous plait :-) Mon commentaire a deux balles: java est une menace serieuse pour l'avenir du Logiciel Libre, non pas parceque Sun est derriere mais parceque c'est du logiciel proprietaire. La menace n'est pas deliberee de la part de Sun, a mon avis, et lui en vouloir est un peu vain a ce stade. C'est l'ignorance, comme souvent, qu'il faudra combattre durant des annees pour faire comprendre au particulier comme au ministre que l'immense majorite des Logiciels Libres ecrits en java ont une chaine a la patte. Pour les deployer dans toutes les ecoles ou dans toutes les administrations, il faudra demander la permission a Sun qui controle exclusivement le substrat necessaire a son execution. Bon allez, apres cette peroraison pleine de fotes, je vais ensacher la viande pasqu'il est tard (c'est Elsa qui dit ca, la classe).

Posted by Loic Dachary on July 28, 2004 at 04:12 AM CEST #

Post a Comment:

Comments are closed for this entry.

archives
links
referers