Jump to ContentJump to Main Navigation
Eniac in ActionMaking and Remaking the Modern Computer$

Thomas Haigh, Mark Priestley, and Crispin Rope

Print publication date: 2016

Print ISBN-13: 9780262033985

Published to MIT Press Scholarship Online: May 2017

DOI: 10.7551/mitpress/9780262033985.001.0001

Show Summary Details
Page of

PRINTED FROM MIT PRESS SCHOLARSHIP ONLINE (www.mitpress.universitypressscholarship.com). (c) Copyright The MIT Press, 2022. All Rights Reserved. An individual user may print out a PDF of a single chapter of a monograph in MITSO for personal use. Subscriber: null; date: 20 May 2022



(p.275) Conclusion
Eniac in Action

Thomas Haigh

Mark Priestley

Crispin Rope

The MIT Press

Abstract and Keywords

This concluding chapter engages with key ideas from treatments of ENIAC by authors such as Jennifer S. Light and Nathan Ensmenger to explore ENIAC’s legacy in areas such as computer programming, computer center organization, and computer simulation. It is inspired by the treatment of ENIAC’s historiographic role by the late Michael S. Mahoney in his provocative essay “The Histories of Computing(s).” Mahoney challenged the assumed centrality of ENIAC to all history of computing narratives. Having shown in the previous chapter how this perceived position developed over time we can now make a balanced reappraisal, arguing that ENIAC’s influence was profound and underappreciated in some areas but has been overstated or misinterpreted in others. One important topic is the idea that ENIAC’s operators were the “first computer programmers,” a description that distorts their actual relationship to the machines.

Keywords:   Mahoney, Michael S, Light, Jennifer S, Ensmenger, Nathan, Batik, Jean, ENIAC, Computer use

ENIAC is probably the most written about of the early computers and, thanks to various legal proceedings, undoubtedly the best documented. When we began this project, we knew that considerable archival material on its computing career had yet to be exploited, but we imagined that the volume of material written on its construction and on its initial use at the Moore School rendered further original research pointless. When we began to dig more deeply, however, the surprising inconsistencies of the existing treatments, and their incompleteness, drew us back to the archives for a more fundamental reassessment of ENIAC’s entire trajectory.

Some of the inconsistencies are relatively trivial errors of fact. For example, the oft-quoted statistic that ENIAC had 5 million electrical joints turned out to be wrong by a factor of 10 or so. In many cases, original errors in more scholarly sources have been reproduced in popular books, online articles, and reference sources. ENIAC became operational in its new programming mode in April of 1948, but the September date given in Goldstine’s influential book has been cited far more often than the correct date.

These errors can be corrected in passing, but other errors have the potential to significantly distort our understanding of the development of computing practice. The need for a conditional branching capability, recognized early in ENIAC’s design, became a central design requirement for its master programmer unit. It was not, as was once believed, an afterthought. Likewise, the question of how to set the machine up to tackle particular problems had not, as often suggested by historians, been entirely neglected, in favor of the more serious task of designing and building hardware, until mid 1945, when the first operators were selected. In fact, it had been planned for in detail since the beginning of the project, and it had informed many aspects of the computer’s design.1

These inconsistencies, omissions, and errors brought us back to the primary sources. However, we did not return to well-trodden ground merely to correct details. New questions guided us to reposition ENIAC within broader stories about the development of computer simulation as a new kind of experimentation, about (p.276)


Figure C.1 Michael Mahoney was critical of this traditional hardware-oriented view of history, in which ENIAC formed a narrow thread connecting pre-World War II scientific and administrative practices to the worlds of modern computing.

the work of women in mathematics, the invention of the modern computer, and about the evolution of programming practice.

ENIAC and the Communities of Computing

To speak of “the history of the computer” is to assume both a single object and a singular story. Michael S. Mahoney rejected both in his influential essay “The Histories of Computing(s).” His sketch of the received “machine centered view” of history, reproduced here as figure C.1, exposed the assumed and often unearned centrality given to ENIAC. Its hourglass shape resembles that of the diagram by Arthur and Alice Burks presented as figure I.1 in the introduction to this volume, but it shows application areas rather than technologies. Historians, Mahoney (p.277)


Figure C.2 Mahoney’s preferred “community oriented” conceptualization of computing history emphasized continuities of practice within particular application areas.

believed, had skewed things by assuming that a variety of previous technologies and their users had somehow converged in the creation of ENIAC and the invention of the computer, and that computer technology, as it grew more and more powerful, spawned ever more complex and diverse areas of application (“Its progress is inevitable and unstoppable, its effects revolutionary”).2

Mahoney argues instead for the “community view” of history that he captured in the diagram reproduced here as figure C.2, which confines ENIAC’s direct influence on later practice to the specific area of scientific computation. We share Mahoney’s belief that the use of computer technology in particular areas, such as military command and control or business data processing, usually involved profound continuity with the specific technologies and practices previously used in that area. In this book, we situate ENIAC within particular traditions of mathematical (p.278) labor and conclude that its direct influence on later practice (for example, on the selection and work of programmers) was felt far more strongly within scientific programming than in other application areas.

This community view presents postwar computing as a set of evolutionary developments within different areas of society, from management to military command and communication. The accompanying shift of focus toward the applications of computers, in which hardware is combined with software, institutions, and practices, leads us away from a single story about a revolutionary moment whose impact radiates outward and toward a set of connected but largely distinct stories about how users, applications, and institutions evolved in particular social spaces.

Despite the focus on communities of use, Mahoney largely retained the traditional view of ENIAC as a machine that was important because of its location on the main flow of development through EDVAC to the historical rupture represented by the cross-cutting bar that Mahoney titled simply “computers.” The currents of history flow through ENIAC, eventually carrying computer technology downstream from its spawning ground in “technology and science” to reach other kinds of users. We deepen and nuance this perspective with archival evidence, demonstrating that the EDVAC design itself emerged partly as a response to perceived shortcomings in ENIAC and partly in response to the demands of a new mathematical application: the solution of partial differential equations. This new project led not only to the expected development of a new machine but also, and more importantly, to the articulation of a set of new paradigms of computing. This is one of the senses, alluded to in our subtitle, in which the ENIAC project both made and remade the modern computer.

In the same spirit, we have moved away from a simple story of innovation and of ENIAC as a “wonder” of the early history of computers. ENIAC was, as Galison noted, a trading zone. Whereas tourists might view Stonehenge, say, simply as an awe-inspiring monument, archeologists have studied its development and constructed accounts of how the site mattered to and was used by the inhabitants of its region over thousands of years. We have similarly treated ENIAC as a site at which technological innovation, conceptual development, and computational practice came together over a period of more than ten years.

Following Mahoney’s suggestion to look at continuities in use, we warn against automatically situating ENIAC as the starting point of every story to be told about the history of the modern computer unless a case can be made for a direct continuity of practice and influence. Like most other automatic computers of the 1940s, ENIAC was a one-off machine in the sense that it was designed to a unique set of plans and hand-built in a production run of one. But ENIAC was more idiosyncratic than most other early computers, and therefore some of its practices were particularly difficult to transfer. Many later machines adapted their architectures and instruction (p.279) sets from a few models, such as the 1945 EDVAC design, Turing’s plans for the ACE, or von Neumann’s design for the Institute for Advanced Studies computer. The results, varied as they were, were variations on a theme.

Everything about ENIAC was distinctive, from its decimal ring counters to its decentralized control mechanism and modular architecture. ENIAC became even less representative during the 1950s, as corporations overtook universities and research centers as the primary users of computers. The custom building of computers was replaced almost entirely by the procurement of standard commercial models. When Harvard pulled the plug on its Mark I (the only wartime machine to have outlasted ENIAC), its place was taken by a Univac 1, the machine that first proved a market existed for commercially built computers.3 The SSEC’s prime place on Madison Avenue was taken by another commercial machine, the IBM 701, which quickly won favor among aerospace firms funded by lavish government contracts. It is striking how foreign many aspects of ENIAC practice were to the dominant modes of computer use even a decade later.

