Who Were the Original Programmers?

With all our devices today—computers, tablets, smartphones—we depend on computer programmers to write the code that allows us to do incredible, complex things. The world now seems to run on computer code. What do you see in your mind’s eye when you think about a computer programmer? I’m guessing most of us visualize a young man, mathematically inclined, who might tend to be a loner, spending days and nights on end pounding a keyboard to turn out some new app or game. That is probably a reasonable picture of today’s primary computer programmer. But it may surprise you to learn that the original computer programmers were all women.

At the beginning of World War II, the demand for artillery firing tables was increasing exponentially. Firing tables tell the artillery gunner in the field how to aim his gun to hit a distant target. For every angle of elevation of the gun barrel, every wind speed, every range to the target, there were numerous trajectories that an artillery shell could take.

Each of these trajectories required thousands of calculations to produce a firing table for a particular type of gun. The U.S. Army decided to hire women to make these calculations (which were viewed as “clerical” work and more suitable to women than men) and embarked on a nationwide recruitment program for college-educated, mathematically-talented women. They came to be called “computers” and hundreds of them manned hand adding machines in large rooms to produce the firing tables.

The problem was that it took too long to solve the differential equations to calculate the trajectories using adding machines. So the Army funded a project at the University of Pennsylvania to build an electronic calculator to produce the firing tables faster. The calculator, the first electronic computer, was called ENIAC (electronic numerical integrator and computer). It was designed and built by John Mauchly and Pres Eckert and the team of engineers and technicians at Penn.

After ENIAC was built, it still had to be “programmed,” set up to solve the equations for the trajectories of an artillery shell. There were no instruction books on how to program it. More difficult, programming was accomplished by setting switches and plugging wires so that the machine processed the math in the correct sequence. The programming was turned over to six of the “computers” who had been calculating the firing tables by hand: Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Meltzer, Fran Bilas, and Ruth Lichterman.

The women were given blueprints of ENIAC’s wiring and charged with figuring out how to produce firing tables from this monster (ENIAC weighed 30 tons and occupied a 30×50 foot room) of a computer. And they did, becoming the first computer programmers and developing many of the basic techniques still used today in modern programming languages, such as COBOL, developed by another woman, Grace Hopper.

Sadly, after the war, when the amazing accomplishments of ENIAC were publicized, the women who had made it work were not mentioned. They were not even invited to the dinner celebrating the success of ENIAC, even though they stayed long into the night to fix a glitch that threatened to derail a successful demonstration to the Army brass.

These women led the way for other female programmers. Indeed, into the 1960s, most computer programmers were women. Who knows, if the pioneering work of the “ENIAC Girls” had been widely publicized to serve as role models and inspiration, that may still be the case today.


About JCB

A retired chemical engineer who likes to play with computers.
This entry was posted in Article. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s