Augusta Ada King, Countess of Lovelace, was an English mathematician who is credited with being the first computer programmer. She is known for writing the first algorithm for a machine, inventing the subroutine and recognizing the importance of looping. Countess Lovelace lived from 1815 to 1852.
Ada, whose given name was Augusta Ada Byron, was the daughter of the poet Lord Byron and Annabella Milbanke Byron, an accomplished mathematician. Ada was educated in music and mathematics by a succession of tutors, including Mary Somerville, a noted mathematician and scientist during the Victorian era. In addition to publishing her own papers, Somerville was known for translating Mecanique Celeste by Pierre-Simon Laplace and adding her own notes to explain the mathematics used by the author.
In 1833, Somerville introduced Ada Byron to Charles Babbage, who demonstrated a working model of a steam-powered calculating machine he called a Difference Engine. According to contemporary reports, Ada was very interested in the Difference Engine, which was designed to calculate and print out tables, but was particularly fascinated by Babbage's plans for an Analytic Engine, a more complicated machine inspired in part by the mechanisms of the Jacquard loom. Babbage was impressed not only with Ada's mathematical knowledge and understanding of how both machines would work, but also with her ability to articulate her thinking.
Ada, who married and kept in touch with Charles Babbage, turned her full attention back to mathematics after the birth of her third child. By this time, the British government had granted Babbage the necessary funds to build a full-size model of his Difference Engine because the British Navy was interested in using Babbage's machine to ensure the accuracy of navigation tables. The construction of the room-sized machine proved mechanically difficult, however, and after ten years, funding was withdrawn. The Difference Engine was never completed, and Babbage turned his attention once more to his plans for an Analytic Engine.
To raise interest in funding the Analytic Engine, Babbage allowed Luigi Federico Menabrea to write a paper about the Analytic Engine. The paper was published in French and Ada Lovelace volunteered to translate it from French to English. Just as Mary Somerville added her own notes to the translation of Mecanique Celeste, Ada Lovelace added her own notes to the translation of Menabrea's paper. By the time Ada finished, her notes were three times longer than the original paper.
Ada understood how the punch cards a Jacquard loom used to create patterns could be used represent abstract ideas. This understanding allowed her to imagine how the Analytic Engine could be used in ways that Babbage hadn't thought of yet. For example, in her annotations, Ada described a method by which the Analytical Engine's punched cards could be used to compute Bernoulli numbers. Her algorithm for computing Bernoulli numbers is considered to be the first computer program. Ada Lovelace's translation of Menabrea's paper, which included her notes, was published in 1843 under the name AAL.
Ada, the programming language created by the United States Department of Defense, is named in honor of the Countess of Lovelace. Since 2009, her contributions to science and engineering have been recognized each year on the middle Tuesday of October.