Ada Lovelace, a Primeira Programadora

Ada, Condessa de Lovelace, nasceu há 200 anos, mas seu nome permanece vivo. Na década de 1970, a linguagem de programação Ada foi nomeada em sua homenagem, reconhecendo seu status como a primeira programadora da história. Em 2009, foi criado o Dia de Ada Lovelace para celebrar as conquistas das mulheres na ciência, tecnologia, engenharia e matemática. Aqui, contamos como ela colaborou com Charles Babbage em sua Máquina Analítica.

A história da computação é frequentemente contada de forma injusta. Os desenvolvedores de software quase sempre são deixados de lado em favor dos criadores de hardware. Lembramos dos pioneiros que construíram os primeiros computadores e avançaram na eletrônica, mas quais foram os primeiros programas já escritos? E quem os criou?

É sempre arriscado afirmar que alguém foi o primeiro em qualquer coisa, mas é amplamente aceito que Ada, Condessa de Lovelace, foi a primeira programadora da história.

Nos primórdios da computação, não havia uma separação clara entre hardware e software. O verbo “programar” era quase sinônimo de “soldar”, o que torna difícil distinguir o desenvolvimento do hardware e do software no trabalho dos pioneiros da época.

No caso de Ada, sua participação na criação da programação se mistura com o projeto do primeiro hardware de computador. Charles Babbage é geralmente reconhecido como o responsável pelo design, senão pela construção, do primeiro computador, enquanto Ada pode ser vista como a responsável pelo lado do software do projeto. O brilhantismo de Babbage e os desafios enfrentados no desenvolvimento do hardware acabaram ofuscando a história de Ada, mas também é essencial evitar exageros ao atribuir a ela mais mérito do que realmente teve.

Filha de Lord Byron

Augusta Ada foi a única filha legítima do poeta Lord Byron. Sua mãe fugiu de casa apenas cinco semanas após seu nascimento, levando Ada consigo, e, no mês seguinte, Byron deixou a Inglaterra definitivamente para escapar de seus credores. Como resultado, Ada nunca conheceu o pai, cuja principal influência em sua vida foi o escândalo de sua conduta. Mas chega de Byron—há muitos livros e artigos sobre sua vida.

Ada foi educada por tutores particulares e, por algum motivo, desenvolveu um forte interesse pelas ciências, especialmente pela matemática. Na época, a separação entre artes e ciências não era tão rígida, então não era incomum que a filha de um poeta também se destacasse como matemática. Sua mãe tinha certo conhecimento matemático, e o próprio Byron, que sempre buscava notícias sobre a filha distante, referia-se a ela como sua “princesa dos paralelogramos”.

No entanto, o preconceito contra mulheres realizando feitos importantes era muito forte. É possível perceber que os cientistas homens que Ada conheceu e que promoveram seu trabalho viam nela um certo valor de novidade. Além disso, é importante lembrar que Ada era rica e privilegiada, e sua confiança em suas habilidades chegava a ser quase arrogante. Talvez eu não gostasse dela, mas nunca se sabe—afinal, ela tinha algumas das características típicas de um programador!

Envolvimento com Babbage

Ada é reconhecida como a primeira programadora de computadores devido ao seu envolvimento no projeto de Charles Babbage para construir suas Máquinas Analíticas. O primeiro encontro deles aconteceu em 5 de junho de 1833 e, em 17 de junho, ela participou de uma soirée na casa de Babbage, onde ele demonstrou uma parte da sua Máquina Diferencial Nº 1 em Londres. Independentemente das possíveis afinidades entre Ada e Babbage, é importante destacar que ela tinha apenas 17 anos quando se conheceram, enquanto ele era um ano mais velho que a mãe de Ada.

Falando sobre a mãe de Ada, ela esteve presente com a filha na demonstração da máquina diferencial parcialmente concluída e entendeu o que viu. Seu relato sobre o funcionamento da máquina claramente indica que ela era capaz de compreender o conteúdo matemático da apresentação também:

“Ela elevava vários números à 2ª e 3ª potências e extraía a raiz de uma equação quadrática…”

mas ela não parecia entender os princípios de seu funcionamento.

“Eu tive apenas vislumbres fracos dos princípios pelos quais ela funcionava…”

Lady Byron deve ser considerada uma das primeiras pessoas a escrever uma descrição de um loop de enumeração, observando:

“Por exemplo, a máquina continuaria contando regularmente, 1, 2, 3, 4, etc., até 10.000…”