ENIAC and the Origins of Programming

ENIAC’s initial operators have often been called the “first computer programmers.” This is not entirely accurate, given that ENIAC set-ups had previously been developed by Arthur Burks and others, and all who were involved agreed that the set-up used for ENIAC’s inaugural work on the Los Alamos problem was created primarily by Nicholas Metropolis and Stanley Frankel. Earlier documents produced by others, such as Ada Lovelace and John von Neumann, are often said to contain “programs” that were never executed, and the users of other computers such as the Harvard Mark I (among them Grace Hopper) were coding and running sequences of instructions before the ENIAC operators were hired.

The historian Nathan Ensmenger has claimed that “the history of vocational computer programming begins, in the United States at least, with the construction of the ENIAC in summer 1945.”4 This is a much more nuanced assertion, explicitly confined to programming as a distinct occupation rather than an activity. This specificity prompts a different concern: the people in question were hired as operators, and their contributions to tasks later seen as the domain of specialist “programmers” were deeply entwined with their other responsibilities. Throughout ENIAC’s time at the Moore School, programming occurred collaboratively at the intersection of machine operation and mathematics, with input from both sides. As we mentioned earlier, not until March of 1947 did the group led by Jean Bartik became the first group employed specifically to program ENIAC.

We have shown that the work practices associated with ENIAC evolved from practices that had already been established within applied mathematics to manage large-scale computations. The mathematical analysis of problems and the creation (p.280) of detailed plans to carry out computations had long ago been separated from the laborious execution of step-by-step plans by human computers. Adding desk calculators to the process increased the productivity of the human computers but did not change the division of work. In contrast, the introduction of the differential analyzer during the 1930s transferred large parts of the computation process to a machine, creating the new role of operator. Operators mediated between mathematics and machine, working in hands-on fashion to trace input data and to configure the analyzer with wrenches but also developing craft skills that were important in the effective transformation of a mathematical equation into a form suitable to the machine. In this respect, ENIAC followed the model of the differential analyzer. But, as a digital computer, it could automate a much broader range of computational procedures. In complex calculations, some work was still carried out manually, typically by sorting and processing punched cards between runs, but most of what had formerly been carried out by a human computer was now performed by the automatic computer. As early as 1943 the project team had recognized that preparing ENIAC to tackle a particular problem involved new kinds of labor, proposing a three-phase division of the work into mathematical analysis, preparation of set-up forms, and physical configuration of ENIAC according to those forms.5 ENIAC’s operators were always expected to carry out the last of these tasks, in addition to their core responsibility of working the machine and its ancillary punched card equipment. In the event, they contributed significantly to the development of many of the set-ups—something that may not have been anticipated when they were hired. This recalls Stephen Barley’s characterization of the work of technicians as a “buffer” between professionals and technologies.6 A neat separation of expertise between the two is always challenging to maintain, a tension that may explain the evidence of close collaboration on many problems between mathematicians and operators.

Several of ENIAC’s operators left wonderfully vivid accounts of the process by which they discovered how to set up ENIAC to sequence mathematical operations. These are sometimes quoted in support of claims that they discovered radical new uses of ENIAC’s hardware that its creators had not anticipated, for example with Kay McNulty’s recognition that the master programmer could repeat sequences of operations for trajectory calculations.7 In fact the operators were grasping the precise application around which the unit was designed, just as millions of students since them have experienced sudden flashes of understanding into how loops can be used to structure computer programs.

