Skip to content

💻The Greats

Engenheiro de software · Escreve, testa e mantém o código que comanda a vida moderna – e é uma das primeiras profissões a observar a IA automatizar seu próprio trabalho diário.

Share

O cânone da engenharia de software é mais curto e mais recente do que o da medicina ou do direito, e uma parte surpreendente dele foi escrita por mulheres que trabalhavam em salas cheias de homens que ainda não achavam que a programação importava. As oito pessoas aqui abrangem uma condessa escrevendo para uma máquina que nunca foi construída e um designer de língua japonesa que ainda mantém sua própria criação na casa dos sessenta anos.

O que os liga não é um contexto partilhado – abrangem quatro países e mais de 180 anos – mas uma insistência partilhada de que a forma como o software é construído é tão importante como se funciona ou não.

The all-time podium

Grace Hopper
Grace Hopper
Estados Unidos
2
Dennis Ritchie
Dennis Ritchie
Estados Unidos
1
Margarida Hamilton
Margarida Hamilton
Estados Unidos
3

“Construa de forma que o trabalho sobreviva à máquina para a qual foi construído – a portabilidade permitiu que as ideias do Unix sobrevivessem a cinquenta anos de hardware.”

Dennis Ritchie

The eight who reached the top

1
Fotografia de Dennis Ritchie Denise Panyik-Dale · CC BY 2.0

Dennis Ritchie

Estados Unidos · 1941–2011

Co-criou o Unix e projetou a linguagem de programação C no Bell Labs, dando à indústria um sistema operacional portátil e a linguagem cuja sintaxe foi emprestada pela maioria das linguagens posteriores. Ele compartilhou o Prêmio Turing de 1983 com Ken Thompson; a maioria dos sistemas operacionais em execução hoje descendem ou foram construídos com ferramentas descendentes de seu trabalho.

The story

Com Thompson, Ritchie reescreveu o Unix em C em 1973 para que ele pudesse migrar para um novo hardware em vez de ficar preso a uma máquina – a decisão que permitiu ao Unix, e tudo que dele descendia, sobreviver a qualquer computador. Ele morreu em sua casa, em Berkeley Heights, Nova Jersey, em 12 de outubro de 2011, uma morte amplamente ofuscada na imprensa pela de Steve Jobs, uma semana antes, embora o software desenvolvido com base no trabalho de Ritchie funcionasse dentro dos próprios produtos de Jobs.

“Construa de forma que o trabalho sobreviva à máquina para a qual foi construído – a portabilidade permitiu que as ideias do Unix sobrevivessem a cinquenta anos de hardware.”

Prêmio Turing
1983 (com Thompson)
Idiomas descendentes de C
C++, Java, C#, JavaScript…
Carreira na Bell Labs
~40 anos
2
Fotografia de Grace Hopper em uniforme da Marinha James S. Davis · Public domain

Grace Hopper

Estados Unidos · 1906–1992

Matemático e oficial da Marinha que construiu o primeiro compilador funcional em 1952, argumentando que as pessoas deveriam programar em algo mais próximo do inglês, em vez de instruções brutas de máquina. Esse argumento levou diretamente ao COBOL, uma linguagem que ainda funciona em bancos, companhias aéreas e governos sete décadas depois.

The story

Rejeitado pela Marinha para o serviço ativo por estar abaixo do peso, Hopper ingressou na Reserva Naval em 1943 e mais tarde foi designado para programar o Harvard Mark I. Em setembro de 1947, sua equipe Mark II gravou uma mariposa que havia inserido um relé em seu diário de bordo, observando o "primeiro caso real de bug sendo encontrado" - Hopper não cunhou a palavra 'bug', mas ela contou a história por décadas até que se tornou a lenda fundadora do campo.

“Faça a máquina falar a linguagem do programador, e não apenas o contrário.”

Carreira naval
43 anos, contra-almirante
Idade na aposentadoria
79, oficial ativo mais velho
Medalha Presidencial da Liberdade
2016 (póstumo)
3
Fotografia de Margaret Hamilton ao lado de uma pilha de listagens de software Apollo Daphne Weld Nichols · CC BY-SA 3.0

Margarida Hamilton

Estados Unidos · b. 1936

Liderou a equipe do Laboratório de Instrumentação do MIT que escreveu o software de voo a bordo do programa Apollo e é amplamente creditado por popularizar o termo “engenharia de software” para argumentar que o código merecia o mesmo rigor e respeito que a engenharia de hardware.

The story

