I’ve been developing Ruby for years. I’ve read a lot of books on the topic. These are my Top 10 favorites. They’re ranked in the order you should read them.
- Agile Web Development with Rails — Learning Rails is a great introduction to the Ruby programming language. Ruby is much bigger than Rails, but starting with this book gives you instant gratification. You make a real website in the first chapter!
- Programming Ruby — This is affectionately called “the pickaxe book” by Ruby developers. It’s an in depth introduction to the Ruby programming language.
- Eloquent Ruby — Russ Olsen is my favorite writer about Ruby. This book is amazing at capturing the idiomatic style Ruby developers write in. Great real-world advice.
- The RSpec Book — The best introduction to testing for a Ruby developer.
- The Ruby Way — This is a GIANT cookbook that takes you through solving over 400 problems in “The Ruby Way”.
- Practical Object-Oriented Design in Ruby — This fantastic book is an introduction to object-oriented design in Ruby. One of my favorites.
- Design Patterns in Ruby — Learning design patterns gives you a language through which to communicate complicated design decisions to other developers.
- Refactoring: Ruby Edition — Martin Fowler’s classic on refactoring adapted for Ruby. Fowler considers this to be the true 2nd edition to “Refactoring”.
- Metaprogramming Ruby — Learning how to metaprogram will teach you how Ruby works as a language. You’ll learn about the object model and other Ruby internal concepts.
- Exceptional Ruby — Yeah, this book is just about exceptions. Turns out, that’s a pretty important part of programming that few programming books have the space to capture. Writing real-world resilient code is about managing failure.