← Journal
Computing History 12 min read

Women Who Helped Invent the Modern Computer

The modern computer was never one invention. Meet the women who helped shape programming, software engineering, search, interfaces, networking and the machines we use today.

The first computers were people.

This is one of those facts that sounds like a metaphor until you realise it isn't.

Before electronic machines took over large-scale calculation, armies, laboratories, observatories and engineering organisations employed human “computers” to perform mathematical work by hand. Many of them were women.

Then the machines arrived and inherited the name.

What they did not inherit was the ability to make themselves useful.

That part still required people.

Someone had to decide how instructions should be expressed. Someone had to work out how a machine could perform a sequence of operations rather than a single calculation. Someone had to build programming languages, operating systems, compilers, interfaces and networks. Someone had to decide how humans and machines were going to communicate with one another at all.

The modern computer was not one invention.

It was an accumulation.

And women were involved at almost every stage of making that accumulation work.

I

Before the Machine

Ada Lovelace and the Computer That Didn't Exist Yet

Ada Lovelace wrote software for a computer that had not been built.

This creates a practical difficulty that would have discouraged most people.

Lovelace seems to have regarded it as an intellectual opportunity.

In the 1840s, she studied Charles Babbage's proposed Analytical Engine, an extraordinary mechanical machine designed to perform calculations according to programmed instructions. It was never completed in Babbage's lifetime, but the plans were ambitious enough for Lovelace to see something in them that went beyond arithmetic.

While translating an Italian paper about the Engine, she added extensive notes of her own.

One included a detailed procedure for calculating Bernoulli numbers using the machine.

This is why Lovelace is so often called the first computer programmer.

As with many famous historical labels, it is useful until it becomes more important than the work itself.

The deeper insight lay elsewhere.

Lovelace recognised that a sufficiently general machine might manipulate symbols according to rules. Numbers could stand for more than quantities. If other forms of information could be represented appropriately, then in principle the machine might operate on those too.

She even speculated about music.

This was an extraordinary leap.

The Analytical Engine did not exist as a working machine, and yet Lovelace was already considering the difference between a device that merely calculated and a machine capable of processing representations.

In other words, she was thinking about something recognisably close to general-purpose computing before general-purpose computing had a physical form.

The obvious question is not whether she “invented the computer.”

She didn't.

The more interesting question is this:

How do you imagine software before there is a computer to run it?

II

Programming Before Programming Had Rules

The Women of ENIAC and the Machine That Came Without Instructions

A century later, the machines finally arrived.

They were not subtle.

ENIAC — the Electronic Numerical Integrator and Computer — occupied a room, contained thousands of vacuum tubes and represented one of the great achievements of early electronic computing.

It was built during the Second World War to perform calculations far faster than human computers could manage.

But having a machine capable of calculating and knowing how to make it perform the right calculations are two different problems.

Six women were among the people asked to solve the second one.

Kathleen McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas and Ruth Lichterman had worked as human computers before becoming ENIAC's original programmers.

There was no programming manual.

There was barely a programming profession.

The women had to study the machine itself.

They learned how information moved through ENIAC, how its units interacted and how mathematical operations could be broken down into sequences the machine could execute.

Programming did not mean opening a laptop and typing code.

It meant physically configuring the machine.

Cables were connected. Switches were set. Function tables were adjusted. Entire sequences had to be planned in advance.

A modern programmer faced with such an environment might reasonably ask where the documentation was.

The documentation was, in large part, the machine.

The women had to understand it deeply enough to make it behave.

When ENIAC was publicly demonstrated, the machine received the attention.

Photographs often showed women standing beside it without making particularly clear that they had programmed the thing.

This was not simply a problem of publicity.

It helped shape the historical memory of computing.

Hardware looked like invention. Programming looked like assistance.

The distinction would not age well.

Without programming, ENIAC was an impressive arrangement of electronics waiting for instructions.

The women provided them.

III

Teaching Computers Something Closer to Human Language

