A punched card is a flexible write-once medium that encodes data, most commonly 80 characters. Groups or "decks" of cards form programs and collections of data. The term is often used interchangeably with punch card, the difference being that an unused card is a "punch card," but once information had been encoded by punching holes in the card, it was now a "punched card."[citation needed] For simplicity, this article will use the term punched card to refer to either.
Often, programmers first wrote their program out on special forms, called coding sheets. It was important to take care to distinguish the digit zero from the letter O, the digit one from the letter I, eight from B, two from Z, and so on, using local conventions such as the "slashed zero". These forms were then taken by keypunch operators, who used a keypunch machine such as the IBM 026 (later IBM 029) to punch the deck. Often another keypunch operator would then take that deck and re-punch from the coding sheets – but using a "verifier" such as the IBM 059 that checked that the original punching had no errors.
A typing error generally necessitated re-punching an entire card. The editing of programs was facilitated by reorganizing the cards, and removing or replacing the lines that had changed; programs were backed up by duplicating the deck, or writing it to magnetic tape.
In smaller organizations programmers might do their own punching, and in all cases would often have access to a keypunch to make small changes to a deck.
Work environment
The description below describes an all-IBM shop (a "shop" was programmer jargon for a programming site[citation needed]). Shops using other brands of mainframes (or minicomputers) would have had similar equipment from different manufacturers, such as NCR, ICL, Hewlett-Packard (HP) or Control Data. However, they would have had IBM 029 keypunches.[citation needed] IBM's huge size and industry footprint often caused many of their conventions to be adopted by other vendors, so the example below is fairly similar to most places, even in non-IBM shops.
A typical corporate or university computer installation would have had a suite of rooms, with a large, access-restricted, air-conditioned room for the computer (similar to today's server room) and a smaller quieter adjacent room for submitting jobs. Nearby would be a room full of keypunch machines for programmer use. An IBM 407 Accounting Machine might be set up to allow newly created or edited programs to be listed (printed out on fan-fold paper) for proofreading. An IBM 519 might be provided to reproduce program decks for backup or to punch sequential numbers in columns 73-80.
In such mainframe installations, known as "closed shops,"[a] programmers submitted the program decks, often followed by data cards to be read by the program, to a person working behind a counter in the computer room. During peak times, it was common to stand in line waiting to submit a deck. To solve that problem, the card reader could be reinstalled (or initially installed) outside of the computer room to allow programmers to do "self-service" job submission.
Many computer installations used cards with the opposite corner cut (sometimes no corner cut) as "job separators", so that an operator could stack several job decks in the card reader at the same time and be able to quickly separate the decks manually when they removed them from the stacker. These cards (e.g., a JCL "JOB" card to start a new job) were often pre-punched in large quantities in advance.[1] This was especially useful when the main computer did not read the cards directly, but instead read their images from magnetic tape that was prepared offline by smaller computers such as the IBM 1401. After reading the cards in, the computer operator would return the card deck – typically to one of a set of alphabetically labelled cubby holes, based on the programmer's last initial. Because programs were run in batch-mode processing it might have been a considerable time before any hardcopy printed or punched output was produced, and put into these same cubby holes – however, on a lightly-used system, it was possible to make alterations and rerun a program in less than an hour.
Dedicated programmers might have stayed up well past midnight to get a few quick turnarounds. Use of this expensive equipment was often charged to a user's account. A mainframe computer could cost millions of dollars and usage was measured in seconds per job.[citation needed]
Smaller computers like the IBM 1620 and 1130, and minicomputers such as the PDP-11 were less expensive, and often run as an "open shop", where programmers had exclusive use of the computer for a block of time. A keypunch was usually located nearby for quick corrections – although many of these smaller machines ran from punched tape.
Identification and sequence
A single program deck, with individual subroutines marked. The markings show the effects of editing, as cards are replaced or reordered.
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.
An alternative, imperfect but commonly employed technique to maintain proper card order was to draw one or more diagonal stripes across the top edge of all the cards in a deck.
In later years, as punch card data was converted to magnetic tape files the sequence numbers were often used as an index value that can be correlated to time sequences. For example, the data on the cards could be the output of a measuring device, such as water stage level recorders for rivers and streams in hydrology, or temperatures in meteorology. Entire vaults full of card decks could be reduced to much smaller racks of nine-track tapes.
↑A computer installation referred to as a "closed shop" should not be confused with the usual meaning for a closed shop, a worksite requiring membership in a union. Most programmers were salaried and were not unionized.
References
↑da Cruz, Frank (December 2019). "IBM Punch Cards". Columbia University Computing History. Columbia University.