A student asked for a list of the best books on Ruby (other than the ones that are required for the course); now that the dust has settled on getting through one version of Ruby, it’s time to provide the list.
During our study of Rails I’ll provide a similar list. (For our study of Ruby, I think it’s best to have “one version of the truth” in the form of the Pickaxe; for Rails, you will likely appreciate other voices, so I will provide that list sooner rather than later.)
I’ll give a link to Amazon as well as a link to Harvard’s Safari subscription (when available).
Flanagan and Matsumoto, The Ruby Programming Language (Amazon; Safari; also, only $10 for the PDF through O’Reilly). This book focuses on the language definition and details. It is loaded with interesting examples. The only thing it lacks is a broad tutorial chapter; you pretty much have to know at least one language already to know what to look for in the organization. (There is an introductory bit showing some of Ruby’s benefits, but it’s playing to the choir.) The index occasionally leaves something to be desired (for example, the book has occasional intelligent thinks to say about Java vs. Ruby, but there is only one entry under Java in the index).
David A. Black, The Well-Grounded Rubyist (Amazon; Safari). This is the best “second” book on Ruby, to be read after Programming Ruby or The Ruby Programming Language. It helps you understand how Rubyists think, and is a joy to read.
Peter Cooper, Beginning Ruby (2d ed.; Amazon). A great alternative to the Pickaxe. In a lot of ways, this is more straightforward than the Pickaxe, and a bit more “real-world” in terms of its examples.
Hal Fulton, The Ruby Way (2d ed.; Amazon; Safari). This book is about Ruby, but is also a cookbook for Ruby strategies to accomplish basic and not-so-basic tasks. One of the best parts is section 1.5.4 “Rubyisms and Idioms.” This book is worth reading annually for experienced Rubyists.
Carlson and Richardson, Ruby Cookbook (Amazon; Safari). A classic O’Reilly collection of techniques, pointers, strategies, advice. I don’t use this much anymore, but when I first acquired it, I found much of great interest.
Brad Ediger, Advanced Rails (Amazon; Safari). While a Rails book, Chapters 1, “Foundational Techniques,” has one of the best sections on how Ruby classes, modules, and eigenclasses really work. Chapter 2 has wonderful brief essays called “Ruby You May Have Missed” and “How to Read Code.” Good stuff.