Practices of an Agile Developer


 
This is one book that I think any developer working on a team should read. Scratch that, this is one book that any developer should read, whether working on a team or not. Software is a process that not always is defined from stage one. In fact, unless you're working on a very small project, 90% of the requirements change over time. Any new change effects many factors, from the introduction of new bugs, to team members getting frustrated. However, this is part of the game, and the sooner you accept it, the easier it will become. This book is very good at explaining these aspects and presenting them in an easy to understand manner. It outlines a series of practices with little annotations of what should not be done (although many times we do or are tempted to do), what steps should be taken and how we should feel about it while and after performing these actions.