
The Best Software Writing I: Selected and Introducted by Joel Spolsky, $24.99
by Joel Spolsky (ed.)
Apress, 2005
350 pages
http://www.amazon.com/exec/obidos/ASIN/1590595009/larkware-20
Well, of course the title of this one is misleading right off the bat. It really should have been called something like "Pretty good writing by software geeks that was published online and that Joel or his readers happened to run across." You won't find any papers excerpted from conference proceedings here (though Adam Bosworth does sneak in a pretty informal conference talk) or academic publications. In fact, things go to the far extreme: there are comic strips and the sort of slapdash informal speculation that weblogs are littered with. That's understandable, since Joel apparently took as his mission finding things that would be fun to read, as well as things that made some interesting point about software development.
As with most anthologies, it's a mixed bag. I personally could happily go the rest of my life without ever reading another supercilious essay by Paul Graham or suffering through another Rory Blyth comic strip. On the other hand, there's always time to read another nugget of Windows history from Raymond Chen, and without this book I wouldn't have discovered Gregor Hohpe's simple real-world explanation of the perils of two-phase commit. With a collection of short pieces like this (29 in all) it's easy to just flip to the next one when a particular essay bores or annoys you, though if you've got a short fuse you may occasionally need to retrieve the book from across the room.
Other highlights (from my point of view, anyhow) include Eric Sink's pieces on actually selling the software that you write, Aaron Swartz's PowerPoint translation of Tufte's anti-PowerPoint screed, Eric Lippert's explanation of the amount of effort it takes to add five lines of code to a mature product shipped by a large corporation, and Leon Bambrick's skewering of the Windows Search user interface. All in all, I'd say about half the pieces in this book are, from my point of view, superior enough to warrant inclusion, and only about a third are real clunkers that should have been left on the sticky floor of the Internet. Given how opinionated I tend to be, that's a pretty darned good average for any anthology. I don't see this as a book that's going to teach anyone deep truths about software engineering, but if you want something light to browse through between heavier tomes, or a book the might provoke a few interesting lunchroom discussions around the corporate table, go for it.