The Cathedral and the Bizarre


Copyright (c) 2000 Wade Walker

I'm not going to do my usual beat-around-the-bush routine, I'm just going to fucking come out and say it - I think open-source development is the stupidest idea since cosmetic rectoplasty. Now let me tell you why.

There are some programs that geeks need in their everyday lives. They need little toy OS kernels like the original Linux, because they just took "Intro to Operating Systems" in college and decided that process scheduling is the coolest thing since femoral intercourse, so cool that they had to write a kernel themselves, even though Ken Thompson wrote a perfectly good one for Unix back in fucking '69. They need programs like Apache, because lots of them work at poor-ass independent ISPs that can't afford to pay for commercial HTTP server software. And they need Web browsers, because lots of them are Microsoft playa-hataz and won't use any software that helps keep Bill Gates' mansion teeming with willing sex slaves.

For these kind of programs, open-source development is a perfectly fine idea, as much as I hate to admit it. The people who use them are all programmers or programmer wanna-bes with huge chips on their shoulders who're dying to sink their massive programming hard-ons balls-deep into someone else's hot spaghetti code. It's natural that all these guys should band together for a mutual circle-jerk. Just don't try to make me use the results.

For any other kind of program, anything that's either unsexy, tedious to write, or that has to be slick and easy to use, there's never going to be a good open source version. Take windowed operating systems for example. Linux is fine as a free version of Unix that runs on the PC. But as an operating system that competes with Windows, it's not even close. Just because you start your measuring tape at your coccyx and the number at your cockhead says 10", that doesn't mean you're hung like Ron Jeremy. And just because your system has rectangles you can drag around on the screen doesn't mean it's as good as Windows.

There are ten million little bits of code in Windows that Microsoft had to pay some guy cocksucking money to write because they're so boring. Like all the device drivers for every peripheral all the way back to the teletype, the zillion-and-a-half autoshapes in Word, the code behind all the million billion menu options and checkboxes everywhere in Windows. That shit's never going to get written for Linux, because no programmer worth his carpal tunnel is going to write it without getting muthafuckin paid. It's not nearly sexy enough. You can't hang out on IRQ and brag to other programmers about how you spent two months getting the autodocking button bars working right on Win2K the same way you can about fixing a bug in the Linux kernel and getting the chance to give Linus a virtual pimp-slapping.

Plus, open-source software can only be used by programmers, so you're catering to a microscopic market. There's no way in hell I can hand the RedHat CD to my mom and expect that Linux will ever be properly installed on her PC. At least not unless she draws a pentagram around her computer and offers up some steaming herring entrails to summon the evil avatar of Tux the Linux Penguin, He Whose Name Shall Not Be Mentioned Except By -=L33T H4X0RZ=-, to do it for her. But she can upgrade Windows herself with just a few button clicks and a bit of luck. Open source is fine for people that don't mind perpetually jacking with their OS and programs, but for the rest of us who just want to get some fucking work done, it's a pain in the ass.

Adding insult to injury, proponents of open-source development also claim that their software is more stable and better written than normal code, since the programmers working on it know that their work will be scrutinized by countless other programmers after it's written. But I'm looking at the source code for Linux right now, and while it's not the worst I've ever seen, it's not the best either. Functions usually don't have any comments explaining what they do, parameters and local variables aren't commented, gotos are used liberally-it's just what you'd expect from any random piece of code. I don't think the heads of the commercial software companies of the world are reading through this code during their postprandial office blowjobs and watching visions of their impending doom superimposed on the tops of their paramours' heads.

And Beelzebub help you if you try to run this stuff on an old computer, or one with some cards in it that none of the hackers working on the code happen to own. Device drivers and such are usually written for Linux as people happen to stumble across them, so if you're the first one to find a problem, you either have to fix it yourself, or have your cosmetic surgeon put in that unhingeable snake jaw you've been saving up for so you can blow enough Linux hackers to get one of them to fix it for you. Real software companies have huge rooms full of old-ass computers running old, crappy versions of the operating system, with old, sucky peripherals, the kind of stuff no hacker would be caught dead using, specifically so they can make sure that new versions of their programs work on the majority of installed systems in the real world. Open-source software works only on the systems that the hackers maintaining it happen to own or care about enough to get it running on.

So what's the point of all this? Why bother to write another operating system or Web browser or language if plenty of good ones already exist? It comes down to one simple reason-jealousy. Lots of people think that if some company-and I'm not mentioning any names here-is very rich and successful, they must be de facto evil. Then they claim it's virtuous to resist that evil by creating free products that compete with it.

Paradoxically enough, all they're doing is helping the one they hate most to become even better. If Netscape had never existed, would Internet Explorer have been improved so quickly? I don't think so, baby. And since Microsoft is willing to spew the mad cheddar for development, there's no way the open-sourcers are ever going to catch up unless they squeeze off an equal amount of fromage, which they're not going to do. The demand's just not great enough.

If the vox populi was really crying out for a new and improved operating system, someone would start a credible company to write one, get a big investment from a consortium of VCs, and take a shot at Microsoft's cornhole. The problem is, there's not enough demand to justify the amount of money you'd have to spend to get it in past the glans. Sure, everyone's got a few bitches about Windows, but most of the time it works well enough that people just don't care enough to change. And you couldn't beat Microsoft with your version 1.0, either-you'd have to release several versions, taking huge losses the whole time, until you're just as good as them. Then maybe you could finally start earning money, if you're still alive. Why not just cut straight to the muthafuckin chase by giving away all your money, then starting a different company that makes something you can get paid for?

So why don't all these open-source hackers start real software companies? Because that would mean they'd have to write some piece of software they could get paid for, something there's a demand for-in short, probably the very same thing they're already doing at their day jobs. So they should do what everyone else does: either ante the fuck up, or stop pretending it's something other than a hobby.

respond to this writing in magnilocution

back to Doc Walker's corner