Lady Byron parece ter apreciado a demonstração da máquina diferencial, que era uma coleção refinada de engrenagens e indicadores de latão, construída com uma precisão que ainda era rara na época. No entanto, o impacto dessa demonstração sobre Ada perdurou por toda a sua vida. Ada não apenas entendeu a máquina diferencial, mas também compreendeu seu potencial.

O matemático De Morgan também esteve presente na demonstração e escreveu:

“Enquanto outros visitantes observavam o funcionamento do belo instrumento com a expressão, e ouso dizer, o tipo de sentimento, que alguns selvagens dizem ter demonstrado ao verem um espelho pela primeira vez ou ouvirem um tiro de arma de fogo – se, de fato, eles tivessem uma ideia tão forte de sua maravilha – a senhorita Byron, tão jovem quanto era, entendeu seu funcionamento e viu a grande beleza da invenção.”

Como as coisas são diferentes hoje em dia, quando a busca pela cultura significa qualquer coisa, menos ciência e tecnologia “sujas”!

O surpreendente sobre Ada era sua determinação em aprender matemática a ponto de poder fazer alguma contribuição para o campo. Ela pediu ajuda a Babbage para encontrar um tutor avançado, e foi De Morgan, professor de Matemática na Universidade de Londres, quem assumiu essa função. Talvez você se lembre das leis de De Morgan se já teve que estudar lógica booleana, então provavelmente Ada teve que enfrentar o mesmo curso que os futuros programadores têm que suportar até hoje!

Ada parece ter alcançado um nível razoável de competência em matemática, provavelmente o melhor descrito como uma amadora talentosa, mas ela certamente tinha habilidade. Ela entendia álgebra avançada, geometria e, mais importante para o estudo da máquina diferencial, a teoria das diferenças finitas.

Nesse estágio, fica claro que ela pretendia estudar áreas da matemática relevantes para os motores de cálculo nos quais Babbage estava trabalhando.

A Máquina Analítica

O projeto da Máquina Diferencial foi abandonado no mesmo ano (1833), e Babbage passou a trabalhar no design de sua Máquina Analítica, que era tão grande que precisaria de uma máquina a vapor para girar a manivela. Embora a máquina nunca tenha sido construída, uma pequena parte foi concluída em 1871, pouco antes da morte de Babbage, e outra por seu filho em 1910, e ambas conseguiram demonstrar os princípios.

A paixão de Ada pela Máquina Analítica cresceu à medida que ela aprendia mais sobre ela. Ela participou de um curso de palestras sobre a máquina e, eventualmente, passou a entendê-la melhor do que Babbage.

Isso não é tão estranho quanto pode parecer, pois é comum que alguém que está aprendendo sobre a estrutura de uma máquina faça mais perguntas sobre seu funcionamento do que o próprio inventor pensou em fazer. Ada fez sua primeira contribuição para o avanço da máquina ao traduzir um artigo (em francês) do engenheiro italiano Menabrea, intitulado “Esboço da Máquina Analítica Inventada por Charles Babbage Esq.”

Babbage perguntou por que ela não escreveu o artigo ela mesma, já que certamente sabia o suficiente para não precisar traduzir algo. Na verdade, o artigo traduzido era muito menos importante do que as anotações detalhadas que ela fez depois — as anotações eram três vezes mais longas do que o artigo original. A tradução e as anotações estão disponíveis aqui como parte de um conjunto de recursos sobre a Máquina Analítica coletados pela Fourmilab da Suíça.

As anotações demonstram claramente que Ada fez o salto de imaginação necessário para perceber que o programa, o software, era tão importante quanto a máquina. A máquina é apenas o veículo para a ideia incorporada no programa. Ela dá detalhes de como programar o cálculo dos números de Bernoulli e como a máquina pode ser feita para fazer muito mais. Ela escreveu:

“A Máquina Analítica tece padrões algébricos assim como o tear Jacquard tece flores e folhas.”

(O tear Jacquard usava cartões perfurados para controlar o processo de tecelagem.)

Previsão do Futuro

Além das questões práticas da computação, como o cálculo dos números de Bernoulli, Ada também se dedicou a especular sobre até onde os computadores poderiam chegar um dia. De fato, ela é creditada com o primeiro uso do argumento frequentemente referido como “a objeção de Lady Lovelace”. Ela escreveu:

“A Máquina Analítica não tem nenhuma pretensão de ordenar nada. Ela pode fazer tudo o que sabemos como ordenar que ela faça.”

Esse é basicamente um argumento sobre a impossibilidade da inteligência artificial, com os computadores sendo capazes de fazer apenas o que são instruídos a fazer. Uma discussão sobre isso nos levaria a águas profundas, mas não é tão simples como Ada gostaria que acreditássemos. Ada e Babbage podem ter, na verdade, tido a chave de grande parte da IA em suas mentes, pois inventaram o conceito de auto-modificação –

