Remix.run Logo
dalke an hour ago

There are two books you should take a look at.

"Methods of Information Handling", Charles Bourne - https://archive.org/details/methodsofinforma0000unse/page/n5... (not available to read)

"Punched Cards: Their Applications to Science and Industry", https://archive.org/details/punchedcardsthei0000robe (can be checked out)

The first of these is a much better book.

They show a number of ways to encode values, such as a 5-hole triangle code, where the "O" in the following indicates a hole:

    O   O   O   O   O
      9   5   2   0
        8   4   1
          7   3
            6
To encode the value "8", notch out the holes (indicated with "U") which cross to 8 (indicated with "\" and "/"), like this:

    U   O   U   O   O
     \9   5/  2   0
       \8/  4   1
          7   3
            6
This lets you encode 10-digit values with 5 holes and two needles -- remember, inserting the needles takes time. (And there were all sorts of device made to minimize that time.)

There were also extensions of these to handle names, used to search small (< ~10,000) literature collections, and more.

The most mathematically sophisticated is likely Zatocoding, a superimposed coding method related to Bloom filters.

The Bourne book goes into these variations in detail.

Here's a video of someone scanning in edge-notched cards for bird identification. https://youtu.be/MBwP3YOxw3I

About 10 years ago I really go into the topic and made some cards of my own, using a cutting machine to make each card, precut, from an SVG.