The estimated reading time for this post is 203 seconds
Last week Fred Brooks died. Brooks was famous in technology circles who designed the IBM OS/360 operating software for the IBM System 360 series of mainframe computers. Some 50 years later, the computers that perform the equivalent tasks to the mainframe still ensure that they can run OS/360 application compatible code.
The reason for this was that Fred Brooks did his job really well for mission critical business processes.
OS/360 was remarkable. At the time IBM was the leading edge in computers. The 360 system was a major leap forward. It was able to support a wide array of applications, and it was one of the first operating systems to require direct-access storage devices – like a modern computer.
The first release of OS/360 had about a million lines of code, much larger than any previous IBM operating system, and eventually grew to over 10 million lines of code. By comparison the latest version of macOS contains about 85 million lines of code and Google’s technology stack contains about 2 billion lines. But the IBM team that Fred Brooks worked with were doing this about 60 years ago, with all the limitations that that would have entailed.
OS/360 is now in the public domain and its code is often poured over by computer science students looking to learn lessons from the past. That alone would have made Fred Brooks achievement live on today.
The journey to build OS/360 was to turn out as important as the software itself. Fred Brooks wrote a book based on his experiences and what he had witnessed during the development process. This was encapsulated in a book called The Mythical Man-Month: Essays on Software Engineering. You might not have heard of the book, but Fred Brooks offered insight for anyone managing complex projects. If you’ve experienced Agile and Scrum methodologies in work, you’ve experienced ideas that try and address the challenge that Brooks realised. Large programming projects suffer management problems different from small ones due to the division of labor; that the conceptual integrity of the product is therefore critical; and that it is difficult but possible to achieve this unity.
The ideas within the Mythical Man-Month go beyond software engineering. We use his thinking in most of the advertising agencies that I have worked in.
You can see Fred Brooks Mythical Man-Month principle turn up in all kinds of unusual places. My Dad worked on the UK’s Polaris ‘Resolution class’ submarine programme through the 1960s. Advertisements went into the newspapers of Ireland and former Commonwealth countries looking for time-served skilled tradesmen. My Dad worked alongside other Irishmen, people from Hong Kong and at least one Sikh man.
The shipyard was paid by the Royal Navy on a cost plus basis, which meant that the yard was incentivised to have as many people working on the ship as possible, working as much overtime as they liked. The result meant that in a cramped space, there was a lot of people sitting around as they couldn’t physically work alongside other tradesmen.
Which is why some authors have alleged that workers described these submarines as ‘gravy boats’; my Dad hadn’t hear of this term but doesn’t mean that some didn’t use it.
With regards the conceptual integrity of the product; in a time before CAD systems, errors worked their way into working drawings over time.
Fred Brooks obituary on Dave Farber’s Interesting People mailing list
Frederick Brooks, the famed computer architect who discovered the software tar pit and designed OS/360, died Thursday. He also debunked the concept of the Mythical Man-Month in his book, writing: “Adding manpower to software project that is behind schedule delays it even longer.”
A true icon, who won the Turing Award in 2000, Brooks was one of the great thinkers in computing. Industry tributes are pouring in the celebration of his contribution and life.
Further reading: His interview with Grady Booch for Computer History Museum [PDF].Original Interesting People list post (probably by David Farber)