Fred Brooks was on his way out of IBM when Thomas Watson Jr., the head of the company, asked him something. Brooks had run the hardware for the System/360. He had also run the software. “What’s the difference between running the two?”
Brooks said it was too hard a question to answer on the spot. He would think about it.
The hardware was a triumph. System/360 became IBM’s most successful mainframe. The software was where it hurt. One operating system, OS/360, was supposed to run on every model in the family. It was hard to write, especially the versions that ran several programs at once, and it was late. IBM ended up building three separate operating systems just for the smallest machines.
By the time Brooks was sent in to rescue it, more than 1,000 programmers were working on OS/360.
He did not spare himself afterwards. Years later he stood by his description of the job-control language built under him as “the worst computer programming language ever devised by anybody, anywhere.” His explanation was simple: “You can learn more from failure than success.”
What he learned went into a small book published in 1975, The Mythical Man-Month. The title names a flawed assumption built into the unit managers used to plan big jobs, one person for one month: that people and months can be swapped. The book’s most famous claim cut against the instinct every manager has when a project slips: adding people to a late software project makes it later.
Brooks expected programmers to read it. He did not expect anyone else to. Thirty-five years on, it was still selling 10,000 copies a year. That, he said, meant “we still have the same problems.”