Gosling down on Open Source Java

by Tim O'Brien

This is interesting,
Gosling doesn't think there is much need for an open source JVM

Here are some quotes from this DevX article:

"We've got several thousand man-years of engineering in [Java], and 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. They'd all go screaming into the hills."

I think he fails to understand the concept of meritocracy. In the Apache community, if someone demonstrates ability they are granted commit access to a repository, but it isn't something people throw around lightly. The Apache Subversion repository isn't a Wiki with completely open access, there is a (arduous) process for granting commit access, and everyone signs a very stringent IP agreement. On top of that process the Apache Community is driven by consensus, any change to code can be vetoed, and the community takes this process seriously.

He also refers to the "enterprise development community". Who are these people? Are these the same people who embraced EJB 2.1? Icky. I think Sun is starting to resent the fact that innovation in the Java space has been coming from people working on open source projects who are not associated with Sun. Sun's influence over the world of Java is fading, I think they should embrace this change rather than fight it. Sun doesn't gain much from "owning" the Java brand.

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

Sure, point taken, most people don't know squat about open source licensing, but it seems entirely unrelated to the question at hand. Harmony is a project at the Apache Software Foundation which has little to do with the Free Software Foundation's GPL license. I'm going to give Gosling more credit than this, I think this has more to do with Glen Kunene's writing than what Gosling was trying to communicate. I'd like to think that Gosling knows the difference between a BSD-style license and a GPL license. The reason why people are excited about seeing something like Harmony succeed at the ASF is that the Apache license is very free and doesn't contain the restrictions carried by the GPL.

If anything Harmony will at least spur some discussion, and produce results sooner than people think. I agree with Geir, there is a need for a JVM implementation unencumbered by either Sun's license or the GPL. Being "close-enough" doesn't cut it, and the transparent collaborative meritocracy provided by the ASF and the Incubator will be a Good Thing for Java and the Community.

Harmony? or Dischord?


2005-05-18 07:34:42
open source java
There's a need for a jvm that runs modern code and works on bsd without emulation!
2005-05-18 07:40:24
open source java
totally, the fact that Sun only publishes a JVM for Linux is giving Linux an boost for all the wrong reasons. i know i would use BSD only if I had a reliable jvm.
2005-05-18 11:42:58
This has nothing whatever to do with quality or openess. It is purely and ideological fight. The OS community wants a tool as powerful and well structured as Java but they can't write one themselves. Large well thought out coherent projects can not be created under the egalitarian soup of the OS community. How many years did it take Linux to learn the meaning of SMP ( duh what's a thread? it's like process right?). Like some soup in your bowl of PHP bugs? Version 6 of Perl is going to do what exactly?

Don't get me wrong all of these things have their place I'm bashing tools I use regularly and love to death. But they have their place. Java is far more powerful than any OS scripting language, it's well thought out to the point of being beautiful. The difference between Java and OS languages like python, ruby, perl, and php is the difference between Solaris and Linux. The difference between Classical and Rock music.

The OS community doesn't want to use Java because evil Sun ( where did this crap start? didn't Sun contribute Tomcat? Open Office? NetBeans? ) might... well what exactly is it that Sun might do? Nobodies saying. They aren't saying because all this froop isn't about Sun, it's about "I WANT! GIVE ME! WAAA WAAA WAAA!"

My answer to this whole debate is if you want an opensource language as powerful as JAVA go write one! Don't try to steal work from your freinds. Don't make enemies out of people who are helping you.

What will be the result of project Harmony? The ASF (which is the only OS org coherent enough to do this well) will produce a JVM which runs, well, not so well as Suns (unless IBM makes a power move and contributes to it). It'll be distributed on every Linux distro and hence gain power. The OS community will then fork the tree in twelve directions ( one of which might be in favor of adhering to Sun's API's ), start writing standard which conflict with existing standards and soon you'll have to choose. EJB or OS EJB, JDBC or OS JDBC, of course wrought with Microsoft style extentions.

This is a bad move for all parties. And frankly I'm with Sun on this one.

2005-05-18 12:35:20
silliness - back at ya
It isn't a "purely ideological fight" it is borne out of necessity. There are more than a few people that would welcome this as a practical necessity. Many of us need to get rid of Sun's click-through license for various libraries and this is at least a start.

zero11 shows his ignorance of open source and buys the Gosling FUD. In fact, you've taken Sun's bait hook line and sinker. Again, like Gosling, you are lumping every FOSS effort under the umbrella of open source, and to say that "Large well thought out coherent projects can not be created under the egalitarian soup of the OS community." is somewhat mind boggling. Again, some OS projects are decentralized and under restrictive licensing (Linux and GPL), other projects have a highly centralized management model and have a license which encourages the participation of industry (Apache with a BSD-style license). Different open source projects have different records, and to draw a comparison between PHP and Harmony just because both happen to be open source is like saying all commercial software is unreliable based on the performance of some arbitrary piece of commercial code. You should look at the record of success before you drive the stake into the heart of open source.

