Eric Allman: O encanador do correio eletrónico
Houve um período de aproximadamente vinte anos em que quase todos os e-mails enviados na Terra passavam por um programa escrito por um estudante de pós-graduação em Berkeley. Eric Allman não projetou o correio eletrónico, e nunca afirmou tê-lo feito. Ele resolveu o problema mais aborrecido e difícil subjacente: fazer com que sistemas de correio incompatíveis, construídos por pessoas que nunca tinham falado umas com as outras, trocassem mensagens sem as perder. Quando a Association for Computing Machinery o elegeu como membro na sua turma de 2025, a citação foi de quatro palavras: pelo desenvolvimento do correio eletrónico.
Uma infância em Berkeley
Eric Paul Allman nasceu a 2 de setembro de 1955 em El Cerrito, Califórnia, a poucos quilómetros da universidade que definiria a sua vida. Encontrou o seu caminho para o computador central da sua escola secundária cedo, e de lá para o centro de computação da UC Berkeley. Matriculou-se em Berkeley em 1973, exatamente quando o Unix se espalhava pelos departamentos de informática americanos, e obteve o seu bacharelato em 1977 e o seu mestrado em 1980.
Ele nunca abandonou a órbita. Allman ainda vive em Berkeley, e o seu trabalho mais duradouro foi feito a poucos quarteirões de onde cresceu.
O problema que ninguém queria
No final da década de 1970, o correio eletrónico existia, mas não como uma única coisa. Existia como vários elementos incompatíveis ao mesmo tempo. A ARPANET tinha as suas convenções; as redes Unix locais tinham outras; sistemas diferentes discordavam sobre como um endereço deveria ser escrito, o que um cabeçalho deveria conter e qual o protocolo que deveria transportar a mensagem. Um utilizador numa rede que quisesse escrever para um utilizador noutra estava, na prática, sem sorte.
A primeira resposta de Allman foi o delivermail. A sua segunda, à qual chegou em 1981, foi o sendmail, e a diferença entre eles constitui a totalidade da sua contribuição. O sendmail não era um sistema de correio. Era um Agente de Transferência de Correio — um router e tradutor que se situava entre os sistemas de correio, aceitava uma mensagem na forma em que chegava, calculava para onde tinha de ir a seguir e reescrevia os seus endereços e cabeçalhos para qualquer forma que o salto seguinte exigisse. Falava SMTP, mais tarde ESMTP, e o Mail-11 da DECnet.
Vinte perguntas, oito minutos no relógio e um percentil medido contra todos os que já fizeram. Sem cadastro.
Fazer o teste de QI →A decisão de design crítica foi que nenhuma destas traduções era codificada rigidamente. O comportamento do sendmail era impulsionado por regras de reescrita — uma pequena e densa linguagem de correspondência de padrões, contida num ficheiro de configuração, que descrevia como transformar um endereço de uma forma num endereço de outra. Allman construiu um mecanismo em vez de uma política. Quando o correio eletrónico mudava, como aconteceu continuamente durante quarenta anos, o sendmail não precisava de ser reescrito; as suas regras sim.
É por isso que o sendmail se tornou parte da Berkeley Software Distribution e depois o agente de transferência de correio padrão em essencialmente todos os sistemas Unix, e é também por isso que o seu ficheiro de configuração é lendário entre os administradores de sistemas. Até a descrição sóbria do software admite uma sintaxe de configuração algo complexa. O poder e a dor vinham exatamente do mesmo lugar.
Syslog
Enterrada dentro do sendmail estava uma segunda invenção que escapou e conquistou mais território do que a primeira. Allman precisava de uma forma consistente para o programa registar o que estava a fazer, por isso escreveu uma instalação de registo chamada syslog. Originalmente era específica para o sendmail. Agora é, na expressão do Internet Hall of Fame, o mecanismo de registo padrão de facto usado em quase todos os sistemas abertos e periféricos — a coisa que escreve as linhas que os seus servidores, routers e impressoras produzem quando algo acontece com eles. Foi padronizada informalmente durante duas décadas antes de ser documentada como RFC 3164 em 2001 e mais tarde substituída pela RFC 5424.
Duas peças mais pequenas de Allman também sobrevivem no uso diário. O estilo de indentação Allman, por vezes chamado de estilo BSD, é uma das duas formas como os programadores de C colocam as suas chavetas. E o BSD Trek, ainda enviado no pacote bsdgames do Linux, é a sua portagem em C de um jogo de Star Trek em Fortran.
A empresa
Allman trabalhou na empresa de bases de dados Britton Lee, mais tarde Sharebase, e no International Computer Science Institute. Em 1998, ele e Greg Olson fundaram a Sendmail, Inc. em Emeryville, Califórnia, para desenvolver o software comercialmente juntamente com a versão de código aberto; a empresa foi eventualmente adquirida pela Proofpoint. A arquitetura que adicionou nesse período, milter, permitia que terceiros ligassem filtros ao caminho do correio — o gancho através do qual a filtragem de spam e vírus foi mais tarde enxertada nos servidores de correio do mundo. Allman disse que espera que a maior parte da evolução futura do correio eletrónico aconteça nos milters em vez de no próprio agente de transferência.
Ele também ajudou a criar a ACM Queue, posicionada deliberadamente no hiato entre as revistas académicas que os profissionais não leem e as revistas comerciais moldadas pelos anunciantes, e fez parte do seu conselho editorial e do Conselho da ACM após funções de liderança anteriores na USENIX. Coescreveu o livro Sendmail da O'Reilly com Bryan Costales, contribuiu para The Architecture of Open Source Applications, e mais tarde trabalhou no Swarm Lab de Berkeley em computação distribuída e plataformas da Internet das Coisas.
Por que Eric é chamado de génio
A qualidade demonstrada não é o brilho teórico e Allman nunca fingiu o contrário. É o julgamento de design sob incerteza — a capacidade de olhar para uma confusão de sistemas incompatíveis e identificar corretamente que parte continuará a mudar e que parte não, e depois construir a parte em mudança como configuração e a parte estável como código. As regras de reescrita do sendmail foram uma aposta de que as convenções de endereçamento do correio eletrónico permaneceriam instáveis durante décadas. A aposta foi correta, e é a razão pela qual um programa escrito por um estudante de pós-graduação em 1981 ainda carregava uma grande parte do correio mundial trinta anos depois. Isso é visão de engenharia de um tipo raro, e o reconhecimento reflete isso: o Internet Hall of Fame incluiu-o como Inovador em 2014, a ACM tornou-o Engenheiro Distinto em 2009 e membro em 2025, e Berkeley nomeou-o Ex-aluno Distinto em Ciência da Computação em 2013.
O contra-caso é justo e vale a pena ser declarado claramente. Allman não inventou nenhum algoritmo, não provou nenhum teorema e não originou nenhum protocolo; correio eletrónico, SMTP e ARPANET foram trabalho de outras pessoas. O seu génio, se a palavra se aplica, é o ofício — a inteligência prática de alguém que constrói infraestrutura que tem de sobreviver ao contacto com todos. E o ofício teve um custo real. A linguagem de configuração do sendmail é famosamente punitiva, uma barreira de que gerações de administradores se queixaram e que ajudou a motivar os agentes de transferência de correio rivais escritos depois dele. Uma ferramenta que apenas especialistas conseguem operar em segurança é uma peça de design comprometida, por mais duradoura que seja. O próprio conselho de Allman aos programadores é caracteristicamente pouco glamoroso: escolha um projeto que corresponda à sua personalidade, escreva código limpo e bem documentado, porque a sua reputação estará em jogo.
Legado
Allman é gay e casou-se com Marshall Kirk McKusick, um desenvolvedor líder do BSD Unix, em outubro de 2013, depois de mais de trinta anos juntos; conheceram-se na pós-graduação, e entre ambos são responsáveis por uma proporção surpreendente do software que tornou o Unix no sistema operativo da Internet. As suas honras incluem o prémio Telluride Tech Festival Award of Technology em 2006. A melhor medida do seu trabalho, contudo, é que é invisível. Ninguém pensa no agente de transferência de correio, e ninguém lê a linha syslog até que algo se estrague — o que é precisamente a condição que a infraestrutura deve alcançar.



