I've been reading The Hacker Ethic by Pekka Himanen lately. It's an excellent treatise on what makes hackers tick, but it's also been provoking some thoughts besides beer and polygons in my poor tormented little head.

Himanen, ESR, and probably most everyone else these days broadly categorizes development strategies into Cathedral and Bazaar. According to Himanen (broadly), the Cathedral is characterized like so:

and the Bazaar:

This dichotomy (like most of 'em) strikes me as too simplistic. There is at the least a third category midway between the two (and at most, and most likely to my mind, a continuum passing through both points), and this middle ground, I think, is where most Perl modules end up. (See, this post is on topic after all!) I don't have a snappy name or clever metaphor for this bit, so I'll settle for describing it:

I think that Perl is very well suited to this style of development. It's easy to write featureful, powerful code in Perl, which means that one or two people can fairly easily grasp a significant project. Perl also has a large, dedicated, and vocal user base, which means that hackers can (and will) get plenty of feedback from users and observers. Also, Perl lends itself to small and medium-sized projects, which (I think) are where this style shines.

For the record, I haven't finished reading The Hacker Ethic, nor have I read CatB particularly carefully.

--
:wq

  • Comment on What lies between the Cathedral and the Bazaar?

Replies are listed 'Best First'.
Re: What lies between the Cathedral and the Bazaar?
by chromatic (Archbishop) on Sep 07, 2001 at 10:05 UTC
    I think just about *everything* lies between the Cathedral and the Bazaar. ESR was none-too-careful with his imagery.

    That said, my opinion is that the biggest difference in development strategies between "proprietary" and "open" is the where the development takes place. On one extreme, the college of cardinals meets in secret on a deadline and produces prodigious amounts of black (and finally white) smoke. On the other, people duke it out on a mailing list and someone finally says, "This idea is good enough" and implements it.

    The Apache group votes yay or nay on proposals. Managers (and sometimes cowboys) make decisions in commercial settings. Alan filters stuff for Linus and occasionally disagrees. Perl has a pumpking and several lesser pumpkings. Donald Becker develops Linux network drivers outside of the mainline kernels and integrates them rarely. A piece of code may go unmaintained for a while, until no one can remember why weird things were done they way they were, and someone takes it upon himself to fix it.

    You're right. The dichotomy is too simplistic. What's in the middle? The Liberated Hacker. He has a need, whether it's fame, fortune, curiosity, or just getting work done. He works out something to fill that need. He gives it away. A thousand people check it out. A hundred people download it. Ten people try it out. One person submits feedback.

    It's not as pretty as writing a kernel or a web server or unit tests, but that's where the bulk of things end up. There are so many people at different levels of ability and time, about the only thing they have in common is the desire to make their code available.

    For what it's worth, I do agree with you, except on the planning part. That's too hard to generalize.

Re: What lies between the Cathedral and the Bazaar?
by George_Sherston (Vicar) on Sep 07, 2001 at 13:56 UTC
    I don't have a snappy name or clever metaphor for this bit

    Interesting meditation - I think the same dichotomy is instructive but simplistic in many walks of life. And I agree the middle way is where it's at.

    But surely one doesn't need to look to far to figure out the snappy name for this middle way? It has aspects of the cathedral (devotion, shared purpose, a mind on higher things) and aspects of the bazaar (many independent workers, each bringing and sharing their own skills).

    Why, it sounds like... yes, it's... it's... the Monastery.

    § George Sherston