Data Processing before Computers

In summary, the IBM 083 card reader supports the use of the corner cut on cards to ensure that orientation can be detected.
  • #1
.Scott
Science Advisor
Homework Helper
3,472
1,587
TL;DR Summary
Another thread diverged to discussion of the IBM 083 High Speed Card Sorter.
This ancient machine was very important when EDP was only ADP (Automated Data Processing).
Part of the discussion on flow charts drifted towards the use of that corner cut on the old IBM cards - enough so, that I have created this new thread.

@sysprog provided this information:
sysprog said:
1559759190141-png.png


(punch and download keypunch card images site: https://www.masswerk.at/keypunch/https://www.masswerk.at/keypunch/)

The conversation diverged at about this post:
sysprog said:
Yes (as the text on the card image indicates). The corner cut was there to ensure that the card reader could tell when a card had been placed in a wrong position for reading. '9-edge in face down' was the convention.

I noted that the card readers - including such machines as the IBM 083 High Speed Card Sorter - did not use the corner cut in the card for this purpose:
.Scott said:
Not exactly. The card readers did not look for that cut. But the key-punch operators, computer operators, and programmers did.
By "card readers", I am including all manner of card reading devices: High Speed card sorters; 400-series accounting machines; reproduce punch machines; key punch machines; as well as computer card readers.

...

In general, card readers were not allowed to be picky. A lot of those cards were cycled through the target population (students, employees, applicants, teachers, administrators, ...) before being read. Those cards often came back with fairly creative damage.

But my first sentence was wrong. The 083 Card Sorter can be configured to use that corner cut - though not for verifying the card orientation.
@sysprog noted that:

sysprog said:
The corner cut was definitely observed by the equipment for checking card orientation. From a 1967 http://www.textfiles.com/bitsavers/pdf/ibm/cardProc/A24-1034-3_82-83-84_sorters_Dec67.pdf:

1559766520804-png.png

@sysprog then posted at https://www.physicsforums.com/threads/flow-chart-for-a-for-loop-in-python.972935/page-2#post-6189663
to which I will respond in posts that follow.
 
Technology news on Phys.org
  • #2
To my comment:
"But it was still up to the operator to make sure that the cards were correctly oriented."
sysprog said:
Yeah, but it was up to the machine to reject the input if it was wrongly oriented. The purpose of the cut was to ensure that the orientation could be detected, not primarily by the operator, for whom the pre-printing on the card would suffice, but for the machine. If you failed to observe the rule, which usually for an input deck was 9-edge in face down, the machine would stop.
There certainly may have been some card readers that did this. When I worked with a room full of card handling machines (sorters, keypunch machines, reproduce punches, collators, and the 402 accounting machine) none of them would check your card orientation for correctness. When I worked on a IBM 1620, the card reader did not have this feature. When I worked on the IBM 360/20, probably the machine you are talking about, it may have had this feature - I doubt if I ever asked it to read a mis-oriented card. When I worked on Honeywell and Data General card readers, they had no such feature.
 
  • #3
I remember those punch cards! When I started work I found a whole pile of them in my desk and I used them as notecards. They lasted more than a year.
 
  • Haha
Likes sysprog
  • #4
The, in reference to the 083 card sorter, he noted this:
sysprog said:
Your not using it is obviously different from the reader machine not looking for it.

The response to this and associated comments about the 083 requires some knowledge of how Automated Data Processing worked before computers were available. @sysprog provides a link to the 083 operators manual, but without background, it is indecipherable.

The IBM card, also known as the Hollerith card (by non-IBM ADP equipment suppliers), only had 80 columns. So it was common to spread the information out across several cards. The Master Card would come first followed by one or more detail cards. All of the cards in that set would have a set of columns set aside for an ID that would tie them together. For example, columns 1-10 might be reserved for an account number, column 11 for and indication of what king of details were included on the card - blank for the master, and the remaining columns (12-80) would have information about that account.

A common convention was to reverse the card for the Master so that the corner cut appeared on the top right instead of the top left. And the 083 supported this. An example will show how:
- Let's say that you are sending out a mailing that requires every recipient to respond. You include a card in the mailing with instructions for them to return the card with their response. So, you start with the Master deck and use the reproduce punch to create a detail deck that includes the account number and you mail those detail cards out as an enclosure. You also make sure that the detail cards have the corner cut opposite of the master.
A week later, you have most of those cards back so you merge them into the master deck. To do this, you check the cards and repair any that are likely to be a problem. Then you put that detail deck onto the back of the master deck and place them into the 083. Let's say that there is a 6-digit account number. The first time through the 083, you position the sensor brush (a metal bristled brush that makes contact to ground through punch holes in the card) to the units position of the account number - say column 6. On the next 5 time through the 083, you sort on the remaining columns 5, 4, 3, 2, and then 1.
At this point the master and detailed decks are merged with the master in front of each corresponding detail card.
- The next step is the tricky one, and it's the one described on that table from the operators manual. First, you are going to put the cards into the hopper in reverse - last card first. Then you are going to position the brush to detect the corner cut. This is actually a separate brush from the normal column brush. In the manual, it is referred to as the "Offset Sorting Brush" - but no photo is provided. Then run the cards through.
- The result is that all unmatched Master cards end up in the "Reject" bin - and you can use them to create a list of people that have not yet responded to your mailing.

The point here is that those cards are not being rejected because they were put into the hopper wrong.
 
Last edited:
  • Informative
Likes sysprog
  • #5
sysprog said:
You could wire the plug-board on a card duplicating machine to allow that, but how would you get, say, an IBM model 29 keypunch machine to do that? It not only doesn't detect which corner is cut, but also as far as I know, it has no capability to read anything on a card, except if you wrap the card around the program drum to be used as a program card, and in that case it could only heed the codes specific to that keypunch machine; not duplicate the card.

Here's a photo of the machine in question:
IMG_20150202_110743.jpg


The cards start at the hopper on the left, drop down to the first station, slide to the right under the punch bar to the second station, the slide to the right again under the read bar to the third station, the up to the hopper on the right.

Directly between the punch bar and the read bar in the middle of the second station are guides for inserting a card to be duplicated. The card repair trick is to insert the damaged card up-side-down through those guides to the read station while another up-side-down card is ready for the punch station. Then just dup through the card.
 
  • Like
Likes FactChecker
  • #6
.Scott said:
The point here is that those cards are not being rejected because they were put into the hopper wrong.
Fast-fowarding about a decade to the early '70s: yes, your deck would stop the reader if you didn't put it in 9-edge in face down; yes, that was because the machine would detect that; yes, it would detect that by means of sensing where the corner cut was or was not.
https://en.wikipedia.org/wiki/Punched_card_input/output
 
  • #7
.Scott said:
The cards start at the hopper on the left,

Maybe the Chinese versions, but the 029's feed path was right to left (as was, AFAIR, the 026's, though I'm not 100% on that one, despite them being pretty much the same machine)

Which one was the one with the patchcord panels ? I spent a few weeks in a gov't dept, wiring a bunch of them all up for their most common tasks, using the dials on top and everything... and - of course - they took a look, said "oh, that's nice", patted me on the head... and immediately went back to manually rewiring the same panel again and again, for each stage of an operation.

(I'd love to weigh in more positively on this thread, but we're talking almost 50 years ago)
 
  • Like
Likes .Scott and sysprog
  • #8
.Scott said:
Here's a photo of the machine in question:
244742


The cards start at the hopper on the left,
As @hmmm27 said, the cards start at the upper right. Ref: IBM Model 29 Card Punch Reference Manual (1970)

I'd like to 'fess up that I was wrong about something: contrary to what I said, the Model 29 had a read station which allowed exactly the duplicating function you described. I forgot about the read station; now that viewing of your picture, and watching of the video linked to by @hmmm27, have jogged my memory, I recall having used it before, in fact frequently, when the same information was to be punched onto a following card. That was commonly what was done for a typo in a later column, so much so that the label on the DUP key was on many of the machines noticeably worn more than most of the other keys.

In 1987 a boss told me you can never take back anything you say; I understand that I can't not have said it, but I can still admit to what I said having been wrong, and not have to say the same wrong thing again.
Directly between the punch bar and the read bar in the middle of the second station are guides for inserting a card to be duplicated. The card repair trick is to insert the damaged card up-side-down through those guides to the read station while another up-side-down card is ready for the punch station. Then just dup through the card.
From the point of view of the operator, the cards move from right to left, and the punch station is to the right of the read station.

The read station on the Model 29 didn't look for the cut corner, but the card reader did, and if you didn't position the cards 9-edge in, face down, you'd get a machine check, because of the wrong position of the cut corner.
 
Last edited:
  • Like
Likes .Scott
  • #9
PeroK said:
I remember those punch cards! When I started work I found a whole pile of them in my desk and I used them as notecards. They lasted more than a year.

I found a huge box of them when we were cleaning out a row of file cabinets. I gave them to all the young kids as Christmas presents that year in the office.
 
  • Like
Likes sysprog
  • #10
hmmm27 said:
Maybe the Chinese versions, but the 029's feed path was right to left (as was, AFAIR, the 026's, though I'm not 100% on that one, despite them being pretty much the same machine)

Which one was the one with the patchcord panels ? I spent a few weeks in a gov't dept, wiring a bunch of them all up for their most common tasks, using the dials on top and everything... and - of course - they took a look, said "oh, that's nice", patted me on the head... and immediately went back to manually rewiring the same panel again and again, for each stage of an operation.

(I'd love to weigh in more positively on this thread, but we're talking almost 50 years ago)
You're right. It was right to left - so I got the read and punch bars reversed as well. The read bar had to be after the punch bar so that the you could do the type of corrections that you described - and also so fields that were common to all cards could be duplicated.
When I did the original post, It looked like the guides were reversed - I should have caught on. But, as you said, it's been 50 years.

I don't remember a patch panel on any keypunch machine - unless you are talking about the internal character printing array. On the 026 and 028, there was just that card on the drum above station 2 where you could program automatic skips and dups, etc.

Patch cord panels (aka "Control Panels") were used on the 400 series Accounting Machines, the 500 series Reproduce Punch, and the 080 series Collators - and perhaps others, but those are the only ones I worked with.
 
  • Like
Likes sysprog
  • #11
sysprog said:
The read station on the Model 29 didn't look for the cut corner, but the card reader did, and if you didn't position the cards 9-edge in, face down, you'd get a machine check, because of the wrong position of the cut corner.
Which card reader? For example, I don't believe the IBM 1622 had this feature, but the 2560 may have.
 
  • #12
.Scott said:
Patch cord panels (aka "Control Panels") were used on the 400 series Accounting Machines, the 500 series Reproduce Punch, and the 080 series Collators - and perhaps others, but those are the only ones I worked with.

Sorry; I wasn't referring to a keypunch ; looked sort of like a 402. In retrospect it could easily have been CDC equipment.
 
  • #13
I started programming (high school student) back in 1968 on an IBM 1130 at high school and at a IBM data center and CDC data center, all on punched cards. My impression is none of these sensed the corner cut. The cards included OS commands (JCL - job control language for IBM), in addition to source code and/or data. The CDC card readers could read 600 cards a minute.



My first job in 1973 used punched paper tape, using teletypes to enter source code or edit commands, as the files were kept on 14 inch single platter disk packs that we used like floppies. The paper tape reader read at 600 characters per second, shooting out a stream of paper onto the floor, which we then rewound using an electric rewinder. My next job in 1975 was back to using punched cards, which I used until the late 1970's, where by then source code and data was entered via terminals into files on system.
 
  • Like
Likes sysprog and FactChecker
  • #14
.Scott said:
Which card reader? For example, I don't believe the IBM 1622 had this feature, but the 2560 may have.
I'm not sure about the model number I first used, but on the 2501 and the successor thereof that I first worked with, a card improperly positioned would generate a feed check (I earlier called it a "machine check" which doesn't distinguish between a feed check and a read check). I'm pretty sure that the positional orientation was detected by sensing of the position of the cut corner. From the '67 Model 29 Field Engineering Theory of Operation Manual:

