Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
A list of books for learning and expanding on your Ruby knowledge.

Ruby Book List

Learning Ruby

You're taking your first steps into Ruby

The Well Grounded Rubyist

A good introduction to programming in general. Easy on newer programmers.

Eloquent Ruby

A good introduction to Ruby and its' style. Slightly more in depth than the Well Grounded Rubyist as far as language tricks.

Programming Ruby

The pickaxe book, written by some of the best in the industry and often mentioned as the de-facto starting point

An Illustrated Guide to Ruby

An illustrated guide to Ruby written by yours truly. Currently a work in progress, but aims to teach Ruby to complete beginners using pictures of Lemurs and various programming concepts.

Intermediate Ruby

You've got the basics, now it's time to refine them a bit and get your references


Practical Object Oriented Design in Ruby covers how OO should work in Ruby and helps you on your way to leveraging that power.

Design Patterns in Ruby

The GoF book comes to Ruby. Be forewarned that you should read POODR first and take some of these patterns with a heavy grain of salt.

Confident Ruby

Learn how to write Ruby confidently, avoiding patch hacks and ugly kludgery.

Exceptional Ruby

Making code work is one thing, making it behave itself with failure? Learn about Ruby exceptions and their power.

Doing things with Ruby

So you've learned Ruby, now what?

Wicked Cool Ruby Scripts

Get a feel for some more practical Ruby usage

Advanced Ruby

Using the advanced features of the language or just outright difficult concepts.

Metaprogramming Ruby

Want to learn some black magic in Ruby? All of that meta-goodness that you've heard about explained in depth.

Understanding Computation

Learn the foundations of Computer Science in Ruby.

Ruby Under a Microscope

Take a look at what makes Ruby tick, all the way down to its' compilation.

Kestrels, Quirky Birds, and Hopeless Egocentricity

If you thought that Metaprogramming Ruby was trippy, stay away. This book covers functional combinators in depth in Ruby and gives you a view of what lambdas can really do. Not for the faint of heart, this book has some incredible ideas and writing.



One of the most popular testing frameworks in Ruby

[OLD] The RSPEC Book

The traditional standard in RSPEC, and for good reason.

Effective Testing with RSpec

Written by one of the writers of RSpec and probably the best book on testing out on the market currently.


Minitest is a lightweight alternative to RSpec

The Minitest Cookbook

A detailed guide on getting started with and using Minitest effectively


This comment has been minimized.

Copy link

@mgiagante mgiagante commented Mar 4, 2018

I'd like to suggest adding a Minitest section with this link in it:

The Minitest Cookbook

Chris' book is an in-depth guide to MiniTest, which is currently the baked-in testing framework for Rails. It's a smaller and faster testing framework which can do all basic things RSpec can do (including the spec style approach for tests) without any extra functionality you might not use.


This comment has been minimized.

Copy link
Owner Author

@baweaver baweaver commented Apr 21, 2018

@mgiagante - Added, asked Chris on Twitter for ideas on a description for it.

Side note: Need to go through and tag more books and update the list a bit. Suggestions are always welcome! I try and circle back once every few months, but tag me @keystonelemur on Twitter if I don't


This comment has been minimized.

Copy link

@ttilberg ttilberg commented Jan 24, 2019

I found the combination of the following two books to be incredibly practical and helpful at work:

Ruby is very powerful at text manipulation, and I feel like these two books work great together to help zip you along in creating practical scripts to get stuff done. Specifically, Text Processing in Ruby taught me how to leverage powerful one liners in between other bash commands using the ruby -ne flags, and Build CL Apps showed how incredibly easy it is to create potent cli apps in a language I'm already proficient in. My favorite of which was combining the slack notifier gem into a general slack push notification mechanism: ./run_long_thing && slack_notify "That thing is done!".


This comment has been minimized.

Copy link

@tonidezman tonidezman commented Apr 16, 2019

Hi Brandon.

I have one book suggestion. For a complete beginner to programming we could add Learn to Program. I have read this book 4 times when I was starting out. I have similar opinions as the reviews on goodreads.

Thanks for sharing this and thanks for writing a ruby book. I have read some of the books listed here but not all. I intend to do just that this year.


This comment has been minimized.

Copy link

@sergioro9 sergioro9 commented Mar 29, 2020

I'd suggest linking the books to their publishers websites, not amazon. See

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.