The Mythical Man-Month
Everyone knows this book; everyone knows the core points and Brooks’ recommendations and laws, even if not everyone has read it. This is one of the few true classics of computing. I’m not going to waste anyone’s time repeating those assertions.
The Mythical Man-Month is now, unfortunately, hilariously anachronistic. And, the anachronisms are starting to damage the book: the core ideas are getting buried beneath 40 years of development technology advances. Engineers each get their own computer (or even two!) now, we don’t need to share debugging time anymore. Surprisingly, I’m a little hesitant to recommend this book now. Beneath the anachronisms there is plenty of good advice: the point he tries to make about planning your debugging time and keeping track of what happened afterwards still applies, for example. But, you have to be prepared to dig, to see through all that to what he’s really trying to say. If you do choose to read, skim the original parts and dwell more on his 20th anniversary additions:
There are two things I will say:
‘Build one to throw away’ is wrong. Brooks comes out very clearly against that, even though he originally popularised it. Don’t do it, plan to prototype and grow organically. This suits me just fine and leads to:
Brooks is the original agilist. Time and time again the things he values are competent, pro-active people and high-visibility, high-efficiency, fast-turnaround development processes. The corner stones for the agile family of methodologies.