Feed Check​
indicates a card jam or improperly positioned card in the hopper, transport, or stacker. Normally, a feed check can be reset by emptying the hopper and pressing NPRO. Be careful not to damage nudge rolls. When a feed check cannot be reset in this way, the operator must manually remove the jammed cards from the transport or stacker area.​
Read Check​
indicates that a card has not read properly, is off punched, or has not fed properly. The read check also indicates any electrical failure in the read station components.​
 
  • #15
rcgldr said:
I started programming (high school student) back in 1968 on an IBM 1130 at high school and at a IBM data center and CDC data center, all on punched cards. My impression is none of these sensed the corner cut. The cards included OS commands (JCL - job control language for IBM), in addition to source code and/or data. The CDC card readers could read 600 cards a minute.


I'm not sure about that machine, but it looks to me to be the case that all of the cards have the cut corner in the same position. Why wouldn't that be a requirement? Why would the machine not use the cut corner to determine that the cards were in the correct read position before commencing to read the columns? As I recall, any card in the deck would cause the machine to stop if it were upside-down (wrong edge in) or backward (wrong face/side in), but the reader didn't stop if a card had all non-punched columns (i.e. if it was blank) but was correctly positioned. How else but by the cut corner could the machine distinguish a mis-positioned blank card from a correctly-positioned blank card?

