Skip to content

Instantly share code, notes, and snippets.

@baweaver
Last active November 8, 2024 07:31
Show Gist options
  • Save baweaver/57a7c8296ca2c03effbd8fac1e7f6b40 to your computer and use it in GitHub Desktop.
Save baweaver/57a7c8296ca2c03effbd8fac1e7f6b40 to your computer and use it in GitHub Desktop.
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

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

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

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 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.

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.

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

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?

Get a feel for some more practical Ruby usage

Advanced Ruby

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

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

Learn the foundations of Computer Science in Ruby.

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

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.

Testing

RSpec

One of the most popular testing frameworks in Ruby

The traditional standard in RSPEC, and for good reason.

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

Minitest

Minitest is a lightweight alternative to RSpec

A detailed guide on getting started with and using Minitest effectively

@mgiagante
Copy link

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.

@baweaver
Copy link
Author

@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

@ttilberg
Copy link

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!".

@tonidezman
Copy link

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.

@finistratbob
Copy link

finistratbob commented May 20, 2021

Thank you, I liked this book because the author talks about practical points.

@moiz-frost
Copy link

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!".

Interesting. Can you mention some text heavy project?

@ixti
Copy link

ixti commented Jul 1, 2022

Recently, I've found a book on Ruby for beginners (haven't read it yet, but was thinking to use it to teach my kid Ruby): https://i-love-ruby.gitlab.io/

@isunilk
Copy link

isunilk commented Oct 20, 2023

Find more ruby book list here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment