ENIAC Errors in Isaacson’s “The Innovators”

Walter Isaacson’s 2014 book The Innovators begins with more than a hundred pages on the origins of modern computing. These recap the early history of computing literature: Babbage, Lovelace, Turing, von Neumann, Atanasoff, and of course ENIAC. For a bestselling popular book it has a surprising amount of technical detail, exploring the architectural features of the most famous early machines as well as the quirky ‘”innovators” who produced them. There are plenty of footnotes to historical work. Isaacson has a lot to say about ENIAC, which he views as the most important of the early computers. He even cites Crispin Rope’s discussion of ENIAC’s conversion to what is often called ”stored program” operation and correctly dates this to April 1948.

Despite this evidence of serious engagement with specialist research, Isaccson’s discussion of the computers of the 1940s is plagued with dozens of factual inaccuracies. Some of these are merely repeated from existing sources while others are his own unique misconceptions. Isaacson finds many people to thank in the book’s acknowledgements, but they do not suggest that he got anyone familiar with the relevant literature to read through these chapters prior to publication. (Outside of his immediate family, Isaacson names as readers of the whole manuscript only journalist and former diplomat Strobe Talbott, student journalist Danny Z. Wilson, and teenage computing enthusiast Raul Mehta).

The Innovators is by no means the least reliable thing ever written on ENIAC, but given its wide dissemination and its aura of careful research we thought it was worth flagging its errors in the hope that this might prevent a few of them from making their way into Wikipedia pages and from there into thousands of term papers and research reports.

Inaccurate Claim What’s Wrong With It? For Accurate Information See
Of Mauchly: “at the 1939 New York World’s Fair, he saw an electric calculator that used punched cards, but he realized that relying on cards would be too slow, given the amount of data he had to crunch.” (p. 64) Isaacson may not realize that ENIAC relied on punched cards for all input and output. More complex runs included hours punching, reading, and sorting cards. Figures 8.5 (p. 190) and 10.4 (p. 218) give a sense for how involved the punched card operations were in ENIAC’s more complex jobs.
“In June 1943 construction of ENIAC began.” (p. 74) While design work and evaluation of components was carried out in 1943, construction of ENIAC did not begin until 1944. This might seem like nitpicking, but it’s a telling error as Isaacson consistently conflates design with construction and equates engineering with tinkering. We discuss the physical assembly of ENIAC on pages 60-62.
“Goldstine, as the Army’s representative, oversaw the operations and the budget.” (p. 74) Goldstine was indeed the Army’s point person for ENIAC. But ENIAC was built by Penn under contract to the Army, and it was the Moore School’s Brainerd and Pender, who had direct operational of the project team and managed the budget. We document the initial organization of the project team on page 32 and scatter information on the contributions of Brainerd and Pender through the early chapters.
Eckert would “hover over other engineers and tell them where to solder a joint or twist a wire. ‘I took every engineer’s work and checked every calculation of every resistor in the machine to make sure it was done correctly,’ he asserted. He disdained anyone who dismissed an issue as trivial.”(p.74) Isaacson asserts that Eckert micromanaged wire-twisting engineers but his quote provides evidence only that Eckert would recheck calculations. Isaacson seems to be confusing the design work, done by engineers, with the physical soldering and wire wrapping, done by a large female workforce. We discuss the physical assembly of ENIAC on pages 60-62.
“After a year of building… in June 1944, Mauchly and Eckert were able to test the first two components, amounting to about one-sixth of the planned machine.” (p.75) Isaacson is seriously underestimating the final scope of ENIAC. If two accumulators composed “about one sixth” of the machine then ENIAC had about twelve panels. In fact its first full configuration had forty panels in total, including twenty accumulators. Figure 2.4, on page 46, shows ENIAC’s 1945 configuration.
Hopper then “understood, as has Ada Lovelace, that Babbage’s Analytical Engine had a special quality… The more she learned about Ada Lovelace the more Hopper identified with her.”(p. 91) Isaacson’s placement of this observation in a passage describing Hopper’s work in 1944 with Howard Aiken implies that Hopper was aware of Lovelace at this time. Hopper later said that she first learned of Lovelace ten to fifteen years later. Cohen, I Bernard. Howard Aiken: Portrait of a Computer Pioneer. Cambridge, MA: MIT Press, 1999 pages 61-72.
“What the women of ENIAC soon showed, and men later came to understand, was that the programming of a computer could be just as significant as the design of its hardware.” (p. 95) This kind of claim has been made by many others, but the gender split just doesn’t hold up. Arthur Burks came up with a detailed trajectory configuration for ENIAC long before the celebrated “women of ENIAC” were recruited to the project. We document the earliest work to devise ENIAC configurations on pages 37-43. This was entwined with design of ENIAC’s hardware.
“Around the same time that Hopper was doing so at Harvard, the women of ENIAC were developing the use of subroutines.” (p.99) The claim that the “women of ENIAC” discovered an unanticipated use of the Master Programmer to control loops when getting ready for the February 1946 public demonstration has been made by several writers. However design documents show that ENIAC’s master programmer unit had been designed to repeat sequences of operations (i.e. subroutines) after a lengthy consideration of design alternatives. This was not some novel capability invented just before its public unveiling. We describe the evolution of conditional branching and looping capabilities on pages 48-57.
“All the engineers who built ENIAC’s hardware were men…” (p.95) “ Although ENIAC was designed by men, it was built by a largely female workforce of “technicians,” “wiremen” and “assemblers.” We discuss the physical assembly of ENIAC on pages 60-62.
“all the programmers who created the first general-purpose computer were women.” (p.99) It is odd to characterize the contribution of any programmer as “creating” a computer. Also not all of the earliest ENIAC configuration diagrams were produced by women. We discuss the jobs run on ENIAC in 1945-6, and responsibility for their configuration, on pages 92-98.
“as early as the beginning of 1944, Mauchly and Eckert realized that there was a good way to make computers more easily reprogrammable: store the programs inside the computer’s memory rather than load them in every time. That they sensed, would be the next great advance in computer development. This ‘stored-program’ architecture would mean that a computer’s tasks could be changed almost instantly, without manually reconfiguring cables and switches.” (p.100) Isaacson is badly mangling the “stored program concept” here, equating it withholding a program in ROM rather than in RAM. In fact “load [programs] in every time” they were needed is exactly what later stored program computers did. He tries to contrast this backward approach with the supposedly superior new approach to “store the programs inside the computer’s memory.” In fact ENIAC (in its original mode), the Harvard Mark I, and other mid-1940s computers did not load their programs into memory at all. We reconstruct the development of what is often called the “stored program concept” in chapter six and examine it critically in chapter eleven.
On Eckert’s proposal for a calculator using magnetic disks for microcode “Because such disks were not yet affordable, he proposed using instead, on the next version of the ENIAC, a cheaper storage method, which was called an acoustic delay line.” (p. 100/101) Magnetic disks were not just unaffordable – they did not yet exist at any price. Eckert’s proposal for a calculator has previously been misunderstood. We explore it on pages 232-238.
When von Neumann used the Harvard Mark I (before encountering ENIAC): “Von Neumann became convinced that the only solution was to build a computer that worked at electronic speeds and could store and modify programs in internal memory.” (p.105) No footnote is given to support Isaacson’s startling suggestion that von Neumann had worked out what is often called the “stored program concept” before ever meeting Eckert & Mauchly. Von Neumann’s experience with other computers prior to ENIAC is best documented in Aspray, William. John von Neumann and the Origins of Modern Computing. Cambridge, MA: MIT Press, 1990.
Von Neumann’s “work began in the first week of September 1944, when Mauchly and Eckert explained the machine in detail and shared their thoughts about creating, in their next version, ‘one storage device with addressable locations’ that would serve as a memory for both the data and programming instructions.” (p. 106) On page 106 Isaacson has Eckert and Mauchly explaining to von Neumann the very same concept that, according to page 105, von Neumann had come up with before meeting them. Setting aside this internal contradiction, we are unaware of any primary documentation to support the idea that Eckert and Mauchly had a clear plan for the storage of code and data in a single memory space prior to meeting von Neumann. We reconstruct the development of what is often called the “stored program concept” in chapter six.
Von Neumann’s series of meetings with the ENIAC team, and in particular four formal sessions he held with them in the spring of 1945, took on such significance the minutes were taken under the title ‘Meetings with von Neumann.’ Pacing in front of a blackboard and ringleading the discussion with the engagement of a Socratic moderator, he absorbed idea, refined them, and then wrote them on the board. ‘He would stand in front of the room like a professor consulting with us,’ Jean Jennings recalled. ‘We would state to him a particular problem that we had, and we were always very careful that the questions represented fundamental problems that we were having and not just mechanical problems.’

Von Neumann was open but intellectually intimidating. When he made pronouncements, it was unusual for anyone to push back. But Jennings sometimes did. One day she disputed one of his points, and the men in the room stared at her incredulously. But von Neumann paused, tilted his head, and then accepted her point. Von Neumann could listen well, and he had also mastered the ingratiating art of feigning humility. ‘He was an amazing combination of a very brilliant man who knows that he’s brilliant, but at the same time is very modest and shy about presenting his ideas to other people,’ according to Jennings. ‘He was very restless and would march back and forth across the room, yet then he presented his ideas it was almost as though he were apologizing for disagreeing with you or thinking of a better idea.’….

Creating an elegant instruction set, he realized, involved both rigorous logic and precise expression. ‘He was very thorough in explaining why we needed a particular instruction or why we could do without an instruction,’ Jennings recounted. ‘It was the first time that I had ever realized the importance of instruction codes, the logic behind them and the ingredients that a whole instruction set must have.”  (pp. 106-107).

Historians have very little evidence of what actually happened during von Neumann’s meetings with the ENIAC team in early 1945, just prior to the creation of the First Draft design for EDVAC. Participants later differed sharply in their claims about who devised the key ideas behind modern computer architecture. The notes Isaacson mentions provide clues but fall well short of conclusive evidence.

