CodeBork | Tales from the Codeface

The coding blog of Alastair Smith, a software developer based in Cambridge, UK. Interested in DevOps, Azure, Kubernetes, .NET Core, and VueJS.


Project maintained by Hosted on GitHub Pages — Theme by mattgraham

Charles Babbage’s Analytical Engine was perhaps the first major advance in modern computing, yet the first plans date from 1837, an extraordinary 100 years before the first general-purpose computers were built. Babbage’s designs include items that are direct precursors of modern-day computer components, including a giant mechanical CPU (the modern-day’s computer’s “brain”), which Babbage called the “mill”; memory, called the “store”; and persistent storage (disks) in the form of punched cards. The Analytical Engine was to be powered by steam, and programmable like any modern computer (albeit using punched cards). By way of reference, the first programmable computer ever built was the Colossus housed at Bletchley Park at the end of World War II.

Countess Ada Lovelace, daughter of the great poet Lord Byron, met and corresponded with Babbage a number of times during the period in which he was designing the Analytical Engine. She provided some comprehensive notes on the design, including a program for calculating a series of Bernoulli numbers in the Analytical Engine. The program has since been proven to run correctly in the Analytical Engine, had it ever been built, and as a result she is widely considered to be the first computer programmer. A programming language has been named in her honour.

The Analytical Engine was to be the successor to Babbage’s earlier Difference Engine, which was essentially a mechanical calculator. Construction began on the Difference Engine, but funding was eventually withdrawn by the British government due to spiralling costs (sound familiar?). Working models have been produced in the last 20 years, however, and one is currently housed at the Science Museum in London. Seeing it in action is a marvel, and hints at some of the beauty inherent in mathematics. The following clip, whilst brief, gives you some idea:

</param></param></param></embed>

The pause in the rotation of the dials happens when a carry is calculated. Note that the machine also features a printer, built to Babbage’s designs.

To date, the Analytical Engine has never been built in its entirety. Babbage produced many revisions to his designs over the course of roughly 35 years, and whilst he was able to build a small portion of it, he sadly passed away before he saw either of his great inventions built and in operation. Recently a prominent British programmer, John Graham-Cumming, has started a project to build the Analytical Engine for the first time. Named Plan 28 after the most complete of Babbage’s plans for the Analytical Engine, the aims are four-fold:

  1. To help digitize and make available in electronic form all of Charles Babbage's notes and plans associated with the Difference Engine and Analytical Engine.
  2. To fund the study of Babbage's Analytical Engine plans to determine what best constitutes a complete design for the Engine.
  3. To coordinate the building of a computer simulation of the Analytical Engine that shows its working in 3D with accurate physics.
  4. To build the Analytical Engine and donate it to a museum in Great Britain for public display.

So, this is where you come in. If you’re reading this, the likelihood is that you have some interest in computers. You most likely don’t need me to tell you that the Analytical Engine is where modern computing was conceived, or that even now, nearly two hundred years after the idea was first born, it would be an incredible achievement to see his invention built. You already have a grasp of the importance of this project, and what it could do for furthering public education in and understanding of computing. All you need to do is sign the pledge and spread the word via Twitter, Facebook, your own blogs, word of mouth…