I really like this because the writers have a perspective, mostly lost these days, of systems that were really different from UNIX. Take debugging. For all the people who complain about “what’s wrong with Unix” today, their complaint is never “I want to be able to debug-trace through the whole system and change any function, anywhere without restarting any programs.” That’s not even in the set of possibilities today, it just sounds like a fairy tale. And yet that’s exactly what Lisp machines were. So you have a person who worked on a LispM and switches over to a UNIX, where crashes are impossible to debug, the window system is a slow ugly joke, the system’s programmed by five crappy languages instead of one good one, you have to serialize data just to pass it between processes, and all of this is called a “philosophy” instead of a “bug”. Of course they hated it. But now this is the new normal, and most people don’t even know things could be better.
It occurred to me after the other post that sometimes people use and know a system and come to hate things about it. Familiarity breeds contempt. Thus, the Unix haters handbook. I think it’s great.
Other times people decide they’re going to hate a system and try to find reasons. Thus, misinformed rants. Less great.
And this one really is in the ‘familiarity breeds contempt’ category. It helps to have some context- this thing was published 23 years ago, and was based on the content of a uucp mailing list that was started seven years before that. Unix had been around since the ‘60s, but it wasn’t until the late 80’s that unix clones and graphical workstations really exploded onto the scene. That put the nail into the coffin of a lot of old time sharing systems, and forced a lot of people in academia and engineering onto unix'es for the first time, often kicking and screaming. Luckily, they had the unix-haters mailing list to vent their frustrations on.
The book is a very humorously written summary of the collective wisdom of those users, culled from the archives of the mailing list.
It’s a hilarious read- really dated in a lot of places, but still on the money in in others. I think Denis Ritche describes the content of the book best, right there in the “anti-forward” on page 38 of the pdf:
“You claim to seek progress, but you succeed mainly in whining. Here is my metaphor: your book is a pudding stuffed with apposite observations, many well-conceived. Like excrement, it contains enough undigested nuggets of nutrition to sustain life for some. But it is not a tasty pie: it reeks too much of contempt and of envy. Bon appetit!”
This word means apt.
I remember reading this years ago. A common theme is that Unix makes it easy to shoot yourself in the foot. That always makes me think of the Larry Wall (I think) quote: Unix makes easy things hard, and hard things possible.
I remember a rant in the UHH about how, because globs are parsed by the shell and not the program, rm can’t warn you if you do rm * without meaning to. To me, that simply isn’t outweighed by the benefit of having consistent and predictable glob parsing everywhere (and believe me, I’ve rm’d * more times that I’m willing to admit…)
Indeed, it has been said that UNIX is the worst form of operating system except all those other forms that have been tried from time to time.
[Comment removed by author]
The complaints are sometimes stupidly formulated but the problems described are important for all system administrators to understand.
Inspired me to submit a list of alternatives below in case anyone is wondering what the fuss is about from us critics. :)