It was hard to devise a mathematical treatment without good knowledge of the processes of mechanical computation, and it was hard to turn a computational plan into a set-up without hands-on knowledge of how ENIAC ran. For example, using ENIAC involved a great deal of careful attention to the scaling of quantities, (p.281) because, unlike later machines intended for scientific work, it lacked floating-point capabilities. In its original programming mode, this scaling was carried out not in ENIAC’s circuits but by special plugs called “shifters” that the operators manually inserted into its data terminals. It was also hard to operate ENIAC without understanding something about the mathematical task it was undertaking. In her 1946 report, Adele Goldstine mentioned a broad range of responsibilities for the operators, including the need for “the operator to first break down the equations into a form” that ENIAC could handle, the “scheduling of parallel operations when planning the set-up of a problem,” and providing “for the deletion of non-significant figures by placing a deleter at the output terminal” from which a number would be transmitted. Operators were also urged to “pay particular attention to the interlock coincidence flip-flop neon … before starting a computation.” She seems to have seen these duties, from analyzing equations to placing plugs and starting the computer, as natural parts of a single role.8 Scientific programming, as a distinct job, evolved as a set of intermediate tasks between the longer-established and better-understood jobs of mathematical analysis of a computation and the computation’s execution (with or without mechanical aids).

Historians have tended to see the “planning and coding” model that was presented in 1947 by Herman Goldstine and John von Neumann, which distinguished the mathematical analysis of a problem from the work of coding the resulting computational plan, as the basis of a rigid, unworkable, and patently sexist division of labor.9 One problem is that their approach seems to divorce understanding of computing from understanding of the system being modeled. We did, however, find a broadly similar and successful division of labor in the contemporaneous preparations for the Monte Carlo computations, in which John von Neumann drew an early draft flow diagram but Klara von Neumann developed later versions and translated the diagram into computer code. We are not sure how well the division of labor would have worked with a mathematician less talented and less interested in the intricacies of machine computation than John von Neumann driving the process—though Richard Clippinger’s partnership with Jean Bartik and her fellow contractors to code his supersonic air flow problem was also successful. Neither is it clear that coders without the natural gifts of Adele Goldstine, Jean Bartik, or Klara von Neumann would have taken so readily to the task.

Practices that developed around early computers such as ENIAC and the Harvard Mark I did, as several historians have noted, have a direct influence on computer companies’ production of hardware and software.10 The experience gained at the Moore School in the construction of ENIAC and the preparatory work for EDVAC had an obvious and profound effect on the hardware designs and engineering practices Eckert and Mauchly applied at their own company. Even after its assimilation as the Univac division of Sperry Rand, this business unit continued to employ many (p.282) other ENIAC veterans—among them Betty Holberton, who worked under Grace Hopper to develop automatic programming tools in the 1950s. ENIAC also exerted a definite influence on computing practice in many areas of science. For example, the Monte Carlo code run on ENIAC had a clear and direct influence, through the involvement of Nick Metropolis and other Los Alamos staff members, on later Monte Carlo simulations. Other ENIAC applications discussed above, including the 1950 numerical meteorology simulations and the statistical tables produced by Frank Grubbs, also pioneered techniques that were then widely used with later generations of computer hardware.

The perception of ENIAC’s operators as “the first computer programmers” has led some historians to tell a story in which the development of software was originally seen as women’s work but, through some unfortunate or nefarious process, was transformed into a boys’ club. This has sometimes been tied to an argument that programming work was originally conceptualized in terms that made it seem particularly suited for women. In her celebrated paper, Jennifer Light suggested that “engineers originally conceived of the task of programming as merely clerical,” and therefore suitable for women, who were later excluded once the skilled nature of the work was recognized.11 Nathan Ensmenger drew on Light’s analysis to provide the departure point for a history of programming work in which the “first computer programmers were not scientists or mathematicians, they were low-status female clerical workers and desktop calculator operators.”12

The specific and to a large extent local association of women with particular kinds of mathematical labor seems to us more important than a general association of women with work seen as clerical, particularly since there was nothing obviously clerical about operating ENIAC. Ensmenger suggested that the ENIAC women were hired as “coders” whose primary role was to develop plans of computation, and that coding work was seen as low-status activity akin to transcription.13 We believe, echoing Janet Abbate, that it is more accurate to say that the project’s leaders did not originally recognize “programmer” or “coder” as an occupation separate from “operator.”14 Some of the work later seen as part of programming was expected to be undertaken by the mathematician who analyzed the problem, while other aspects were conflated with machine operation.

