For nearly two centuries, punched cards transformed instructions and data into physical objects that machines could read automatically. Long before magnetic tape, hard drives, and electronic memory, simple pieces of cardboard with holes helped control looms, accelerate censuses, and later program some of the earliest computers.
Their history connects several major stages in computing: the Jacquard loom, the machines imagined by Charles Babbage, Herman Hollerith’s data-processing systems, and the computer centers of the twentieth century.
The punched card is not the single ancestor of the computer. But it embodies a fundamental idea: instructions and data can be separated from the machine that processes them and represented in a machine-readable form.
Before computing: automating a pattern
The story begins long before computers. In the eighteenth century, inventors sought to automate the production of complex woven patterns. Weaving requires selected warp threads to be raised according to the desired design.
That sequence of choices can be described as a sequence of instructions.
Basile Bouchon used perforated paper in the 1720s, and Jean-Baptiste Falcon improved the principle with linked cards. In the early nineteenth century, Joseph Marie Jacquard refined and popularized a loom using punched cards to control patterns automatically.
The principle was simple: the presence or absence of a hole determined part of the mechanism’s behavior. A sequence of cards could therefore describe a complex design.
The Jacquard loom: a program before programming?
Jacquard cards are sometimes described as early computer programs. The analogy is useful, but should not be taken too literally.
The cards did control a sequence of mechanical actions, and changing the card sequence changed the pattern without rebuilding the loom. This separation between the machine and the instructions controlling its behavior strongly resembles programming.
But the Jacquard loom was not a general-purpose computer. It was a specialized weaving machine.
Its historical importance lies in the idea that complex behavior can be described by information stored on an external medium.
Charles Babbage adopts the idea
A few decades later, British mathematician Charles Babbage worked on machines intended to automate calculation.
His first major design, the Difference Engine, aimed to automatically produce mathematical tables using finite differences.
Babbage then imagined something much more ambitious: the Analytical Engine. Unlike the specialized Difference Engine, it was intended to execute different sequences of operations.
To control it, Babbage proposed punched cards, inspired in part by the Jacquard loom. Different kinds of cards would represent operations and data.
This was a crucial conceptual shift: instructions no longer had to be permanently embodied in the machine’s mechanism. They could be supplied from outside.
Ada Lovelace and the possibilities of a programmable machine
Ada Lovelace studied Babbage’s Analytical Engine and understood the implications of separating machine from instructions.
In her famous notes published in 1843, she described, among other things, a method for calculating Bernoulli numbers. Her work is often presented as one of the earliest published algorithms intended for execution by a machine.
Punched cards would have provided a physical medium for supplying some of those instructions and data.
A perforated medium was no longer merely controlling a textile pattern: it could participate in describing a computational process.
The biography of Ada Lovelace provides more context on this stage of computing history.
Holes as information
A punched card relies on a simple principle: predefined positions can be punched or left unpunched.
Those physical states encode information.
It is tempting to equate them directly with 0 and 1, but punched-card systems were not necessarily simple binary encodings. Depending on the system, positions and combinations of holes represented digits, letters, or instructions.
The broader principle nevertheless resembles modern digital technology: abstract information is represented using distinct physical states.
Modern computers use electrical or electronic states. Punched cards use the physical presence or absence of holes.
Herman Hollerith and the US Census
The next major development came in the late nineteenth century.
Rapid population growth made processing the US census increasingly difficult. Detailed results from the 1880 census took years to compile, raising fears that future censuses would take even longer.
American engineer Herman Hollerith developed an electromechanical system that used punched cards to record and count information.
His system was used for the 1890 United States Census.
Characteristics of an individual could be represented by holes in designated positions. Machines then read and tabulated the cards far more efficiently than a fully manual process.
Punched cards had become a tool for automated data processing, not merely a way to control machinery.
From Hollerith to IBM
Hollerith’s story is also connected to the birth of the computing industry.
He founded the Tabulating Machine Company to commercialize punched-card systems. In 1911, it merged with other companies to form the Computing-Tabulating-Recording Company, or CTR.
In 1924, CTR became International Business Machines, better known as IBM.
Punched cards remained central to the company’s business for decades. Long before electronic computers became commonplace, businesses and public administrations already used card-based machines to sort, count, and process large quantities of information.
The 80-column IBM card
One of the most iconic formats appeared in the late 1920s: the 80-column IBM card.
It measured roughly 18.7 by 8.3 centimeters and provided 80 columns for punching. Depending on the encoding, each column could represent a character.
The format became extremely widespread.
When electronic computers arrived, punched cards did not immediately disappear. Instead, they became a common way of feeding programs and data into computers.
A program could occupy tens, hundreds, or thousands of cards. Their physical order mattered, making a dropped and poorly numbered deck a potentially serious inconvenience.
Programming with a deck of cards
In many computer centers during the 1950s, 1960s, and 1970s, users did not sit directly in front of the computer.
A programmer prepared code and entered it using a keypunch machine. A line of source code could correspond to one card.
The deck was submitted to an operator or card reader. The job ran, and the results were collected later, often as printed output.
This workflow is known as batch processing.
There was often no immediate interaction with the running program. A syntax error might mean correcting a card, resubmitting the deck, and waiting for another run.
Software development was therefore far less interactive than using a modern terminal or development environment.
Programs and data on the same medium
Punched cards could store many kinds of information, including:
source code;
input data;
parameters;
system commands;
administrative or commercial records.
The same physical medium could represent very different information depending on context and encoding.
This reflects an essential computing idea: machines manipulate representations of data. Meaning comes from conventions and from the programs interpreting them.
That abstraction is taken further in stored-program computers, discussed in the article on von Neumann architecture.
How were punched cards read?
Early systems could detect holes mechanically or electrically. Pins might make contact through a hole, establishing an electrical connection or triggering an action.
Later readers also used optical techniques.
Reading speeds increased dramatically over time, but the principle remained the same: convert the physical pattern of holes into signals the machine could interpret.
The card therefore acted as an interface between a physical object and automated information processing.
The limitations of punched cards
Despite their success, punched cards had major constraints.
They were bulky. Large programs could fill boxes of cards. They had to be stored, transported, and protected, and their order could matter.
Changing a program often meant replacing or repunching cards. A single card stored very little information compared with later media.
Batch processing also slowed the feedback loop between writing, executing, and correcting a program.
Magnetic tape, disks, interactive terminals, and electronic memory gradually made punched cards less attractive.
Why did they survive for so long?
By modern standards punched cards look primitive, but they offered real advantages.
They were relatively simple to produce, portable, readable by robust machines, suitable for mechanical sorting, and compatible with established administrative procedures.
Most importantly, a huge infrastructure grew around them: equipment, software, procedures, trained personnel, and archives.
Replacing a technology is not only a matter of inventing something technically better. The surrounding ecosystem must also change.
That helps explain why punched cards remained in some environments through the 1970s and even longer in specialized applications.
From punched cards to the stored program
Babbage’s proposed cards and those used with early electronic computers shared one characteristic: instructions were supplied on an external medium.
The next major step was to place instructions directly in computer memory.
In a stored-program architecture, programs can reside in memory alongside data. This profoundly changes how machines are used: programs become easier to load, modify, copy, and manipulate.
Punched cards nevertheless remained useful for years as an input medium, loading programs into memory for electronic execution.
They therefore stand at the boundary between two eras: physically handled instructions and software stored directly inside a machine.
A direct connection with modern files
A punched card seems far removed from a CSV, JSON, or text file, yet the underlying idea is familiar.
Both depend on a representation convention that allows a machine to interpret data.
A hole has no inherent meaning. It acquires meaning because an encoding scheme specifies what its position represents.
Likewise, characters separated by commas become CSV because agreed rules define their structure.
Modern Bethemesh tools manipulate these newer representations by transforming structured data and connecting transformations in pipelines.
The medium has changed, but the central question remains: how can information be represented in a sufficiently structured form for a machine to process automatically?
The legacy of punched cards
Punched cards have almost vanished from everyday computing, but their influence remains visible.
They helped establish several essential ideas:
instructions can be separated from machine mechanics;
data can be encoded on machine-readable media;
processing can follow a prepared sequence of instructions;
large quantities of information can be processed automatically;
the same medium can contain programs, commands, or data.
They also helped create an information-processing industry before the modern electronic computer became widespread.
Key takeaways
The history of punched cards spans nearly two centuries of automation.
They first appeared in weaving systems to control complex patterns. The Jacquard loom demonstrated that changing an external sequence of cards could change a machine’s behavior without rebuilding its mechanism.
Babbage adopted the concept for the Analytical Engine. Hollerith later turned punched cards into a powerful data-processing medium for the US Census.
In the twentieth century, cards became a major computing medium, and generations of programmers submitted programs as physical decks.
Their importance does not come from technical sophistication. It comes from the idea they embody: information can be encoded on a medium, read automatically, and used to control processing.
From perforated cardboard to digital files and programs stored in memory, that idea remains central to computing.
Frequently asked questions
Who invented punched cards?
There was no single inventor of the modern punched card. Basile Bouchon and Jean-Baptiste Falcon used perforated media to automate weaving in the eighteenth century, while Joseph Marie Jacquard later refined and popularized the system.
Was the Jacquard loom a computer?
No. It was a specialized weaving machine. But its cards could alter the pattern by changing the instructions supplied to the mechanism, making it an important milestone in automation.
Did Charles Babbage use punched cards?
He planned to use punched cards to control his Analytical Engine, including cards representing operations and data. The complete Analytical Engine was never built during his lifetime.
Why is Herman Hollerith important?
Hollerith developed a punched-card data-processing system used for the 1890 US Census. His company was also one of the industrial predecessors of IBM.
How much could an IBM punched card hold?
The famous IBM format had 80 columns and could typically represent up to 80 characters, depending on the encoding and use.
When did punched cards disappear?
Their use declined with magnetic tape, disks, and interactive terminals, particularly during the 1960s and 1970s, although specialized systems continued using them for longer.
Explore Ada Lovelace's life, her collaboration with [Charles Babbage](/en/resources/charles-babbage-father-computing), her Bernoulli numbers algorithm, and the legacy of the woman often described as the first computer programmer.