Sometimes a random brief post has you spending some time marshaling your thoughts on a given subject. Someone on slashdot asked about a reading list for an aspiring “coder” (whatever that is; hacker seems more suited). I put out some thoughts, then I saw that slashdot munged the newlines, so I’m reproducing them here and adding a bit.
I have occasionally contributed to other reading lists – here is a non-software-engineering-related post on Quora.
Any comments or suggestions for more books for aspiring hackers?
Steven Levy: Hackers
Tracy Kidder: The Soul of a New Machine
Douglas Hofstadter: Gödel, Escher, Bach
Cristopher Moore and Stephan Mertens: The Nature of Computation
Neal Stephenson: Reamde (note the spelling)
Geoffrey James: The Tao of Programming
nonfiction textbookish but worth reading through
Marc Rochkind: Advanced UNIX Programming
W. Richard Stevens: Advanced Programming in the UNIX Environment
Michael Kerrisk: The Linux Programming Interface
Thompson and Ritchie: Bell Systems Technical Journal “The UNIX Time-Sharing System” and all the other reprints in which they discuss the evolution of UNIX
Kernighan and Ritchie: The C Programming Language
Kernighan and Pike: The Unix Programming Environment
Abelson, Sussman, Sussman: Structure and Interpretation of Computer Programs
(to keep your thinking straight about why to do these things)
Richard Stallman: The GNU Manifesto – http://www.gnu.org/gnu/manifesto.en.html
GNU Project, other essays: http://www.gnu.org/philosophy/philosophy.html