This evening, while web surfing, I happened to run across a reference to Coders at Work: Reflections on the Craft of Programming by Peter Seibel, and it occurred to me that recently there have been several new books in which programmers (often, great programmers) talk about programming. I’m thinking of books like Beautiful Code and Dreaming in Code. I thought it might be interesting to compile a list of books in which programmers talk about programming.
This is what I came up with. I had no rigorous or well-defined selection criteria, and some books on the list are quite different than others. The list is held together by nothing more than a personal gut feel that these books have a something — a je ne sais quoi — in common. I haven’t read them all, but I think that they are all probably worth reading.
So here they are, in no particular order.
Programmers at Work: Interviews With 19 Programmers Who Shaped the Computer Industry by Susan Lammers
Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software by Scott Rosenberg
Beautiful Code: Leading Programmers Explain How They Think by Andy Oram and Greg Wilson
Making Software: What Really Works, and Why We Believe It by Andy Oram and Greg Wilson
Masterminds of Programming: Conversations with the Creators of Major Programming Languages by Federico Biancuzzi and Chromatic
Coders at Work: Reflections on the Craft of Programming by Peter Seibel
The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas
Code Complete: A Practical Handbook of Software Construction by Steve McConnell (or the second edition)
Code: The Hidden Language of Computer Hardware and Software by Charles Petzold
The Soul of A New Machine by Tracy Kidder

“Programming Pearls”, Jon Bentley.
Comment by Phil Mayes — 2011/11/01 @ 12:21 pm |
These books absolutely form a group. That said, they are very diverse. Personal takes:
Recommended for all programmers:
Code Complete (read 2nd edition about 10 years ago)
Actually tries to cover everything. Has a particular angle (mid-90′s big static-language shrinkwrap product), but strives to see beyond it.
Wonderful discussion of how to structure statement-centric code at the token level.
Really good on balancing long-term and short-term considerations.
Dreaming in Code (read on publication about 7 years ago)
How and why do star programmers backed by star entrepreneurs fail?
Coders at Work: (read a couple years ago)
Andrew Kuchling’s review is right on: http://books.amk.ca/2010/06/coders_at_work-2/
Didn’t finish despite really wanting to like:
Beautiful Code.
My vague memory is a lot of “I wrote a fast library by finding a neat trick”, but it’s been years.
Making Software:
I am a huge Greg Wilson fan and regularly refer colleagues to http://software-carpentry.org
and “Bits of Evidence” http://www.slideshare.net/gvwilson/bits-of-evidence-2338367
That said, the first couple chapters of M.S. were endless meta-discussions on the difficulty of testing productivity measures which reached no useful conclusions. I gave up.
Comment by Anonymous — 2011/11/02 @ 2:05 pm |
Hi,
some of the mentioned books are available online for free (the page is a little restricted: you have to register to read the full book. Once registered you can read for 1 hour – but it’s legal…):
Making Software, Andy Oram:
http://paperc.de/11887-making-software-9781449397890#!/pages/0
Beautiful Code, Greg Wilson:
http://paperc.de/5222-beautiful-code-9780596515980#!/pages/0
Masterminds in Programming, Federico Biancuzzi:
http://paperc.de/8027-masterminds-of-programming-9780596550943#!/pages/0
Code Complete, Steve McConnell:
http://paperc.de/5501-code-complete-9780735635074#!/pages/1
bye,
Thomas
Comment by Thomas — 2011/11/03 @ 6:37 am |