A Reading List
2025-10-20Here I preset my reading lists (broadly split among a couple categories), mostly to provide as reference for myself / others. Also includes some notable papers / short stories.
Entries marked with (*) are highly recommended.
Programming, Programming Languages
- Iverson (1972), Algebra: An Algorithmic Treatment - this covers some the ideas behind APL and similar array languages.
- Dijkstra (1977), *On the foolishness of "natural language programming" * - I consider this especially pertinent considering the recent popularity of LLMs as systems with which we do software engineering.
- Naur (1985), Programming As Theory Building
- Sussman et al. (1985), Structure and Interpretation of Computer Programs *
- Pierce (2002), Types and Programming Languages
- Parse, Don't Validate
- The Dragon Book (Aho & Ullman) - cool, but do not expect to read all of it in a single sitting; better used as a reference for individual interesting subjects that an end-to-end guide.
- Cooper (2012), Engineering a Compiler
Software & Systems
- Lampson (1983), Hints for Computer Systems Design
- Thompson (1984), Reflections on Trusting Trust
- Brooks (1986), No Silver Bullet *
- MapReduce Paper (2004)
- Drepper (2007), What Every Programmer Should Know About Memory
- Kerrisk (2010), The Linux Programming Interface
- Pregel (2010)
- OSTEP
- Bryant (2016), Computer Systems: A Programmer’s Perspective
Science Fiction
- Gibson (1984), Neuromancer
- Card (1985), Ender's Game *
- Card (1986), Speaker for the Dead
- Banks (1988), Player of Games
- Simmons (1989), Hyperion
- Banks (1990), Use of Weapons *
- Stephenson (1995), The Diamond Age
- Reynolds (2000), Revelation Space
- Ted Chiang (2002), Stories of Your Life and Others
- Stross (2005), Accelerando
- Watts (2006), Blindsight *
- Reynolds (2008), House of Suns
- Reynolds (2016), Beyond the Aquila Rift
- qntm (2020), Lena
- qntm (2021), Ra
History of Science, Technology
- Kuhn (1962), The Structure of Scientific Revolutions
- Popper (1962), Conjectures and Refutations
- Donald MacKenzie (1993), Inventing Accuracy
- Gleick (2011), The Information: A History, a Theory, a Flood
- Yanofsky (2013), The Outer Limits of Reason