Isaacson fills the gap with vivid testimony from Jean Bartik’s memoir. Unfortunately what she is actually describing, as the memoir itself makes clear, is a completely different set of meetings held in Princeton in 1947 to design an instruction set for ENIAC. By this point several other instruction sets had already been designed and the work, while important, involved no conceptual breakthroughs.

This is shockingly bad editing by Isaacson, not least because a few pages earlier (pp.96-97) he correctly explains that Jennings/Bartik arrived at Penn for the first time only in March 1945 and was not recruited for ENIAC work until “a few months later,” meaning that she joined the project only after the Spring 1945 meetings he quotes her at length to describe had already taken place.

We discuss the meetings of the ENIAC team with von Neumann on page 137-138.
In the First Draft “von Neumann had left blank spaces for inserting references to other people’s work…. But when Goldstine had the paper typed up (it ran to 101 pages), he ascribed sole authorship to his hero. (p. 111) It’s not clear what Isaacson bases this claim on: we know of no surviving manuscript for the First Draft, and Isaacson does not cite one. Instead he seems to be confusing spaces left for internal cross-references, some to planned sections of the report that were never written, with spaces for citations to other work. Two different versions have survived in archives – an initial typescript prepared under Goldstine’s direction and a revised version mimeographed for external distribution. Both included gaps for the addition of hand-drawn figures, mathematical symbols, and cross-references to different sections of the document. We are not aware of any blank spaces left for citations to the work of others. We discuss the composition of the First Draft on pages 136-140.
By 1945 “the war was over. There was no need to compute artillery trajectories…” (p. 112) Trajectory calculations were one of the first production jobs run on ENIAC, in August 1946. During its period of peak output, in the 1950s, they accounted for about 20% of all ENIAC work. The calculations of August 1946 are recounted in “Deposition of Mrs. Genevieve Brown Hatch”, October 18, 1960, in the Stibitz papers at Dartmouth College, box 35 (Civil Action No, 105-146. Sperry Rand vs. Bell Labs. Deposition of Mrs. Genevieve Brown Hatch).
In 1945, the Los Alamos “mammoth equations were brought to Penn in October for ENIAC to crunch.” (p.113) Isaacson has been misled by Jean Bartik’s colorful but idiosyncratic memoir regarding the exact date. The ENIAC log book confirms that other secondary sources are correct to date the beginning of the Los Alamos computations to December rather than, as she does, to October. We discuss the Los Alamos computations, which began in December 1945 but continued intermittently well into 1946, on pages 78-83.
“The tips of the vacuum tubes in the ENIAC accumulators, which were arranged in 10 x 10 grids, poked through holes in the machine’s front panel.” (p. 114) Not true. The vacuum tubes pointed to the rear of the machine, for easy replacement. Visual indication of the numbers stored on ENIAC front panels required separate neon indicator lights. This is easily confirmed by examining surviving portions of ENIAC, or the diagrams including in its 1946 series of manuals.
“ENIAC solved the equations, and in doing so showed that Teller’s design was flawed.” (p. 113) Isaacson is confusing the results of the 1945/46 calculations on Edward Teller’s “Super” bomb design with a quite different set of ENIAC Monte Carlo simulations run in 1950. The 1945 equations were simplified to the point that their relevance was questionable, but Teller claimed vindication at a secret conference and used the results to win support for further work on his pet project. We make this point on page 82, relying heavily on the discussion of still-classified materials in Fitzpatrick, Anne. Igniting the Light Elements: The Los Alamos Thermonuclear Weapon Project, 1942-1952 (LA-13577-T). Los Alamos, NM: Los Alamos National Laboratory, 1999.
“Von Neumann and Goldstine, along with the engineers Nick Metropolis and Richard Clippinger, worked out a way to use three of ENIAC’s function tables to store a rudimentary set of instruction.” (p. 119) Calls Metropolis an engineer; he was a physicist. Calls Clippinger an engineer; he was a mathematician. Suggests that the instruction set, rather than a series of program instructions, is stored on the function table. “Use three of” implies, incorrectly, that ENIAC had more than three function tables. We discuss Clippinger and his contribution on pages 158-9, 162-3 and 207-209. Metropolis worked at Los Alamos during the Manhattan Project and later returned to head its computing group.
“Once function tables had been used to store data about the drag on an artillery shell, but that memory space could be used for other purposes since the machine was no longer being used to calculate trajectory tables.” (p. 119) The storage of other kinds of constants and parameters in the tables had always been anticipated. The ENIAC manuals of 1946 also documented the idea of using the tables to generate control signals. Also, as mentioned above, Isaacson is quite wrong to say that ENIAC did not calculate trajectory tables.
Says of ENIAC in April 1948 that it “had a read-only memory, which meant that it was hard to modify programs while they were running. In addition, its mercury delay line memory was sluggish and required precision engineering” (p. 119) We have no idea what Isaacson means by this discussion of the slowness of ENIAC’s delay line memory. ENIAC was never used with a functioning delay line memory. A delay line memory, called “the register,” was ordered in 1947. When finally delivered and tested in 1949 it turned out not to work and was immediately disconnected. We discuss the origins of the “register” on pages 113-115 and its fate on pages 208-9.

Making and Remaking the Modern Computer