Bookshelf(updated)

Here is my current programming bookshelf, last updated 11/14/2010.

General Development Related:
  • The Pragmatic Programmer, by Andrew Hunt and David Thomas
  • Practices of an Agile Developer, by Venkat Subramaniam and Andy Hunt
  • Peopleware, Second Edition, by Tom DeMarco and Timothy Lister
  • The Mythical Man Month, by Frederick P. Brooks
  • Design Patterns, by Erich Gamma, Richard Helmr, Ralph Johnson, John M. Vlissides
  • Introduction to the Design & Analysis of Algorithms, by Anany V. Levitin 
  • Programming Pearls (Second Edition), by Jon Bentley
  • Ship It!, by Jared Richardson, Will Gwaltney, Jr
  • Release It!, by Michael T. Nygard
  • Pragmatic Version Control using Subversion (2nd edition), by Mike Mason 
  • The Design of Design: Essays from a Computer Scientist, by Frederick P. Brooks  
  • Test-Driven Development: By Example, by Kent Beck
  • Extreme Programming Explained: Embrace Change (2nd Edition), by Kent Beck with Cynthia Andres
  • Dreaming in Code, by Scott Rosenberg 
  • Joel on Software, by Joel Spolsky
  • The Best Software Writing I: Selected and Introduced by Joel Spolsky
  • Code Complete (Second Edition), by Steven McConnell
  • Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Applications
    by Mike Clark
  • Death March (2nd Edition), by Edward Yourdon 
  • Coding Slave, by Bob Reselman

General / Career / Learning:
  • Smart and Gets Things Done: Joel Spolsky's Concise Guide to Finding the Best Technical Talent, by Joel Spolsky
  • Pragmatic Thinking and Learning: Refactor Your Wetware, by Andy Hunt
  • Career 2.0, by Jared Richardson
  • Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages, by Bruce A. Tate
Language Specific:
  • C++
    • C/C++ Programmer's Reference, by Herbert Schildt
    • Effective C++ (3rd Edition), by Scott Meyers
  • C#
    • C# in Depth (2nd Edition), by Jon Skeet 
  • Java
    • Effective Java (2nd Edition), by Joshua Bloch
    • Java Concurrency in Practice, by Brian Goetz, with Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, and Doug Lea
    • Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java Applications, by Chet Haase and Romain Guy
    • Java Puzzlers: Traps, Pitfalls, and Corner Cases, by Joshua Bloch and Neal Gafter
    • Pragmatic Unit Testing in Java with JUnit, by Andy Hunt and Dave Thomas
  • Ruby
    • Programming Ruby (Third Edition) - by Dave Thomas, with Chad Fowler and Andy Hunt
    •   Agile Web Development with Rails, by Dave Thomas and David Heinemeier Hansson with Leon Breedt, Mike Clark, Thomas Fuchs, and Andreas Schwarz
  • Javascript
    • Javascript: The Good Parts, by Douglas Crockford
    • JavaScript: The Definitive Guide, by David Flanagan 
  • Other
    • The Little Schemer, by Daniel P. Friedman and Matthias Felleisen 
    • Programming Erlang, by Joe Armstrong
Web Development:
  • Designing With Web Standards, by Jeffrey Zeldman
  • The Zen of CSS Design: Visual Enlightenment for the Web, by Dave Shea and Molly E. Holzschlag
  • Cascading Style Sheets 2.0 Programmer's Reference, by Eric A. Meyer