This post was written by Trey Smith, the Library of Congress 2015-16 Science Teacher in Residence. It is part one of a two-part series written for Computer Science Education Week, December 7-13.
In the early 1800s, English inventor Charles Babbage derived inspiration for a mechanical computer from a system for weaving fabrics using punched cards. Babbage’s ideas from two centuries ago form the foundation of today’s ideas about computing. Studying primary sources showing a modern version of the weaving systems that Babbage observed can help students learn about key principles in computer science.
- What stands out about what the person is doing?
- What might the machine do? How might it work?
Analysis may eventually focus on the set of folded cards at the top of each photo. A closer look reveals a series of holes in the cards. Study the system from another perspective.
- What are the cards and holes for?
- What might the cards have to do with weaving?
Add an additional layer to the investigation by playing a recording in which another Paterson plant employee describes the process of developing fabric with a customer. The interviewee explains how punched cards are part of a larger system.
At this point, students may conduct background research on looms using punched cards. After some digging, students will discover that Jacquard looms, named after French merchant Joseph Marie Jacquard, employ a series of punched cards to lay down patterns of silk string to form the designs in a fabric. In the early 19th century, anxiety about machines replacing humans emerged as use of Jacquard’s looms boomed.
The looms influenced Babbage, who envisioned that punched cards would allow him to build a programmable, general-purpose computer. Previously, Babbage had imagined a difference engine that could perform mathematical calculations. His difference engine followed in the tradition of Morland’s 1673 calculating device, Leibniz’s 1727 calculator, and Pascal’s 1819 calculating machine.
Babbage’s ground-breaking contribution to computer science, however, was the idea that a machine could be built such that its function could change based on instructions provided by a programmer using punched cards. Ada Lovelace, another important figure in computer science history, devised programs for Babbage’s imagined analytical engine.
Although Babbage never built his analytical engine, others took up his ideas, and I’ll explore an example in a future blog post.
Students might compare the history of using punched cards in computing with the development of physical switches, vacuum tubes, magnetic tape, transistors, and integrated circuits. Students might also think about the nature of punched cards, with their opened and closed holes, as a precursor to the “on” and “off” nature of binary code with its ones and zeros. What other principles might Jacquard’s looms inspire students to consider in their study of computer science?