The Best Software Writing I is, well, a collection of good writing about software. Edited by Joel Spolsky, who is quite a good software writer himself.

The book covers a wide range of topics – from the design of social software to how to hire developers. However they all tend towards the “peopleware” side of things: the interaction between humans and software, rather than the technical minutiae of writing code. The selection has clearly not been guided by any sort of overarching theme or purpose, but rather by what Joel is interested in.

And that, I think, is the greatest weakness of the book: an unclear aim. Joel claims on the back cover that “the goal of this book is to encourage better writing about software by highlighting some of the best writing of the year”. That’s an admirable goal, but it leads to a book that’s aimed at everyone and no one in particular. It’s even unclear whether the book is mostly meant for a technical or non-technical audience. Almost all of the essays assume some familiarity with software development, although not at a very technical level – a technically-minded non-developer wouldn’t have any difficulty. And yet there are footnotes explaining basic concepts in idiotic terms: “Dev = developer = an actual computer programmer”. Huh?

Some reviewers disagree, and mean that the book’s greatest weakness is that you have to pay for it, while most (or possibly all) of the material can be found online for free, including Joel’s introduction. But I like the feel of a book in my hands, and I also like to have a book in my bookshelf so it reminds me to re-read it occasionally. So even though I’d read several of the essays and blog entries before, I chose to buy the book rather than look for the rest online.

The quality of the essays varies. Some were worth reading once, and I’ll skip them the next time. There was a bit too much Eric Sink for my taste (come on Joel, three essays by Eric and only one by Paul Graham? What were you thinking?) and I really don’t think that why the lucky stiff is an example of good software writing. On the other hand, A Group Is Its Own Worst Enemy by Clay Shirky is so good that it’s almost worth buying the book just to read this one essay.

Because the book was written with no one in particular in mind, I’m not really sure who I’d recommend it to. The most likely audience would be technically-minded people interested in the human factors of software development. But the contents of this book aren’t new, the thoughts aren’t new, so someone who’s interested in the field will most likely have read these or similar materials already. Worth picking up if you haven’t.

Amazon UK, Amazon US.