Sun: Trying to do the right thingApril 28, 2008 12:15 pm freesoftware, marketing
I’ve been annoyed by some of the Sun-bashing that has been going on over the past few months and years. I’ve written in the past about my belief that Sun are trying to do the right thing, and my appreciation for the investment that they’ve put into projects I care about. And yet no matter what they do, it seems like there are nay-sayers working to undermine Sun’s community-building efforts at every turn.
Here’s a few examples of Sun-bashing that I’ve seen recently:
- No projects primarily sponsored by Sun get accepted to the Google Summer of Code (unless you count MySQL). Rumour has it that Sun were told not to bother applying. Of course the Summer of Code is Google’s baby, and as such they decide who gets to participate and who doesn’t. They don’t even have to explain themselves.
- Linux Foundation employees repeatedly criticising OpenSolaris and Sun. I suppose that this is to be expected from a group that is representing its members, and sees the OpenSolaris kernel as direct competition to the Linux kernel, but it’s just as disappointing to me as when I see KDE or GNOME hackers ripping into each other
- Press articles in Slashdot   and elsewhere consistently spinning things as “Sun’s free software efforts aren’t sincere” interspersed with “Sun is ruining <insert project here>”.
I feel like a lot of this rhetoric is self-fulfilling prophecy. If you say often enough “Sun is a bad community player”, then Sun’s projects will seem unattractive to prospective volunteers.
All of this completely ignores the many great free software people who are working for Sun – to name just a few, Glynn Foster, Simon Phipps, Dalibor Topic, Ian Murdoch, Rich Burridge. These people are extremely clueful about free software and community interests. And the message which we have seen consistently from Jonathan Schwarz over the past couple of years reinforces that there is a commitment to free, community developed software, and there are many capable people working towards that commitment within Sun.
So why the difficulties? Many of them, I think, are project specific, and stem from this fundamental fact:
Community governance is hard.
Or, to be more precise, building appropriate community governance around what was proprietary software is insanely difficult.
If you look at the major Sun contributions over the years – OpenOffice, Java, OpenSolaris, Netbeans, GlassFish, GNOME, and more recently the purchase of MySQL, the only one of these projects which has been Sun approaching an existing community project and participating in it is GNOME. MySQL is also a special case, where Sun acquired GPL software.
In every other case, the projects have come from freeing a large body of code created in a proprietary environment. And every single project I know which was born like this has had trouble building a community. Ask these guys. This doesn’t just happen on its own.
When Jamie Zawinski resigned from the Mozilla project, it was one year since the code had been freed. When Joel Spolsky criticised them for not shipping product, it was over two years old. When Firefox (then Firebird) shipped its first usable browser, Mozilla was a grand old man of 4. When Firefox 1.0 shipped, the source code had been released over 6 years beforehand.
It is much easier to get governance right when it Just Happens. The guy who founded the project is the Boss. A bunch of active developers fork and become new Founding Fathers. The company controlling the software fully expects to pay everyone who will develop the software, and gets outside contributors to sign away their copyright.
In all of these cases, the expectations are set by the status quo. No-one would expect Mark Spencer to accept a feature from someone who hadn’t signed a copyright assignment. That’s not the way Asterisk works. No-one would expect a feature to be accepted into Linux if Linus doesn’t want it. People expect a consensus-based approach in Inkscape.
And yet from all of what I’ve read, some people expected Sun to go from proprietary kernel development (with a team of proprietary kernel developers, and layers of proprietary software managing managers above them) to a bazaar overnight (or, at the very least, very quickly). Perhaps that’s because of the way Sun presented this to the community, perhaps it’s because certain people knew that was an unrealistic expectation, and set Sun up to beat them over the head with the “you’re not open” stick when they “failed” to completely open the project in the first year.
Personally, I’d like to see as much energy going into helping Sun get things right as is currently going into knocking every effort they make to do so on their own. There are a great many people at Sun who don’t get it, and a great many who do. I’d like the latter to win through.