I love this title by Michael Truscello, The Architecture of Information: Open Source Software and Tactical Poststructuralist Anarchism. (culled via wood s lot). This is another essay I have yet to peruse, but the skimming is interesting. Most of the text seems to focus on Eric Raymonds' famous Cathedral and the Bazaar essay. One of the parallels drawn between Truscello is the similarity between Cathedral and Brooks' Mythical Man-Month.
In part this links back to my previous post about language design. Do you focus on the architecture by trying to build a large edifice that will encompass all possible use cases? Or do you confine your work to a small domain that can be elegantly handled and understood? Raymond makes a distinction between the freedom, emergent properties of the bazaar style of development and desing versus the top-down, formal methods of the cathedral builders. But it occurs to me that this neglects the crucial dimension of scope. A lot of small tools can be linked together, a la Unix, into a very interesting whole, but aren't the small pieces just as rigourously designed via cathedral, linear methods. Some developer had to decide what itch he or she wants to scratch, and then advance toward solving that goal.
Hi,
You're right when you point out that the "small pieces" of a piece of software can be just as rigorously designed using cathedral-style development; however, I think the difference Raymond is getting at is in the development process, not just the final product (though in Open Source the two are obviously connected). That is, "scope" is exactly what is at stake in "bazaar" programming, because bazaar-style software development takes advantage of large-scale parallel debugging afforded by the Internet.
Thanks for noticing the article. I would be interested in your feedback, should you be interested enough to read the whole thing. Cheers.
Mike