No one is talking about freezing Sun out of the process, and no one is talking about taking over the language. Remember Apache is a member of the JCP. Anyone can decide to implement a JVM. You can't have a JDK implementation that changes standard APIs - it wouldn't pass the TCK - AND, Java is a trademark so you couldn't call it a JVM. This ridiculous fear of "forking" - you can't! Sun owns the trademark and will enforce it. Fear of the open source community forking Java is a classic misunderstanding of open source. Again, you are lumping this effort in with the standard image of open source as a bunch of anarchist geeks with little or no direction - this couldn't be further from the truth.

EJB or OS EJB? This already exists, except it isn't called "OS EJB" - Sun foisted EJB 2.1 upon us and it has taken years for us to recover - see Spring, Hibernate, etc. The point is that regardless of Sun's decision to come up with yet another standard (JavaServer Faces), they still have to compete with innovation from outside the corporation.

Solaris is to Linux as Classical is to Rock....huh? Almost everyone I know is running away from Solaris as fast as possible. Again, running as fast as possible. Again, it isn't a binary decision - I know many who prefer the cleanliness of OpenBSD or FreeBSD, but "Large well thought out coherent projects can not be created under the egalitarian soup of the OS" right?


2005-05-18 13:15:30
Gosling != Sun
Timothy, your weblog post makes it seem like Gosling's opinion is the last word from Sun. Please don't make that mistake -- Tim Bray, Simon Phipps and others from Sun have weighed in with positive opinions, and even some thoughts about assisting the Harmony effort.
2005-05-18 14:03:35
silliness - back at ya
Need to get rid of Sun's click through license... sounds like a good technical reason to rewrite Java to me. Come on man.... reasons, reasons. I've not heard a single legitimate reason from the OS community to waste time doing this. Only reasons I've read in the last 6 months are, Sun Sucks, It's not OS, and Eric Raymod says so ( usually stated as I think exactly what Eric Raymod thinks).

Yes I agree with Gosling on this issue. In truth though it looks more like this, I don't really care if there is an opensource version of Java. I was thrilled that I was able to run Java on Yellow Dog linux years ago thanks to an opensource implementation of java... blackdown. What I care about here is that the OS community is attacking a freind instead of it's enemies. The rhetoric being slung around the web is nothing less than hostile to a company that has been nothing but freindly to OS. When did the community decide that companies who give it millions of lines of code, are it's enemy?

As far as the OS community being Childish Anarchists... well that's almost exactly what it was until about 4 years ago, when more professional outfits got invovled. We can thank the ASF, MSF, IBM, Sun, Apple and Universities for bringing mature developement processes to the majority of the OS community. ( exceptions exist of course most notably bsd, postgres, etc.. ) And who started this whole Open Source Java debate anyway... the lead childish anarchist Mr. Raymond. ( not meant as an afront to mature anarchists :) )

Pick your opensource language to compare against Java ... Please? Python? Ruby? Perl? Not a single one has the breadth or depth of Java. They are good languages for the things they were intended to do, they are not Java. The are unweildy adolescents by comparison. The simple proof of this is that the community isn't satisfied with them it's not trying to move to them, it MUST co-opt something else that it couldn't create.

Trademark smademark. You know as well as I do that there are a billion ways around that. The API is open you can call the JVM the CVM if you like. Don't be silly. You are right nobody is talking about Co-opting Java, I bet most people have never even thought about it that way. I'm sure that that there are plenty of people whose intentions are to help Sun along, to benefit Sun. That is naive. The OS community wants more control over Java, that is all it wants, in the end that means it wants contol over Java.

JSF love it. Makes web programming like GUI programming. Sun has to compete, I agree. Sun has to compete with products IT DIDN'T CREATE.

Yes and very few people listen to classical music either, and very few people use BSD, and there a million more PHP programmers that Java programmers. Most people like rock music, it jives with their souls. Most people like the idea of getting something for nothing... doesn't make it good. People are running from Solaris to linux because they have to install gtar so they can type tar xjf instead of piping from tar to bzip2, they are running because they like the culture, because it's cheap and most OS software installs easily without having to install all the supporting libraries, not because it's technically superior. You know better than that. I can tell.

:) peace out.

2005-05-18 14:58:02
What problem gets solved?
I have participated in many discussions on this issue (some even with Gosling himself and other Sun guys at conferences).

I agree with them when they say, (as engineers) "What problem does this solve? What can't you do with the language because it isn't FOSS?"

I think that the process around Java and its related components is pretty transparent and there are lots and lots of non-Sun people involved. Sun has been a very good steward of Java lately and I don't see what's wrong.

The only issue that I (and people at Sun) will grant is that if someone else buys Sun or it somehow sells off Java or they get new, evil managers, then all bets are off. If this is what people fear, then I'm OK with what Harmony is doing. Otherwise, it seems like a big waste of time.

