- You'll save an extra 5% on Books purchased from Amazon.ca, now through July 29th. No code necessary, discount applied at checkout. Here's how (restrictions apply)
The Well-Grounded Rubyist Paperback – Jul 4 2014
Special Offers and Product Promotions
Frequently Bought Together
Customers Who Bought This Item Also Bought
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.
To get the free app, enter your mobile phone number.
About the Author
David A. Black is an internationally-known Ruby developer, author, trainer, speaker, and event organizer. A Lead Developer at Cyrus Innovation, he is a Ruby standard library contributor and one of the founders of Ruby Central, Inc., the parent organization of the official international Ruby and Ruby on Rails conferences.
What Other Items Do Customers Buy After Viewing This Item?
Top Customer Reviews
Other books I've read have not followed such a logical approach, or have jumped around more, or are not as complete.
I keep this book on my bookshelf, in an easy-to-reach place. It's the first book I reach for when looking up something about the Ruby language.
Most Helpful Customer Reviews on Amazon.com (beta)
The intended audience is definitely programmers knowing object oriented programming who either want to refresh their Ruby knowledge, either want to learn the language as a new language. But as the book states, it does not teach programming. But we feel that the author really wants to be precise and comprehensive, he struggles with the need to explain things that some people might not know, while many people already know...
For Ruby programmers the book is useful as a reference for parts of the language he/she does not use on a daily basis.
The book covers the regular expressions and can be useful for the use of regexp beyond its usage with the Ruby language.
But the book has some weaknesses.
The chapter 6 is not precise enough about exceptions, "can i catch more than 1 exception?", "what if I write rescue A, then B, if B derives from A, is B ever going to be catched?".
In chapter 7, the "Bid" example presents the <=> operator (object comparison) but is not clear enough that comparing objects does not necessarily involve the class relationship but is "duck-typing" (the nature of the Ruby language).
The book is wrong about the $n "global variables", they are not behaving at all as global variables (the book mentions the strangeness when talking about threads but it is much more subtle), if you run next code you can see that the $1 value is not set when entering the "show_1" method and even if $1 changes inside the method, the original value is still available at the calling point.
"bye" =~ /(bye)/
"hello" =~ /(ll)/
p $1 #=> "ll"
show_1 #=> nil
p $1 #=> "ll"
In chapter 14, a little error appears in the explanation about the system calls, the text says: "A call to a nonexistent method with backticks raises a fatal error". It should be "program" instead of "method".
As you see I set 4 stars despite the "negative" comments because I did not mention many weak points compared to the book size and I consider that the book is worth reading compared to many poor quality books we find today.
Ruby can be used in several different programming paradigms, including functional and imperative. But be advised: The Well-Grounded Rubyist is essentially all-object-oriented-all-the-time in its approach.
“Ruby is an object-oriented language, and the sooner you dive into how Ruby handles objects, the better,” the author states. “Accordingly, objects will serve both as a way to bootstrap the discussion of the language (and your knowledge of it) and as a golden thread leading us to further topics and techniques.”
As other reviewers have noted, it is helpful to have at least a little bit of programming experience before tackling this book. And the Code Academy's Ruby classes and some other online tutorials are good places to start (that's exactly how I began learning Ruby a couple of years ago). But Black's book does start the reader with simple math at the interactive Ruby console program, irb, and then writing, saving, and running a simple program at the "Hello, Fahrenheit" level before moving ahead.
My thanks to Manning for providing a review copy of this book.
I'm a Ruby developer, and I've found this book useful. Is not a book about programming, is a book about Ruby, and the author was able to catch quite every aspect of the language explaining its operation in a clear and meaningful way.
Seasoned developers probably will use this book as a reference more than for learning.
Newcomers to the language reading this book can really have a boost in understanding both the basics ( part 1 ), the most used classes of the Ruby StdLib ( part 2 ) and the more advanced dynamic features in the part 3.
Overall is a great book, clear, deep and useful. It has some quirks, but you can overcome that with a little of personal research.
As I have started to read, I have to say that I was fascinated by the style of writing. The writer composes expressions very well and is able to hold your attention. Even having used it some hundreds of hours and went through the documentation few times, already since the first pages I can find some arguments and concepts that before were absolutely obscure to me. Keeping a practical framework, it densely packs the theory that every rubyist should know, comprehensive of conventions and suggestions on how to use its features. Maybe it falls sometimes on excessive exposure - like the info about the configuration at the beginning, that may be liked or not, depending on the reader.
It starts with fundamentals and syntax, going on with the built-in features, and finishing with the special Ruby OOP features, more advanced concepts. Although it may seem only for beginners, an intermediate can find _many_ useful things, especially if you didn’t still have attendended a complete course on the features of the language (those things that you were supposed to know but you always find as new on StackOverflow..). It will change your mindset about how this language should be used.
The style of writing is very near to the voice of a cautious grandfather who advises you on what to do or not. If you want to get better in Ruby and get some solid foundations of the language It will deepen also your understanding of the language, its internal mechanisms and why some features have been introduced (e.g., why ! or ? are at the end of methods, how objects work internally, etc.).
After you will finish this tome you will get a strong sense of self-confidence and relief, almost like you’ve already mastered the language. If I were the head of startup which is going to use Ruby, I would put this as a required reading for all my employers. And I definitely recommend it to everyone, to keep it also as your personal Ruby bible.
Look for similar items by category
- Books > Computers & Technology > Networking & Cloud Computing > Internet, Groupware, & Telecommunications
- Books > Computers & Technology > Programming > Languages & Tools > Ruby
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Object-Oriented Design
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Software Development
- Books > Computers & Technology > Software
- Books > Textbooks > Computer Science & Information Systems > Object-Oriented Software Design
- Books > Textbooks > Computer Science & Information Systems > Programming Languages
- Books > Textbooks > Computer Science & Information Systems > Software Design & Engineering