Linked by Michael Klein on Sat 5th Jun 2004 06:48 UTC
This was a letter I recently wrote to Sun's head of global communications, Russ Castronovo, after reading his interview with Chuck Talk on orangecrate.com, and then reading the ongoing pro-/anti-Mono arguments over at PlanetGnome. Now that Sun seems to be on the brink of making the decision to open-source Java (or not to), I thought it would be an appropriate time to take action.
Permalink for comment
To read all comments associated with this story, please click here.
by Shapeshifter V.90 on Sat 5th Jun 2004 19:12 UTC
A tale of parallel dimensions!
Dimension one:
"Hrm. The code in this Swing class is kinda buggy. If I just do this..."
*an hour or two of code tweaking passes*
"There! Now its about 25% faster. Not bad, but at least my cursor doesn't lag anymore. "
"Hm, now what? Shoot... I can't redistribute the modifications, but I can submit them to the JCP as a patch."
*six months pass, the patch is accepted and rolled into the next Java distribution*
"...well, I only had to wait six months."
Dimension two, divering from dimension one after the hacking effort by one lone, rebel coder with a cause:
"Well, this is pretty good. Let me host the library on my webserver and see if any projects want to include it."
GNU Classpath, working off of derived libraries from Sun (because they are free to do so now), scratches their chin, nodes, and assimilates the modified library into The Collective. Now they have a faster Swing implementation. GUI applications for Java suck a little less, suddenly. They ensure the library can be used as a drop-in replacement (and it can!), then they add it to their next minor point release a week or two later, though nothing stops people from just downloading the library and plunking it into their Java distro of choice by hand.
Dimension three, occuring after submission of the patch or library to one of the open source Java efforts:
A GNU Classpath maintainer: "Hrm, this patch is good but it breaks some things. I'll go in and fix them then once I'm sure its API-compatiable, drop it into the main trunk."
Why make bother improvements if you can't distribute them?
A tale of parallel dimensions!
"
Dimension one:
"Hrm. The code in this Swing class is kinda buggy. If I just do this..."
*an hour or two of code tweaking passes*
"There! Now its about 25% faster. Not bad, but at least my cursor doesn't lag anymore.
"Hm, now what? Shoot... I can't redistribute the modifications, but I can submit them to the JCP as a patch."
*six months pass, the patch is accepted and rolled into the next Java distribution*
"...well, I only had to wait six months."
Dimension two, divering from dimension one after the hacking effort by one lone, rebel coder with a cause:
"Well, this is pretty good. Let me host the library on my webserver and see if any projects want to include it."
GNU Classpath, working off of derived libraries from Sun (because they are free to do so now), scratches their chin, nodes, and assimilates the modified library into The Collective. Now they have a faster Swing implementation. GUI applications for Java suck a little less, suddenly. They ensure the library can be used as a drop-in replacement (and it can!), then they add it to their next minor point release a week or two later, though nothing stops people from just downloading the library and plunking it into their Java distro of choice by hand.
Dimension three, occuring after submission of the patch or library to one of the open source Java efforts:
A GNU Classpath maintainer: "Hrm, this patch is good but it breaks some things. I'll go in and fix them then once I'm sure its API-compatiable, drop it into the main trunk."
Why make bother improvements if you can't distribute them?