This evening I went to 360 Revolution, the celebration of the 40th Anniversary of IBM System/360 held at the Computer History Museum. There were very good talks by Bob Evans and Dr. Fredrick P. Brooks, Jr..
Erich Bloch had planned to participate but unfortunately had to cancel due to his wife’s illness. Bloch, Brooks, and Evans received the National Medal of Technology in 1985 for their contributions to the System/360.
The System/360 was the largest single corporate product development effort ever, at a cost of five billion dollars (back in the early 1960s when that was real money. To put that in perspective, it has been said that the cost of each Apollo mission to the moon was approximately one billion dollars. It was a bet-the-company gamble, and it paid off handsomely.
Dr. Brooks originally coined the term “computer architecture”. He and Gerrit Blaauw formalized the distinction between computer architecture (what the programmer sees), implementation (the logic design), and realization (the physical implementation of the hardware as tubes, transistors, ICs, or the like).
Dr. Brooks worked on the IBM Stretch project, then managed the System/360 project. He is justifiably famous for his book The Mythical Man-Month, one of the first books on software engineering, in which he relates many of the lessons learned during the development of OS/360.
One of the interesting observations Dr. Brooks made was that JCL is the world’s worst computer language. Its branching support is very primitive, it has no real facility for looping or subroutines (though apparently you can kludge them), the syntax was intended to be similar to assembly language even though most users were writing programs in HLLs, and there were be design only six verbs, so all manner of other verbish things are done by modifiers to declarations.
He said that JCL was originally only expected that a job would have a few control cards tacked on the front, but that it grew way beyond the expectations. It was not intended as a general purpose scheduling-time programming language, like today’s shells and scripting languages.
In college I took a COBOL programming class. We had an HP-3000 system which had a COBOL compiler, but they didn’t let us use it. Instead we had to submit jobs via RJE-3000 to an IBM 3081 at the state University and wait for the results. In theory this was because COBOL skills on IBM equipment were supposed to be more useful. But in practice, we didn’t really learn anything specific to the IBM because they just gave us the JCL statements we needed without teaching us what they meant. As far as I can tell, that’s actually how most programmers deal with JCL; they get a few JCL statements that have been known to work with other programs, and touch them as little as possible.
Someone printed up replica Green Cards for the attendees. I wasn’t able to find my copies of Dr. Brooks’ books in time to take them to be autographed, but I did get him, Bob Evans, and Gene Amdahl to autograph a Green Card for me.
I expect the museum to offer video tapes of the talks, but of course they are not available just yet.
An excellent printed account of the System/360 development, including much of what Brooks and Evans discussed, may be found in the book “IBM’s 360 and Early 370 Systems” by Pugh, Johnson, and Palmer, published by MIT Press. Truly a must-read for anyone interested in the history of computers. (For similar information on IBM’s history previous to the System/360, get “IBM’s Early Computers” by Bashe, Johnson, Pugh, and Palmer, unfortunately out of print but well worth buying a used copy.)