Chris’s Reading List
C
- C Programming Language (2nd Edition) by Brian W. Kernighan and Dennis M. Ritchie
- Java Programming Language, The (4th Edition) by Ken Arnold, James Gosling and David Holmes
- Thinking in Java (4th Edition) by Bruce Eckel
- Advanced Effective Java (2nd Edition) by Joshua Bloch
- Advanced Java Concurrency in Practice by Brian Goetz, Tim Peierls, Joshua Bloch and Joseph Bowbeer
- Learn to Program, Second Edition (The Facets of Ruby Series) by Chris Pine
- Programming Ruby 1.9: The Pragmatic Programmers’ Guide (Facets of Ruby) by Dave Thomas, Chad Fowler and Andy Hunt
- Algorithms in Java, Parts 1-4 (3rd Edition) (Pts.1-4) by Robert Sedgewick
- Test Driven Development: By Example by Kent Beck
- Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides
- Refactoring: Improving the Design of Existing Code by Martin Fowler, Kent Beck, John Brant and William Opdyke
- Refactoring to Patterns by Joshua Kerievsky
- Patterns of Enterprise Application Architecture by Martin Fowler
- Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions by Gregor Hohpe and Bobby Woolf
- Agile Web Development with Rails (Pragmatic Programmers) by Sam Ruby, Dave Thomas and David Heinemeier Hansson
- Advanced Restful Web Services by Leonard Richardson, Sam Ruby and David Heinemeier Hansson
- Extreme Programming Explained: Embrace Change (2nd Edition) by Kent Beck and Cynthia Andres
- Agile Software Development with Scrum (Series in Agile Software Development) by Ken
- Schwaber and Mike Beedle
- Joe Celko’s SQL for Smarties, Fourth Edition: Advanced SQL Programming (The Morgan Kaufmann Series in Data Management Systems) by Joe Celko
- Rework by Jason Fried and David Heinemeier Hansson
- Getting Real: The smarter, faster, easier way to build a successful web application by Jason Fried, Heinemeier David Hansson and Matthew Linderman
- Pragmatic Unit Testing in Java with JUnit by Andy Hunt and Dave Thomas
- Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps by Mike Clark
- Pragmatic Version Control Using Git (Pragmatic Starter Kit) by Travis Swicegood
- The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas