11 Technical Papers Every Programmer Should Read

source: Technical Papers Every Programmer Should Read (blog.fogus.me)

  1. Fundamental Concepts in Programming Languages  by Christopher Strachey
  2. Why Functional Programming Matters  by John Hughes
  3. An Axiomatic Basis for Computer Programming  by C. A. R. HOARE
  4. Time, Clocks, and the Ordering of Events in a Distributed System  by Leslie Lamport (1978)
  5. On Understanding Types, Data Abstraction, and Polymorphism  by Luca Cardelli and Peter Wegner
  6. Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I  by John McCarthy
  7. Predicate Dispatch: A Unified Theory of Dispatch  by Michael Ernst, Craig Kaplan, and Craig Chambers
  8. Equal Rights for Functional Objects or, The More Things Change, The More They Are the Same  by Henry G. Baker
  9. Organizing Programs Without Classes  by David Ungar, Craig Chambers, Bay-wei Chang, and Urs Hölzle
  10. Dynamo: Amazon’s Highly Available Key-value Store6  by Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall and Werner Vogels
  11. Out of the Tar Pit  by Ben Moseley and Peter Marks
Written on September 10, 2011