Grace Hopper and the Argument Against Making Humans Think Like Machines

Early programming required enormous accommodation on the human side.

The machine was difficult to instruct, so humans learned to speak more like the machine.

Grace Hopper thought this arrangement could be improved.

Hopper had worked with the Harvard Mark I during the Second World War and later became deeply involved in the development of programming languages and compiler technology.

Her instinct was simple and, at the time, radical enough to be controversial.

Programmers should not always have to communicate with a computer at the lowest possible level.

A computer ought to be capable of translating.

That is the basic purpose of a compiler.

A programmer writes instructions in a higher-level form, and the compiler translates those instructions into something the machine can execute.

Today this is so ordinary that it is difficult to feel the conceptual shift.

But early computers did not arrive with an obvious language for humans to use.

The question of programming was still being invented.

Hopper helped push computing toward languages built around human-readable commands, particularly in business data processing. She became influential in the development and standardisation of COBOL, a language designed to make programs easier to express in terms closer to English.

There is a pleasing progression here.

Lovelace imagined instructions for a general machine.

The ENIAC programmers learned to control an actual electronic one.

Hopper helped make the machine shoulder more of the burden of understanding the programmer.

This was not merely about convenience.

A computer that required every user to understand its deepest machinery would remain the possession of specialists.

A computer capable of accepting more abstract instructions could spread much further.

That turned out to matter.

IV

Who Gets to Learn Computing?

Mary Kenneth Keller and the Computer Outside the Laboratory

Once computers became programmable, another problem appeared.

Who was going to learn how to use them?

For much of their early history, computers belonged to governments, universities, military projects and large corporations. They were expensive, difficult to access and concentrated in institutions capable of supporting them.

Mary Kenneth Keller belonged to the generation that helped push computing beyond those boundaries.

In 1965, she became one of the first women in the United States to earn a PhD in computer science.

She later founded a computer science department at Clarke College and became a strong advocate for expanding access to computing education.

Keller also worked at Dartmouth during the period associated with the development of BASIC, the programming language designed to make computing easier for students who were not professional programmers.

Her significance is therefore slightly different from that of someone who invented a particular algorithm or machine component.

She belongs to the history of access.

Once a computer can be programmed more easily, the next question is whether ordinary students should be allowed near it.

Today that sounds absurdly straightforward.

At the time, access to computing resources was scarce enough that the answer mattered.

The history of computing is not only a history of better machines.

It is also a history of deciding who gets to use them.

V

When Software Became Engineering

Margaret Hamilton and the Code That Had to Work on the Moon

The Apollo programme had a hardware problem, which is the kind of problem everybody expects a space programme to have.

It also had a software problem.

The second was easier to underestimate.

Margaret Hamilton led the software engineering work for the Apollo Guidance Computer at MIT's Instrumentation Laboratory.

Her team wrote the software responsible for helping spacecraft navigate, control critical operations and respond to unexpected conditions.

This was an era when software did not always enjoy the same professional status as hardware.

Hardware was physical.

It had components, mass and engineering drawings.

Software was instructions.

It could therefore be mistaken for something less substantial.

The Moon programme helped demonstrate the danger of that assumption.

A spacecraft travelling hundreds of thousands of kilometres cannot tolerate software that works most of the time.

It has to cope with unexpected conditions, prioritise important tasks and recover gracefully when too much is happening at once.

During Apollo 11's descent to the lunar surface, the guidance computer produced alarms because it was overloaded with tasks.

The software did not simply collapse.

Its design allowed it to prioritise the work that mattered most.

The landing continued.

Hamilton later became closely associated with the term “software engineering,” arguing for software to be treated as a serious engineering discipline.

The phrase now sounds entirely ordinary.

That is partly because the argument was won.

There is a famous photograph of Hamilton standing beside stacks of printed Apollo software listings almost as tall as she is.

It is an excellent image because it makes the invisible visible.

Software had weight after all.

VI

Teaching Machines What Matters

