2 pontos por GN⁺ 2025-11-10 | 1 comentários | Compartilhar no WhatsApp
  • Arquivo online que preserva as pesquisas e os escritos de Edsger W. Dijkstra, uma das figuras da geração fundadora da ciência da computação
  • Inclui contribuições em áreas centrais como projeto de algoritmos, linguagens de programação, sistemas operacionais, processamento distribuído e verificação formal
  • Disponibiliza em PDF mais de 1.000 manuscritos numerados EWD escritos ao longo de cerca de 40 anos, além de transcrições e traduções pesquisáveis
  • Organiza de forma sistemática materiais complementares como referências cruzadas entre manuscritos, resumos, informações de direitos autorais e vídeos de palestras e entrevistas
  • Uma base de conhecimento que dá continuidade ao pensamento e à filosofia educacional de Dijkstra por meio da série de palestras memoriais e da comunidade de pesquisa relacionada

Vida e realizações de Dijkstra

  • Edsger Wybe Dijkstra foi uma das pessoas que estabeleceram os fundamentos da ciência da computação, deixando contribuições fundamentais em diversas áreas, como projeto de algoritmos, linguagens de programação, sistemas operacionais, processamento distribuído, especificação formal e construção de demonstrações matemáticas
  • Ao longo de mais de 40 anos de carreira entre a academia e a indústria, recebeu diversos prêmios, incluindo o ACM Turing Award
  • Também teve profundo interesse na relação entre educação, ciência da computação acadêmica e a indústria de software

Coleção de manuscritos EWD

  • Por mais de 40 anos, Dijkstra trocou correspondência ativamente com colegas cientistas e distribuiu notas técnicas, relatos de viagem e comentários numerados sequencialmente como “EWDs”
  • Graças à popularização das fotocopiadoras e ao grande interesse, a circulação informal chegou a milhares de cópias
  • Embora a maioria dos manuscritos não tenha sido publicada, o Departamento de Ciência da Computação da University of Texas preserva mais de 1.000 deles permanentemente como documentos bitmap em PDF
  • Os manuscritos originais, diários, cartas, fotografias e outros materiais estão guardados no Briscoe Center for American History da University of Texas

Índices e forma de acesso

  • São oferecidos dois tipos de índice
    • Índice BibTeX: inclui informações bibliográficas
    • Índice ad hoc: exibe apenas os títulos, permitindo busca rápida
  • Também são fornecidos uma tabela de correspondência entre números EWD e anos de publicação, links para relatórios técnicos do Centrum Wiskunde & Informatica (CWI), teses de doutorado e outros documentos
  • Alguns manuscritos foram publicados, e os direitos autorais desses documentos pertencem às editoras

Transcrições e traduções

  • Transcrições pesquisáveis para pessoas com deficiência visual estão sendo adicionadas gradualmente
  • Alguns manuscritos em neerlandês foram traduzidos para o inglês, o EWD1036 para o espanhol e o EWD28 para o russo
  • Mais de 60 voluntários participaram do trabalho de transcrição, e erros de digitação podem ser reportados por e-mail com sugestões de correção
  • Devido a questões de precisão nas traduções, no momento não estão sendo recrutados novos colaboradores para recursos de tradução

Conexões entre manuscritos e resumos

  • Há uma lista de referências cruzadas entre EWDs elaborada por Diethard Michaelis, que pode ser complementada com a participação dos leitores
  • Dijkstra tratava repetidamente dos mesmos temas sob novas perspectivas, e os documentos relacionados são conectados por links “see also”
  • Por sugestão de Günter Rote, passou-se a adicionar resumos aos EWDs, com especial interesse em contribuições de resumos em inglês para manuscritos em neerlandês

Direitos autorais

  • Os direitos autorais da maioria dos EWDs pertencem aos filhos de Dijkstra, e Rutger M. Dijkstra é responsável pelos pedidos de permissão para republicação
  • Nos documentos publicados, os direitos autorais pertencem às respectivas editoras, com lista e informações de capa disponíveis
  • Os originais pertencem ao Briscoe Center for American History, e aplicam-se as políticas de autorização de publicação do centro

Materiais em vídeo e áudio

  • As gravações de palestras e entrevistas de Dijkstra são oferecidas em uma página separada

Materiais relacionados a Dijkstra e seu trabalho

  • Estão disponíveis a entrevista de 1985 de Rogier F. van Vlissingen e suas recordações pessoais, bem como o registro da entrevista de 2001 com Philip L. Frana
  • Foram publicados o programa e os vídeos do simpósio “In Pursuit of Simplicity”, realizado em seu aniversário no ano 2000 para marcar sua aposentadoria em 1999
  • Após sua morte em 2002, foram realizados diversos artigos em homenagem e eventos memoriais
  • Há o texto memorial de Maarten van Emden de 2008 e a publicação, em 2021, de uma coletânea em sua homenagem editada por Krzysztof R. Apt e Tony Hoare
  • O blog Dijkstra’s Cry, mantido por Edgar G. Daylight, continua tratando do pensamento e da pesquisa de Dijkstra
  • Menciona-se o exemplo apresentado em EWD249, que explica o equilíbrio entre eficiência e economia de memória por meio do “princípio da linha de montagem”
  • O Edsger W. Dijkstra Prize in Distributed Computing homenageia suas contribuições fundamentais, como os princípios da concorrência e a pesquisa em autoestabilização

Série de palestras memoriais de Dijkstra

  • Desde outubro de 2010, a University of Texas realiza anualmente as Dijkstra Memorial Lectures

Informações do site

  • O histórico de alterações mais recente está indicado como uma atualização de 30 de março de 2021
  • O site fornece a lista das pessoas que contribuíram para sua construção e um endereço de e-mail para feedback

