1834 – England

‘A machine which had a separate store for holding numbers (memory) and a ‘mill’ for working on them (arithmetic unit). The machine used a punched card system for specifying the sequence of instructions (input) and for obtaining results (output)’

In 1823 the mathematician and inventor Babbage was driven to attempt to build a mechanical solution to the alternative of books of mathematical tables written by teams of number crunchers to help with complicated calculations. Due to human error they were inevitably prone to mistakes. Babbage was a champion of machines and the scientific approach – he believed that if a mechanical solution could be devised then accuracy would always be assured.

Babbage designed three difference engines – mechanical devices that would compute and print mathematical and navigational tables – but never built one.

The machines were designed for mathematical calculations only.

Each number in the difference engine was represented by a column of cogwheels, and each cogwheel was marked with digits from 0 to 9. A number was set by turning the cogwheels in the column to show the right digit on each. The working model had seven number columns, each of sixteen digit cogwheels or digits. Babbage separated out the addition process from the ‘carry over’ process. The ‘mill’ (central processing unit) performed various arithmetical operations, the ‘store’ (memory) held numbers. Results from the mill were returned to the store after processing.

He also designed an analytical engine, the first programmable computer. It was much more than a calculator, rather an all-purpose computing machine. His design envisaged ‘programs’ written using loops of punched cards inspired by the Jacquard Loom. It included a reader able to process the instructions they contained, a ‘memory’, which could store the results, ‘sequential control’, and other logical features that would become components of twentieth century computers.

*‘It has no pretensions whatever to originate anything, but it can do whatever we know how to order it to perform’* wrote Lovelace about the analytical engine. Lovelace, a mathematician, is acknowledged by many as the world’s first computer programmer. Daughter of the poet Lord Byron, Lovelace worked closely with Babbage in writing instructions for his difference and analytical engines. Her writings provide the first descriptions of programming techniques. She died of cancer aged 36.

Although Babbage prepared detailed drawings for thousands of parts, only a few parts were built. His project was ahead of its time and Victorian technology could not provide the precisely machined components required.

The public perception was of a ‘white elephant’. The Prime Minister Robert Peel is said to have commented that perhaps Babbage’s machine ‘should be used to calculate the time at which it would be of any use’.

The need to develop technology as he went along meant that progress was slow and after ten years only half the parts had been made. Human computers and printed tables remained a cheaper, more practical option. One spin-off from the project, however, was the development of the first standardized screw system by Joseph Whitworth, which revolutionised engineering.

In 1991, the two-hundredth anniversary of Babbage’s birth, Doran Swade and his team at the British Science museum built the difference engine number 2 (designed between 1847 and 1849). The calculation section of the engine weighs 2.6 tonnes and consists of 2400 parts.