
1. Art of Computer Programming: Combinatorial Algorithms, Volume 4a. This stuff is hard. It's harder than I can imagine. [It's worth noting that this probably clarifies my definition of "read", since I've only read a little bit of it so far and only really grokked a little bit of what I read].
2. Programming Clojure made me make sense of the truth underlying the joke "Clojure is just a Java library".
3. The Art of Unix Programming [1] made me understand my experience living through the transition from MSDos to twenty years of Windows and think about what I had lost and missed and how my understanding of software and design had been shaped. It also helped gain better intuitions when using Linux. [2]
4. Starting Forth [3] because Forth is worth learning. It's worth learning because it changed the way I think about programming languages.
5. The Art and Science of Smalltalk [4] for the same reasons as Forth, only more so. After reading about Smalltalk, I felt I began to understand the "Why" of Ruby. Ruby became many times richer with the context.
6. The weird one is The RSpec Book: Behavior Driven Development with RSpec, Cucumber and Friends. It's also the one that changed my thinking the most [caveat: it's also the most recently read]. I saw someone's "port" of RSpec to Clojure [6] and had saw the Turing Tarpit swallow Lisp. Until then, my smug weeniness didn't allow for the possibility. But implementing an internal DSL for RSpec missed the beauty of RSpec's design. I saw Lisp through the eyes of it's detractors. It's a case where Lisp's parentheses make an elegant idea grotesque.[7]
7. [Bonus] The C Standard Library. Trigonometric values are produced via the dark arts.
[1]: http://catb.org/esr/writings/taoup/html/
[2]: Please note, I am not anti-Windows or anti-Microsoft. There are tradeoffs all around.
[3]: http://www.forth.com/starting-forth/
[4]: http://sdmeta.gforge.inria.fr/FreeBooks/Art/artAdded17418618...
[5]: http://www.thriftbooks.com/
[6]: https://github.com/slagyr/speclj
[7]: Please don't get me wrong. I don't dislike Lisp. I'm not arguing that the repository is typical, or that anyone else should find RSpec's design attractive. What I saw was that as an internal DSL, RSpec's design baby goes out with the Ruby bathwater in the land of Clojure internal DSL's.
Because it's so old, Smalltalk does things very differently to other development environments.
The GUI is strange by today's standards (Smalltalk was why Xerox developed the GUI - you can see how much extra work Apple did to make the windows/icons/menus that we use today).
And it uses an image (which is sort of like developing in a VM, and then copying that VM to another machine to deploy).
So diving straight into a Smalltalk may leave you a bit lost - whereas the book is quite a good primer on OOP in general and where those OO patterns came from (whether Squeak, Pharo, GNU or one of the big expensive implementations).
As for that list, Smalltalk-80: the Language and its Implementation (the "blue book") is phenomenal. One of the co-authors is Adele Goldberg herself, and the last few chapters (26-30) contain the blueprint for a basic, canonical VM using Smalltalk itself as the implementation language (referred to as the "blue book VM").
I think The Art and Science of Smalltalk is quite good also, but outdated and VisualWorks-specific. The section on MVC is particularly interesting, especially if your understanding of it was shaped by RoR and other web frameworks.