Durante a descida lunar da Apollo 11 em julho de 1969, o computador de orientação começou a emitir os alarmes 1202 e 1201 quando um interruptor de radar mal configurado o inundou com trabalho extra. A equipe de Hamilton construiu o software para eliminar tarefas de baixa prioridade sob sobrecarga, em vez de acidente, por isso manteve a orientação de pouso funcionando; O Controle da Missão, preparado por uma folha de dicas de alarme escrita à mão por um engenheiro da NASA, chamava "ir" em vez de abortar.

“Projete software para falhar normalmente sob sobrecarga, não apenas para funcionar quando tudo correr conforme o planejado.”

Medalha Presidencial da Liberdade
2016
Missão histórica
Pouso da Apollo 11, 1969
Função do MIT
Diretor, Eng. de Software. Divisão
4
Fotografia de Linus Torvalds Krd (photo) Von Sprat (crop/extraction) · CC BY-SA 4.0

Linus Torvalds

Finlândia / Estados Unidos · b. 1969

Iniciei o kernel do Linux como um projeto de hobby para estudantes de Helsinque em 1991 e, quatorze anos depois, escrevi o núcleo do Git em cerca de dez dias. Ambos os projetos agora estão sob a maior parte da Internet pública, da maioria dos telefones do mundo e do fluxo de trabalho diário da maioria das equipes de software profissionais.

The story

Em 25 de agosto de 1991, Torvalds postou no grupo Usenet comp.os.minix que estava escrevendo "um sistema operacional (gratuito) (apenas um hobby, não será grande e profissional como o GNU)". Voluntários de todo o mundo começaram a contribuir em poucos meses. Em 2005, após uma disputa de licenciamento ter cortado a equipe do kernel de sua ferramenta de controle de origem existente, ele mesmo escreveu o núcleo do Git em cerca de dez dias, em vez de esperar que alguém construísse um.

“Um código funcional, compartilhado livremente e discutido abertamente, supera o design perfeito de um comitê fechado.”

Kernel Linux iniciado
1991, 21 anos
Git escrito em
~10 dias, 2005
Dispositivos executando sistema operacional baseado em Linux
Bilhões, inclusive tudo Android
5
Fotografia de Bárbara Liskov Kenneth C. Zirkel · CC BY-SA 3.0

Bárbara Liskov

Estados Unidos · b. 1939

Construiu o CLU no MIT em meados da década de 1970, uma das primeiras linguagens com abstração de dados reais, e mais tarde formalizou o princípio de substituição que ainda rege como os engenheiros projetam hierarquias de classes. Em 2008 ela se tornou a segunda mulher a ganhar o Prêmio Turing.

The story

Liskov obteve seu doutorado em ciência da computação em Stanford em 1968, sendo uma das primeiras mulheres nos Estados Unidos a fazê-lo. No MIT, ela liderou a equipe que construiu o CLU entre 1974 e 1975, introduzindo tipos de dados abstratos anos antes de “programação orientada a objetos” ser uma expressão comum. Em uma palestra de uma conferência em 1987, ela declarou o que ficou conhecido como Princípio de Substituição de Liskov, agora o 'L' nos princípios de design SOLID ensinados a quase todos os engenheiros.

“Um subtipo deve honrar todas as promessas feitas por seu supertipo, ou a abstração deixará de protegê-lo.”

Prêmio Turing
2008 (2ª mulher)
Doutorado em ciência da computação
1968, Stanford
Linguagem CLU construída
1974–75, MIT
6
Retrato de Ada Lovelace Antoine Claudet · Public domain

Ada Lovelace

Reino Unido · 1815–1852

Em 1843, Lovelace traduziu e anotou um artigo italiano sobre a Máquina Analítica não construída de Charles Babbage e, em sua nota mais longa, escreveu, passo a passo, como a máquina poderia calcular uma sequência de números – um programa funcional escrito para um computador que ainda não existia.

The story

A Nota G de Lovelace, a mais longa das sete notas que acompanham sua tradução do artigo de Luigi Menabrea, expôs os cartões de operação da Máquina Analítica para calcular os números de Bernoulli, e ela detectou e corrigiu um erro no cálculo antes da publicação. Ela morreu de câncer em 1852, aos 36 anos, décadas antes de alguém construir uma máquina que pudesse executar o que ela havia escrito; a linguagem de programação Ada, adotada pelo Departamento de Defesa dos EUA em 1980, foi batizada em sua homenagem.

“Um programa pode ser projetado e depurado antes mesmo de existir a máquina para executá-lo.”

Notas publicadas
1843
Idade ao morrer
36
Idioma com o nome dela
Ada, 1980, Departamento de Defesa dos EUA
7

Frances Allen

Estados Unidos · 1932–2020

