Tuesday, December 04, 2012

Color to Grayscale (1):

I weighed 225 pounds (again) this morning.

In the 1970's I worked at a company that sold monitor/alert/control systems to companies that wanted, for the first time, to use computers to control their factory processes. Our software consisted of thousands of punch cards, each containing one line of code. What would happen if such cards got out of order?

The software wouldn't work, that's what would happen. I worried about that because cards can be dropped from time to time, or just mislaid. And then getting them back into order would be a frustrating, time-consuming process.

There was a well-known way to keep the cards in order: place a sequence number in the rightmost columns of each card. When the cards were in order, the sequence numbers would count up, e.g., like this:
… and so on.

Putting sequence numbers in the cards was a nuisance in itself, and no programmer wanted to waste time doing it. Suppose I needed to add a card to an existing card-batch like this:
That's very little typing. Would I also look at the two cards I needed to place before and after this new card, figure out the sequence number of this card, and space all the way to the right margin to insert the number? Not likely. And suppose I wanted to insert a card between 00001022 and 00001023? There's no number between those two sequence numbers! I would have to make copies of a bunch of cards with new, more widely-spaced numbers, in order to make my new card fit. There was a machine to help me automate that process, but hey, we had to fix a bug in a hurry! So most of our cards had no sequence numbers.
My concerns – as a manager – were that cards might be dropped, or that a disaffected employee who expected to be fired would reorder some of the cards. (I think that never happened.) Much later I discovered a more realistic concern: that one programmer who stayed late into the night to help us meet our deadlines would sprinkle a few cards into the wrong drawers when he was high, very high, on Marijuana.
Punch cards, what a horror. But we made good money from that software system, and I have two amusing stories to tell you, in the next few days.

No comments: