Don't be afraid, I work at Engine Yard, not a sushi bar.
Highly Recommended
It's taken me a while to get through Peter's book, but I'm certainly happy I put the time in. This has to be the best book for Ruby beginners, whether it be for scripting or for moving towards Rails.
Beginning Ruby is broken into three parts, Foundations and Scaffolding, The Core of Ruby and Ruby Online. Each leading on nicely from the previous section, and breaking up the different requirements of the learner as they go.
Peter starts off nice and slow (with a most excellent foreword from _why the lucky stiff), and eases you into Ruby by first explaining how you get it installed. He covers both Windows, Linux and Mac OS X.
Once you're installed, the basics are carefully laid out in front of you, from pieces like variables and keywords, to object orientated programming basics. His writing style is easy on the eye and travels at a good pace without confusing the beginner. More advanced users can skip the first couple of chapters, or at least skim over quickly. That's what I liked about this book, though. A mature beginner will naturally need to know about the basics of programming in Ruby (or any language) before their first application, and this is the order that Peter takes. There are certain readers who will relish Chapter 4 as the starter block, jumping straight into their first application...however they'll soon go back to Chapter 2 and 3 to really get a feel of how Ruby works.
Oddly we are led through the history of Ruby in Chapter 5, this seemed like a strange choice in positioning that I personally would have skipped had I been learning Ruby. However the content is accurate and informative in such a way that if you skip it, you're more likely to return once your journey through the book is complete.
Chapter 6, in the section "The Core of Ruby" is really where the in-depth knowledge starts to seep through. The examples are plentiful, concise, and easy to read. He digs thoroughly into the most juicy parts of Ruby like Symbols, Blocks, and Mixins. I found myself not wanting to put the book down, as if I was reading a chapter from the Tolkien masterpieces. Of course, your geek mileage may vary, but I can't see you having many qualms with this chapter. I found a surprising amount of information that the more experienced developer may not have known which you wouldn't expect from a book titled "Beginning Ruby".
Chapter 11 particularly impressed me, in which he talks about the more advanced features in Ruby. Dynamic code execution, safety levels, threading, and RubyInline. These are all examples of what gems you'll find in this chapter, and all explained in bite size chunks to let you get a general overview of what can be done, and where to go if you'd like to really dig into that particular piece.
Finally, Part 3, Ruby Online. This section features as more of a fleeting visit (and re-visit) of many more of the Ruby pieces that you could use in your application. It talks about Ruby on Rails, RubyGems, networking etc. It also gives a quick run-through of the Ruby language as a 'primer' for developers who might just want to have a concentrated burst of knowing what Ruby can do. It also provides references and resources that you will be prudent to bookmark in your favourites.
So, I wholeheartedly recommend this book to not only beginners, but amateurs and advanced users. There might be a few bits and pieces you were unsure of, or were completely unaware of. Easily a 9/10 in my eyes...nothing gets the 10 unless it has nudity....and that's not an invitation Peter.
So thank you for sending the book over to me for review, and good luck with sales. I can't see you struggling to capture them with content like this. Nice work.
Recommended for Beginners
This was one of the first books I picked up (although this is the second edition of that book, I read the first also). It begins by running you through setting up your first application, an ecommerce store. As the authors trundle along with the store they explain the basics and the concepts behind Rails, giving you information on why Rails chooses "Convention over Configuration" and other tidbits of info, as well as pointing you in the right direction with best practises. Bear in mind that this is aimed at the beginner, so these bits of information aren't in-depth, they merely hint at what you'll need to know. By the end of the first Chapter you have your first simple application up and running with some reasonable functionality.
The next few chapters fill the gaps that may have been left out by the initial rush through getting going, and I think they do a very good job of starting you off in the world of Rails. Nearer the back of the book is a more in-depth look at the libraries and functions you have available to you, which was more my cup of tea. It delves into different ways you can use ActiveRecord, why some pieces work and some don't etc.
Overall I'd say this is a great book to start with if you're familiar with web development in general and want to dive into Rails.
Over my years developing in Ruby and Rails, I've read quite a few books (a lot of them by fellow members of #caboose), so I thought I'd review a few of them and let you know the good and bad points, as well as let you know the kind of knowledge and experience it assumes you have and gives you at the end.
This is my books section, specifically for reviewing any book I've read.
Jamie van Dyke has been a Rails developer since the beginning of 2005, working with some of the major players in the web market. He also played a large part in the documenting of Rails for the Caboose Documentation Project and teaches others on his blog and in training sessions around the world. Jamie is a core Rails contributor, and the publisher of multiple gems and plugins.
I'm a father of 2, living in a little village called Skipton which is in North Yorkshire, England. Anything else you'd like to know you can ask. Check out my photo and info at the caboose facebook or my flickr page.
Jamie is also unsure why he must write a Bio in third person, and doesn't really have a fear of fish, he just dislikes the taste and smell of them.