The Mythical Man-Month

 Date: December 31, 2014

The Mythical Man-Month cover

The Mythical Man-Month: Essays on Software Engineering is a classic book about software engineering, and project management. It was written 40 years ago, and most part of it is obsolete, but at the same time some parts are still valid.

Very interesting observation made by the author is that Software project management is not much different than project management in other disciplines, because it is all about the people, their skills, communication, scheduling, and time estimation.

Because this book was written 40 years ago (based on the project accomplished 50 year ago!), most chapters describe Software Development based on waterfall methodology (the best way of making software at that time). Additionally, 40 years ago most of software was written in Assembler. Author mentions High-Level languages as possible future of Software Development. Besides that, I recommend this book. It shows that instead of 50 years past, we still have very similar problems (communication, error-prone software, estimation issues etc.), and we still struggle with finding "The Silver Bullet".

I recommend to read last 4 chapters first:

  • 16 - No Silver Bullet - Essence and Accident
  • 17 - "No Silver Bullet" Refired
  • 18 - Propositions of The Mythical Man-Month: True or False?
  • 19 - The Mythical Man-Month after 20 Years

This will give you an overview of "no longer valid" facts. Then start reading from the beginning, keeping in mind what is no longer true.

Chapters 1 and 2 are good introduction to this book, but (especially chapter 2) currently obsolete. Chapter 4 (Aristocracy, Democracy, and System Design) is still actual. Chapter 7 (Why Did the Tower of Babel Fail?) is about communication in Software Projects, and IMO still worth your attention.

In general I would recommend this book as a history lesson. Not necessary as a must-read book for programmers.

 Tags:  books

Previous
⏪ ScreenToGif - Record part of you screen and save as gif

Next
10 things you should learn at the University ⏩