Facundo Olano recopiló esta impresionante lista de papers o trabajos académicos sobre ingeniería del software con más de cien referencias. Hay dos versiones: una por temas (redes, criptografía, sistemas distribuidos, etcétera) y otra cronológica. Me he permitido extraer aquí unas cuantas referencias a modo de ejemplo de la lista cronológica, que comienza en 1945 y acaba en nuestros días.
La idea de la lista (que originalmente iban a ser no más de 30 papers, pero ya se sabe lo que pasa) es que sean trabajos cortos, fáciles de leer, completos por sí mismos y que estén disponibles de forma gratuita online. Por lo general además están en su formato original, a veces escaneados en PDFs de publicaciones especializadas, con todas las ilustraciones y tratamiento tipográfico añejo de la época.
Mi selección:
As We May Think. Bush (1945)
Computing Machinery and Intelligence. Turing (1950)
Method for the Construction of Minimum-Redundancy Codes. Huffman (1952)
On the Traveling Salesman Problem. Kruskal (1956)
Some Moral and Technical Consequences of Automation. Wiener (1960)
An Experimental Time-Sharing System. Corbató, Merwin Daggett, Daley (1962)
Cramming More Components onto Integrated Circuits. Moore (1965)
ELIZA—a computer program for the study of natural language. Weizenbaum (1966)
Goto Statement Considered Harmful. Dijkstra (1968)
The UNIX Time-Sharing System. Ritchie, Thompson (1974)
A Protocol for Packet Network Intercommunication. Cerf, Kahn (1974)
Computer Programming as an Art. Knuth (1974)
Ordered hash tables. Amble, Knuth (1974)
The Mythical Man Month. Brooks (1975)
New Directions in Cryptography. Diffie, Hellman (1976)
A Universal Algorithm for Sequential Data Compression. Ziv, Lempel (1977)
Time, Clocks, and the Ordering of Events in Distributed Systems. Lamport (1978)
Ethernet: …