Open Source: A Better Development Model?
Open-source development methods could be characterized as a sort of loose confederation of techies working independently on a particular piece of technology. An appropriate metaphor would be a bunch of self-directed construction workers coming to the site of an ongoing building project. Some might add bricks that send the structure soaring higher, while others will contribute building blocks that make it expand outward. Still others will show up with a wrecking ball and knock down portions of the edifice. The funny part is, even as this building acquires utility and even begins to get occupants, the construction won’t stop. The project is never really finished, as there are always improvements to be made.
The open-source community has long trumpeted the efficacy of its particular model of development, especially in comparison to proprietary techniques. One can’t deny that many technological successes have come about thanks to the open-source community, but can it really be called superior? Or are the OSS crowd’s claims just so much braggadocio? Let’s take a look at the tale of the tape:
Fluidity: One important benefit of open-source development methods is that they’re flexible. Copyleft developers aren’t constrained by the intellectual property considerations that come with proprietary software, so they can make changes more or less as they like, provided they follow free software standards. These open-source cats generally know what they’re doing when it comes to software because they pay close attention to their coding. Continual tweaking of and experimentation with the code can lead to rapid performance improvements in software. And if a bug pops up, developers and users alike (actually, they’re the same people much of the time) can work together to squash it.
Community: Speaking of working together, that’s precisely what open-source developers do. Don’t let the appearance of autonomy fool you. There is a great deal of camaraderie within the open-source community. It just feels like a community, infighting between Linus Torvalds, Richard Stallman and others notwithstanding. Much of this is admittedly defined negatively, especially in relation to operating-system market leader Microsoft. But hey, rivalries have helped shape some great teams. Just ask anyone who’s played football for Michigan, Ohio State, Alabama, Auburn, Texas or Oklahoma.
Innovation: When observing the zeitgeist of the open-source movement, one gets a sense of their belief that they’re changing the world, or going to change it. Their attitude is very much in keeping with the spirit of IT innovators 20 to 30 years ago. Working vigorously in garages with few resources but fresh, unconventional design concepts, they were behind some of the most significant technological achievements to date. Naturally, many of the most talented young IT professionals are attracted to this development environment, which will help ensure that the open-source community will continue to be a source of innovation.
Dogmatic: One of the most off-putting things about this group is how convinced of its own rightness it is, and its almost religious devotion to its own ideas. And one of the central tenets of the open-source ideology is that people shouldn’t be able to own what they create. Stallman, the founder of the Free Software Foundation, sums up this argument nicely on his personal Web site: “It is not surprising to me that an official whose title includes the term ‘intellectual property rights’ would act in…grasping, greedy fashion…The term is propaganda and interferes with clear thinking about the various disparate laws it lumps together. In general, anyone who uses the term is either trying to confuse you, or confused himself.”
Decentralized: Another downside of the open-source community is that it lacks real leadership. There’s no company, no individual that anyone can point to as the leader of this group—no flag to rally ’round. Thus, there’s no unifying goal that all these folks are working toward. To be fair, though, they might maintain that this is one of the advantages to the open-source community…
The Back End: Although freeware, and a good deal of free software, is available to users at no cost, there are certainly expenses associated with adoption of open-source technologies, which include training and support. Yet most of the people in the open-source community are not trainers or support professionals, but rather programmers and developers. This means that much of these back-end solutions had to be both created and financed by the organization using those open-source products, which in some cases led to high outlays in terms of time and money. The upside is that open-source companies such as Red Hat and Ubuntu now offer—indeed, derive their livelihood from—support, training and other services around their distributions.
A word like “better” is subjective, and it’s not easy to say yea or nay to the question of whether the development processes involved with open-source software are better than their proprietary counterparts. Maybe the best way to measure the two is by examining their respective effects on the industry. After all, IT is a business, and the most important thing in business is results. And one of the most significant consequences of open-source development techniques is their widespread adoption (an implicit endorsement) by proprietary giants over the past few years. Even Microsoft’s getting on board!