A Reading List
October 20, 2025Here I preset my reading lists (broadly split among a couple categories), mostly to provide as reference. 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”
- 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
Software & Systems
- Thompson (1984), Reflections on Trusting Trust
- Brooks (1986), No Silver Bullet *
- MapReduce Paper (2004)
Science Fiction
- Gibson (1984), Neuromancer
- Card (1985), Ender’s Game(1977) for the short story
* - Card (1986), Speaker for the Dead
- Banks (1988), Player of Games
- Banks (1990), Use of WeaponsAll of the culture series is good, these are selected recommendations.
* - 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