<p>If you could go back in time and tell yourself to read a specific book at the beginning of your career as a developer, which book would it be?</p>

<p>I expect this list to be varied and to cover a wide range of things.</p>

<p><strong>To search:</strong> Use the search box in the upper-right corner. To search the answers of the current question, use <code>inquestion:this</code>.  For example:</p>

<pre><code>inquestion:this "Code Complete"
</code></pre>

Code Complete
(2nd edition) by Steve McConnell
The Pragmatic Programmer
Structure and Interpretation of Computer Programs
The C Programming Language
by Kernighan and Ritchie
Introduction to Algorithms
by Cormen, Leiserson, Rivest & Stein
Design Patterns
by the Gang of Four
Refactoring: Improving the Design of Existing Code
The Mythical Man Month
The Art of Computer Programming
by Donald Knuth
Compilers: Principles, Techniques and Tools
by Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman
Gödel, Escher, Bach
by Douglas Hofstadter
Clean Code: A Handbook of Agile Software Craftsmanship
by Robert C. Martin
Effective C++
More Effective C++
CODE
by Charles Petzold
Programming Pearls
by Jon Bentley
Working Effectively with Legacy Code
by Michael C. Feathers
Peopleware
by Demarco and Lister
Coders at Work
by Peter Seibel
Surely You're Joking, Mr. Feynman!
Effective Java
2nd edition
Patterns of Enterprise Application Architecture
by Martin Fowler
The Little Schemer
The Seasoned Schemer
Why's (Poignant) Guide to Ruby
The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity
The Art of Unix Programming
Test-Driven Development: By Example
by Kent Beck
Practices of an Agile Developer
Don't Make Me Think
Agile Software Development, Principles, Patterns, and Practices
by Robert C. Martin
Domain Driven Designs
by Eric Evans
The Design of Everyday Things
by Donald Norman
Modern C++ Design
by Andrei Alexandrescu
Best Software Writing I
by Joel Spolsky
The Practice of Programming
by Kernighan and Pike
Pragmatic Thinking and Learning: Refactor Your Wetware
by Andy Hunt
Software Estimation: Demystifying the Black Art
by Steve McConnel
The Passionate Programmer (My Job Went To India)
by Chad Fowler
Hackers: Heroes of the Computer Revolution
Algorithms + Data Structures = Programs
Writing Solid Code
JavaScript - The Good Parts
Getting Real
by 37 Signals
Foundations of Programming
by Karl Seguin
Computer Graphics: Principles and Practice in C
(2nd Edition)
Thinking in Java
by Bruce Eckel
The Elements of Computing Systems
Refactoring to Patterns
by Joshua Kerievsky
Modern Operating Systems
by Andrew S. Tanenbaum
The Annotated Turing
Things That Make Us Smart
by Donald Norman
The Timeless Way of Building
by Christopher Alexander
The Deadline: A Novel About Project Management
by Tom DeMarco
The C++ Programming Language (3rd edition)
by Stroustrup
Patterns of Enterprise Application Architecture
Computer Systems - A Programmer's Perspective
Agile Principles, Patterns, and Practices in C#
by Robert C. Martin
Growing Object-Oriented Software, Guided
by Tests
Framework Design Guidelines
by Brad Abrams
Object Thinking
by Dr. David West
Advanced Programming in the UNIX Environment
by W. Richard Stevens
Hackers and Painters: Big Ideas from the Computer Age
The Soul of a New Machine
by Tracy Kidder
CLR via C#
by Jeffrey Richter
The Timeless Way of Building
by Christopher Alexander
Design Patterns in C#
by Steve Metsker
Alice in Wonderland
by Lewis Carol
Zen and the Art of Motorcycle Maintenance
by Robert M. Pirsig
About Face - The Essentials of Interaction Design
Here Comes Everybody: The Power of Organizing Without Organizations
by Clay Shirky
The Tao of Programming
Computational Beauty of Nature
Writing Solid Code
by Steve Maguire
Philip and Alex's Guide to Web Publishing
Object-Oriented Analysis and Design with Applications
by Grady Booch
Effective Java
by Joshua Bloch
Computability
by N. J. Cutland
Masterminds of Programming
The Tao Te Ching
The Productive Programmer
The Art of Deception
by Kevin Mitnick
The Career Programmer: Guerilla Tactics for an Imperfect World
by Christopher Duncan
Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp
Masters of Doom
Pragmatic Unit Testing in C# with NUnit
by Andy Hunt and Dave Thomas with Matt Hargett
How To Solve It
by George Polya
The Alchemist
by Paulo Coelho
Smalltalk-80: The Language and its Implementation
Writing Secure Code
(2nd Edition) by Michael Howard
Introduction to Functional Programming
by Philip Wadler and Richard Bird
No Bugs!
by David Thielen
Rework
by Jason Freid and DHH
JUnit in Action