Over the past year I’ve read my way through a good number of books, both of the printed and online variety, devoted to Ruby and Rails programming, some of which I have also reviewed. The quality has been, to say the least, variable. However, there is now a small number of titles which I’d rate highly and a slightly larger number which I’d say are at least worth a look. To help save you some time (and money) here are a few of my recommendations. In the list below, when I have reviewed a book at greater length, I’ve included a link to my review; otherwise the link goes to the publisher’s web site.
Beginning Ruby: From Novice To Professional
by Peter Cooper $39.99
The book is well written, nicely laid out, the explanations are clear and the code examples are useful. In short, if you already have some programming experience and want an accessible introduction to the world of Ruby, this is the book to get.
http://www.bitwisemag.com/2/Beginning-Ruby-From-Novice-To
Programming Ruby: The Pragmatic Programmer’s Guide
by Dave Thomas, with Chad Fowler and Andy Hunt $44.95
http://www.pragmaticprogrammer.com/titles/ruby/index.html
A vast (more than 860 pages) guide to the Ruby language and libraries, the so-called ‘pickaxe book’ is generally considered to be an essential Ruby reference. Not a light read, though, and not (in my view) the best ‘first book’ on Ruby. All the same, you will need it sooner or later.
The Ruby Way
by Hal Fulton $39.99
http://www.bitwisemag.com/2/The-Ruby-Way
In the introductory section, the author states that, due to its relative lack of ‘tutorial’ material, “You probably won’t learn Ruby from this book.” He describes it more as a “sort of ‘inverted reference’. Rather than looking up the name of a method or a class, you will look things up by function or purpose.” Personally, I think he greatly underestimates the tutorial value of The Ruby Way. As long as you are reasonably adept at programming in some other language, you should have no difficulty in picking up Ruby using this book as your sole reference.
Ruby On Rails Up and Running
by Bruce A. Tate & Curt Hibbs $29.99
http://www.bitwisemag.com/2/Ruby-On-Rails-Up-and-Running
I prefer programming books to get right down to business without too much in the way of waffle. I frankly don’t have the patience to wade through 1000+ page tomes or follow step-by-step guides to building monolithic applications. So this book appeals to me. In just seven chapters, it covers all the really important stuff about Rails – its design patterns and classes; its scripts and application-generation tools; its Models, Views, Controllers and Scaffolding; plus an overview of using Ajax and Unit Testing.
Ruby For Rails
by David A. Black $44.95
http://www.bitwisemag.com/2/Ruby-For-Rails
While this book concentrates on Rails development, at every step of the way it delves into the inner workings of the underlying Ruby code. In seventeen chapters and just under 500 pages, it takes you from a first look at the Ruby language through to the specifics of creating Rails models, controllers, views, helpers and templates. Along the way it explains a great deal about Ruby including its arrays and hashes, classes, methods, blocks and iterators. In short, if you are new to Ruby but want to get up to speed on Rails as rapidly as possible, this book could be what you are looking for.
Agile Web Development With Rails
by Dave Thomas and David Heinemeier Hansson $39.95
http://www.pragmaticprogrammer.com/titles/rails2/index.html
This is the ‘must have’ book on Rails. There are several Ruby programming books which might compete for the claim to being ‘essential’, but I know of no other Rails book that comes anywhere close to rivalling Agile Web Development for its comprehensive coverage of its subject. ‘Nuff said: if you are serious about Ruby On Rails, buy this book!
Other Ruby and Rails Books...
Rails Recipes
by Chad Fowler $32.95
http://www.bitwisemag.com/2/Rails-Recipes
The book is divided into seven themed chapters – User Interface Recipes, Database Recipes, Controller Recipes, Testing Recipes, Big-Picture Recipes and Email Recipes. But if this is really a book of ‘recipes’, then it is aimed at the experienced cook rather than the novice. It won’t tell you how to do the Rails equivalent of whisk an egg or bake a potato. If schemas, controllers, scripts, plugins and views mean little or nothing to you, this book will do little to shed light into the darkness. But if you are already at the stage of developing Rails apps of moderate complexity, the recipes in this book may inspire you with new ideas and time-saving solutions.
Rails Solutions: Ruby On Rails Made Easy
by Justin Williams $34.99
http://www.bitwisemag.com/2/Rails-Solutions-Ruby-On-Rails-Made
This blurb boldly claims that “no programming knowledge” is required to learn to use Ruby On Rails with this book. Suffice to say, I am not convinced. In my view, this would be a fine book for someone with previous experience in programming Ruby, or another object oriented language, who wants a fairly quick-and-easy way into Rails (though it is not as good, in my opinion, as O’Reilly’s Ruby On Rails Up and Running). Targeting non-programming web designers, however, is wilfully misguided.
Learn To Program
by Chris Pine $19.95
http://www.bitwisemag.com/copy/reviews/books/learn_to_program_with_ruby.html
Chris Pine’s Learn To Program is a book that lives up to the promise of the title. Aimed at the complete programming novice, it guides the reader through the perils, pitfalls and (with a bit of luck) pleasures of programming with Ruby. Over fifteen chapters, the reader is shown how to write methods, iterate over the items in an array, create simple class hierarchies, save and load files and even gets to grips with Ruby’s blocks and Procs (‘nameless functions’) which can be pretty tricky to explain even to an experienced programmer!
Free Books Online
Learn To Program
http://pine.fm/LearnToProgram/
The first edition of Chris Pine’s book (see above).
Programming Ruby: The Pragmatic Programmer’s Guide
http://www.rubycentral.com/book/
The first edition of the ‘pickaxe book’ (see entry earlier in this article).
Why’s Poignant Guide To Ruby
http://poignantguide.net/ruby/
Possibly the strangest programming book you’ll ever read - complete with talking foxes!
The Little Book Of Ruby
http://www.sapphiresteel.com/The-Little-Book-Of-Ruby
I wrote this one, it’s free, it comes with lots of little ready-to-run programs... :-)