Nerdy Reading
masswerk.at
masswerk.at
They talk about how they initially chose short texts because even ASCII texts outstripped early storage mediums at first.
As with many other great hacker projects, the answer to why is "because they could"
(btw the reader link on that page is 404 https://www.masswerk.at/card-readpunch/cardreader)
(The even more severe problem is that I never got to implementing Fortran and/or Cobol. That is, I do have some parts of this, but I would have to start all over to get into that part of the project again.)
https://retrocomputing.stackexchange.com/questions/16112/wha...
The problem with punch cards is that they lose integrity, if there are too many punches (holes). So the usual variants of Hollerith code and EBCD worked around this by applying never more than 3 punches per column. Mind that punch cards were a major storage format even in the interwar years, long before computers, when they were filling entire warehouses with accounting data, etc. And you wanted these to be somewhat robust as they were subject to rather rough treatment by purely electro-mechanical appliances. E.g., WWII was mostly payed for by punch card accounting on the US side. (Later formats on the IBM S/360 and S/370 used much larger sets and therefor more fragile encodings, including the full ASCII set.)
Punch cards were actually legacy technology in the computer age, right from the beginning. E.g., the Univac I, the first computer commercially available in the US, used high-speed steel tape. IBM, on the other hand, favored punch cards and built their growing imperium on the compatibility with existing storage formats (which was a strong argument), while other vendors eventually gave in, more or less reluctantly.
Maybe being hard to read is part of the point, but if so, I think it's made much too well!
This is a joke / nostalgic memory for old computer programmers, who can still remember the time when such punched cards where used to store any computer program that you wrote, so that a computer would be able to read the program.
It was out of the question to write directly the program on a terminal connected to the computer (before the invention of time sharing) because the running time of the computer was too expensive to be acceptable that it should wait until you type at a keyboard.
So the computer programs were recorded offline on punched cards, then the computer read the program from the punched cards at high speed, maybe storing it on a hard disk or on a magnetic tape, if you wanted to run the program more than once.
Each card has some text printed on the top row. The bulk of the card is a grid of pre-printed numbers. Punching out holes on the card lets you represent data in a standardised character format, where successive columns represent individual characters (from top to bottom). For example, in the IBM 80-column format [0]. The text printed on the top of a card makes individual cards human-readable.
When I first encountered computers, in approx 1979, this was how we programmed them. Now get off my lawn, with your new-fangled glass-teletypes.
[0] https://en.wikipedia.org/wiki/Punched_card#IBM_80-column_for...
Like the telephone with a dial disk or the monitor with a CRT screen, this is an unfamiliar object for not too old computer programmers.
Nevertheless, there was a time when writing any computer program required it to be punched on such cards, one 80-character line per card, then you could read your program like with this Jane Austen example and you had to be exceedingly careful to not spill down the cards on the floor, or you would have to do a lot of work to sort them again in the correct order of the program lines.
Actually, there were machines called card sorters that could sort cards back into the right order.[1] In the card images shown on this page, you can see that there are sequential serial numbers in columns 73 - 80, which could be used to sort these cards.
Many programming languages, such as Fortran, would ignore anything punched after column 72, allowing columns 73 - 80 to be used for this purpose.
[0] https://www.ifpug.org/content/documents/Jones-LinesofCodeMet...
So it looks like a summer/fun/art project.
I liked it and it fueled a little bit of nostalgia for me.