Hacker News new | past | comments | ask | show | jobs | submit login

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.

You diagnosis of its qualities are spot on.

"ad hominem" means to "attack the man", ie: I single identified man, saying some generalities about identifiable groups is not "ad hominem".

And yes, I am a grump old man, and a surprisingly cheerful one at that.




This sounds a bit "No True Scotsman" to me. Most commercial projects that I've seen eventually grapple with the same sorts of issues that you mention. When they've faced diverse deployment environments, the results have often been worse than autoconfigure, from what I've seen. I guess that's because they aren't cathedrals, since the businesses behind them were focusing on market-demands instead of whatever it is that Cathedrals focus on?

Your remarks are essentially Ad Hominem regardless of whether you single out 1 man or 100 individual men.


Half of this thread is unfortunate terminological noise, but phk did specify what he means by "cathedral" – software governed by a coherent design vision – and Windows and Office are not only not that, they are the poster children for not that.

The words "cathedral" vs. "bazaar" have obviously gotten too vague for people to meaningfully argue about. But "coherent design vision" has a much clearer meaning, and an enormously important one.

I think the pendulum is bound to swing back from incoherent, hypercomplex software, because at some point the reductio that we've got today simply won't be able to adapt. Who knows what will trigger that, or when. But intelligent people will always care about simplicity, beauty, efficiency, and the other qualities that come from good design. And among the ignorant programmers there are more than a few whose eyes light up when they are finally exposed to good design, and want to learn to work that way. I'm an example. So there's no point of no return here.


Once again, you're veering into "No True Cathedral" territory here.

The UNIX design philosophy -- small utilities loosely joined into a coherent whole -- is a coherent vision for a platform, under the definition you've repeated. And the Microsoft Office design philosophy, if what you're saying is true, is a bazaar because it's "incoherent."

If the UNIX ecosystem is a Cathedral and the Windows ecosystem is a Bazaar, I think we can safely say that you're not using the words that way the classic essay used them, and that the definitions you're using are malleable enough that any argument about aesthetics could bend and twist them into synonyms for "stuff I like" and "stuff that annoys me."


Well, as I meant my comment to convey, I don't think "cathedral" and "bazaar" are well defined, so most of the disagreement in this thread is just crosstalk. We can argue about what the original essay meant, but I don't find that very interesting. Software design on the other hand interests me very much. I don't have any problem provisionally accepting phk's definition of "cathedral" in order to hear his thoughts about design, most of which strike me as sensible.


So a "cathedral" must be "coherent" to be a true Scotsman?

Coherency cannot be measured, and it's extremely subjective. The *nix world can be extremely coherent: for example, you'll always find libtool, whether you want it or not, and your '70s-like filesystem layout. Isn't that "coherent" with its history?

This is not true even of Android and iOS, the modern wonderchildren he cheers on: a quick look at the Android filesystem hierarchy will show its adherence to outdated conventions (etc?) and incoherent repetition (sys? system?), and I bet you'd find something similar in iOS. So there might be a "coherent vision" behind, but the practice is quite incoherent; and mind, we're talking about very basic OSs that delegate any but the most basic functionality to third party apps. I'm happy to bet that in 10 years, the Android codebase will be as shitty and crufty as any Unix.

The truth is that a cathedral, in phkamp's rant, is "software that can all fit in one's head". For all operating systems, we're well past the stage where a single genius architect could envision the totality of a massive cathedral, for a number of reasons (time, working culture, legacy tech etc). Clearly phkamp, being more intelligent than most, only just passed that threshold with the very latest FreeBSD release, and felt the urge to tell the world.


I honestly can't tell what you're trying to say. (Other than the last bit, and that part is needlessly noxious.)

"Software that can fit in one's head" and "coherent design vision" are closely related things. I'm in favor of both. If you're saying we're past the point where that's feasible in real-world systems, that's just assuming the conclusion – the wrong conclusion, in my view.


"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."

So, you are defining "cathedral" as "good"?


You seem to be saying that an ad hominem is no longer an ad hominem when you substitute "a lot of you" for "you". The Latin may be singular, but I don't think you can expect English speakers to treat it as strictly singular.


Not a cathedral because it was not on a software but a near-monopoly market? I love taking metaphors too far, so I'll just notice that "near-monopoly" is what cathedrals are all about.


Try reading again ?

Microsoft didn't architect their software as software, they shaped it as tools of monopoly enforcement.

There are numerous accounts from people involved about how marketing decisions relating to cutting of 3rd parties or trying to bludgon somebody into submission caused them to cripple their own software and its architecture.

See the evidence in the M$/Novell case for ironclad evidence of this.


I hate to point this out, but that is just one of the benefits of the cathedral model: you get to inject alternate agendas into the project. The more bazaar-like a development model is, the less outside priorities factor in.


Actually, the amusing thing is you're still reinforcing the cathedral metaphor. If the primary target of the cathedral was an event hall capable of housing a bunch of people it could have been built in a way more reasonable way. The point of cathedral is to be the biggest and most impressive kid on the block. Therefore I'd say that MS was designed in a cathedral way to achieve cathedral goal.


M$? Really? I thought HN and seasoned OSS developers were above this kind of petty name calling and sneering.


You know, first time I encountered the "M$" shorthand was in a TELEX (look it up if you don't know what that is) from Commodore Corporate about pricing of the the PC10 computer. I have used it ever since, based in part on what was not very diplomatically expressed in that missive about M$'s attitude to licensing.


> a TELEX (look it up if you don't know what that is)

This kind of passive-aggressiveness only reinforces the grumpy-old-man stereotype and makes it really hard to take you seriously.


Just because you read it a long time ago doesn't make it less petty or silly.


as long as I can use the term I coined: "open shit"


Actually, the proper traditional way to insult Open Source is "Open Sores". Use that and the feeling I got during flame wars between high schoolers on IRC channels in the late nineties will be complete.


A friend of mine is really big on the term "freetard" for open source software.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: