Wednesday, March 24, 2010

Happy Ada Lovelace Day

Ada Lovelace was the world's first computer programmer. Like many women in history, she lived in an age where the barriers to her enjoying independent recognition of her abilities were enormous, but that didn't stop her from producing visionary and groundbreaking work.
Although there were no computers as we now know them in the early 1800s, a different sort of "computer" was already in existence. This was a person whose job was to perform long and arduous calculations to find the values of logarithms and trig functions, calculations we now perform with electronic calculators. These human computers produced sets of mathematical tables for use by astronomers and navigators among others, but, unsurprisingly considering the difficulty of the calculations, these tables were known to contain many errors and mistakes. So Charles Babbage decided to create a machine, called the difference engine, to perform these set calculations automatically.

This was the age of steam, with electricity no more than the subject of early experiments, so the difference engine was envisaged as a mechanical machine, with brass cogs and moving pistons, to be powered by turning a crank or by steam.

During the construction of the first prototype, Babbage began to think about an even more advanced machine - the analytical engine - that would be able to store data and perform sequences of instructions defined on punch cards and fed into the machine, like the Jacquard looms of the time. This would mean that the analytical engine could be programmed to perform any type of calculation and be a direct forerunner of the computers we use today.

Lovelace saw the prototype difference engine and was fascinated by it, and by the possibilities of the plans for Babbage's analytical engine. She began to correspond with Babbage and became an expert on the engines. But she held back from publishing her own work on the subject, instead offering to translate an Italian scientist's report on one of Babbage's lectures. Women at the time faced great difficulty working and publishing in science, and, when Babbage, aware of her knowledge, asked "why she had not herself written an original paper on a subject with which she was so intimately acquainted", Lovelace modestly replied that the thought had not occurred to her.

Babbage and Lovelace agreed she should add her own notes to the translation and this addition ending up being three times the length of the original work. Her Translation and extended notes (published in 1843) became the most important work describing the analytical engine and how it could be used. Most famously, the "Notes" contained the first published computer program - instructions on how to calculate the Bernoulli numbers. It doesn't look much like what we now think of as computer code, but when punched into the instructions cards it wouldn't look that different from computer instructions on the punch cards used up until the 1970s.
Like Rosalind Franklin, who made vital and underacknowledged contributions to the discovery of DNA, Ada Lovelace's work was presented as a footnote to the achievements of a man.

The inventor of the first computer compiler was also a woman: Grace Hopper.

Wing salute to these undersung heroines.

No comments:

Post a Comment

Please avoid (1) victim-blaming, (2) justifying any particular instance of oppression/exploitation, (3) explaining that we live in a post-feminist/racist/ablist/enter-oppression-here world, or (4) Mansplaining at all. Barn writers are free to moderate their own posts how ever they deem fit, and not obligated to entertain any comment. If you suspect it might seem offensive, don't comment.

(See our note on comments.)