New books!
3months has recently refreshed its library, getting rid of some (really) old books and buying a bunch of new ones. When we need books about specific technologies, we prefer to buy an eBook for the office kindle. Some books, though, deserve to be owned in physical form.
If you are going to buy a dead-wood version of a book, you really do want it to be a long-term investment. No cutting-edge technology books, no mediocre or unproven books, if you can help it. To that end, we ordered the following:
The Elements of Style - Strunk & White
Our jobs involve a lot of written communication. S&W is considered one of the best guides to writing well.
Design Patterns: Elements of Reusable Object-Oriented Software - Gamma, Helm, Johnson, Vlissides
One of the standard books. Everyone knows they should have read it, few have. It can be a dry read, but the material is worth the investment. There has been a lot of competition in the office for this book!
Practical Object-Oriented Design in Ruby: An Agile Primer - Sandi Metz
This book is deceptively slim and basic, but the core concepts it imparts about OO design are great. Another book in high demand around here.
Working Effectively with Legacy Code - Michael Feathers
I've being going through this book and I've found it packed with practical, pragmatic advice for dealing with the horror of untested, hard-to-maintain code. I highly recommend this book.
Code Complete: A Practical Handbook of Software Construction - Steve McConnell
The heaviest of our books, Code Complete covers an enormous range of topics and comes highly recommended. No-one has yet been brave enough to crack it open, but we'll get there.
Growing Object-Oriented Software, Guided by Tests - Steve Freeman
Covers TDD and emergent OO design in a practical way. Another book that hasn't yet had too many hands on it, but that's bound to change soon!
3months already has a decent library of real and electronic books, but I'm quite pleased that we've added this set. One of the hardest things to pick up is the craft of programming, and a well-written book will add a lot of tools to a developer's toolbox.
We've already started compiling a list for the next refresh. Let us know if you have any recommendations!
- Daniel Zollinger








