Home Science How Women Shaped Modern Computing

How Women Shaped Modern Computing

21
0

Before developers were bending over their keyboards in spacious and trendy high-tech offices, women were laying the groundwork for modern computer programming in far from glamorous conditions.

During much of its history, programming was considered repetitive and tedious work. Many historians have shown that women accomplished most of this work, according to the National Museum of American Women’s History at the Smithsonian.

As Women’s History Month comes to a close, we look back on the innovations brought by women who shaped computing, from writing the first program to designing software that took American astronauts to the Moon.

The First Computer Program

By translating a mathematical article by Luigi Menabrea about the analytical engine, generally considered the first computer, British mathematician Ada Lovelace mostly corrected his notes. In doing so, she wrote the first computer program.

Lovelace, the daughter of poet Lord Byron, had a passion for mathematics from childhood. Her talents led to a close professional collaboration with mathematician and inventor Charles Babbage, particularly around his analytical engine.

In 1843, translating Menabrea’s article, Lovelace made her decisive contribution to computing. In her extensive footnotes, she was the first to suggest that a machine could not only manipulate numbers and produce a mathematical result but also manipulate symbols.

Lovelace also suggests that numbers can represent more than quantities and illustrates the possible role of a machine beyond simple calculation. She outlines the possible translation of “sounds” and “musical compositions” into operations that a machine could then use to “compose pieces of music of any degree of complexity and extent,” she wrote in her notes.

The calculations and comments of the mathematician almost triple the length of the original article and constitute the first set of instructions for computers. Lovelace’s notes later inspired British mathematician and logician Alan Turing in his encryption work during World War II.

The Compiler and Machine Language

For years, computer programs were laboriously written in long sequences of numbers for computers to understand.

Then, in 1952, American computer scientist and former U.S. Navy officer Grace Hopper created the compiler, a program that converts the code of high-level programming languages like Java and Python into low-level languages that a computer can understand, like binary code.

This compiler, named A-0, translates symbolic mathematical code into machine-readable code and plays a crucial role in the development of modern programming languages.

Hopper’s compiler is the culmination of years of efforts to simplify computer programming.

While working on the Mark I, the first large-scale automatic calculator, during World War II, Hopper noticed that some calculations were reused multiple times in the same processing, leading her to create a small directory of commonly used code snippets.

This is how the modern concept of subroutines was born, small sections of code written within a larger program to perform tasks that need to be done repeatedly in the main program. Subroutines save time because the code is already written and tested.

Years after the war, Hopper’s A-0 compiler allowed users to write the structure of a program in a simplified language. Hopper continuously enriched her repertoire of subroutines, which she stored on a tape to which she assigned call numbers. When the user described the program they needed, the compiler automatically located the required subroutines on the tape and assembled them.

Hopper later contributed to the development of one of the first high-level programming languages based on English: COBOL (Common Business-Oriented Language). She participated in the design and development of compilers for this language.

With A-0 and COBOL, Hopper made communicating with machines much simpler.

Gladys West Refines Modern GPS

The work of American mathematician Gladys West is behind the precision of the modern Global Positioning System (GPS), a technology now almost ubiquitous, used by tourists, taxi drivers, and pilots alike.

When she joined the U.S. Naval Proving Ground in 1956, becoming the second African-American woman recruited there, West led a team of analysts using satellite sensor data to calculate the shape and size of the Earth as well as its orbital trajectories.

These calculations now form the basis for the trajectories traced by GPS satellites.

West’s work went unnoticed until 2018 when she received the Space and Missile Pioneers Award from the U.S. Air Force. In 2021, she became the first woman to receive the Prince Philip Medal, awarded by the UK’s Royal Academy of Engineering.

Woven Software for Moon Landings

In a workshop on the outskirts of Boston, USA, textile workers stored the software instructions for the Apollo missions in a long “rope” made of threads.

Computer scientist and software project leader Margaret Hamilton led the development and production of software for NASA’s Apollo missions, essential work for the success of the six lunar missions conducted between 1969 and 1972.

Under her leadership, the team found a clever way to store the software programs for the Apollo guidance computers: integrating them into a rope of copper.

Computers store information in binary code, a sequence of 1s and 0s. The memory of modern computers typically preserves this information on small silicon chips. At the time of the missions, this information was stored by magnetizing small donut-shaped rings.

A wire passing through the center of the ring represents a binary 1, while a wire looping around the core, without passing through the hole, represents a 0. This technology is called “core-rope memory.”

During the Apollo missions, once the software program was written, translated into code and punched onto paper cards, or punched cards, the code was sent to a workshop where women, often former textile workers, wove the copper wires and cores into a long rope to store large amounts of code.

Beyond this ingenious storage solution, Hamilton focused mainly on designing software capable of detecting system errors and recovering from computer failures, a function that proved crucial for the successful Apollo 11 mission, which landed successfully.

“The total experience of building the software (designing it, developing it, evolving it, running it, and learning from it for future systems) was at least as exciting as the events surrounding the mission,” Hamilton recounted to MIT News in 2009, reflecting on her experience with the Apollo missions.

“Looking back, we were the luckiest people in the world; we had no choice but to be pioneers, not beginners.”