Matthew Rudy Jacobs reviews a copy of RailsSpace: Building a Social Networking Website with Ruby on Rails by Michael Hartl and Aurelius Prochazka published by Addison-Wesley as part of their Professional Ruby Series.
"Ruby on Rails", "Social Networking", 2007 was the year when these buzz words hit the mainstream. So it's unsurprising that the year also brought us two good books, both aiming to combine these subjects.
The first of these, Alan Bradburne's "Practical Rails Social Networking Sites", was good, but it felt like it didn't know who its audience was; too complex for newbies, and not enough for rails veterans (it touched on Mongrel and deployment strategies, and informed us about exciting developments such as XFN, but perhaps no more than a short blog post would have done).
The second, and the subject of this review, RailsSpace is pretty much a beginners' book, and ably performs at that. Sadly it doesn't hold much for Rails veterans, but I'm happy that they focused it in that way, as it's probably impossible to meet the requirements of both at the same time.
Lending the book to my novice brother he quickly got into it, as the features promised in the next chapter kept pushing him on. At the end of the process he'd learnt all of the things he'd need to go about making his own site.
Any Rails book aimed at newbies is going to draw comparisons to the Pragmatic Programmers' classic "Agile Web Development With Rails", and it does very well. With the Rails API and coding conventions having moved on since AWDWR, RailsSpace excels at producing, and explaining, really good, clean code that follows REST and TDD beautifully. The context of this code, being a social networking site, is also much more interesting than the old "Depot" application.
All in all, RailsSpace is a great book to start someone off on their journey, and I suggest they follow it up with a read through Alan Bradburne's to help soak up their thirst. If, as it seems, there won't be a new version of AWDWR, this will be a worthy successor as THE first book for newcomers to the framework.