So how did the simple devices of the past evolve into the complex machines of today?
Charles Babbage shifted the paradigm in 1837, when he proposed the “The Analytical Engine” - a computer that could perform various mathematical operations and conditional statements. For instance, you would feed the engine a program that translated to: “If the input is greater than 7, output 12”. Then, you would be able to input numbers into the engine and if that number was greater than 7, the engine would output 12. This seems simple, but for the time, a machine like this was unheard of!
In 1847, Ada Lovelace elevated computer science by proposing the first real algorithm that the Analytical Engine could perform. An algorithm is a sequence of steps that the computer follows to solve a problem. In a paper about the Analytical Engine, Lovelace described a program that would calculate any Bernoulli Number. Because of this, some consider Ada Lovelace the first programmer.
This algorithm was critical in the development of programming because it was the first proposal where a machine could generate mathematical output based solely on logic.
Can you think of a cool and useful algorithm that Babbage’s machine could perform?