If I buy one Ruby book



What would you recommend?

I really like the books: The Go Programming Language¹ and the older, The C Programming Language². So I’m looking for something in that style. Clear, full of examples and covering most of the core and standard library. Something that would make for both good reading and a good reference to hang on to.



“Why’s (Poignant) Guide to Ruby”, I don’t know why (pun intended) but this book is the stuff of legends


Practical Object-Oriented Design in Ruby: An Agile Primer is probably a contender. That said, I’m interested in @chelseatroy’s opinion.


Oo ya, I saw the newer edition is available for pre order. It looks good. I might have to make a poll to help decide :blush:


+1 to Practical Object-Oriented Design in Ruby: An Agile Primer, affectionally referred to as POODR, or really anything else by Sandi Metz. This book definitely contains a lot of best practices for OOP in Ruby :slight_smile:



I second Alison’s suggestion: Sandi Metz’s writing is excellent, and POODR has a deserved reputation as an excellent book :).

If you’re looking to build a whole web app in Ruby, I’m a fan of the Agile Web Development with Rails books. Here’s the one for Rails 5.

I also recommend Confident Ruby by Avdi Grimm. This book will start from the assumption that you know some Ruby already, so it doesn’t speak directly to your request for a primer in all the core and standard library syntax, but I’ve consulted this book for intermediate Ruby syntax as well as for intra-class architectural decisions on Ruby, Python, and Swift projects. Here is a sample of that book.


Confident Ruby looks really good, now I want to write a text adventure game :nerd_face:

I can’t decide which to start with now. I’m currently running through the Ruby on rails learning pathway on Lynda. I’m almost done the ‘essential’ course so by the time I buy a new book I’ll probably have the basics of Ruby figured out.

I think POODR or Confident Ruby might be a good first one. I should checkout what the library has.


If it is literally only one book then I would go for The well-grounded Rubyist by David A. Black as a general purpose book on Ruby. There’s lots of code samples and good coverage of the language.

If you are prepared to have a few books thn…
Eloquent Ruby by Russ Olsen is great for delving into more common uses of ruby “in the wild”.

Why’s Poignant Guide is nice. It is a classic and its quirky style sort of embeds some of the syntax and conventions a little more easily than something more dry. It’s also free to read so it is a nice book if you are getting your feet wet and not ready to invest in your own personal library yet.

I see POODR more as a adjunct to other books on ruby. It’s great for applying OO principles to the specific design of ruby as a language and I think an essential read once you have a little ruby under your belt, but I don’t think it aims to teach ruby per se.


I love most of these suggestions, but I have to second POODIR most of all because it changed my (development) life. I just reread the original question, and I do have to clarify that it doesn’t go over all the standard library (not nearly that expansive). But it is a fantastic book.


I’m starting to get lots of exposure to the standard library stuff through this online course I’m taking. So maybe POODIR is a good choice.


I really got a lot out of the well grounded rubist


Which course is that?



From the pathway:


I would recommend The Ruby Way by Hal Fulton. It’s a very practical book that will teach you all you really need to know to be an effective Rubyist.


I came here to say this, too. I haven’t done Ruby in a while, but I really liked The Ruby Way back then. Looks like it got an update back in 2015.


I would recommend any of the Addison Wesley books. +1 for POODR followed by Design Patterns in Ruby for dessert. POODR is also a fantastic introduction to OOP.


This is probably the best OOP book. It may not be the one Ruby book that you are looking for, but this may be the second one.

There is one way in which this book is like “The C Programming Language.” In the C Programming Language the authors showed the different strengths of C through examples and exercises. POODR focuses on Ruby’s biggest strength, which is its OOP support. And just like many of the concepts for K&R helps you for the rest of your career, so does POODR.