Live data from Hacker News

A Generation Lost in the Bazaar

queue.acm.org

61–70 of 353 posts

Re: A Generation Lost in the Bazaar

#61
post #44

Lambasting libtool for providing a consistent experience across star-NIX is, imo, not the wisest move for a FreeBSDer. Article: This is a horribly bad idea, already much criticized back in the 1980s when it appeared, as it allows source code to pretend to be portable behind the veneer of the configure script, rather than actually having the quality of portability to begin with. It is a travesty that the configure ide…

That "stripped down version, one not built on M4" exists and is called CMake. I've used it and it's very, very good.

Re: A Generation Lost in the Bazaar

#62
post #29
post #27

Earlier quoted context omitted.

Why does it matter who you are? I've tried to respond to what you wrote. Why do you think most of the software we build now is like putting a man on the moon? I think it's nothing like that. Maybe I should read Brook's book (I've enjoyed MMM), but your article doesn't make a strong case for it.

Because no words are without context.

Actually, the nicest thing about HN for me is that I get to see my words evaluated on their own merit rather than what people know about me. HN has made me a better thinker and better communicator. Over the past year or so that I have contributed, I have clearly seen the way my thoughts diverge from the reality of what others believe. Sometimes I disagree and stop convincing people, other times I present arguments which are stubborn, but backed up.

You took the time to write a long essay, and present a novel idea. A lot of posters here disagree with you, but the mindset on HN has been to build first ask questions later. Convincing people in a single day to change their world view would be a huge undertaking regardless of whether you are thinking about it correctly or not.

Re: A Generation Lost in the Bazaar

#63

Architects don't build cathedrals anymore, either. Neither do most software architects. Yet, look what they have built: an incredibly diverse collection of structures of all shapes and sizes, all working together to form an imperfect yet efficient system. Surely its success is due in part to its flexibility and imperfection, and the fact that they are no longer over-engineered and inflexible behemoths made from stone…

yet efficient system.

Citation needed. :) What metric did you use to measure the efficiency of the software bazaar?

Re: A Generation Lost in the Bazaar

#64
post #35

Earlier quoted context omitted.

Your essay was unbalanced, yes open source sucks in the way you complained about, but Microsoft sucks even worse in some ways (if not quite as badly in others). Complaining about something in isolation is easy; everything sucks compared to perfection. But how is it compared to the real alternatives.

Who said anything about Microsoft ?

it's a prominent example of the "cathedral" model.

Re: A Generation Lost in the Bazaar

#65
post #34
post #5

Earlier quoted context omitted.

Autoconf is certainly extremely functional but it is not Good. The irony in all of this of course is that autoconf was created to solve the portability issues between platforms that came from the Cathedral model.

No, autoconf happened because UNIX abandonned the cathedral model and went bazaar.

More accurately, it went multi-cathedral: major vendors were building temples to their self-perceived importance and unless you were a major customer they weren't interested in borrowing a better idea from someone else.

The bazaar at least opened up the option for most users to have some influence over the process.

Re: A Generation Lost in the Bazaar

#66
I think FreeBSD, and the Linux distributions do try to cater to too many different people, and quality and coherence suffers a lot from this. I think we can get past this though. The culture of testing and good code is on the ascendant again in many quarters. You need more people to understand build, packaging and distribution better, sure. You also need autotools to die, as the use cases for it are mainly dead. You can generally write portable code to the systems that matter if you want to now, and it just works.

A lot of the problems are due to poor integration between languages, so for example the JVM people have reimplemented almost everything, as have the C++ people.

Re: A Generation Lost in the Bazaar

#67

It's a matter of perspectives. The article author's one is that of taste. The bazaar folks' (including web startup folks)is that of practicality. To illustrate using the same example from the piece - so what if a bunch of crypto code is copy / pasted? It's all out in the open - if anyone ever comes up with an actual problem with the code copy / paste, how hard can it be to fix it? Matter of the fact is that the world…

I think the big problem with all the copy paste code is that you wind up with many redundant dependencies and equivalent pieces of software in varying qualities. Granted that it's open source, you can't rely on any kind of competitive (ie market-driven) mechanism to improve all of these redundant pieces of software over time. This is an inefficient part of how things are done....but that's not to say there's an obvio…

Absolutely - it is a problem in that it is inefficient and error prone. And @DanBC - yes, no doubt people shouldn't be writing their own crypto (but to be fair copy/paste is not akin to making their own crypto - it's just a wrong way to reuse.)

