Jacquard machine
Joseph Marie Jacquard's loom of 1801 did not calculate anything, yet few machines matter more to this story. It wove patterned textiles by following a chain of large punched cards bound together: where a card had a hole, a hooked rod passed through and lifted its thread, and where it had none, the thread stayed down.
That chain of cards is a program in all but name, stored outside the machine and swapped to change what it made. Change the cards and the same loom weaves a different picture. Charles Babbage saw the point, and his Analytical Engine was designed to be programmed with punched cards borrowed from the loom. Herman Hollerith's census machines later made punched cards the working medium of data processing.
More about Jacquard machine