200 Years Ago Charles Babbage Proposed His Difference Engine
Written by Mike James   
Tuesday, 14 June 2022

Two hundred years ago today, on June 14, 1822 Charles Babbage presented a one-page note to the Royal Astronomical Society in London setting out his plans to build a Difference Engine that would use a clockwork mechanism to solve polynomial equations. 


Charles Babbage
(December 26, 1791- October 18, 1871)

Charles Babbage was a computer visionary who, even before he saw Jaquard's steam-powered loom in action, saw the potential to harness the emergent power source for computation.

The idea of getting a machine to automate the production of mathematical tables originated in 1821. With the industrial revolution in full swing, Babbage and his friend and fellow mathematician John Herschel, both of whom were founding members of the Royal Astronomical Society, were editing astronomical tables and finding an inordinate number of errors. Frustrated by the experience, Babbage expostulated:

“I wish to God these calculations had been executed by steam.”

To which Herschel replied:

“It is quite possible.“

Fast forward a year, during which time not only did he work on the concept of the Difference Engine, but also produced a small working model, now referred to as Difference Engine (0), and on 14 June 1822, Babbage presented a one-page “Note respecting the Application of Machinery to the Calculation of Astronomical Tables” to the Royal Astronomical Society. (Follow the link to view it). 

In the note Babbage claims:

"... in the engine which is just finished I have limited myself to two orders of differences. With this machine I have repeatedly constructed tables of square and triangular numbers, as well as a table from the singular x2 + x + 41, which comprises amongst its terms so many prime numbers".

He goes on to mention that not only will the proposed engine calculate numbers "almost as rapidly as an assistant can write them down" but that in in order to eliminate transcription errors the machine will actually output the results as printed tables, concluding:

"Of several of these latter contrivances I have made models; and. from the experiments I have already made, I feel great confidence in the complete success of the plans I have proposed.”

The idea of using the method of differences to produce mathematical tables is clever, and if you want to understand this aspect of Babbage's concept follow this link for my detailed explanation. Even more ingenious, however, is the idea of automating the typesetting process so that the Difference Engine itself delivers stereotype plates imprinted in soft material that can be inked to print the tables required.

On the strength of this proposal, Baggage was awarded the money to design and build Difference Engine No 1, which would have stood 8 feet high by 7 long and 3 deep. He embarked on this project with the help of Joseph Clement, a skilled toolmaker and draftsman. To be successful they had to push the precision of metal working of the time to its limits but the reason Difference Engine No. 1 was never completed wasn't for want of skill but rather a falling out over money together with Babbage's enthusiasm for an even more ambitious project. An argument over compensation to Joseph Clement due for moving his workshop to be near to Babbage stopped the project in 1833. In reality it was probably that ten years was too long to sustain such a project without results and Babbage was already more interested in his Analytical Engine, a computer as opposed to a calculator machine, and another machine that wouldn't come to fruition.

A portion (about 1/7th) of the Difference Engine No 1 was put together in 1833, which at least demonstrated the feasibility of completing the whole machine.

difference engine 


Between 1846 and 1849 Babbage produced an improved design for "Difference Engine No. 2" which could cope with 31-digit numbers and seventh-order differences. This took advantage of ideas developed for the analytical engine to make the new difference engine calculate more quickly while using fewer parts and to celebrate the 200th Anniversary of Babbage's birth the London Science Museum decided to make the first physical realization of this design. The calculating portion was built by Doron Swade  between 1985 and 1991 and in 2002 the printing section was also completed. A second model of the entire Difference Engine No. 2 was then built in the USA and was on show in the Computing History Museum from May 2008 for nearly 8 years. In this video Doron Swade introduces this version, which in accordance with Babbage's plan is hand cranked:


Doron Swade was also part of the team who finally added steam power to the project - albeit to a much smaller, simplified version - built by the Computer Science Department at Royal Holloway, University of London in 2017. 

Babbage's Difference Engine continues to fire the imagination. We even reported on a LEGO version back in 2010. We are also following progress with the Plan 28 project, the attempt to build a working version of Babbage's Analytical Engine, see the most recent report here.  

Related Articles

Charles Babbage - The First Computer Visionary

What if Babbage...? 

Pre-history of computing

Lego Difference Engine

Plans to build Babbage's Analytical Engine 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.



Rust Twice As Productive As C++

Google director of engineering, Lars Bergstrom, gave a talk at the recent Rust Nation UK conference and claimed that Rust was twice as productive as C++. Given how good Google is at C++, this is quite [ ... ]

GitHub Introduces Code Scanning

GitHub has announced a public beta of a code scanner that automatically fixes problems. The new feature was announced back in November, but has now moved to public beta status.  

More News

raspberry pi books



or email your comment to: comments@i-programmer.info




Last Updated ( Tuesday, 14 June 2022 )