Karen Spärck Jones and the Problem of Finding the Right Thing

A computer can store an extraordinary amount of information.

This becomes less impressive if it cannot find the part you want.

Karen Spärck Jones spent much of her career working on precisely that problem.

She made foundational contributions to information retrieval and natural-language processing, fields concerned with how computers interpret, organise and retrieve human language.

One of her most influential ideas involved a deceptively simple question.

Which words in a document actually tell you what that document is about?

Some words appear everywhere.

A word such as “the” tells you almost nothing.

A rarer word appearing frequently in one document may tell you considerably more.

Spärck Jones developed the idea of inverse document frequency, which helps weight terms according to how informative they are across a collection of documents.

The principle became fundamental to information retrieval.

It also offers a useful reminder that search is not simply a matter of finding matching words.

It is a matter of deciding which matches matter.

Modern search systems have become vastly more sophisticated, but the underlying problem remains familiar.

A person enters a few words.

A machine has access to millions or billions of possible documents.

Something has to decide which ones deserve to appear first.

Computing increasingly depended not merely on storing information but on ranking relevance.

That is a much stranger task than it sounds.

It requires a machine to make a judgement about significance.

VII

When Computers Became Something You Could See

Adele Goldberg and the Computer That Became Visual

For much of computing history, using a computer meant learning how the computer expected to be addressed.

Commands had to be typed.

Syntax mattered.

The machine was useful, but it was not particularly interested in being welcoming.

At Xerox PARC, Adele Goldberg worked on Smalltalk, an influential programming environment closely associated with object-oriented programming and graphical computing.

This research helped develop ideas that would become familiar features of personal computing: windows, graphical objects and more direct forms of interaction between person and machine.

The conceptual change was enormous.

A computer no longer had to be imagined primarily as a machine waiting for textual instructions.

It could become a visual space.

Files could appear as objects.

Actions could be represented graphically.

The user could point, select and manipulate.

This was not one person's invention, and the graphical user interface itself emerged from years of work by many researchers.

Goldberg's contribution belonged to that larger transformation.

The important shift was not merely cosmetic.

A visual interface changed who could use a computer.

People no longer needed to memorise large sets of obscure commands before they could begin interacting with a machine.

Computing moved closer to ordinary human habits of seeing, pointing and arranging things in space.

The machine was beginning to meet the user halfway.

VIII

When One Computer Wasn't Enough

Radia Perlman and the Networks That Had to Avoid Going in Circles

Eventually the computer stopped being a solitary object.

Machines were connected to other machines.

This created opportunities.

It also created new ways for things to go wrong.

Radia Perlman became one of the most influential engineers in computer networking.

Her best-known work includes the spanning tree protocol, designed to help networks manage redundant connections without allowing data to circulate endlessly through loops.

The problem is easier to understand with roads.

Imagine a city in which multiple routes connect the same places.

Redundant routes are useful because if one road closes, traffic can use another.

But in a computer network, badly managed redundancy can cause information to circulate repeatedly instead of reaching its destination efficiently.

Perlman's protocol allowed network switches to establish a logical structure in which loops were avoided while backup connections remained available.

The result helped make larger and more reliable networks practical.

Perlman is sometimes called “the mother of the Internet.”

The phrase is catchy.

It is also exactly the sort of phrase that obscures more than it explains.

No one person invented the internet, just as no one person invented the modern computer.

Perlman's real contribution does not need the title.

She solved difficult problems in making networks scale and behave reliably.

Once computers could communicate with one another, the history of computing changed again.

A machine was no longer simply a thing on a desk.

It was a point in a network.

IX

The Invisible Work Between the Programmer and the Machine

Frances Allen and the Programs That Learned to Run Better

A programmer writes instructions.

The computer does not necessarily have to execute them exactly as written.

That gap became Frances Allen's territory.

Allen pioneered techniques in compiler optimisation — methods by which software can transform programs so that they run more efficiently without changing what they are intended to do.

This sounds like an extremely specialised problem.

It is.