When I was a kid, the university let us faculty brats (children of faculty members) play (carefully and respectfully) with the computer, and there was a sign on the wall above the card reader that said something very much like (in all caps) "9-edge in, face down, press end of file, start". I got a feed check when I tested that directive that was on the sign by putting the cards in the hopper in a position other than as directed on the sign.
My first job in 1973 used punched paper tape, using teletypes to enter source code or edit commands, as the files were kept on 14 inch single platter disk packs that we used like floppies. The paper tape reader read at 600 characters per second, shooting out a stream of paper onto the floor, which we then rewound using an electric rewinder. My next job in 1975 was back to using punched cards, which I used until the late 1970's, where by then source code and data was entered via terminals into files on system.
As you presumably will remember, back in the early '70s, some of the guys would walk around with a strip of the TTY 110 paper tape spooled onto the end of a stick pen sticking out of a shirt pocket, with a rubber band (or sometimes with shorter tapes perhaps just the pen cap) applied to keep it from uncoiling.

Those were great days, filled with promise -- and please let's regale in how much that promise has by the steady efforts of the pioneers and their followers come to fruition: nowadays your mobile phone device, the phone functions alone of which would have required most of the size, and much of the weight-carrying capacity, of a car trunk back then, has more computational and data storage capacity in your hand than could be held in a gymnasium-sized raised-floor computer room those few decades ago ...
 
