The Art of Unix Programming
catb.org
catb.org
http://web.archive.org/web/20080621090439/http://esr.1access...
Apparently ESR pissed a lot of people off, but that doesn't make the book bad -- it is truly excellent, and contains material you won't find anywhere else (really). Yes I can see from his writing style why people are irritated, but it actually helps the clarity of the book, oddly.
Those recommending the Unix Programming Environment must not have read this book -- they're missing the fact it covers completely different subject matter. Neither substitutes for the other.
Compare the TOC:
http://www.pearsonhighered.com/educator/product/The-UNIX-Pro...
"""To do the Unix philosophy right, you have to be loyal to excellence. You have to believe that software design is a craft worth all the intelligence, creativity, and passion you can muster.
Otherwise you won't look past the easy, stereotyped ways of approaching design and implementation; you'll rush into coding when you should be thinking. You'll carelessly complicate when you should be relentlessly simplifying — and then you'll wonder why your code bloats and debugging is so hard."""
(from the end of Chapter 1)
Deleted comment
It's a relatively minor gripe, but I believe legitimate none the less.
Regardless of what you think of ESR's personality, politics or hacking skills, I found this to be a pretty good read.
There's lots of good things in here that apply - not just to software written for Unix systems - but for software in general (I guess it's not really a coincidence that a lot of the good practices on Unix are good practices in general).
Edit: Joel Spolsky's take on it: http://www.joelonsoftware.com/articles/Biculturalism.html
If ESR can write a really good software development book, why do some people thinks ESR can't code a damn?
He compares himself to Stallman and Torvalds without having anything nearly as impressive as an OS kernel, C compiler or debugger.
I will say though, that he's good at introspecting on code and articulating points about programs better than most (hence the high quality of the book)
Does he compare his hacking abilities to Stallman and Torvalds?
My impression is that he considers himself a tribal elder, and compares himself to Stallman and Torvalds in that respect. But that's not quite the same.
Writing a good tech book requires deep understanding of a subject.
Writing good software takes discipline, creativity, and (interestingly) not necessarily a particularly deep analytical understanding of underlying concepts. People have written truly excellent software on poor CS foundations.
But my point was not so much that he's a bad developer but that his software resume is not as impressive as those he compares himself to.
Edit: Yes, it was written by a guy named Carl Harris and ESR took it over when Harris no longer wished to maintain it: http://en.wikipedia.org/wiki/Fetchmail
The essay became important because it was written at the right time, and because ESR decided to take a role as an advocate to industry. Not really due to its quality.
The main issue I had with the book was that ESR seem to conveniently decided that the only post 1995 UNIX worth talking about is Linux, largely ignoring the *BSDs and OS Xs of the world. The later sections on licences seems out of place and drift a little bit too far into Open Source dogma for my tastes.
In summary its a bit of a curates egg as it seems to be a bunch of separate essay's that ESR has tried to jam together under a single topic that don't quite fit together.
A minor edit would fix it: The Art around Unix Programming
http://www.robertames.com/blog.cgi/entries/the-unix-way-comm...
"How to be unix-y in eleventy billion steps"
why would you read a book about unix programming from someone who never wrote a unix program that was worth a crap?
read the unix programming environment instead.