Video
Media Pending: Unit Video
Intended content: Full narrated video presentation, including visual assets, caption file, and transcript.
Learning purpose: Makes ordered execution and explicit state changes visible before
Planned form & duration: Video, ~6 minutes.
Production state: Draft (awaiting final audio/video assembly and YouTube upload).
Accessible text alternative: Ordered procedures explicitly name memory locations, operations, and state transitions. The written material below covers the same complete learning path.
Reading time: about 7 minutes. Activity: about 12 minutes.
The document
In 1843 an English scientific journal published a translation of a French-language account of Charles Babbage's Analytical Engine. The account had been written by the Italian engineer Luigi Menabrea; the translator was Ada Lovelace, who signed her work with her initials. She appended seven notes of her own, labelled A to G, and they run substantially longer than the memoir they accompany.
Note G — the last of them — sets out how the engine could be made to compute a sequence called the Bernoulli numbers. Unit 3 explains what those numbers are and makes you work one out by hand. This unit is about the form of what Lovelace wrote, because that form is one half of the comparison the whole module rests on.
The full bibliographic citation for the memoir, the translation and the notes is
held in course/references.md. This page cites it as (Lovelace 1843, Note G).
What Note G actually is
It is a table.
Not a description of a method, and not an argument that a method would work in principle. A table, laid out in order: one line per operation, running from the first thing the machine does to the last. Each line identifies the operation to be performed, the storage columns it takes its inputs from, and the column that receives the result (Lovelace 1843, Note G).
Babbage's design kept two functions physically separate: a store, holding numbers in columns, and a mill, performing arithmetic on numbers brought to it from the store. Memory in one place, operations in another, and a written procedure saying which values move between them and in what order.
The engine was never built. Nothing in Note G was ever executed on the machine it was written for. That is worth sitting with: the procedure had to be exact without the safety net of being run, which is the opposite of how most of us write instructions.
Three properties worth naming
These three words come back in every later unit, so it is worth being precise about them now.
Determinism
Given the same starting values and the same sequence of operations, the procedure produces the same result. Every time. Not usually, not with high probability — every time.
This is a strong property and it is easy to underrate because it feels obvious. Its practical consequence is that a disagreement between two runs is not variation, it is a fault. Something is broken and can be found. That is a completely different world from one in which two runs are simply expected to differ, which is where Unit 2 takes you.
Explicit state
The state of the machine is the collection of values currently held in its storage columns. Every value in that state got there because some earlier line put it there.
There is no quantity that is merely understood to be available. If a value is needed, you can point at the line that produced it. When you write a procedure by hand, this is the property that fails first: human instructions are full of objects and quantities that were never introduced, and we do not notice because we supply them ourselves as we read.
Control flow
The order of the lines is part of the meaning. Swap two of them and you have a different procedure, not the same procedure written differently.
The order is also not always a straight run from top to bottom. Note G's diagram marks a group of operations to be repeated, with the number of repetitions depending on which Bernoulli number is wanted (Lovelace 1843, Note G). The teaching point needed here is visible in the table itself: a procedure with a controlled repetition computes a whole family of answers, not one answer. That is the difference between a recipe and an algorithm.
"The first program"
You will have met the claim that Note G is the first computer program and that Ada Lovelace was the first programmer. The claim is useful — it points at something real, and it is why this module starts here. It is also more complicated than a slogan, and the module would be a poor advertisement for verification if it repeated a contested claim without saying so.
What is on firm ground. The notes were published in 1843 with the translation, signed with her initials. Note G contains an ordered table of operations for computing Bernoulli numbers [P2]. Those facts do not by themselves establish a priority claim.
What is genuinely contested.
- Babbage had written sequences of operations for the engine in his own unpublished notebooks before 1843, so whether Note G is "first" depends on whether publication is the criterion [S1], [S4].
- How the work on Note G was divided between Lovelace and Babbage is debated by historians, and the correspondence has been read in more than one way [S2], [S3], [S5].
- Nobody in 1843 had the concept of a program. Applying the word backwards is a choice we make, and a defensible one, but it is our choice and not a fact about 1843.
One more established fact, handled carefully. The published table in Note G
contains an error. Where it is — operation 4, an inverted division — is established
from a facsimile; only who introduced it stays contested. This module does not work
through the detail here; Unit 7 treats the whole episode as its case study in
historical honesty. See course/historical-notes.md for what the sources support.
If that feels unsatisfying, notice what it is modelling. "I know this much, this much is disputed, and here is where you can check" is a stronger position than a confident sentence, and it is exactly the position you will need to take about your own AI-assisted work in Unit 8.
The sentence that sets up the module
Writing about the limits of what the engine could do, Lovelace put it this way:
The Analytical Engine has no pretensions whatever to originate anything.
— (Lovelace 1843, Note G)
Read in context, this is a claim about following orders: the machine can carry out a procedure, and carrying out a procedure is not the same as producing something new. Whether the sentence still applies to the systems we have now is a genuine question that Unit 8 returns to, with the comparison made carefully rather than rhetorically.
For now, notice what the sentence takes for granted. It assumes you can say precisely what the machine was ordered to do, and then check whether it did that. Note G is fully checkable in this sense: every line is written down, and any line can be found to be wrong. Somebody did find one.
That is the property Unit 2 removes.
Why this module looks the way it does
This is background rather than argument, and nothing in the unit depends on it.
Ada Lovelace was the daughter of the poet Lord Byron, who left England in 1816,
when she was a few months old, and never saw her again [S5] (keys resolve in
../references.md) [G1]. In the summer of
that year Byron presided over a gathering at the Villa Diodati on Lake Geneva,
with Percy Shelley, Mary Godwin — later Mary Shelley — and Byron's physician John
Polidori; out of it came Frankenstein; or, The Modern Prometheus (1818) and
Polidori's The Vampyre (1819) [G2] [G3] [G4]; Frankenstein is the book usually
credited with bringing the anxiety about a made thing that reasons into English
literature. A module about a machine that
produces plausible speech, and about whether it originates anything, is therefore
working in a register it inherited rather than one it borrowed, which is why the
module's visual design leans dark, with a single red accent, instead of the usual
palette of an introductory course. What Lovelace herself made of any of that, and whether
it touched her mathematical work at all, is not something this module claims.
The connection is a visual motif, not a historical inference.
Summary
- Note G is an ordered table of operations for computing Bernoulli numbers, published in 1843 with Lovelace's translation of Menabrea's memoir.
- Each line is a state change: an operation, its inputs, and where the result goes.
- Ordered procedures are deterministic, hold explicit state, and depend on control flow — including controlled repetition.
- "The first program" is a useful claim with real historical nuance. State what is established, mark what is contested.
- The published table contains an error. Its location is established; only who made it is contested. Unit 7 deals with it.
Now do activity.md, then take checkpoint cp01-ordered-steps.
Work through it
Timings: video 6 min, reading 7 min, activity 12 min.
Check yourself
This unit has one checkpoint. Both routes ask the same questions and accept the same answers — use whichever suits you.
- What the procedure left unsaid
cp01-ordered-steps
In a terminal, from course/lab/:
python3 selfcheck.py run --unit 1
Your local record
Local progress is available in a supported browser.