Truck Month Textbook Trade In Amazon Fashion Learn more nav_sap_plcc_ascpsc $5 Albums Fire TV with 4k Ultra HD Grocery Mother's Day Gifts Amazon Gift Card Offer ctstrph2 ctstrph2 ctstrph2  Amazon Echo  Echo Dot  Amazon Tap  Echo Dot  Amazon Tap  Amazon Echo Fire, Only $39.99 Kindle Paperwhite UniOrlando ReadyRide Bikes from Diamondback SnS
Customer Review

26 of 27 people found the following review helpful
4.0 out of 5 stars Not sure if this is the best book to start!, October 4, 2009
Verified Purchase(What's this?)
This review is from: The Ruby Programming Language (Paperback)
I bought this book after reading the other reviews here. All the people I know personally who work with Ruby learned from the Pickaxe but from the reviews I came to the conclusion that this could be actually a better book for learning the language. So, I didn't read the Pickaxe and cannot really make a comparison but from what I heard and comparing with this one I would get the Pickaxe if I should choose again.

After finishing reading this book I can say that there are a lot of topics that I really don't remember anymore and lots of doubts that I still have. The major flaw here is that there are no exercises anywhere in the book. All the best programming books I read in the past have very good exercises to evaluate what you've learned (I could give as examples Learning Perl, C++ Programming Language, Core Java, etc). I think that without exercising what you learned it's really hard to judge how much you have really learned.

Another thing which is not described in the book is how to organize a big project. I'm used to working in large projects in C and C++ and I really have no idea of how to organize a large project in Ruby, how to organize classes in files, etc. I will start studying Rails now, and will get the Rails code and read it to make sense of how to organize a large project but be aware that this is not described here.

Also some sections of the book, are really "dry", like the one who talks about functional programming which is really hard to follow (this one is the first that came to my mind but there are a lot of sections which are hard to follow or don't make a lot of sense when reading first time). These sections are clearly targeted at advanced Ruby programmers.

I'll rate this book with 4 stars because despite the flaws I mentioned, the explanation of the language in general is really good.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

[Add comment]
Post a comment
To insert a product link use the format: [[ASIN:ASIN product-title]] (What's this?)
Amazon will display this name with all your submissions, including reviews and discussion posts. (Learn more)
This badge will be assigned to you and will appear along with your name.
There was an error. Please try again.
Please see the full guidelines here.

Official Comment

As a representative of this product you can post one Official Comment on this review. It will appear immediately below the review wherever it is displayed.   Learn more
The following name and badge will be shown with this comment:
 (edit name)
After clicking the Post button you will be asked to create your public name, which will be shown with all your contributions.

Is this your product?

If you are the author, artist, manufacturer or an official representative of this product, you can post an Official Comment on this review. It will appear immediately below the review wherever it is displayed.  Learn more
Otherwise, you can still post a regular comment on this review.

Is this your product?

If you are the author, artist, manufacturer or an official representative of this product, you can post an Official Comment on this review. It will appear immediately below the review wherever it is displayed.   Learn more
System timed out

We were unable to verify whether you represent the product. Please try again later, or retry now. Otherwise you can post a regular comment.

Since you previously posted an Official Comment, this comment will appear in the comment section below. You also have the option to edit your Official Comment.   Learn more
The maximum number of Official Comments have been posted. This comment will appear in the comment section below.   Learn more
Prompts for sign-in


Track comments by e-mail
Tracked by 1 customer

Sort: Oldest first | Newest first
Showing 1-3 of 3 posts in this discussion
Initial post: May 4, 2010 6:06:14 PM PDT
Last edited by the author on May 4, 2010 6:31:44 PM PDT
AmazonH says:
David Flanagan writes coherently and clearly; more so than most technical writers. His books are great!

Are these really flaws?

Re: Flaw #1 (lack of exercises) - it's not a textbook. Please read p. ix: "[The Ruby Programming Language] aims to document the Ruby language comprehensively but without the formality of a language specification."

Although it's loosely modeled after "The C programming language," (which has exercises) pick up a textbook if you want exercises, that's not a flaw in this book IMHO.

For exercises, I usually just type "irb" on a shell prompt and try out any example I want.

Re: Flaw #2 (lack of big project) - see p. ix again my friend, but there is some info starting on p. 252: "Ruby programs may be broken up into multiple files, and the most natural way to partition a program is to place each nontrivial class or module into a separate file. These separate files can then be reassembled into a single program...using require or load."

Start by writing a script all in one file (Ruby is a scripting language, so it just executes from top to bottom with the exception of BEGIN and END blocks and the at_exit block, see p. 39 under the heading 'Program Execution.'), then as the script becomes more complex gradually split it to multiple modules.

Re: Flaw #3 (dry material) - The advanced sections even warn you that they are advanced, see p. 266: "Note that [Chapter 8: Reflection and Metaprogramming] covers advanced topics. You can be a productive Ruby programmer without ever reading this chapter. You may find it helpful to read the remaining chapters of this book first, and then return to this chapter."

My advice is focus on writing working Ruby programs first before tackling any functional programming or metaprogramming techniques (although when you're jumping to Rails right away you'll find you'll be using metaprogramming features, at times without knowing it).

Keep it simple, don't just use the whiz-bang features for their own sake.

Final tip: Use this book as a reference also - one is never really "done" reading it. Even more so with C++ and Perl books!

Posted on Aug 9, 2012 4:57:13 PM PDT
Chad Perrin says:
From what you said, Fabio, it sounds like Eloquent Ruby is the book for your needs.

Posted on Oct 29, 2012 12:35:24 PM PDT
jack chao says:
I think PickAxe you referred is "Programming Ruby 1.9" by Dave Thomas. It's a great Ruby book too. You may find "Ruby way" is another good one.
‹ Previous 1 Next ›

Review Details



Location: Porto Alegre, Brazil

Top Reviewer Ranking: 33,390,450