#acessibilidade Pintura de Ada Lovelace possivelmente feita por Alfred Edward Chalon. Na pintura há uma mulher de pele branca, cabelos castanho escuro, vestido longo típico do século XIX e luvas brancas.
Se você é apaixonado por programação, talvez já tenha lido ou tenha se inspirado no trabalho de Ada Lovelace. Nascida em 1815 na Inglaterra, Ada Lovelace, sendo influenciada por sua mãe, a matemática inglesa Anne Isabella Noel Byron, começou muito nova a estudar matemática e ciência, que anos depois a levaram a criar o primeiro algoritmo para programação em computador, descrito no apêndice do artigo publicado em outubro de 1842: Esboço da máquina analítica inventada por Charles Babbage (Sketch of The Analytical Engine Invented by Charles Babbage).
Ada tinha a firme convicção de que a imaginação deveria estar conectada necessariamente com as matemáticas:
A matemática é a linguagem das conexões que não vemos entre objetos, mas para usar e aplicar essa linguagem devemos ser capazes de apreciar, sentir, de tomar posse do que é oculto, do inconsciente.
Ada Lovelace
Assim, ainda muito nova ela já tinha idealizado uma «máquina voadora» movida a vapor, um cavalo com um imenso par de asas que, voando no ar, seria capaz de levar uma pessoa nas costas.
O trabalho de Lovelace está fortemente ligado à «Máquina Analítica», um dispositivo proposto em 1837 pelo matemático Charles Babbage, e que seria considerado o primeiro projeto de computador mecânico de uso geral. Apesar da máquina analítica não ter sido construída, a unidade de processamento teria 4,5 m de altura e a memória, com capacidade para salvar números de 50 dígitos, teria um comprimento de 6 metros. A máquina analítica, como estava idealizada por Babbage, «comeria sua própria cauda», o que significava que seu design permitiria modificar os cálculos enquanto estavam rodando.
Mas, o que são os números de Bernoulli e o que tem a ver Ada Lovelace nesta história?
Bem, de forma muito breve, os números de Bernoulli são especialmente úteis em programação e no geral na matemática moderna, e foram criados para sintetizar somas finitas ou infinitas usando-os em sequência ou em série. Lovelace, que na época já havia se interessado na elegância e audácia dos projetos de Babbage, ao fazer a tradução para o inglês de um artigo do engenheiro italiano Luigi Menabrea, incluiu por sugestão de Babbage um apêndice de quarenta e uma páginas assinado com A.A.L. (Augusta Ada Lovelace), e dividido em notas. Uma delas, a nota G, continha uma demonstração passo a passo da sequência de operação da máquina usando os números de Bernoulli como exemplo. O algoritmo escrito por Lovelace organizava as operações em grupos que podiam ser repetidos, o que hoje no mundo da programação chamamos de loop.
#acessibilidade Diagrama de Lovelace da Nota G, o primeiro algoritmo de computador publicado.
A beleza do seu trabalho vai além da sua indiscutível utilidade nos tempos modernos representada em cada computador que usamos. Sua abordagem visionária descrita na nota A, também inclusa no apêndice do artigo, previa que «a máquina não estaria unicamente limitada aos números, mas que poderia atuar sobre qualquer objeto suscetível de ser adaptado à notação e mecanismo da máquina». Todavia, previu que a máquina um dia poderia criar música de qualquer grau de complexidade ou extensão.
Além de antecipar ideias modernas da programação por computador, suas notas incluíam o uso do sistema de cartões perfurados (inspirados nos padrões algébricos do tear de Jacquard, do qual falaremos talvez em outro texto) que, separados em grupos, permitiam atribuir valores iniciais aos cálculos e executá-los em loop. Ada Lovelace, chamada por Babbage de «feiticeira dos números» levou também seus conhecimentos e imaginação para outras áreas da ciência, usou dados para modelar o efeito da luz no crescimento das plantas e se interessou também pela fotografia e pelo impacto de fármacos na mente humana.
Como homenagem a Ada, e tentando atingir o sonho de uma linguagem de programação universal, foi lançada pela primeira vez em 1980 a linguagem Ada, hoje em dia utilizada em aplicações como a aviação comercial, sistemas de comunicação, produção industrial, dentre outras.
Fontes:
Fonte da imagem destacada: computerhistory.org
Fonte da imagem 1: scihi.org
Para saber mais:
Documentário da BBC Calculating Ada – The Countess of Computing 2015