Part of How to become a Real Programmer.
Lined up
- [1] [http://en.wikipedia.org/wiki/Structure_and_Interpretation_of_Computer_Programs w] Structure and Interpretation of Computer Programs
- Abelson, Sussman
- The "purple book"
- MIT introductory text.
- [http://en.wikipedia.org/wiki/The_Art_of_Computer_Programming w] The Art of Computer Programming
- Donald E. Knuth
Consider seriously
- Smalltalk Best Practice Patterns
- ISBN-10: 0-13-476904-X
- [2] ISBN-13: 978-0134769042
- The Definition of Standard ML, Revised Edition
- ISBN-10: 0262631814
- ISBN-13: 978-0262631815
- A really, really tough read.
- Types and Programming Languages
- ISBN-10: 0262162091
- ISBN-13: 978-0262162098
- How to Solve It: A New Aspect of Mathematical Method
- ISBN-10: 0691023565
- ISBN-13: 978-0691023564
- Hackers: Heroes of the Computer Revolution
- ISBN 0385191952
- True Names: And the Opening of the Cyberspace Frontier
- ISBN-10: 0312862075
- ISBN-13: 978-0312862077
- I've already read something called True Names by Vernor Vinge, but this is a collection of essays.
Un-judged
- C Programming Language
- Kernighan, Ritchie
- The UNIX Programming Environment
- Kernighan, Pike
- The Pragmatic Programmer
- [3] Pragmatic Thinking and Learning
- "It's another motivating book. Makes you want to be productive, get shit done, organize your life, encourage your creative side (R-brain in the book)." -- Josh Creek
- "It also makes a point to give you a mental model for your brain." -- Josh Creek
- [http://en.wikipedia.org/wiki/Peopleware:_Productive_Projects_and_Teams w] Peopleware: Productive Projects and Teams
- Tom DeMarco, Timothy Lister
- "A lot of attention is paid to environment, things like noise, concentration, flow, lighting, furniture, etc. A lot about what makes a good team, and how to avoid killing an otherwise good team. A lot of attention paid to valuing people." -- Josh Creek
- Short and focused chapters make it easy to pick up and read a little bit at a time.
- Read. Good book. To re-read.
- [http://en.wikipedia.org/wiki/The_Mythical_Man-Month w] The Mythical Man-Month
- Fred Brooks
- Already read?
- The Deadline; "A Novel About Project Management"
- Tom DeMarco
- Already read?
- Rework
- Short and focused chapters make it easy to pick up and read a little bit at a time.
- Absolute Java
- "... I still think its a great starter book, it helped me understand things like arrays and memory, and really grounded a lot of concepts for me." -- Josh Creek
- Talion: Revenant
- Stroustrup's book on language creation.
- The Practice of Programming
- Kernighan and Pike
- Coders at Work
- Peter Siebel
- How To Design Programs
- http://www.htdp.org/
- [4] How to Think Like a Computer Scientist
- Code Complete
- Working Effectively with Legacy Code
- Micheal Feather
- Object Oriented Software Construction
- Bertrand Meyer
- http://docs.eiffel.com/book/method/object-oriented-software-construction-2nd-edition
- Object Oriented Analysis and Design
- Booch et al
- not recommended. Try Bertrand Meyer. Or perhaps Rebecca Wirfs-Brock [TODO: Research].
- Mastering Regular Expressions
- Jeffrey E.F. Friedl
- http://oreilly.com/catalog/9780596528126/
- Clean Code
- Robert C. Martin
- Smalltalk/V DOS
- Digitalk
- The Logic Book
- Merrie Bergmann, James Moor, Jack Nelson
- 007353563X
- 978-0073535630
- Or any tolerable book on symbolic logic. This was already on the plan, but I ought to begin a reading list. There are some nice videos on logic on youtube. Begin there.
- Learning Perl
- the llama book
- Intermediate Perl
- the alpaca book, originally called Perl Objects, References, and Modules
- Seven Languages in Seven Weeks
- The School of Niklaus Wirth: The Art of Simplicity
- .. Hmm, this rings a bell.
- Compiler Construction
- Wirth
- Effective TCP/IP Programming: 44 Tips to Improve Your Network Programs
- The Annotated C++ Reference Manual
- first and last good book on C++, besides meyers [TODO: Research what that one is]
- This could be referring to w] [http://www.aristeia.com/books.html Scott Meyers. See http://scottmeyers-ebooks.com/
- first and last good book on C++, besides meyers [TODO: Research what that one is]
- The Little Schemer
- The Seasoned Schemer
- Reasoned Schemer
- Performance and Evaluation of LISP Systems
- LISP 1.5 Programmer's Manual
- Lisp in Small Pieces
- Bugs in Writing (best English book ever)
- Smalltalk-80: The Language and its Implementation
- Smalltalk With Style
- The Design and Evaluation of a High Performance Smalltalk System
- SOAR - "best fucking book on objective profiling and optimization ever written" -- Ryan Davis
- Lions' Commentary on Unix
- A Pattern Language: Towns, Buildings, Construction
- The Timeless Way of Building
- More Programming Pearls: Confessions of a Coder
- Programming Pearls
- ACM Press
- Writing Efficient Programs
- Prentice-Hall Software Series
- Working Effectively with Legacy Code
- The Pragmatic Programmer: From Journeyman to Master
- Writing Solid Code: Microsoft's Techniques for Developing Bug-Free C Programs
- Code Complete
- Secrets of Consulting: A Guide to Giving and Getting Advice Successfully
- More Secrets of Consulting: The Consultant's Tool Kit
- Thinking Forth
- How to Write Parallel Programs: A First Course
- Building Better Applications: A Theory of Efficient Software Development
- Tao of Objects: A Beginner's Guide to Object-Oriented Programming
- The Design and Construction of Compilers
- Robin Hunter, John Wiley & Sons, 1984
- Dragon Book, Principles of Compiler Design
- by Alfred V. Aho and Jeffrey D. Ullman...1977
- re. compilers.
- Dragon Book, Principles of Compiler Design
- Aho & Ullman
- This is a much fatter revision which supercedes the above version. The above book is still valuable though.
- Programming Language Pragmatics
- Michael Scott
- UML Distilled
- by Martin
- [http://en.wikipedia.org/wiki/Bjarne_Stroustrup w] Bjarne Stroustrup's books
- C++ Template Metaprogramming
- Abrahams and Gurtovoy.
- Metaprogramming Ruby