It is also one of those specialised problems that sits underneath enormous portions of everyday computing.

A programmer may write code in a clear, logical way.

A compiler can then analyse that code, reorganise instructions, eliminate unnecessary work or exploit characteristics of the underlying hardware.

The human writes one version.

The compiler discovers a better way for the machine to execute it.

Allen's research helped establish many of the principles behind modern optimisation and parallel computing.

In 2006, she became the first woman to receive the ACM A.M. Turing Award, often described as computing's highest professional honour.

Her work belongs to the less visible layer of computer history.

Interfaces are visible.

Hardware can be photographed.

A compiler optimising instructions leaves very little for a museum display.

It simply makes the machine better at doing what it has been asked to do.

Invisible technology has an image problem.

It is no less important for it.

X

The Modern Computer Was Never One Invention

So who invented the modern computer?

Nobody.

Or rather, far too many people for the question to work properly.

Charles Babbage didn't invent the modern computer.

Alan Turing didn't.

Ada Lovelace didn't.

Grace Hopper didn't.

IBM didn't.

Apple didn't.

Each belongs to part of the history.

What we call a computer today is an accumulation of mathematics, electronics, architecture, programming languages, operating systems, compilers, interfaces, networking, information retrieval and thousands of other ideas layered on top of one another.

Remove enough layers and the object stops resembling a modern computer remarkably quickly.

Without programming, it is machinery.

Without compilers and languages, it remains difficult for most humans to instruct.

Without software engineering, complex systems become dangerously fragile.

Without interfaces, ordinary users face a wall of commands.

Without networking, every machine remains an island.

Without information retrieval, the abundance of digital information becomes a different kind of uselessness.

The history therefore becomes much more interesting once we stop asking which individual invented the computer and start asking which problems had to be solved before modern computing became possible.

Women worked on many of them.

Ada Lovelace explored what a programmable machine might mean before one existed.

The ENIAC women worked out how to control an electronic computer before programming had settled into a profession.

Grace Hopper helped move programming away from the machine's language and closer to ours.

Mary Kenneth Keller helped push computing into education.

Margaret Hamilton helped establish software as engineering.

Karen Spärck Jones helped machines determine which information mattered.

Adele Goldberg helped computing become visual.

Radia Perlman helped machines communicate reliably in networks.

Frances Allen helped programs execute more intelligently.

None of these women invented “the computer.”

That is precisely the point.

The Machines Are Only Half the Story

We tend to remember computing through its machines.

ENIAC fills a room.

The Apollo Guidance Computer travels to the Moon.

Beige boxes appear on office desks.

Laptops become thin enough to carry.

Phones become powerful enough that the word computer almost disappears from them.

Machines photograph well.

Ideas are harder.

There is no dramatic image of a compiler translating instructions. No photograph captures a network protocol preventing a loop. Information retrieval cannot be held up beside a smiling inventor.

This creates an unfortunate distortion.

The visible object begins to look like the whole invention.

It isn't.

The modern computer exists because generations of people repeatedly made the machine more capable of dealing with humans and humans more capable of dealing with the machine.

First, someone had to imagine instructions.

Then someone had to work out how to program the hardware.

Then the language had to become easier.

The software had to become reliable.

The information had to become searchable.

The interface had to become usable.

The machines had to learn how to connect.

And underneath all of it, layers of software had to keep translating, organising and optimising things we no longer notice.

This is why women in computing are not an interesting footnote to the history of the computer.

They are part of the machinery of the history itself.

We remember the machines.

Someone still had to teach them what to do.

Continue exploring

Explore the Women in Computing Collection to discover the mathematicians, programmers and engineers who helped build the digital world.

Meet Ada Lovelace, Grace Hopper, Margaret Hamilton and other pioneers through their scientist profiles.

Browse Discoveries to follow the development of programming languages, software engineering, graphical interfaces, information retrieval and computer networking.

Or continue through the Timeline to see how computing evolved from mechanical calculation to the connected machines we use today.