# Books ## Algorithms and Data Structures The Art of Computer Programming (Knuth) Programming Pearls (Bentley) Data Structures and Algorithms (Aho, Hopcroft, Ullman) Introduction to Algorithms ("CLRS") (Cormen, Leiserson, Rivest, and Stein) ## Lisp Lisp 1.5 Manual (McCarthy) Structure and Interpretation of Computer Programs ("SICP") (Abelson and Sussman) Lisp in Small Pieces ("LiSP") (Queinnec) Common Lisp the Language ("CLTL") (Steele) Common Lisp the Language, 2nd. ed. ("CLTL2") (Steele) The Art of the Metaobject Protocol ("AMOP") (Kiczales) Paradigms of Artificial Intelligence Programming ("PAIP") (Norvig) ## C The C Programming Language ("K&R") (Kernighan and Ritchie) C: A Reference Manual ("H&S") (Harbison and Steele) ## Smalltalk Smalltalk-80: The Language (Golgberg) Smalltalk-80: The Language and its Implementation (Golgberg and Robson) ## Perl Programming Perl ("Camel Book") (Wall, Schwartz, and Christiansen) Higher Order Perl (Dominus) ## Ruby Programming Ruby ("Pickaxe Book") (Thomas) ## Design How to Design Programs ("HtDP") (Felleisen, Findler, Flatt, and Krishnamurthi) Object-Oriented Software Construction ("OOSC") (Meyer) Design Patterns ("Gang of Four") (Gamma, Johnson, Helm, Vlissides) ## Management Mythical Man Month (Brooks) Peopleware (DeMarco and Lister) ## Systems programming Compilers: Principles, Techniques, and Tools ("Dragon Book") (Ullman, Aho, Lam, and Sethi) Modern Operating Systems (Tannenbaum) TCP/IP Illustrated vols. I-III (Stevens) ## Databases An Introduction to Database Systems (Date) Transaction Processing: Concepts and Techniques (Gray and Reuter) Database Management Systems (Ramakrishnan and Gehrke) ## Unix Advanced Programming in the Unix Environment (Stevens) The Unix Programming Environment (Kernighan/Pike) Unix Network Programming (Stevens) ## General and Misc Concepts, Techniques, and Models of Computer Programming (Van-Roy) AI: A Modern Approach (Norvig) The Practice of Programming (Kernighan and Pike) Purely Functional Data Structures (Okasaki) Types and Programming Languages (Pierce)