On The Cathedral and the Bazaar (Irrational Software)

I found The Cathedral and the Bazaar, by Eric Raymond (available online here) a bit disappointing. I started reading it some months ago, during compiles at work, and got stuck on the last chapter, but now I have finished it.

The paper lists no less than 19 rules, or principles. Some of them are applicable to very few projects outside the open-source world – such as “Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.” Others are very specific to certain problems, such as “When writing gateway software of any kind, take pains to disturb the data stream as little as possible – and never throw away information unless the recipient forces you to!”

What I hoped to find in this book was a set of principles defined from studying the nature of open-source projects, covering social aspects and explaining the open-source world as an ecosystem. However, some of them could be transformed into such rules and principles:

  • When you lose interest in a program, your last duty to it is to hand it off to a competent successor.

  • Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.

  • Release early. Release often. And listen to your customers.

  • Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone.

  • If you treat your beta-testers as if they’re your most valuable resource, they will respond by becoming your most valuable resource.

  • The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.

  • Provided the development coordinator has a communications medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one.

What I find interesting is regarding open-source as an ecosystem. What are the local actions of participating agents that make the ecosystem work the way it does? To me, the process that Eric Raymond writes about is driven by a single individual, or a small group of individuals. The actions of these people are the most significant for the behavior of the ecosystem. The actions of the myriad of people discovering bugs and submitting patches are subordinate. In a real ecosystem, there sure are organisms that have greater impact on the ecosystem, but there are no master planners as in open-source projects.

In Mob Software: The Erotic Life of Code, Richard Gabriel and Ron Goldman write about a possible ecosystem beyond open-source. They also have developed a pattern language (PDF) for the Jini community, which they call (in Mob Software) “one of the first explicitly mob-software projects.”

(By the way, I posted a Christopher Alexander quote from Mob Software earlier – see my post Pattern language, team culture – which seems to invalidate Raymond’s choice of analogy for closed source: the cathedral. The quote suggests that cathedral’s weren’t any more master-planned than open-source projects.)

Note: I have edited this post quite heavily to make it intelligible.

The above was posted to my personal weblog on October 24, 2002. My name is Peter Lindberg and I am a thirtysomething software developer and dad living in Stockholm, Sweden. Here, you’ll find posts in English and Swedish about whatever happens to interest me for the moment.


Related posts:

Posted around the same time:

The seven most recent posts:

  1. Tesugen Replaced (October 7)
  2. My Year of MacBook Troubles (May 16)
  3. Tesugen Turns Five (March 21)
  4. Gustaf Nordenskiöld om keramik kontra kläddesign (December 10, 2006)
  5. Se till att ha två buffertar för oförutsedda utgifter (October 30, 2006)
  6. Bra tips för den som vill börja fondspara (October 7, 2006)
  7. Light-Hearted Parenting Tips (September 16, 2006)