Augusta Ada King, condessa de Lovelace (1815-1852), é considerada a primeira programadora de computadores. O seu pai era o poeta Lord Byron, mas foi a sua mãe quem a criou praticamente sozinha. Entusiasta da matemática, quis que Ada aprendesse esta ciência e para isso contratou diferentes tutores; um deles seria William Frend, clérigo inglês, reformador social e escritor. Em 1833, Ada conheceu Charles Babbage e viajou, juntamente com a mãe, para Londres, onde visitou o laboratório de Babbage, matemático e inventor, para ver a sua Máquina Diferencial. Estas duas mentes brilhantes tornaram-se amigos e Babbage serviu como mentor de Ada.
Babbage tinha visto atuar a máquina de xadrez “O Turco”, de Von Kempelen; de facto, até perdera contra ela algumas partidas e estava interessado em construir um autómato deste tipo. Sabia que “O Turco” era um truque, mas pensava que, de algum modo, as máquinas podiam pensar de forma inteligente. Foi este truque de magia que o levou a pensar na Máquina Diferencial e na Máquina Analítica.
Através de Babbage, Ada começou a estudar Matemática Avançada com o professor Augustus de Morgan, da Universidade de Londres. Ada ficou fascinada com as ideias de Babbage. Conhecido como o pai do computador, ele inventou o mecanismo da diferença, destinado a realizar cálculos matemáticos. Ada teve a chance de olhar para a máquina antes de terminar e foi cativada por ela. Babbage também criou planos para outro dispositivo conhecido como mecanismo analítico, projetado para lidar com cálculos mais complexos.
Ada ficou fascinada com a Máquina Diferencial e trabalhou com Babage, corrigindo até alguns erros que este tinha cometido. Escreveu “Notas sobre a Máquina Analítica”, nas quais descrevia como preparar o engenho para este realizar sozinho alguns cálculos e operações. Essa descrição é considerada como o primeiro programa de computador. As “Notas” foram publicadas em “Scientific Memories”, de Richard Taylor, embora não com o nome completo de Ada Lovelace – aparecia simplesmente “ALL”. Neste artigo, Ada descreveu como os códigos podem ser criados para os dispositivos manipularem letras, símbolos ou números. Teorizou um método para o mecanismo repetir uma série de instruções, um processo conhecido como “loop”, que ainda é usado atualmente por programas de computador. Ada também ofereceu outros conceitos de visão de futuro neste artigo.
Apesar da importância destas invenções, Babbage teve problemas para conseguir financiamento para o projeto. Por outro lado, Ada não tinha amigos nem colegas com quem falar sobre ciência e, além disso, começou a ter problemas de saúde. Todos os entraves condicionaram grandemente o desenvolvimento deste projeto. Se não fossem estes problemas, talvez tivessem sido os primeiros a construir realmente um autómato xadrezista.