Mentoring - Reading List
Since outlining a brief list of online technical resources for my rookie coder, I thought it'd be a good idea to also supply a brief reading list of technical books that could have a place on any programmers shelf. For this list, I wanted to focus on books that provide transferable skills - suggestions of different techniques and ways of thinking than someone might otherwise be exposed to. This knowledge can be able leveraged regardless of specific technologies or platforms.
Here's the list:
Here's the list:
- Core J2EE Patterns – I have an earlier version of this book and it’s a solid J2EE reference. The real benefit in this book is the set of J2EE architectural patterns (which builds on the Gang of Four [GoF] core patterns) and would also apply to server side development in .Net. Some of the info on JSP or EJB may be a little dated with recent additions to the Java language, but still a great reference. Patterns of Enterprise Application Architecture is another great book with a similar theme.
- Ruby Pickaxe Book (called so because of the image on the cover). I own the previous version of this other book about Rails and written by the same guys. The first book will teach you Ruby, and the second will teach you the Rails framework. I find Ruby and Rails a joy to work in. My only complaint is that I haven’t gotten to use them more. I was pleasantly surprised how much more I could get done with this simple language and framework. At a minimum it’s a great tool for prototyping and learning language features like dynamic programming, active record, closures, and convention over configuration. Knowing these concepts will help to become a better programmer in any language.
- Code Complete. I just started reading this myself and like it so far. It’s highly recommended by the people I respect in the industry, which is why I gave it a shot. Of all of the books here, this may be the best fit for a new programming professional. It provides the foundational knowledge and best practices to create solid software.
- RESTful Web Services – this book changed the way I approach web service development. I think it’s a much better way to build services than the traditional WSDL approach. It's simpler and it reduces a lot of the overhead needed in the traditional approach.
- SQL Tuning – a fantastic book on SQL tuning. This book was indispensable for me when I needed to refactor a database and some queries for a web application I was working on. I highly recommend although it might not apply directly to anything a new programmer might immediately work on. Still, a great book and I’d definitely put it on my reading list for the future.
- Pragmatic Programmer. From the same guys who wrote the Ruby books. This is another book, like Code Complete, teaching principles to write better software. Also like Code Complete, it’s another great reference for someone new to the field.
- I also really like Refactoring and Lean Software Development, but I recommend putting these on the “To Read” list until after reading some of the other titles and new programmers gain a little more experience. I actually think the topics in these two books might be some of the most valuable in the long run, but the foundation of the other books (and some experience) is needed to get the full value out of these.
Comments