Last edited:
  • #16
sysprog said:
Why would the machine not use the cut corner to determine that the cards were in the correct read position before commencing to read the columns?
Because not all punched cards had the cut corner, some had the cut corner on the top right instead of the top left, and some had a smaller cut off corner (top left or top right). Do a web search for punched card images. I think some had all square corners (maybe just the IBM 1130, as it would seem that square corners could be a snag issue on high speed card readers). Some were all rounded corners, such as this one:

pcrc.jpg
 
Last edited:
  • #17
rcgldr said:
Because not all punched cards had the cut corner, and some had the cut corner on the top right instead of the top left. Do a web search for punched card images. I recall some had all square corners (maybe just the IBM 1130, as it would seem that square corners could be a snag issue on high speed card readers), and some were all rounded corners. I found an image of the latter.

View attachment 244843
Cool. There's a collection of images of (and commentary regarding) different kinds of keypunch cards here. The fact that cards without cut corners existed obviously doesn't mean that no readers were sensitive to the cut corner position on cards that had cut corners. Pre-read (i.e. before reading of the columns) detectability of card positional orientation, for and by both humans and reader machines, was what the corner cut was there for.
 
  • #18
From https://en.wikipedia.org/wiki/Computer_programming_in_the_punched_card_era:

Columns 73-80 were ignored by the compilers and could be used for identification or a sequence number so that if the card deck was dropped it could be restored to its proper order using a card sorter. Depending on the programming language, debugging output statements could be quickly activated and "commented out" by using cards with such statements punched with the comment character (e.g., 'C' in Fortran) in column 80 of the card; turning the card end-for-end would put the 'C' in the leading column, which transformed the now backwards card's contents into a comment while leaving the physical card in place in deck.​

