The Jacquard loom weaves patterns from punched cards

In 1804 the French weaver Joseph-Marie Jacquard patented a loom attachment that let a single worker weave complex figured patterns that had previously demanded a master weaver and a helper. The control was a chain of stiff cards, each punched with a pattern of holes. As each card was pressed against a bank of pins, pins that met a hole passed through and raised the corresponding warp threads, while pins blocked by solid card left their threads down. Card by card, the punched holes spelled out the pattern, and swapping the deck of cards reprogrammed the loom to weave something entirely different.

This was a profound idea hidden inside a textile machine: the instructions for a process were separated from the machine and stored on a physical, interchangeable medium. Charles Babbage seized on it for his Analytical Engine, proposing punched cards to feed both numbers and operations to his calculator. Ada Lovelace captured the analogy in her 1843 notes, writing that the engine “weaves algebraic patterns just as the Jacquard loom weaves flowers and leaves.”

The lineage continued: Herman Hollerith used punched cards to tabulate the 1890 US census, and punched cards remained a dominant way to load programs and data into computers well into the 20th century. The Jacquard loom is where the modern notion of a stored, swappable program first took physical form.