My First TRW Program
I began with a flowchart. I studied which instructions were supported by the model 20 and which were not. I wrote my program. I played computer. I changed my program. I went to the local IBM office, dug out the model 20's assembler card deck, and assembled my program. I fixed the assembly errors. I punched a small batch of test cards and I tested my program. The report was readable although it needed some formatting changes. The cards were indecipherable. They looked like Swiss cheese. Some columns had four or five holes punched in them while other columns were blank. The printing at the top of the card was similarly unreadable. That's when I found out about the model 20's MFCM.
From a published report:
The 2560 MFCM ("Multi-Function Card Machine") reader/sorter/punch was for the Model 20 only. It had notorious reliability problems (earning humorous acronyms often involving "...Card Muncher").
Reliability wasn't the only problem that I experienced with the MFCM. I went back to my desk on Cameron Street and plowed through manuals, changed my punch commands, and tried again. I just couldn't make the MFCM punch cards that could be used.
In the midst of my frustration, I was summoned to see Mr. Voots and I was told to bring my program listing with me.
"Kom here!" Mr. Voots said as I approached his desk.
I sat in a chair and hung my head.
"Let me see." Mr. Voots pointed at my program. I gave him my most recent listing and watched as he picked it up and looked at it. He reviewed the program so intently that, for a moment, I thought that he might actually understand basic assembler language.
"Vy do you vant to use this crazy language?" He asked.
"Mr. Voots, I'm a programmer and this is the language that I know." I explained.
"So vat are people who use the other language?" He wanted to know.
I thought about it for a minute and then a minute more.
"I guess they're called programmers, too." I admitted.
"Go learn other language," he told me. He handed me my listing and sent me on my way.
Later I found out that I never had a chance with my assembler program. The MFCM had such timing issues that in order to read a card from the read hopper, register a blank card under the punch dies, and select a stacker, the program would have to build in delays at every step. Only the IBM engineers had been able to make it work correctly and they had transferred their knowledge to the access routines used by RPG. Nonetheless, I know that I had crossed a threshold. Indeed, RPG led to COBOL and it was only after a brief stint writing Autocoder again that I got back to being an assembler programmer.
I did go to Philadelphia and I did learn RPG. I wasn't an enthusiastic RPG programmer, however, until my return. My boss asked me to try rewriting my old assembler program with the new language. It took less than an hour. It worked perfectly on the second run.
I learned that at TRW one sought the practical result and not the elegant solution.
- A Personal History of Systems and Computers: Part 1
- A Personal History of Systems and Computers: Part 2
- A Personal History of Systems and Computers: Part 3
- A Personal History of Systems and Computers: Part 4
- A Personal History of Systems and Computers: Part 5
- A Personal History of Systems and Computers: Part 6
- A Personal History of Systems and Computers: Part 7
- A Personal History of Systems and Computers: Part 8
- A Personal History of Systems and Computers: Part 9