Clearly that trick wouldn't have worked on a reader that required 9-edge in face down orientation that was detected by sensing of the position of a corner cut. I suppose that was from before my time (I started using the card machines in '72).
 
  • Like
Likes .Scott
  • #19
sysprog said:
I'm not sure about the model number I first used, but on the 2501 and the successor thereof that I first worked with, a card improperly positioned would generate a feed check (I earlier called it a "machine check" which doesn't distinguish between a feed check and a read check). I'm pretty sure that the positional orientation was detected by sensing of the position of the cut corner. From the '67 Model 29 Field Engineering Theory of Operation Manual:

Feed Check​
indicates a card jam or improperly positioned card in the hopper, transport, or stacker. Normally, a feed check can be reset by emptying the hopper and pressing NPRO. Be careful not to damage nudge rolls. When a feed check cannot be reset in this way, the operator must manually remove the jammed cards from the transport or stacker area.​
Read Check​
indicates that a card has not read properly, is off punched, or has not fed properly. The read check also indicates any electrical failure in the read station components.​
The 2501 was an early card reader used with the 360/20. The 360/20 itself was marketed as a replacement to the 400 series accounting machines. It came with a primitive version of RPG to support that transition. The 360/20 with 2501 would be routinely found in ADP centers that were still using Master/Detail card sets. So it would have been necessary for the 2501 to work with those sets. Notice from the instructions that you quoted that the Feed Check was not suppressible. When it happened, the machine stopped and operator intervention was unavoidable. So Feed Checking on a Master/Detail card set with alternating corner cuts would have been a show stopper.

It would be easy for me to believe that much later card readers would have an option for checking the corner cut. Once the sort and collate functions had been replaced by computers, cards reverted to simply supporting "batch" operations that allowed a single computer to be shared by numerous users. In an environment like that, strict standards often prevailed. At one site, I couldn't even use the keypunch machine. I had to submit my program using a card coding form - for a keypunch operator to interpret. If I made a mistake on a line, it was best to simply allow the line to be keypunched and write the corrected version on the next line. Then I would fix the deck when I got it back from the operator.

BTW: I am sharing rare information here. That RPG (Report Program Generator) experience was the first programming language that I removed from my resume - after all, did I really want to land a job writing RPG?
 
  • #20
sysprog said:
From https://en.wikipedia.org/wiki/Computer_programming_in_the_punched_card_era:

... Depending on the programming language, debugging output statements could be quickly activated and "commented out" by using cards with such statements punched with the comment character (e.g., 'C' in Fortran) in column 80 of the card; turning the card end-for-end would put the 'C' in the leading column, which transformed the now backwards card's contents into a comment while leaving the physical card in place in deck.​

Clearly that trick wouldn't have worked on a reader that required 9-edge in face down orientation that was detected by sensing of the position of a corner cut. I suppose that was from before my time (I started using the card machines in '72).
Cute trick - though I never ran into it. I was a volunteer computer operator at Lowell Tech Institute in 1971-73. That trick was not part of the culture. But the 1622 card reader did read reversed cards.
 
  • #21
