Saturday, November 27, 2004

The Lure of Open Source

I haven't really discussed open source often. Well, actually, hardly ever. But the movement is extremely fascinating. I have two posts to make, thanks to Andrew, but let's make them one at a time. That guy is getting annoying, always stirring my mind. Perhaps I better stop reading. On to the first post.

What is it I find so alluring about open source? Here's a quote taken from Breaking Windows: How Bill Gates Fumbled the Future of Microsoft. Great book, I used it for my 374 paper and it changed my life. OK, not really, but it did shift my thought paradigm regarding organizational crisis management. And actually, Bank really took the quote from an internal report written by some Microsoft employees. Yes, I totally recommend this book to anyone that is interested in what makes companies rise and fall; it's like The Innovator's Dilemma in action. But on to the quote. :) Erm, me quoting Bank quoting the Microsoft guy, rather.
A Microsoft engineer named Vinod Valloppillil was commissioned study the threat and found that “the open-source process was in many ways better adapted to the new dynamics of the software market than Microsoft’s own centralized structure. Open-source projects easily draw talent from anywhere in the world, he said, scale up as needed, and demobilize just as effortlessly.” (Bank, 2001, p. 169)
I have Breaking Windows if anyone wants to borrow it. I seem to have a lot of books.... While the debate between open and closed source probably will never die, open source definitely has some advantages.

1. Firstly, you've got a zillion more minds working on the code to make it space and time-efficient, bug-free, and functional. Couple this with the fact that their motivation is purely altruistic, philanthropic, anti-corporate, whatever. The point is that they are not motivated by money and if one of them for any reason becomes disgruntled, he is easily replaced; they're all grains of sand on a beach (except Eric S. Raymond or someone like that, but even the Eric S. Raymonds and Linus Torvalds entities of this world have successors lurking in the shadows). Compare that to thousands of expensive coders being worked to the bone to meet deadlines (which can ironically lead to more bugs) and who are difficult to replace.

2. Open source software is released in stages, which vastly increases the product quality. Product quality is easier to ensure when you have a zillion eyes analyzing the code and a centillion users testing the binaries as they move from alpha stage to release candidates. The most fantastic thing is that many of these users test the software in real-life situations; that is, they use the software as if it had already gone gold. It is extremely difficult for me to believe that a traditional development shop would be as capable at catching bugs that arise mostly in real-life situations; more likely, they find the bugs after the software has gone gold. One might argue that it's unfair to put the burden of unfound bugs on individuals or organizations that use the beta versions of the software. I argue that this is not unfair. Those people should (and most likely do) understand that they are using beta software. Consequently, only the people who take the risks are actually taking the risks. Everyone else patiently waits for the final release candidate and the software still gets tested in real-life situations. It's a win-win scenario.

3. The security. Security holes will always be discovered and even exploited whether you use open source or closed source, mainly because of the ingenuity of hackers and crackers. Given this reality, what matters is who is more capable of responding to the discovery of security holes. Of course, the closed source camp would argue that this reality does not exist; we'll never know the truth until open source operating systems like Linux have enough market share to warrant attack from crackers. However, if the ability of crackers is the driving factor, it really seems to me like open source has the advantage. The open source camp has way more resources to allocate towards bug patches because 1) they have more coders, and 2) they aren't constrained by budgets and the need to balance resources for product launches.

4. The collective innovation. With open source, you have the collective creativity of minds from all over the world working together to make a great product. Knowledge is free and is used to drive further leaps and bounds of innovation. So open source is like a high-tech throwback to the old days of academia, where knowledge was discovered and use for the betterment of mankind, rather than profit. I'm not denying that knowledge creation can be driven quite well by profit. However, there comes a point when sharing knowledge makes much more sense: patents case in point. This is part of the reason why we have industry standards, I suppose. But think of how many cooler add-ons we could have for Microsoft Office if only the darn thing were more open.

Open source has more advantages, no doubt. The funny part is how the phrase "open source" can be applied to almost any type of knowledge creation now. For example, Wikipedia, the world's best (and possibly only) free encyclopedia is completely open source. The content is so diverse and accurate precisely because there are so many people constantly editing the encyclopedia for veracity and adding information. Furthermore, because it's open source and online, the content is up-to-date and covers topics that have only come into existence even within the past few months. It makes for extremely enlightening conversations with Jeff on Japanese toilets.

So Andrew has brought to my attention the existence of Open Source Theology. While concepts like this have already long been in existence (any public forum would suffice), such a site title is still pretty cool, IMHO. And the site itself looks pretty cool. My only worry is this. The integrity of an open source product depends on the quality of its contributors and testers. The quality of open source coders cannot be denied, as many of them code for a profession and contribute to open source on the side. As for Wikipedia, the number of people surfing the site is bound to have a few who are actually subject matter experts and thus willing to state the truth of the matter. With Open Source Theology, you have people dealing with subjects wherein the truth is not yet finalized. For example, the age-old Calvinist-Armenian debate; did I spell that right? I'm never sure. But when you have such differing worldviews, you end up with much differing interpretations of scripture. Consequently a concept of "open source theology" may output content that could constantly be in conflict with itself.

Then again, that doesn't make it any different from choosing books off the shelf of a Christian bookstore, does it? :) I suppose it's the same as the collection of knowledge that we have offline, so I really shouldn't have any worry at all. But there is the one aspect that it's easier for poorly-read theologian wannabes to post an article online than it is for them to get published offline. But I'll probably give Open Source Theology a read now and then; no doubt, there are a few (probably many, actually) good contributors on there.

No comments:

Post a Comment