But my point was that this isn't a "it doesn't work" type problem, this is a "it can get better" type of a problem - and I've seen many instances where these types of problems are discussed on the mailing lists of several projects and people with an itch to fix it go ahead and do it. It just highlights the differences in perspectives - get it to work first and even if we had to hack it we can make the design better later on if there are enough people bothered by it.

Re: A Generation Lost in the Bazaar

#68
post #17
post #12

Yes, the bazaar is like evolution: messy, inefficient, and slow. Lots of bad ideas are tried; a lot of them stick around for as long as they provide more value than they subtract; and progress takes a long time. Just as the human body has components that are useless today (e.g., the coccyx), evolving software ecosystems always carry a lot useless baggage. That's how evolution works. But Evolution copes better than in…

... but evolution will also quite happily run you over a cliff which you have been avoided if intelligence were applied. Not to mention the fact that the bazaar is never going to put a man on the moon. And yes, I wrote that piece.

> Not to mention the fact that the bazaar is never going to put a man on the moon.

Spacex's "careers" page has a whole lot of "linux" jobs listed, so the Bazaar at least seems to be contributing heavily to potential future space travel: http://www.spacex.com/careers.php

Re: A Generation Lost in the Bazaar

#69
post #18
post #2

Autoconf is an easy target for these kind of rants, but you know what? It does its job, and it does it very well. The ratio of autoconf to non-autoconf programs on my system is probably 10:1, but the ratio of build problems is something like 1:20. If anyone ever managed to write a genuinely better build system, the bazaar would let it rise to the top; the gradual rise of e.g. cmake is testament to this. Trying to imp…

I hear your statement about build problems as soon as someone does not use autoconf quite a bit. However, in the past I’ve had the opposite experience: Trying to port software such as Apache, PHP or bacula to UNIX systems such as SGI IRIX, I always ended up writing a simple Makefile to compile the software instead of putting up with the multitude of autotools-fixing that would have been required. I reported one or tw…

>However, in the past I’ve had the opposite experience: Trying to port software such as Apache, PHP or bacula to UNIX systems such as SGI IRIX, I always ended up writing a simple Makefile to compile the software instead of putting up with the multitude of autotools-fixing that would have been required. I reported one or two clear issues upstream and they have been fixed, but until the relevant fixes arrive at the projects (especially PHP came with an old version of autotools), some time will pass.

You know that you can replace config.guess and/or libtool with updated versions? Or run make -f Makefile.cvs to regenerate configure etc. from aclocal.m4?

And I would argue that the fact that you had the option of writing a Makefile is itself an advantage of autoconf, because it was written to generate Makefiles in exactly the kind of layering cruft that the OP is complaining about. A more "cathedrally" solution would probably have replaced Makefiles entirely, but by having autoconf generate them it makes it possible for people who know make to, in extremis, edit the generate files.

>As a counter-example, take i3-wm: it ships with a GNU Makefile (OK, multiple Makefiles in subdirectories, one for each tool) and compiles on Linux, Mac OS X, FreeBSD, OpenBSD, NetBSD.

Last time we had a post from the same guy I offered up two challenges: a) cross-compile the program for ARM, b) build the program on a version of SUA (the windows posix compatibility layer) that didn't even exist when the program was released. Both of these are things I can and have done trivially with autoconf-based builds; for most projects it requires no editing of files at all, just replacing config.guess with the latest version for challenge b. I'd be interested to see how building i3-wm was in those two cases (though not interested enough to go to the effort of actually doing it).

Re: A Generation Lost in the Bazaar

#70
post #29

Earlier quoted context omitted.

Because no words are without context.

Actually, the nicest thing about HN for me is that I get to see my words evaluated on their own merit rather than what people know about me. HN has made me a better thinker and better communicator. Over the past year or so that I have contributed, I have clearly seen the way my thoughts diverge from the reality of what others believe. Sometimes I disagree and stop convincing people, other times I present arguments wh…

And that is probably a good way to filter through the million monkeys.

But some topics would require entire books to present in a context free way, this is one of them, and I don't have the time and money to write that book, so you will have to make do with a column @ACM.

When I read something, and have the nagging feeling that there is context I'm missing, I go looking for that context, usually starting with "who the heck wrote this", rather than assume that the writer is a clueless bozo.

But whatever blows your hair back buddy...

Post reply on HN