As we have shown in this book, the selection of women as operators, though in part a function of wartime labor conditions, also reflected a long tradition of female participation in applied mathematics within the institutional settings of universities and research laboratories. Women had been carrying out firing-table computations manually, using desk calculators, and had been working the differential analyzer. The tradition continued with the introduction of new technology such as ENIAC, which was seen as a new and faster way to accomplish the same work. There was, in any event, no obvious alternative source of operators for ENIAC. (The Harvard (p.283) Mark I, interestingly, was operated by a team of uniformed enlisted men on the naval system of “watches,” because the computing center, though on Harvard’s campus, was officially a Navy facility.15)

During the early 1950s all of the automatic computers at the Ballistic Research Lab (ENIAC, two other electronic computers, and the relay calculators) were operated by a predominantly female workforce. Women were also hired in large numbers for computer work at other institutions (such as Bell Labs), which had a strong tradition of scientific computing work. In contrast, the computerization of clerical work was approached within the mental frame of “electronic data processing” and within the institutional context of the corporation. Women were present in large numbers as typists, and after computerization they continued to do similar labor as key-punch workers. There were three kinds of staff performing work relevant to administrative programming, from which most firms selected the employees to be seconded to the data processing group and re-trained for computer work: punched-card-machine workers, corporate “systems men” (responsible for redesigning business processes), and junior professional or supervisory employees in the department concerned (typically accountants, as computers were usually applied first to accounting or payroll tasks). Because all these groups were predominantly male, the story of male domination of administrative programming work was likewise a story of continuity within a particular institutional context.

Thus, we see the history of programming labor not as the creation of a new occupation in which women were first welcomed and then excluded, but rather as a set of parallel stories in which the influence of ENIAC and other early machines remained strong in centers of scientific computation but was negligible in corporate data-processing work.16

Practice and Place

One interesting feature of early ENIAC practice is the machine’s ability, until about 1952, to attract what participants called “expeditions” or “pilgrimages” by scientists eager to apply its unique talents to their problems. This mirrored the growing importance of other rare and expensive experimental devices, such as particle accelerators in the emerging world of “big science.”17 The concept of a “center of calculation” has entered the vocabulary of science studies thanks to Bruno Latour, although he used it to describe the ability of those at the center to control events elsewhere by gathering remote data on impersonal paper forms (“immutable mobiles”) and processing it.18 In our story, scientists moved along with their data. ENIAC itself was immobile, but its configuration was surprisingly mutable in response to scientists’ needs. As computers proliferated during the 1950s, the need for journeys from Los Alamos faded, as the lab there consistently housed several of the world’s fastest computers. Still, scientists in more marginal institutions (p.284) continued to trek to powerful computers. Even after minicomputers became a standard laboratory fixture, scientists needing supercomputer time typically had to work to arrange access and then had to make a long trip. Several of the underpinnings of today’s Internet, including the original development of the ARPANET and the development of the Mosaic Web browser, were motivated by the need to make powerful computers available to researchers without the need to physically visit them.

We are not the first to consider ENIAC in these broader contexts. Atsushi Akera used the metaphor of “ecologies of knowledge” to explore its roots in a specific and short-lived alignment of institutions, artifacts, people, occupations, and knowledge.19 We argue, similarly, that ENIAC should be understood, in its local context, as a machine intended to perform a particular kind of computation, exemplified by the calculation of trajectories. That requirement brought a sharp focus to Mauchly’s inchoate ideas about electronic computation, and, when aligned with the organizational capabilities and technological expertise of the Moore School, it formed the matrix that brought ENIAC into existence.

We have gone beyond Akera’s analysis to explain how initial conceptions of ENIAC and the structure of the computations it would carry out were changed in unforeseen ways during the detailed design and construction of the machine. That process evokes what Andrew Pickering called “the mangle of practice,” a concept that scholars of science have found useful when considering the role of material objects in science and the ways in which they transform and are transformed by people, ideas, and institutions in the practice of modern science.20 His phrase captures the messy heterogeneity of scientific practice, standing as a rebuke to pristine worlds of theory, ideas, and data and the assumption of a single culture of science found in traditional philosophy of science. Like Mahoney, Pickering insists on the specificity of time and place. In history, as in politics, all stories are local. Rather than trying to capture ENIAC in a neat and tidy retrospective historical schema, we have charted the process of its emergence in a specific and contingent set of circumstances.

We have also documented how the mangling of ENIAC continued long after its initial construction. To an extent that has not previously been fully appreciated, ENIAC’s users remade the way in which it was programmed, turning it from a device that had to be re-wired for each problem into a machine that could execute programs written in a repertoire of standard instructions and stored as a sequence of numbers. The modern code paradigm itself thus became a significant agent in ENIAC’s ongoing transformations. Further changes during the 1950s continued its co-evolution with changing practices, including modifications and additions to its hardware to optimize its performance within the new programming paradigm. The most striking of these was the addition of the new core memory unit.

(p.285) Remaking Scientific Practice

In our introduction, we began with Douglas Hartree’s comments that ENIAC promised scientists a thousandfold increase in the complexity of calculations they could undertake. Hartree asserted that scientists could “do quite a lot with ten million multiplications.” How did scientific practice change as people engaged with ENIAC’s tantalizing possibilities? We will conclude the book by teasing out three broader lessons.

Doing Quite a Lot with Ten Million Multiplications

One crucial development was a surge of interest in numerical methods to approximate the solution of equations. Numerical methods had been around for hundreds of years, and their application was already beginning to emerge as an area of research in mathematics. Hartree’s chair was in “mathematical physics,” though “numerical analysis” was the term that stuck as the field developed during the 1950s. Even in 1943, the ENIAC team was able to find a suitable expert, Hans Rademacher, elsewhere within the University of Pennsylvania, and his work helped to shape the design of ENIAC’s accumulators. However, the adoption of digital electronic computers gave the area a degree of visibility and intellectual excitement it had never before experienced.

Existing methods had been optimized for laborious hand calculation with, at most, thousands of multiplications for each data point. They had also, as we saw with Hartree’s 1946 analysis of the laminar boundary problem, been optimized for the capabilities of humans rather than machines. Humans would perform better if directed to calculate a smaller number of data points using relatively complex methods requiring them to look up previously calculated intermediate results. ENIAC could calculate with lightning speed but had no space in its memory for storing previous results. Later machines could accommodate much more complex methods, leading to the development of new approaches that would have been entirely infeasible without electronic computer power. Nevertheless, their architectures had their own distinctive strengths and weaknesses to which methods were tweaked, from cache memories to vector processing units. Numerical analysis involved plenty of theorems and proofs, and the development of some enormously creative algorithms, but it was also an experimental discipline to an extent that was unusual in the history of mathematical practice.

Algorithmic Simulation

Another development was the rise of simulation. As we discussed earlier, this topic is receiving an increasing amount of attention from historians and philosophers of science. The basic shift was from analytical descriptions of a situation, in which an (p.286) equation explained the relationship between different quantities, to an algorithmic approach in which the relationship was described only by a series of steps necessary to transform input into output.21 In that sense, simulation is a characteristically digital practice, and the ENIAC Monte Carlo calculations may plausibly be described as the first computerized simulations. Analog computers gave physical reality to quantities, implementing the equations connecting them as adjustable rotator arms or configurable water pumps. In contrast, ENIAC could be set up to carry out whatever steps were needed to implement the algorithm, particularly after its 1948 conversion to the modern code paradigm enabled it to use its function tables to store arbitrarily complex sequences of instructions.

Simulation provided a fundamentally experimental way of discovering the properties of the system described. One set initial parameters, ran the program, and waited to see what happened. As Mahoney observed, by relying on simulation over traditional mathematical analysis scientists have run into the main conceptual challenge of theoretical computer science. Computer scientists would like to be able to reason analytically about the behavior of a computer program by examining its code, rather than having to run it repeatedly with different input data and see what happens. Similarly, scientists would like to have a deeper understanding of why simulations produce the results they do. Computer scientists learned from Turing’s classic 1936 paper that some questions about computer programs are inherently impossible to answer, placing fundamental limits on the completeness of such analysis. Mahoney noted that “we confront the question of whether the computer, the newest and leading medium of scientific thought, can be comprehended mathematically, i.e., in some way algebraically or analytically. If so, then it will be viewed as the newest chapter of a history that began in the seventeenth century with the beginning of algebraic thought. If not, then perhaps fifty years from now someone will be giving a lecture on the topic of ‘The End of Algebraic Thought in the Twentieth Century.’”22

Loving the Machine

A third discovery was that programming a computer to carry out a scientific computation was a craft skill in its own right, and that computers exerted their own fascination as objects of scientific curiosity. One sees around ENIAC the origins of what became a common set of experiences and choices within the world of science during the 1950s and the 1960s. In the 1940s there was no such thing as a computer scientist or a computer programmer. Everyone who approached ENIAC did so from the vantage point of another socially recognized, and self-perceived, role. The women now remembered as programmers had been hired as machine operators. Similarly, the men who designed ENIAC were electronic engineers, and the men and women who used the machine to tackle their mathematical problems were (p.287) mathematicians, statisticians, physicists, aeronautical engineers, or members of other established disciplines.

Not everyone exposed to ENIAC reacted the same way. As with quintessential 1960s experiments such as taking LSD, some continued on much the same path as before but others rebuilt their lives around the new experience. Richard Clippinger, for example, first approached ENIAC as a potential scientific consumer of its services. He later transferred to the computing group and made the rest of his career around computers, eventually becoming a programming language expert at Honeywell. Frank Grubbs, a statistician, likewise approached ENIAC as someone with a complicated problem to solve. But after obtaining the necessary results from ENIAC, and from the BRL’s relay computers, he continued in his existing career trajectory. Today he is remembered as a great statistician and an important contributor to the Ordnance Department.

The same pattern repeated itself more broadly in later decades. The first members of computer-science faculties had all received PhDs in established disciplines, and many had already held faculty positions in such disciplines. At some point, often as graduate students, they had encountered computers and had come to recognize that they identified more strongly with those machines than with the concerns of the disciplines to which they were apprenticed. This may have been attributable to a fascination with the process of programming, accompanied by a shift from application code to the world of system tools or subroutine libraries. Yet for many scientific users the computer remained merely a tool, a means to an end. Most engineers, mathematicians, and physicists who relied on computers to obtain results did not become computer scientists. Many faculty members relied on their graduate students to do their programming and to run their problems on computers, and most of those graduate students repeated the pattern if and when they became successful enough to be in a position to hand the work over to others.

The Future of ENIAC

Anyone drawn to read or write about a historical topic is driven, in one way or another, by some present-day motivating factor. We have tried to dispel misconceptions and to illuminate forgotten aspects of ENIAC’s story so as to depict it more faithfully in its original context. Yet no subject of genuine historical interest will ever receive a definitive treatment. Although we have worked to ground our story in the exceptionally rich archival material, there is much more to be said about ENIAC, and still more to be said about other early computers and their use.

As we noted in the preceding chapter, ENIAC has been remembered in many different ways in the past 70 years. It remains sufficiently central to narratives about the history of computing, both popular and scholarly, that it is easier to advance an (p.288) agenda by reinterpreting ENIAC than by ignoring it. ENIAC’s recent fame as a computer programmed by women, for example, stems from a broad concern among computer scientists and technology workers about the representation of women in computing. Anchoring this inspirational narrative on ENIAC simultaneously exploits and perpetuates the machine’s renown as the origin point of modern computing. ENIAC will find new tales in which to perform as members of future generations looking to make a point about the essential nature of some or another aspect of computing turn to it.