Passou quase toda a sua carreira na IBM Research transformando o código literal e ineficiente que um compilador produz primeiro nos programas rápidos que os engenheiros realmente enviam, estabelecendo a base matemática para compiladores modernos de otimização e paralelização. Em 2006 ela se tornou a primeira mulher a ganhar o Prêmio Turing.

The story

Allen cresceu em uma fazenda de laticínios no Peru, Nova York, sem eletricidade ou encanamento, e ingressou na IBM em 1957, principalmente para pagar sua dívida universitária com o ensino. Seu artigo de 1966, 'Program Optimization', introduziu técnicas baseadas em gráficos para análise de código que ainda são ensinadas em cursos de compilador. Mais tarde, ela liderou o PTRAN, um projeto que ensinou compiladores a encontrar automaticamente paralelismo oculto em antigos programas Fortran, e se tornou a primeira mulher Fellow da IBM em 1989.

“O programa que uma pessoa escreve e o programa que a máquina deve executar são problemas diferentes; resolver ambos.”

Prêmio Turing
2006 (1ª mulher)
Bolsista IBM
1989 (1ª mulher)
Carreira na IBM Research
~45 anos
8

Yukihiro Matsumoto

Japão · b. 1965

Projetou a linguagem de programação Ruby a partir de 1993 em torno de um objetivo explícito - felicidade do programador em vez de eficiência da máquina - e viu-a se tornar o motor por trás do Twitter, GitHub e Shopify, e da onda mais ampla de startups da era Rails que ajudou a lançar.

The story

Matsumoto começou a esboçar Ruby no papel em fevereiro de 1993, misturando pedaços de Perl, Smalltalk, Eiffel, Lisp e Ada, e lançou-o publicamente em 1995. Ele disse que seu objetivo era deixar os programadores felizes em vez de otimizar para o computador, uma filosofia que a comunidade Ruby transformou em seu próprio lema, "Matz é legal, e então nós somos legais" - uma regra sobre como os contribuidores devem tratar uns aos outros, não apenas como a linguagem deve se comportar.

“Projete ferramentas de acordo com como as pessoas se sentem ao usá-las, não apenas com base no que elas permitem que uma máquina calcule.”

O primeiro lançamento público de Ruby
1995
Anos projetando Ruby
Desde 1993
Papel
Designer Chefe, Ruby

As barras são proporcionais ao líder desta lista.

Laboratório de comparação

Toggle names on and off — every bar rescales to the leader of your selection.

5 / 8

The argument

É questionável se a conferência da NATO de 1968 “cunhou” o termo engenharia de software: Margaret Hamilton e outros dizem que versões da frase já circulavam informalmente nos círculos de engenharia antes de Garmisch, e que a conferência a popularizou em vez de a inventar.

A nomenclatura e o crédito em torno do Linux extraem seu próprio argumento de longa data: Richard Stallman e a Free Software Foundation argumentam que o sistema operacional deveria ser chamado de 'GNU/Linux', já que grande parte do conjunto de ferramentas circundante veio do projeto GNU que antecedeu o kernel de Torvalds.

Similar professions

Continue exploring

Keep exploring

More in Engineering & Technology

🤖

Pesquisador de IA

Projeta e testa os algoritmos por trás da inteligência das máquinas, em um campo que agora corre para automatizar uma parcela crescente de seu próprio processo de pesquisa.

AI-resistant 50
🛰️

Engenheiro Aeroespacial

Projeta, analisa e certifica as aeronaves, foguetes e espaçonaves que saem do solo, trabalhando com margens de segurança que não deixam margem para suposições.

AI-resistant 74
🌉

Engenheiro Civil

A profissão que transforma rios, rochas e gravidade em pontes, estradas e água limpa – o comércio silencioso e pesado da civilização desde Imhotep.

AI-resistant 72
🔌

Engenheiro de Semicondutores

Projeta e fabrica os transistores dentro de cada computador, telefone e arma, usando máquinas precisas o suficiente para que apenas algumas fábricas na Terra possam operá-las.

AI-resistant 60
🦾

Engenheiro de Robótica

Projeta as máquinas que sentem, decidem e agem no mundo físico, onde o problema difícil nunca foi a inteligência, mas o próprio mundo.

AI-resistant 65
🔐

Especialista em segurança cibernética

Protege sistemas, dados e pessoas, encontrando, prevenindo e respondendo a ataques digitais.

AI-resistant 63
📦

Engenheiro MLOps

Constrói os sistemas que treinam, implantam, monitoram e controlam modelos de aprendizado de máquina em produção.

AI-resistant 54
🌬️

Engenheiro de Energia Renovável

Projeta, constrói e melhora sistemas eólicos, solares, de armazenamento e de rede que transformam recursos renováveis ​​em eletricidade confiável.

AI-resistant 72