Open almost any linter config and you will find a setting like max-line-length: 80. Nobody in the room chose 80 on purpose — it was inherited, and the chain of inheritance runs back nearly a century to a piece of cardboard.
Where the Number Comes From
The 80 in "80 columns" is the width of the IBM punched card. The card layout that became the industry standard held 80 columns of data, each column representing one character. When programmers fed instructions into early computers, one card was roughly one line of code, and that line could be at most 80 characters wide. The number was a physical constraint of a paper artifact.
When interactive terminals replaced card readers, the 80-column habit came along. Influential text terminals — the DEC VT100 being the famous example — defaulted to an 80-column-by-24-row display. That choice was not arbitrary either: building terminals that matched the existing 80-column world of cards and line printers kept everything compatible. Software written for cards still fit on screen, and printouts still lined up.
From there the convention propagated upward through the whole stack. Editors assumed 80 columns. Print routines wrapped at 80. Style guides codified it. By the time anyone could buy a monitor wide enough to show 200 characters, "keep lines under 80" was already baked into the culture, the tooling, and a generation of muscle memory.






