What Changed in 50 Years of Computing: Part 2
How has the classic book on software engineering, ‘The Mythical Man-Month,’ aged with time, and how have architecture approaches and tech org structures changed in half a century?
‘The Mythical Man-Month’ by Frederick P. Brooks, Jr. is a classic in the software industry. First published in 1975, it’s almost 50 years old. Brooks was the project manager of one of the most complex software projects in the world at the time: the IBM System/360 operating system. He published this book based on his personal experience of spending several years building it, and leading several hundred programmers.
I’ve been making my way through this book from the dawn of software, to see which predictions the book gets right or wrong, and what’s different about engineering today - and which things just never change. In Part 1 of this series, we covered chapters 1-3. In this article, we cover chapters 4-7:
Evolution of architecture approaches: The outdated separation of “architect” and implementer, the dated “technical manual” concept, software design and the “second-system effect,” & telephone logs.
Architecture approaches: what’s the same. A well-architected system balances simplicity and functionality, and it’s still hard to do. Processes are still needed for proposing and discussing architecture changes for mature products and larger teams.
Communication challenges on large projects: then and now. Surprisingly, communication best practices have changed little in 50 years; mixing informal, formal, and written forms for efficient projects.
Ideal structure of tech orgs. The tree structure was the most favored for tech organizations in the 1970s, and it still is the most popular choice today. Are simplicity and straightforwardness the reason why?
1. Evolution of architecture approaches
When it comes to how we design software, a lot has changed in 50 years: