FIELD NOTE / 2026.09.114 MIN READ / 5 SOURCES

The ENIAC Six: Programming Before Programming Languages

The six women who programmed ENIAC translated mathematical procedures into switch settings, cable connections and machine operations before programming languages or standard software tools existed.

ENIAC is often introduced through its hardware: thousands of vacuum tubes, room-sized cabinets and unprecedented electronic speed. But a general-purpose machine does not become useful merely because it can calculate quickly. Someone must translate a problem into a sequence of machine operations. For ENIAC, that work was assigned to six women who had previously worked as human computers: Kathleen McNulty, Jean Jennings Bartik, Frances Bilas Spence, Betty Snyder Holberton, Marlyn Wescoff Meltzer and Ruth Lichterman Teitelbaum.[1]

They worked before modern programming languages, assemblers or interactive debuggers. Programming meant studying logical diagrams, decomposing equations, configuring switches and routing cables so that data and control signals moved through the machine in the intended order. Their contribution belongs at the origin of software engineering because they had to invent practical programming techniques while learning the architecture itself.[2]

From human computers to electronic computation

During World War II, the Moore School at the University of Pennsylvania employed women to calculate ballistic trajectories. When ENIAC was built, several of those mathematicians were selected to program it. Smithsonian and Penn histories emphasize the continuity: expertise in the application domain made them natural candidates to translate mathematical procedures into machine behavior.[3]

Programming was initially treated as secondary work

The assignment reflected contemporary assumptions that the difficult work was building hardware and that setting it up would be more clerical. In practice, the programmers confronted a new intellectual discipline. They had to understand both the mathematics and the machine deeply enough to plan data flow, control sequence and error diagnosis.

Learning a machine from diagrams

Penn’s historical accounts note that the programmers initially worked from schematics and conversations with engineers rather than a mature manual or programming course. That forced them to construct mental models of ENIAC’s accumulators, function tables, buses and control connections.[1]

Architecture knowledge became debugging knowledge

Because they understood the path a computation was supposed to take through the machine, they could often localize failures. This is an early form of a principle that remains central to software debugging: diagnosis depends on a model of how program state should evolve and where observed behavior diverges from expectation.

A program was physically configured

Original ENIAC programs were not loaded from an electronic memory. Configuring a new problem required setting switches and connecting cables among functional units. The six programmers translated algorithms into this physical configuration, making the distinction between program design and program storage especially visible.[4]

The public demonstration depended on software work

ENIAC was publicly unveiled in February 1946. Penn accounts emphasize that the women programmers prepared demonstrations that made the machine’s power legible to observers. The spectacle of rapid calculation depended on painstaking prior work in algorithm design, setup and testing.[2]

Performance begins before execution

A machine can produce an answer in seconds only after humans have invested time in describing the problem correctly. That asymmetry became a recurring feature of programming: execution may be fast, while specification, testing and debugging remain intellectually expensive.

Recognition lagged behind contribution

For decades, public narratives often foregrounded ENIAC’s male hardware designers while photographs of women at the machine were misinterpreted or left unexplained. Penn and Smithsonian projects later reconstructed the programmers’ roles and helped restore their names to the history of computing.[3]

From plugboards toward stored programs

ENIAC itself was later modified to support a form of stored programming, and Jean Bartik participated in work connected with subsequent machines. The broader transition from physically configured programs to instructions held in memory changed the economics of programming, but the ENIAC experience had already established programming as a distinct technical activity.[5]

The program became easier to change than the machine

When instructions move into memory, changing a computation no longer requires reconstructing extensive physical wiring. That shift is one of the defining transitions from early electronic calculators toward software-centered computing.

What the ENIAC Six invented in practice

It is risky to assign a single invention called ‘programming’ to any one group. Algorithms and programmable control have a much older history. What the ENIAC Six developed were practical methods for programming a new electronic architecture: decomposition, sequencing, setup, testing, debugging and operational discipline. Those practices are recognizably part of software work.

Why the ENIAC Six belong in coding history

Their story demonstrates that software history cannot be written as hardware history with the people at the console added later. Programming was constitutive of what ENIAC could do. The six women transformed mathematical intent into electronic action, and in doing so helped define the occupation that later generations would call programming.

RESEARCH / PROVENANCE

Works Cited

5 SOURCES
  1. 01
  2. 02
  3. 03
  4. 04
  5. 05

CodeHistory is a living archive. Citations document the evidence used for this edition; later evidence may refine the account.

Contribute / Corrections

Improve the record.

Use this moderated submission form to suggest a correction, provide a source, challenge a priority claim or identify a missing contributor. Submissions are treated as research leads, not automatically published comments.

Submit a research lead

Please do not submit confidential material or claims you cannot support.