.Scott said:
Cute trick - though I never ran into it. I was a volunteer computer operator at Lowell Tech Institute in 1971-73. That trick was not part of the culture. But the 1622 card reader did read reversed cards.
Do you recall whether the 1622 allowed upside-down cards (12-edge in, not 9-edge in)?
 
  • #22
sysprog said:
Do you recall whether the 1622 allowed upside-down cards (12-edge in, not 9-edge in)?
If the card was up-side-down, but punched right-side-up, in most cases, you would get a "Read Check" because some of the columns would have more than one numeric punch. But when the "Read Check" occurred, it could be ignored. Normally, when we noticed the "Read Check" light on, we stopped the machine (IBM 1620) at the end of the current job and then reset the printer.

I played around with that. There didn't seem to be an easy rule as to how it would interpret an up-side-down character. It wasn't something straight forward like: only look at the largest or smallest numeric punch. But you would always get a non-blank code back for a non-blank up-side-down column. And if the up-side-down card had no double numeric punches, you would not get the read check.

As I recall, in the rare cases when someone put a deck in up-side-down, it would rapidly slew through the deck looking for a "Job" card.

And here's a card that brings back memories. Notice the corner cut on the right and that it is specifically for the 1620 computer (and thus the 1622 card reader). The combination of the top edge color and the corner cut could sometimes be used to identify the type of job. But, of course, different job types were supposed to be submitted on their own shelves.

1024px-IBM1620SPSpunchcard.agr.jpg
 
Last edited:
  • Like
Likes sysprog
  • #23
.Scott said:
BTW: I am sharing rare information here. That RPG (Report Program Generator) experience was the first programming language that I removed from my resume - after all, did I really want to land a job writing RPG?

By the time I got into programming (early '80s), RPG was starting to become pretty popular in the want ads... didn't pay as much, of course, but the demand was there.
 
  • #26
An early reference to the cut corner:

From The Quarterly, Columbia University School of Mines, Vol.X No.16 (Apr 1889), pp.238-255. In this article the author, Columbia graduate (Mines 1879) Herman Hollerith, describes the devices and methods he developed to automate the 1890 US Census; it is the basis for his 1890 Columbia Ph.D. (ref: http://www.columbia.edu/cu/computinghistory/hh/index.html)

With such a keyboard-punch it is, of course, apparent that a perfectly blank card may be used, one corner, however, being cut off to properly locate the card in subsequent operations.​

I think that Hollerith originally intended, even in 1890, that both humans and machines should be prepared to detect and act on the cut corner position.
 

1. What methods were used for data processing before computers?

Before computers, data processing was done manually using methods such as tabulation, sorting, and calculation by hand. This was a time-consuming and error-prone process.

2. What tools were used for data processing before computers?

Some of the tools used for data processing before computers included calculators, punch cards, and mechanical counting machines. These tools helped to speed up and automate certain data processing tasks.

3. How did data processing before computers impact research and scientific discoveries?

Data processing before computers was a slow and labor-intensive process, which often limited the amount of data that could be analyzed and the speed at which scientific discoveries could be made. However, it also required researchers to carefully analyze and interpret data, leading to more thorough and accurate conclusions.

4. What were the limitations of data processing before computers?

The limitations of data processing before computers included a lack of speed and efficiency, as well as a higher potential for human error. It was also difficult to process and analyze large amounts of data, which could hinder the progress of research and scientific discoveries.

5. How did the invention of computers impact data processing?

The invention of computers revolutionized data processing by increasing speed, efficiency, and accuracy. With the ability to store and process large amounts of data, computers have greatly advanced research and scientific discoveries in various fields.

Similar threads

  • Programming and Computer Science
Replies
29
Views
3K
  • General Discussion
Replies
12
Views
5K
Back
Top