Which platform: Cathedral or open source?

There are two fundamental approaches to building software, and they're often called the Cathedral and the Bazaar.

Have you ever experienced a software bug and thought to yourself, "I could fix that"? If you could, would you? How could that even be possible?

There are two fundamental approaches to building software, and they're often called the Cathedral and the Bazaar, as described by Eric Raymond over a decade ago as a presentation at a Linux conference.

"Cathedral" software is built by a group of developers based on a central plan. They code, find bugs, fix as much as they can, and then after a year or so they eventually ship a product. Much like building a cathedral where everything is painstakingly crafted and installed before the doors open. Think Microsoft Windows or Office -- monster projects with a new release every few years and point releases more than six months apart.

"Bazaar," or open source software, is created more independently. Building upon a basic kernel, independent developers improve functionality or fix bugs as they see a need. It's basically crowdsourcing for software. Well-known examples include Linux and Apache. But not Firefox or Eclipse -- while many people assume that they follow the Bazaar model, there's more to it than that, as we'll shortly see.

In the earlier days of software, the Cathedral model dominated because only a few companies had the resources and the infrastructure required for software development. But the model is flawed. Keeping control of the code within a relatively small group of developers limits the ability to both locate and fix bugs. Even when software is exposed to a very large beta, the issues found must be triaged, meaning that not everything gets fixed. Even final release software is guaranteed to ship with bugs, which is made all the more painful by the long wait for each new release.

Consider Microsoft Vista. Microsoft develops all of its software products using the Cathedral model. I could rail on about the problems users have had with Vista but that wouldn't be fair to Microsoft's developers. They have a multitude of groups to satisfy and a limited amount of time to do so. There are guaranteed to be issues.

Today, with the Internet and tremendous collaboration and social networking available, the Bazaar model exposes the code to thousands of developers, who can both find and fix the bugs. Frequent releases may make the code problematic for some companies that require a stable off-the-shelf product, but they guarantee that the it will be improved even more quickly, leading to stable releases. And the Bazaar philosophy enables the creation of "long tail" products -- a utility or app required by only a small population. Such a product might never see the light of day in the commercial world, where Cathedral approaches dominate.

More about: Apache, Eclipse, Excel, IBM, Linux, Microsoft, Monster, OpenOffice, Red Hat

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
Users posting comments agree to the Computerworld comments policy.
Login or register to link comments to your user profile, or you may also post a comment without being logged in.
Related Whitepapers
Latest Stories
Community Comments
Whitepapers
All whitepapers
Sign up now to get free exclusive access to reports, research and invitation only events.
Featured Download
/downloads/product/170/gadwin-geforms/

Gadwin GeForms

GeForms allows you to create your own forms or fill in existing forms electronically. Using GeForms you are provided with sophisticated form design tools which ...

Computerworld newsletter

Join the most dedicated community for IT managers, leaders and professionals in Australia