Open a terminal window on your computer—whether Windows, Mac or Linux—and unless you’ve fiddled the defaults, the width is almost always 80 columns. Run a code reformatter like clang-format and same deal…defaults to 80 columns. Why? (1/18)
You may’ve heard a story about the launch capacity of the space shuttle ultimately deriving from the average size of a horse’s butt. It’s not strictly true, but a few elements are true *enough* to weave a good tale about engineering constraints.
This is a horse butt story.
(If you’re not familiar with the space shuttle horse butt story, just Google “space shuttle horse butt” and there you go. “Always mount a scratch monkey” is a good one too.)
ANYWAY, why 80 columns?
In the early 1980s, a hallmark of doing SRS BZNS on your computer was having an 80-column display card and suitable monitor. Only “game machines” had 40 column displays (“game machine” used to be a put-down, ha!). So a TON of code is formatted for 80 columns. But why?
It was a carry-over from serial terminals of the 1960s and 70s, which most often had 80 column, 24 or 25 line displays. These would communicate with “big iron” systems for banking and science and such. A lot of software was formatted for such displays. Why 80?
Because disk and tape were expensive and not very portable, code was often stored on IBM-standard 80 column punch cards. One 80-column card per line…usually FORTRAN or COBOL.
But the cards actually long pre-date these languages…and electronic computers for that matter!
They were originally for use with electromechanical tabulators and sorters…an early way of handling databases. The 80 column card was introduced by IBM in 1928. Other companies produced cards with more columns…but even before computers, “IBM compatibility” was a selling point.
Why 80 columns? Because that’s how many of the rectangular holes IBM engineers could reliably punch and read back on a card that size…carried over from the existing 45-column cards of Hollerith’s Tabulating Machine Company, a precursor to IBM around the turn of the century.
The 45-column cards were a tad longer than Hollerith’s 1890 census cards.
You may be thinking this leads to the 1804 Jacquard loom, but no, too modern. Remember, question isn’t “why punched cards?” but “why 80 columns?” It resulted from the rectangular holes and THE CARD SIZE
See…the 45-column cards were matched to the size of U.S. paper currency of the time, because banks already had many drawers and cubbies perfectly sized for those. This was an established standard, somewhat bigger than today’s paper currency…
The U.S. Bureau of Engraving and Printing officially codified that size with its founding in 1862…but really it was already in use with earlier bank notes, like these from the 1820s. Why this size? (which ultimately determined IBM’s 80 column constraint)
Because of standard press and paper sizes already in use. You could fit 8 notes on a British Imperial “foolscap” size page, or 4 on “foolscap folio.” (A paper size called foolscap was also seen in U.S. offices into the 1970s, but was a bit smaller, more like legal size)
The earliest specimens of foolscap paper date back to the late 1400s, not long after Gutenberg’s death, and before Columbus got lost looking for India. This might be the end of the story, it’s hard to say.
Keep in mind that Gutenberg’s invention was movable type, not the press. Engraver’s plates and page sizes were already standardized before this…
The “Bologna Stone” which provided page size reference for the city’s papermakers dates back a century further (late 1300s, this is a 17th century reproduction). Foolscap isn’t on here…so maybe it didn’t exist yet, or was derived from some fraction of one of these.
Fun fact: ALL of these page sizes are a √2:1 aspect ratio (1.414…), so they can be folded to produce a half-size page that’s *also* √2:1, and so forth all the way down.
Paper from Asia long preceded this, but settled on different sizes. Europe got in around the 9th century.
Page size ultimately comes down to the papermaking frame size…and that’s ultimately limited by how large a frame a Medieval European person could reasonably lift and manipulate. So there’s the horse butt of this tale: the spread of a man’s arms.
THE MORAL OF THE STORY IS: every time you open a terminal window or run clang-format, you are summoning a demon legitimately no less than 160 years old and with some imagination perhaps 500-1000 years old.
Postscript: “demon summoning” was a joke, but I’ll mention that much of the impetus for those higher-density punched cards mid-story has a tragic origin. Here’s a thread on Rene Carmille, who bucked the system and saved thousands of lives:
Share this Scrolly Tale with your friends.
A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.