66 of 70 people found the following review helpful
By programmers, for programmers,
This review is from: Coders at Work: Reflections on the Craft of Programming (Paperback)
As a book, Coders at Work is in some ways not all that great. As a collection of the thoughts and opinions of a wide range of real programmers on what, how, and why they do what they do, it is a treasure.
I have to say that the first thing I noticed about the book was the cheap binding. The paper and print quality are not very good, I can't say I liked the basic typesetting or sans serif typeface very much, and I found quite a few typos despite not being a person who looks for (or generally finds) typos in published material. The small Related Titles ad on the back cover is a bit annoying as well - that sort of thing used to be tucked away in the front matter and restricted to a list of the author's other work. Ah well.
There is a short introduction describing the author's inspiration and a few themes he picked out after the interviews were completed, but not much else in the way of structure; the entire content of the book is the series of fifteen transcript style interviews, prefaced by short introductions. Many of the same questions are asked of each interviewee, which is nice for comparing their answers, but I got the impression that Seibel was pushing some people harder on certain issues: Ken Thompson on the wisdom of pointers for example, or Fran Allen on why it's really necessary to have more women in computer science, or Don Knuth on why it's important to pry open black boxes. It felt a bit like prefigured puzzlement in the face of programmers who hold on to ideas that go against what passes for conventional wisdom nowadays, and I would have preferred a more thoughtful and after the fact summary of what the author thought these less common ideas might have to contribute to the mainstream.
But analysis is not what this book is about, and that may be a good thing. As a programmer himself, the author is able to ask the questions that most programmers would probably ask without forcing the interviews to conform to a rigid agenda, and the result is six hundred pages of consistently fascinating material. What impressed me most was the sheer range of approaches and motivations on display: everything from Jamie Zawinski's largely unschooled route to a formidable level of skill and subsequent major contributions to influential projects, to to Peter Norvig's uncommon combination of practical hacker wizardry with an almost ethereally playful interest in a variety of higher level topics, to Fran Allen's old school appreciation of quality systems and frustration at the amount of regression and small-concept thinking in the current state of the art, to Dan Ingalls' desire to make his software as flexible and alive as possible. If you think you know what the programming world looks like, this book will show you that not even the giants really grasp the sheer diverse extent of it.
Interestingly, nearly everyone interviewed expressed dissatisfaction with the inflexibility, complexity, low quality, and sheer size of the modern software edifice, and those who had burnt out or who expressed interest in quitting programming were the youngest and closest to the mainstream. Sobering observation, or artifact of the interview selection process? Read and decide for yourself.
I'm a programmer who's read a lot of stuff about programming, including a lot of material by and about some the people in these interviews, and I could barely put the book down. If you're anything like me, you should get a lot out of this book.