I started my first proper software development job at nearly 2 years ago now and I have done one thing more than anything else:
READ.
I’ve read books on development, code, business, agile, psychology and just being a better person. Some of the books were useless. Some were excellent and some I wish I had read while I was at university. Here’s a list of the books I’ve read in the last 2 years on relevant subjects with a few words on the ones that stood out.
Cryptography – A very short introduction. – A really really short introduction to how cryptography works. Loads of tech every day uses cryptography and most developers just take its functionality for granted. Knowing, even just a little bit, about the theory can set you apart.
The iPhone App Design Manual: Create Perfect Designs for Effortless Coding and App Store Success
Remote: Office Not Required – A relatively new book from the makers of Basecamp. If you’re not familiar with them, their founder created the Ruby on Rails framework and their books are excellent. This book is about how software companies can work effectively even if they’re distributed around the globe.
Programming in Go: Creating Applications for the 21st Century
The Ruby Programming Language – A must-read for all Ruby developers. It goes in to the detail of how Ruby works under the hood and shows some lesser-known tricks.
Team Geek: A Software Developer’s Guide to Working Well with Others
The Passionate Programmer: Creating a Remarkable Career in Software Development
ReWork: Change the Way You Work Forever – I hate this book. But only because it’s so wonderful and I’m jealous of the people who wrote it. This is the book for small software development companies. It cuts through all the crap so often found in software development companies. Meetings are toxic. ASAP is poison. Underdo the competition. Planning is guessing. If you read only one book on this list, make it this.
The Elements of Scrum – You won’t learn this stuff at uni, but you should really know it. Scrum is a method of developing software as a team and loads of development teams use it. Learn the rules. This book is a really quick read which goes over what is expected of team members.
Ruby on Rails 3 Tutorial: Learn Rails by Example (Addison-Wesley Professional Ruby Series)
Core Data for iOS: Developing Data-Driven Applications for the iPad, iPhone, and iPod touch
Letting Everything Become Your Teacher: 100 Lessons in Mindfulness
Deal With It: Attitude for Coders – Written by Gavin Davies (@gavd_uk), this book is a must-read for any developer, new or old. It’s made up of lots of single page ideas, each one backed up by personal experience that makes it super-readable and really fun to read.
Ruby on Rails Tutorial – This is the tutorial for all new Rails developers.
I’ll be adding to this list over the next few days. Let me know which books you’ve found most useful in the comments.