2005-05-18 19:04:46
silliness - back at ya
Where do you come up with the idea that java is any good? You sound like a evangalizing programmer. I've spent many, many, many horrible late nights and early mornings nursing large-scale enterprise java applications purchased from the some of the biggest companies in the world to process things for a website! Java is full of market trash and so flooded with "new technologies" that it's really unsuited for real enterprise software (read stability and predictability). It's taken over ten years to get garbage collection even close to functional and you're saying that a volunteer project can't produce the same "quality?" I would say that any CS grad student with a safari subscription and the ability to type the word "yacc" could produce the same quality as java.

And where does anything say people are running away from solaris? Sun x86 hardware is the only x86 server I've seen worth a damn. And why anyone would choose to run linux over solaris is certainly beyond me. Red hat is more proprietary than sun/solaris.

2005-05-18 22:22:07
open source java
It's not even Linux support. Try finding a modern JVM for Linux on anything besides x86 (and maybe AMD-64)!
2005-05-19 05:51:38
silliness - back at ya x 2
Alright zero11, finally some discussion.

Stop throwing ESR's name around. - he is tangential to the discussion. Every time anyone talks about open source they always seem to jump straight to the GPL, again, not what Harmony is doing.

And, no one is talking about making Java an "Open Source language". What Harmony is doing is creating a open implementation of the JVM most-likely based on the APR. You want reasons, here are some reasons:

1. Portability - build upon the APR and port to as many platforms as possible.

2. License - a bunch of us are trying to build automated solutions that bang up against Sun's click through - give me a world without core libraries that are "free" and "open source" but require me to click a binary license. It is already happening with jta, jdbc, why not the jvm itself?

3. Transparency - Sure Sun let's us vote on which bugs we want fixed, but I'd like to see a JVM where it doesn't take a few years to fix the non-threadsafe SimpleDateFormat class.

As far as attacking a friend, want are you talking about? Did the blackdown team "attack" Sun just by simply proposing to create an open source implementation? After all of this, people still have to go through the JCP, and expert groups are still going to be charting the future. I've always had mixed feelings about the JCP, but I've come to terms with it.

JSF, c'mon, love it? Can't say the same myself. But then again, I prefer to give Sun's "standards" a few years to gel - remember JSP 0.99?

As for classical music, I listen to it almost exclusively AND I use Linux. Got ya. No but seriously, I can't abide by Solaris for a few reasons - package management on Solaris can't touch yum, apt, or ports. Go ahead, call this shallow, but TCO trumps "technical superiority".

:) word to your mother

2005-05-19 16:21:36
silliness - back at ya
Pick your opensource language to compare against Java … Please? Python? Ruby? Perl? Not a single one has the breadth or depth of Java. They are good languages for the things they were intended to do, they are not Java. The are unweildy adolescents by comparison.

Please excuse me while I laugh myself silly. I have no idea where to even start dismantling this notion.

Java is a regression; it moved the world forward in exactly one area: by popularizing automatic memory management. But it’s still stuck with the APL machine model. It’s outright paleolithic.

If you want to deny that the class library is anything but byzantine, be my guest.

Whether Java is so mature and well-engineered, well, I challenge that notion as well. An open source process is not even capable of producing something that bad; it would collapse on itself before it reached any conclusion.

The simple proof of this is that the community isn’t satisfied with them it’s not trying to move to them, it MUST co-opt something else that it couldn’t create.

The simple fact is that they’re aping the popular thing because that’s what people do. Most people have no concept of good design; they don’t notice how bad the things they are used to are, much less have a clue how to improve on them. So what do they do? They ape the popular stuff.

And the popular stuff is what’s been marketted well.

2005-05-19 19:26:17
silliness - back at ya
aristotle: Whether Java is so mature and well-engineered, well, I challenge that notion as well. An open source process is not even capable of producing something that bad; it would collapse on itself before it reached any conclusion.

Hmmm...so back to the original question. Should there be an ASF implementation of the JVM. Well, yes, for the very reasons cited in the blog post you linked to.

aristotle: Most people have no concept of good design; they don’t notice how bad the things they are used to are, much less have a clue how to improve on them. So what do they do? They ape the popular stuff.

Bad command or filename: ape

2005-05-20 15:15:45
silliness - back at ya
Should there be an ASF implementation of the JVM?

I’m neutral on the issue, personally. But I certainly understand why people feel they need one, and I don’t really follow the arguments in opposition to the sentiment.

Not that I think it matters: there is nothing Sun can do about it, so if enough people feel the need, it will inevitably happen. Sun can try to extract profit from the events if they are smart, but that’s about as much as they can do.

Bad command or filename: ape

Partial quotation from WordNet® 2.0:

ape, v:
imitate uncritically and in every aspect; “Her little brother apes her behavior”