Sites relacionados

  • Discipline in Thought: apresentação de um site que trata de pensamento computacional e metodologia matemática, dando continuidade à tradição de Dijkstra

Data da revisão do original: 12 de janeiro de 2020

1 comentários

 
GN⁺ 2025-11-10
Comentários do Hacker News
  • No contexto de 2025, o texto mais importante é o ensaio de Dijkstra sobre a "tolice da programação em linguagem natural"
    On the foolishness of "natural language programming"

    • Obrigado pelo link. Foi um texto realmente interessante. Também achei curioso como Dijkstra usava em-dash com frequência
    • Mesmo considerando que os LLMs de código modernos funcionam como uma espécie de compilador de linguagem natural, ainda acho que as linguagens de programação tradicionais usam pouca linguagem natural demais
      Por exemplo, && em vez de and, if (A) B em vez de if A then B é mais fácil de ler
      A matemática priorizou a concisão, mas a programação, por dar mais importância à legibilidade, acabou chegando a um equilíbrio melhor
      Se o que Dijkstra quis dizer é que “buscar apenas legibilidade é um mau negócio”, então é uma observação correta
    • Eu realmente adoro esse ensaio. É curto, mas contém percepções sobre a sociedade em geral
      E está corretíssimo, de forma muito clara
    • A frase sobre pessoas que confundem “facilidade de programar” com “facilidade de não perceber os erros” me marcou bastante
      Isso se aplica especialmente a quem gosta de tipagem dinâmica
  • É impressionante que Dijkstra já escrevesse nos anos 1980 que “a capacidade de uso da linguagem está caindo à medida que a educação se afasta do treinamento intelectual”
    Dizem que, na Holanda, o currículo é avaliado pela taxa de aprovação dos alunos, então, se a taxa cai, a dificuldade também é reduzida
    É óbvio onde isso vai parar se for repetido por décadas

    • A África do Sul é um exemplo representativo disso. O sistema educacional está em colapso em escala nacional
  • Um dos textos que compartilho com frequência é EWD831
    Ele explica por que índices de array devem começar em 0 e por que intervalos devem ser definidos como inclui o limite inferior e exclui o superior

    • Mas é uma pena que esse texto sempre apareça nas discussões de 0-based vs 1-based
      Na verdade, há casos em que 1-based é melhor. Por exemplo, em iterações reversas, 1-based parece mais natural
      Também dá para defender que offsets sejam 0-based e índices sejam 1-based
      Texto relacionado: Again on 0-based vs 1-based indexing
    • Entendo o argumento de Dijkstra, mas achei surpreendente ele não mencionar por que o Fortran começava em 1
      Isso acontecia por causa da arquitetura de registradores de índice por subtração do IBM 704, o que tornava eficientes os arrays em ordem de coluna
      Cray, CUDA e bancos de dados modernos orientados a coluna usam princípios parecidos
      No fim das contas, do ponto de vista do offset de memória, o Fortran já seguia a regra de Dijkstra
  • Ainda acho confuso começar capítulos de livro no 0
    Endereços de memória começam em 0 por causa das combinações de tensão, não por causa do conceito de ordem
    No mundo não existe “século zero” nem “milha zero”, então penso o mesmo sobre capítulos de livro

    • Mas “capítulo 0” pode ser entendido como o ponto de partida
      Por exemplo, se alguém diz “ande três quarteirões”, o ponto de partida é o quarteirão 0
    • Em ciência da computação, como o endereço do primeiro elemento é base + 0, começa-se em 0 por causa do cálculo de offsets
    • “Capítulo 0” é usado naturalmente para reunir os conceitos básicos necessários antes do texto principal
      Por exemplo, Tensor Analysis on Manifolds, de 1968, tinha um capítulo 0 tratando de teoria dos conjuntos
      Assim como na “lei zero da termodinâmica”, também serve para expressar um conceito anterior à ordem já existente
    • Em alguns países, a numeração de andares em prédios também começa no andar 0 (térreo)
      No fim, dizer que começar em 0 “não é natural” é apenas um viés cultural
  • Gosto muito de ler o texto em que Dijkstra relembra o primeiro projeto de interrupção
    EWD1303: The first interrupt

  • Se você se interessa por pensamento matemático, recomendo EWD717 e EWD765
    Ambos mostram processos de resolução de problemas muito interessantes

  • Em EWD498: How do we tell truths that might hurt?
    a frase “programação em linguagem natural está condenada ao fracasso” é marcante
    Outra recomendação é EWD1305,
    um texto que reúne respostas a perguntas de alunos
    Dijkstra critica o fato de que, com a popularidade da internet, estudantes com pouca inclinação científica passaram a migrar para a ciência da computação
    E aponta a realidade de que quase não se ensina “como programar bem”

    • Dijkstra era realmente uma pessoa muito perspicaz
  • Um dos meus textos favoritos é EWD898: Threats to computer science
    E também me impressiona a abertura de EWD899, em que ele critica duramente artigos sobre IA
    A frase “ainda bem que não participei daquela conferência” foi especialmente forte

  • Há algum tempo, coloquei uma citação de Dijkstra no verso do meu cartão de visitas
    Computer Science is no more about computers than astronomy is about telescopes
    Um dia ainda quero reunir todos os textos dele em um eReader para ler durante viagens

    • Isso me faz pensar na piada: “Mas astronomia não se chama ‘telescopologia’, né?”
    • Mas a maioria de nós é operadora de telescópios, não astrônoma
      No fim, o que lidamos é com código (o telescópio), e a qualidade dele define nossos resultados
  • Fiz aulas na UT, e Dijkstra fazia os alunos prestarem prova com caneta, não com lápis
    Ele achava que, quando não é possível apagar, isso acaba servindo de treino para cometer menos erros