6 ms·
According to phkamp, iOS is a cathedral kind of project. I was hoping someone would bring up OS X and how horrible its cathedral-born API became around 10.5, b
by thebooktocome 14y ago
According to phkamp, iOS is a cathedral kind of project.
I was hoping someone would bring up OS X and how horrible its cathedral-born API became around 10.5, but I was born in '85 and therefore have no right to speak in this thread.
- jballanc 14y agoWhile Apple would certainly like you to believe that the image of iOS sprang, fully-formed, from the mind of Steve Jobs like some sort of medieval cathedral, the reality is anything but. In fact, much of Apple's success is due to the extent to which it functions like a confederation of very well funded startups. Cupertino is very much a bazaar, wherein a shopper with very refined tastes (Jobs, for example) can pick and choose the finest wares. This article concludes that quality only happens if someone takes responsibility for it. Yes. You'll find no argument on that point from me. But cathedral's are not (edit: should say "not only") about one person taking responsibility for quality. They are about a priori design. Quality control can happen ex post facto but creativity, once strangled, dies.
- ori_b 14y agoI'm going to drop the cathedral and bazaar analogy, because I don't feel like debating the exact meaning of the terms. It seems to me that quality is about having someone on the top who is willing to give direction and vision to a project, instead of having every person who scratches their own itch full influence. Contributors are great. But letting everyone pull in their own direction doesn't lead to something that feels well engineered. PHK seems to be calling this vision and cohesive design (a-priori or not) the "cathedral model". I agree strongly that for a project to work well and feel "high quality", it needs some source of a unified idiom.
- jballanc 14y agoThe problem is that coherent vision and a prior design are NOT equivalent. Obviously, I cannot know what was going through the head of ESR when he wrote the original essay, but what I've always taken from it is that a priori design is inherently inflexible, prone to becoming disconnected from reality, and ultimately less inviting to creativity. If the suggestion of the article is that the only way to retain quality is to move back to the "single vision" world of a priori design, I'm sorry...that ship has sailed, the cat is out of the bag...whatever your favorite analogy, PHK is very right that the new generation has gotten used to not having instructions handed to them. Of course, anyone is free to start a project with a single vision, recruit new members, and do their best to grow the project. I suspect, however, that such an effort would loose out to one that figures out how to develop a coherent vision without the need for a priori design.
- phkamp 14y agoBrooks spends some time discussing these issues in the book, and I'm pretty much aligned with him: Nobody belives in "a priori design" and I somehow doubt that anybody did. Brooks points out that the original publication of the "waterfall model" was meant as "how not to..." and people got that wrong. But cathedrals are not about a priori design, they are about style, elegance, economy of means and coherency of design. But my point in the piece is that the lost generation doesn't even know what a cathedral is in the first place, having grown up in the bazaar.
- jballanc 14y agoBut did they grow up in the Bazaar? or in the Mad House? ESRs original prototype for the "Bazaar" was Linux. Do you feel that Linux is lacking in coherency of design? You refer to the dot-com bubble, but the problem with the bubble wasn't, I think, that it was the "Bazaar". Indeed, I don't think the dot-com bubble of the late 90s was characterized by much open source development at all! It was, rather, consumed with "flashiness" and "wow factor". I definitely see the continued obsession with these things as a problem. I would say that, for example, much of the obsession with Node.js today is a consequence of this obsession. But that isn't a Bazaar. It's a disco.
- btrask 14y agoCan I, the customer, pick and choose the finest wares? If not, it's not a bazaar.
- dllthomas 14y agoThe original essay is about how you build a cathedral versus how you build a bazaar, not what you use them for.
- doktrin 14y agoAccording to phkamp, iOS is a cathedral kind of project. This is true. The OP has made several somewhat-arbitrary and vague assertions about what may or may not constitute a "Cathedral", on top of lambasting others for not agreeing with his definition ("Read Brooks Book") Excerpts from the HN discussion : "Windows and Office are actually not examples of cathedrals, because the architectural focus of Microsoft was not on software but on a near-monopoly market." -phkamp "...iOS is very much a Cathedral and has a designer and architect who cares and who is in control." -phkamp Does Apple not care about achieving market dominance? Did no version of Windows or Office have a lead architect who "cared"? Frankly, the entire concept of a "Cathedral" - rigidly defined as it appears to be here - is a little nebulous and hand-wavy.
- phkamp 14y agoYou never read ESR's essay/book, did you ?
- brlewis 14y agoI read ESR's essay. He was protesting how hard GNU makes it for outside contributors such as himself. Somehow the essay got construed as open source vs. closed source, and ESR pivoted to align with the popular interpretation of his essay. I've never read the book (someone would have to give me a really good reason), but I assume it doesn't focus on GNU. You're calling a ot of people out on using Microsoft as a cathedral example, so I assume you want the original bazaar-vs-cathedral reading of the paper. But if you do that, how can autoconf be a bazaar example, when it's GNU software?
- tedunangst 14y agoIn a world where software is designed by cathedrals, there is no need for autoconf. You read the POSIX spec and write software that conforms to it.
- brlewis 14y agoThat is true. But the article decries autoconf's implementation, not just the need for it. It implies that cathedral designers would never implement it, or if they did implement it, do a better job.