“A Máquina Analítica pode agir sobre coisas além dos números.”

Pode ser que ambos estivessem muito conscientes da perspectiva da inteligência mecânica, mas estavam preocupados em não abalar o establishment religioso da mesma forma que Darwin fez com a Origem das Espécies. Talvez houvesse até uma conexão entre a escrita de Mary Shelley sobre a história de Frankenstein e Ada. No entanto, além de reconhecer Ada como a primeira pessoa a publicar programas de computador, também podemos creditá-la como a primeira pessoa a perceber o potencial do computador.

Música e Programação

Uma das habilidades que Ada possuía e que pode ter ajudado a entender a programação era a música. Ela tocava harpa e, portanto, estava familiarizada com a ideia de um conjunto escrito de instruções, ou seja, a notação musical, que poderia ser executado, ou seja, tocado.

Ela também compôs música, e isso não é apenas um exercício matemático, mas algo muito próximo do mecanismo psicológico necessário para programar. Mais tarde, ela sugeriu que a Máquina Analítica poderia ser usada para compor música, oferecendo-nos a primeira visão de um programa gerando novo software.

Ada apoiou Babbage em sua longa e difícil luta contra as autoridades para construir a Máquina Analítica. Quando a maioria já havia descartado ele e sua invenção como um enorme desperdício de dinheiro, Ada continuou fazendo anotações, refinando o design e angariando apoio entre seus amigos influentes.

Um curioso acontecimento na história a tornaria ainda mais querida por todos os programadores de verdade — ela inventou um “sistema” para apostar em cavalos. Babbage concordou com a ideia, e ambos pareciam acreditar que a Máquina Analítica os ajudaria com os cálculos necessários. Assim como os programadores modernos que sofrem da mesma ilusão, Ada perdeu muito dinheiro, foi vítima de um chantagista e, eventualmente, teve que penhorar algumas das joias da família para resolver a situação.

Ada Lovelace faleceu aos 36 anos, depois de passar grande parte de sua vida à mercê de doenças de vários tipos. Talvez seja mais justo dizer que ela estava sob o efeito de medicações, dado o tipo de tratamento que lhe foi prescrito. Talvez até sua confiança excessiva fosse resultado do laudanum (ópio) e do conhaque que frequentemente lhe eram prescritos!

O Legado de Ada

Após a morte de Ada, Babbage continuou tentando completar a Máquina Analítica, mas, como sabemos, ele não teve sucesso em sua tentativa. Para piorar, as anotações de Ada sobre a máquina foram lidas por outros e, em 1834, Georg Scheutz, um engenheiro sueco, construiu uma máquina diferencial e realmente vendeu um modelo de produção! A divulgação de Ada sobre as ideias de Babbage nem sempre teve o efeito desejado.

Ada também é lembrada de várias maneiras. Em 1980, o Departamento de Defesa dos EUA nomeou uma de suas linguagens poderosas e amplamente usadas como Ada, em sua homenagem, e o Padrão Militar do Departamento de Defesa para a linguagem, MIL-STD-1815, recebeu o número correspondente ao ano de seu nascimento.

Em 1998, a British Computer Society criou a Medalha Lovelace, que é concedida anualmente a indivíduos que tenham avançado em Sistemas de Informação ou contribuído significativamente para a compreensão da área.

No 197º aniversário de seu nascimento, em 2012, Ada Lovelace foi homenageada com um Google Doodle, que a mostra trabalhando em uma fórmula, juntamente com imagens que mostram a evolução do computador.

Em 2022, uma estátua estranha, mas impressionante, foi inaugurada — metade de uma construção. A estátua, uma colaboração entre Etienne e Mary Millner, é baseada no conhecido retrato a óleo de Ada. As coisas estranhas atrás de Ada são cartões perfurados, que contêm dois enigmas criados por uma equipe de cientistas internacionais. Como ler os cartões dada sua posição na parede é uma boa questão!

Os filhos de Ada também tinham inclinação matemática e continuaram a tradição familiar, do lado feminino, de uma paixão pela ciência. Por isso, é particularmente apropriado que Ada Lovelace tenha sido escolhida para a campanha que visa aumentar a conscientização sobre as conquistas das mulheres nas áreas de ciência, tecnologia, engenharia e matemática, e é por isso que o Ada Lovelace Day é celebrado ao redor do mundo na segunda terça-feira de outubro.

Com conteúdo do I Programmer.

Deixe um comentário

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.