Open Source - A Divider?
So the other day, I posted about Java not seeming to be so cool anymore. And I obviously know cool -- I had enough sense to actually grab a mandolin when it came time to have my O'Reilly website picture taken (for the humor-impaired, that was a joke. Gotta' get out from behind the computer once in a while, people!). In any case, it caused quite a stir, it seems, with people agreeing, disagreeing, and coming down in the middle.
Rather than trying to post some sort of follow-up, though, I'd rather let that debate rage for a while. I actually think we desperately need some more discussion like this going on -- rather than this sort of boring "Is JSF going to properly incorporate Struts into the JSR?" I'd rather see some people be passionate about what they (presumably) spend 8, 9, or 10 hours doing. And yes, I get that you can be stable and mature, and not cool, although I would argue that this does not preclude there being cool aspects about a language. But, enough of that. I said I wasn't going to do that discussion today...
So I picked another topic, hopefully just as disagreeable (if you can't tell, some of my best experiences have come out of a really juicy argument or disagreement). What are you going to rant on today, you say? Well, I'm actually a little tired of the Java-open source dynamic. Here's another discussion that's raging along, with relatively little interaction between the really smart people on both sides. Instead, we seem to have lots of little skirmishes between worker bees, when nobody is looking.
I think about JavaOne, when there was this pseudo-panel on open sourcing Java. Personally, I thought it was a complete joke. First, when Tim O'Reilly asked who had ever used open source software before, there was a fraction of the audience that raised their hands -- I think calling it 5% would be generous. So it's obviously a discussion without context. And, surprise surprise, almost everyone (oh, let's say, the other 95%) was for Sun keeping control of Java. Now, pardon this next statement, but....
Now, I don't have a problem if you want to leave Java in the hands of Sun. I disagree, but you're welcome to your opinion. But I completely reject that notion that anyone can speak intelligently on something they know nothing about!.
How can someone who admits they have never even used an open source software project say open-sourcing Java is a bad idea? How would they even know? Come on... let's at least have a sane, reasonable discussion, rather than just closing our eyes and arguing. That's not how people in a -- supposedly -- intelligent society communicate. If you hate open source, you better have a good reason, and it better involve at least some minimal experience with open source software.
On the other hand -- and here's where I hack off everyone who's still nodding their heads with me -- how about the idea that when people come to open source software, we leave them with a good impression? Look, I've started several projects (Turbine with Jon Stevens, JDOM with Jason Hunter, and Zeus) and been involved with many many more. And so often, those projects have this massively high barrier for entry.
- I mean, we're not going to comment our code, because we're real uber-hackers, right?
- And heaven forbid there is documentation. Come on -- O'Reilly is supposed to publish that for us, aren't they? Besides, nobody around here reads the instructions first, anyway.
- Mailing lists and CVS are plenty easy for code access. You don't know how to use those? Oh, get a life, and come back when you're smarter.
- I know it says it's version 1.0, but this is open source. Bugs are pretty normal around here. Get used to it.
Now, before you start throwing tomatoes, I realize that this isn't true -- in part or in whole -- about every open source project. But I'll bet you at least one of these applies, to some degree, in almost every open source project (I have a stronger opinion than that, really, but I'm feeling nice). So no wonder some of the folks check out this stuff, and say, "Thanks, but no thanks."
OK, I could go on, but this has been plenty for today. I think the point I'm making -- and I hope you're not so angry that you've stopped reading -- is that both sides have a lot of work to do. But, this sort of idealogical battle is a dumb way to approach things. I'd rather see the closed-source guys actually check out some open source projects before turning up their noses at the idea. And, those of us who are open source types (and I strongly consider myself one of those) -- well, we need to start taking this stuff seriously. I realize that most of us code late at night, after working a "real" job, but if we ever want this stuff in mainstream use, we've got to take the same stringent approaches to projects and releases that the big boys do.
BTW, if you hadn't noticed, the big open source players that are getting traction all have worked hard to deal with every point on my rather sarcastic list above. Might be something to that, huh? So bring it on -- intelligent responses very much welcomed!