Content uploaded by Herbert Bruderer
Author content
All content in this area was uploaded by Herbert Bruderer on Mar 01, 2024
Content may be subject to copyright.
1
Was Ada Lovelace actually the first programmer?
In his report about the analytical engine of Charles Babbage in tabular form Luigi Federico Mena-
brea published a program for solving linear equation systems. This work was the result of a talk
that Babbage gave at a conference in Turin (1840) (see Luigi Federico Menabrea: Notions sur la
machine analytique de M. Charles Babbage, in: Bibliothèque universelle de Genève, 1842, new
series, volume 41, pages 352–376).
Ada Lovelace translated Menabrea's article into English and added several comments of her
own. She describes – also in tabular form – a program for the calculation of Bernouilli numbers
(see Ada Lovelace: Notes by the translator, for L. F. Menabrea, sketch of the analytical engine in-
vented by Charles Babbage, esq., in: Scientific Memoirs, volume 3, Richard and John E. Taylor,
London 1843, pages 666–731).
At the time of the 200th birthday (2015) of Ada Lovelace a number of new books were issued.
Ada Lovelace was the first programmer
"The most elaborate program developed by Babbage and Lady Lovelace for this machine was a rou-
tine for calculating Bernoulli numbers" (see Donald E. Knuth; Luis Trabb Pardo: The early devel-
opment of programming languages, in: Donald E. Knuth (ed.): Selected papers on computer lan-
guages, Center for the Study of Language and Information, Stanford CA 2003, page 5).
"There is direct documentary evidence that Ada Lovelace created this table (writing it out in pen-
cil)" (see Thomas J. Misa: Charles Babbage, Ada Lovelace, and the Bernoulli numbers, in: Robin
Hammerman; Andrew L. Russell (eds.): Ada’s legacy, Association for Computing Machin-
ery/Morgan & Claypool Publishers, San Rafael, California 2016, page 15).
"Even if Babbage provided Ada with the mathematical expressions for the Bernoulli numbers, and
assisted with the derivation of a general formula, the transformation of the general formula into a
step-by-step algorithm remains Ada’s achievement, as the letters clearly indicate" (see Thomas J.
Misa: Charles Babbage, Ada Lovelace, and the Bernoulli numbers, in: Robin Hammerman and An-
drew L. Russell (eds.): Ada’s legacy, Association for Computing Machinery/Morgan & Claypool
Publishers, San Rafael, California 2016, page 26).
"For Note G on the Bernoulli numbers, the table-algorithm has ten data variables, three working
variables, and four result variables. The computation has just 25 operations, but there are in addition
two nested loops: an outer loop consisting of steps 13–23, and two inner loops consisting of steps
13–16 and 17–20 […]. Nothing like it appeared in Menabrea’s original" (see Thomas J. Misa:
Charles Babbage, Ada Lovelace, and the Bernoulli numbers, in: Robin Hammerman and Andrew L.
Russell (eds.): Ada’s legacy, Association for Computing Machinery/Morgan & Claypool Publish-
ers, San Rafael, California 2016, page 28).
"At the least, we can grant her primary authorship of the first algorithm intended for a computing
machine" (see Thomas J. Misa: Charles Babbage, Ada Lovelace, and the Bernoulli numbers, in:
Robin Hammerman and Andrew L. Russell (eds.): Ada’s legacy, Association for Computing Ma-
chinery/Morgan & Claypool Publishers, San Rafael, California 2016, pages 29/30).
Ada Lovelace was not the first programmer
2
"Lovelace is widely celebrated for a variety of reasons. She is variously described as a mathematical
genius, as having a critical influence on the invention of the Analytical Engine, of being the first
programmer, and of being a prophet of the computer age. The first two of these are unsupported by
evidence of any kind and are readily disproved by the simple chronology of events. The third claim
to fame (that she was the first programmer) is understandable but wrong. But the tribute of being a
visionary of the computer age justifies as fully deserved the tributes paid to her for otherwise mis-
taken reasons" (see Doron D. Swade: Pre-electronic computing, in: Cliff B. Jones and John L.
Lloyd (eds.): Dependable and historic computing, Springer-Verlag, Heidelberg etc. 2011, pages 75–
76).
"The notes contain examples of algorithmic stepwise sequences of operations executed by the no-
tional Analytical Engine to find solutions, what we would now call "programs“, though neither
Babbage nor Ada used these terms. The most detailed worked example was a "program" to compute
Bernoulli numbers. So the first published example of a "program" appeared under Ada’s name.
While it is edifying to describe her as "the first programmer" and therefore the originator of the
practices and procedures of computational solution by machine, it is misleading to do so. Those
familiar with the archival sources are clear that the techniques and examples in the paper were those
devised by Babbage much earlier and suggested or supplied by him" (see Doron D. Swade: Pioneer
profile Ada Lovelace, in: Resurrection. The bulletin of the Computer Conservation Society, winter
2010/2011, no. 53, page 33).
Conclusions
In the dispute between engineers (the English historian of technology Doron Swade and also the
Australian Allan Bromley) and the American historian Thomas Misa, one can concur with the engi-
neers: as archive documents show, the programs for the solution of linear equation systems and for
the calculation of Bernoulli numbers are probably attributable to Babbage. It can therefore be as-
sumed that Ada Lovelace is celebrated unjustly as the creator of the first program.
Source
Bruderer, Herbert: Milestones in Analog and Digital Computing, Springer Nature Switzerland AG,
Cham, 3rd edition 2020, 2 volumes, 2113 pages, 715 illustrations, 151 tables, translated from the
German by John McMinn, https://www.springer.com/de/book/9783030409739
3
Meilensteine der Rechentechnik/Milestones in Analog and Digital Computing, volume 1 (Credit: De Gruy-
ter Oldenbourg/Springer Nature 2020)
Bruderer, Herbert: Meilensteine der Rechentechnik, De Gruyter Oldenbourg, Berlin/Boston, 3. Auf-
lage 2020, Band 1, 970 Seiten, 577 Abbildungen, 114 Tabellen,
https://www.degruyter.com/view/title/567028?rskey=xoRERF&result=7
Bruderer, Herbert: Meilensteine der Rechentechnik, De Gruyter Oldenbourg, Berlin/Boston, 3. Auf-
lage 2020, Band 2, 1055 Seiten, 138 Abbildungen, 37 Tabellen,
https://www.degruyter.com/view/title/567221?rskey=A8Y4Gb&result=4
Herbert Bruderer
Seehaldenstrasse 26, Postfach 47, CH-9401 Rorschach, Switzerland
+41 71 855 77 11,
herbert.bruderer@bluewin.ch, bruderer@retired.ethz.ch
August 2022