Blog

Ada Lovelace's First Computer Program: What She Actually Wrote in 1843

Ada Lovelace's 'Note G' to her translation of Luigi Menabrea's paper on Babbage's Analytical Engine (1843) contains what is considered the first computer program: an algorithm for calculating Bernoulli numbers using the (never-built) Analytical Engine. But the Note's importance goes well beyond a single algorithm. Lovelace grasped something about computation that Babbage himself did not fully articulate — and that the computer science community would not fully develop for another century.

The Analytical Engine

Charles Babbage designed the Analytical Engine in the 1830s — a mechanical computer with memory (the 'Store'), a processing unit (the 'Mill'), input via punched cards, and conditional branching. It was never built due to cost and manufacturing limitations, but the design was logically complete. Lovelace's notes are our clearest explanation of how it would work.

The Bernoulli Number Algorithm

Note G contains a table of operations — essentially an algorithm in modern terms — for computing Bernoulli numbers using the Analytical Engine. It includes loops, conditional operations, and the management of multiple variables simultaneously. It is more complex than anything Babbage had documented, and historians generally attribute its design primarily to Lovelace rather than Babbage.

The Vision Beyond Calculation

More importantly, Lovelace grasped that the Engine was not merely a calculating machine but a symbol manipulator — it could operate on any objects that could be represented symbolically, not just numbers. 'The engine might compose elaborate and scientific pieces of music of any degree of complexity or extent,' she wrote. This insight — that computation is not inherently about arithmetic — anticipates Church-Turing computability theory by 100 years.

The Debate About Her Role

Some historians have argued that Lovelace's contributions were primarily editorial — that the key ideas came from Babbage. The correspondence between them shows extensive collaboration, with Babbage's revisions and suggestions. However, the Bernoulli algorithm in Note G and the philosophical insights about the nature of computation appear to be primarily Lovelace's contribution.

Frequently Asked Questions

What did Ada Lovelace actually program?

Lovelace wrote an algorithm in Note G (1843) for computing Bernoulli numbers using Babbage's Analytical Engine — considered the first computer program. The algorithm includes loops and conditional operations. She also articulated the principle that computers can manipulate any symbolic representation, not just numbers — anticipating modern computation theory.

Was Ada Lovelace really the first programmer?

The claim is debated. Lovelace's Note G (1843) contains the first documented algorithm intended for execution by a machine. Some historians argue Babbage contributed substantially to the algorithm and that Lovelace's role has been overstated by modern popular accounts. The philosophical vision of computing beyond arithmetic, however, appears to be genuinely Lovelace's insight.

What is a Bernoulli number?

Bernoulli numbers are a sequence of rational numbers with deep connections to number theory, appearing in formulas for the sums of powers of integers, the Riemann zeta function, and Taylor series of trigonometric functions. The first few are B0=1, B1=-1/2, B2=1/6, B4=-1/30. Lovelace's algorithm for computing them was the first algorithm designed for machine execution.

Read the full article on Geniuses.Club

Explore more geniuses

1,300+ articles · 1,300+ biographies · English

Browse all
01 · VS

Trending Comparisons

02 · TOP 100

Top IQ Rankings

03 · PRODIGIES

Child prodigies

Child prodigies →
04 · WORLD

Explore geniuses by country

Play & come back tomorrow

Daily Genius Challenge · Guess the genius
19th-century mathematician who wrote the first algorithm for Charles Babbage's Analytical Engine.
Tap your answer ↓
Which Genius Are You? Free IQ Test