(1.) For example, Abbate (Recoding Gender: Women’s Changing Participation in Computing, 26) uses a quotation from Mauchly to support the judgment that “programming was an afterthought.” According to Nathan Ensmenger (The Computer Boys Take Over: Computers, Programmers, and the Politics of Technical Expertise, MIT Press, 2010, 15), the discovery that setting up ENIAC to execute a computing plan would “turn out to be difficult and require radically innovative thinking” was “completely unanticipated.”

(2.) Michael S. Mahoney, “The Histories of Computing(s),” Interdisciplinary Science Review 30, no. 2 (2005): 119–135, quotation from p. 121.

(3.) I. Bernard Cohen, Howard Aiken: Portrait of a Computer Pioneer (MIT Press, 1999).

(6.) Stephen R. Barley, “Technicians in the Workplace: Ethnographic Evidence for Bringing Work into Organizational Studies,” Administrative Science Quarterly 41, no. 3 (1996): 404–441.

(7.) The incident was described in several oral-history interviews and most recently in Bartik, Pioneer Programmer. On page 80, Bartik states that “Kay’s exclamation was a breakthrough!”

(9.) Ensmenger, The Computer Boys Take Over, 14–15, 36–39. Goldstine and von Neumann (“Planning and Coding Problems for an Electronic Computing Instrument. Part II, Volume 1,” 99–104) outline a methodology for planning and coding problems, but do not to appear to propose a firm division of labor or to define coding as a clerical task. They suggest that “every mathematician, or every moderately mathematically trained person, should be able to do [the coding] in a routine manner.”

(13.) Ensmenger, The Computer Boys Take Over, 35–39. Ensmenger writes on page 37 that the ability of the operators to recognize a failed vacuum tube suggests that they “were able to interact much more with the computer engineers and technicians than was probably originally intended.”

(14.) Abbate, Recoding Gender: Women’s Changing Participation in Computing, p. 26 and note 43 on p. 185. In fact the idea of “coding” does not appear to have been applied to the work of producing ENIAC set-ups in project progress reports or in Goldstine’s Report on the ENIAC. It may have gained currency after the propagation of the modern code paradigm in the First Draft. This makes sense in view of the familiarity of things like Morse Code. EDVAC programs were to be represented as a series of numerical codes, like those of the Harvard Mark I (where the term found an early foothold), whereas ENIAC set-ups were recorded graphically.

(15.) Beyer, Grace Hopper, 52–58. Of course, the task of the Mark I’s operators was simpler than that of ENIAC’s operators.

(16.) The argument is made at greater length in Thomas Haigh, “Masculinity and the Machine Man,” in Gender Codes: Why Women are Leaving Computing, ed. Thomas J. Misa (IEEE Computer Society Press, 2010.

(19.) Akera, Calculating a Natural World; Akera, “Constructing a Representation for an Ecology of Knowledge: Methodological Advances in the Integration of Knowledge and its Various Contexts,” Social Studies of Science 37, no. 3 (2007): 413–441.

(20.) Andrew Pickering, “The Mangle of Practice: Agency and Emergence in the Sociology of Science,” American Journal of Sociology 99, no. 3 (1993): 559–589.

(21.) Michael S. Mahoney, “The Beginnings of Algebraic Thought in the Seventeenth Century,” in Descartes: Philosophy, Mathematics and Physics, ed. S. Gaukroger (Harvester, 1980).

(22.) Michael S. Mahoney, “Calculation—Thinking—Computational Thinking: Seventeenth-Century Perspectives on Computational Science,” in Form, Zahl, Ordnung. Studien zur Wissenschafts-und Technikgeschichte. Ivo Schneider zum 65. Geburtstag, ed. Menso Folkerts and Rudolf Seising (Frank Steiner Verlag, 2004). (p.338)