Customer Reviews


36 Reviews
5 star:
 (28)
4 star:
 (2)
3 star:
 (5)
2 star:    (0)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 

The most helpful favorable review
The most helpful critical review


53 of 54 people found the following review helpful
5.0 out of 5 stars Should really be titled "Thinking in Ruby"
I've read quite a few Ruby books and this is one of the best. The author very effectively does a number of things in this book:

i) Highlights the conceptual differences between Ruby and other currently popular languages

ii) Shows how those conceptual differences are expressed in programming constructs by walking the reader through a number of small...
Published on April 8, 2010 by Peter M. Goldstein

versus
22 of 23 people found the following review helpful
3.0 out of 5 stars I have a love-hate relationship with this book.
Metaprogramming Ruby puts non-obvious and non-trivial content together into a coherent whole.

The technical content of this book is very, very good. The book explains much of the basic structure of ruby (object model, class definitions, blocks, method lookup, etc) in such a way that common idioms that I have previously used without understanding their...
Published on December 18, 2011 by Katrina Owen


‹ Previous | 1 2 3 4 | Next ›
Most Helpful First | Newest First

53 of 54 people found the following review helpful
5.0 out of 5 stars Should really be titled "Thinking in Ruby", April 8, 2010
By 
Peter M. Goldstein (San Francisco, CA United States) - See all my reviews
Verified Purchase(What's this?)
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
I've read quite a few Ruby books and this is one of the best. The author very effectively does a number of things in this book:

i) Highlights the conceptual differences between Ruby and other currently popular languages

ii) Shows how those conceptual differences are expressed in programming constructs by walking the reader through a number of small but realistic example problems

iii) Reviews internal details of a number of pieces of real-world software (most notably Rails) to show how the authors of these packages use the techniques he describes to solve their problems

iv) Provides a number of helpful and applicable guidelines on how to 'think in Ruby'

v) Generates a GoF style catalog of implementation patterns

vi) Skewers the notion that 'metaprogramming' is any different than regular programming

After finishing this book I have a real appreciation of the techniques the author describes, and how they can be used to write flexible, powerful, and maintainable software. Before reading this book I was aware of a number of these techniques, but I didn't necessarily understand how they could be effectively used to solve real problems. Now I do. The book truly covers how to think in Ruby - how to naturally solve problems in Ruby, as opposed to adapting techniques commonly used in languages from the C/C++/Java lineage.

The one major criticism I had of Metaprogramming Ruby was the 'fanboy' tone that permeates a lot of the text. Frequently the author seems more interested in getting you to agree with him that Ruby is great than in conveying the concepts being discussed. There are a lot of gratuitous slams of other languages (especially Java) that were frankly unnecessary and distracted from the book. Had the tone of those comparisons been a little more highbrow and a little less schoolyard, this would have been a better book.

Overall rating: 4.5 stars
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


22 of 23 people found the following review helpful
3.0 out of 5 stars I have a love-hate relationship with this book., December 18, 2011
By 
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
Metaprogramming Ruby puts non-obvious and non-trivial content together into a coherent whole.

The technical content of this book is very, very good. The book explains much of the basic structure of ruby (object model, class definitions, blocks, method lookup, etc) in such a way that common idioms that I have previously used without understanding their underlying mechanisms now make complete sense, and my understanding and command of some of the more powerful features of ruby have greatly improved.

Real-world code examples drawn mostly from ruby gems are included, and these are excellent illustrations of ideas presented.

As with many technical books, many of the non-real-world code examples are extremely simple and contrived. For the most part, this is acceptable, but there are instances where the tests/sample output provided for exercises were incomplete -- in the sense that you can come up with a flawed and incomplete piece of code which will still make the test pass.

The thing about this book that drove me up the wall is the insipid story line: You have started a new job, and you have an incredibly chirpy and annoying coworker with whom you must pair program, and who lectures you about the ruby object model, etc. The dialogues are awful; Bill The Asinine Coworker "exclaims" and "shouts" much like characters in bad romance novels supposedly do. The text is littered with irrelevant and distracting details about sipping coffee and grabbing keyboards and ignoring whiteboards in favor of napkins.

This is possibly the best exposition of the ruby object model available, however, so if you are frustrated by the piecemeal information available on the web and you don't have a chirpy co-worker by the name of Bill to mentor you, I would highly recommend reading this book.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


28 of 31 people found the following review helpful
5.0 out of 5 stars Short and sweet, March 3, 2010
By 
Matt Darby "drb000" (Columbus, OH United States) - See all my reviews
(REAL NAME)   
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
I have a BS and MS in Computer Science, and worked with Ruby professionally for two years. I've read every major Ruby book on the market. This book brought me to the next level. If you dig Ruby or Rails and are a programmer looking for the next step, this is it.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


14 of 14 people found the following review helpful
5.0 out of 5 stars Essential to Appreciate Ruby's Power, April 8, 2010
A Kid's Review
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
I have been programming in Ruby for almost two years, and I have done some Ruby on Rails. With this book I finally begin to understand what Ruby was doing for me all along -- especially when it's running on Rails. Ruby was easy to use like I've used many other languages, but now I understand how unique and powerful Ruby really is. And I'm sure that I will begin to take advantage of that extra power.

Also: the book is well written and organized. I especially like that whenever a particular topic is mentioned a page reference also appears. This makes it easy to do a quick review of the topic before going further, like "Hook Methods (181)."

This book will not sit idly on my shelf. I'll be going back to it again and again for review and further mastery of the topics.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


16 of 19 people found the following review helpful
5.0 out of 5 stars Fascinating adventure into the world of Ruby, Friendship, and Tragedy, April 5, 2011
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
This book offers an amazing look into the beauty and power of Ruby. It has made me a better Rubyist. It is accessible and entertaining. Not only is the use of a second-person narrative throughout astonishingly well executed, but the character development is pristine as well, Bill's in particular. In the course of one week we see Bill evolve from strange, overbearing know-it-all coworker to mentor, friend, and even intrigued learner. But that's when things get interesting and take quite a turn in the story. I don't want to give anything major away but Bill sleeps with your wife at the end.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


12 of 14 people found the following review helpful
3.0 out of 5 stars Very good content in a condescending and distracting presentation, January 1, 2012
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
Reading this book is like being trapped in an all-day team building exercise.

There's a lot of good information, but you'll have to skim through a lot of bad dialog to find it. For reasons I can't understand, the book superglues you to an annoying and badly-written "programming buddy" named Bill, and way too much of what the book has to teach is buried in his dialog. A third of the book could be pruned by nixing Bill, and the book would be more understandable and less painful to read as a result.

Entire chapters are spent on topics that could be dispensed with in a few paragraphs and the beginning of the book lingers on information that an intermediate programmer would already know. But the strange dialog style buries information so it's difficult to skim or skip. This improves towards the end.

The following quote is an example of what you're in for:

"Forget about method_missing() for now -- we'll get to that this afternoon. To introduce Dynamic Methods, allow me to tell you a story from my youth," he says. "When I was a young developer learning C++", Bill muses, "my mentors told me that when you call a method, you're actually sending a message to an object. It took me a while to get used to that concept. Of course, if I'd been using Ruby back then, that notion of sending messages would have come more naturally to me." Bill launches into a mini-presentation.

A few sentences later comes this: "'Wait a minute,' you interject. 'Why on Earth would I use send() instead of the plain old dot notation?'"

Why on Earth, indeed.

It's condescending, wrong-headed, distracting and agonizing. The concept is very badly suited to the subject matter and that's a shame; the author obviously knows the material and the book could have been excellent. But for some reason, someone decided the book would use a tone usually reserved for explaining rules to slow children. I suspect the book's trying to mimic Why's Poignant Guide to Ruby, which is a horrible trend I see creeping into other Ruby books.

Criticism aside, this is the best book I've found on the topic to date. Bring a highlighter with you and try to ignore Bill. This is the best you'll find for the moment.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 5 people found the following review helpful
5.0 out of 5 stars Best Technical book ever written for RUBY., May 4, 2010
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
This is the first technical book I have ever read written like this. I'm a author myself and this book has changed the way I think about writing articles, white papers and books. If you are just starting out in programming ruby or are a season veteran in ruby you need to pick up this book. The way it is written it is well put together and it makes you keep wanting to read more. This is not your normal technical boring go through the motions book. It's like a technical novel that is the best way to put it, I never met the author (hope to do so in the future to thank him) but sometimes when reading books all you need is one idea or 1 chapter or even one word to change the way you look at things. Paolo creates a setting like you just was hired at a new company and on Day one they want to implement a project in ruby, so a virtual character "Bill" your mentor your programming lead helps you along the way. I loved the postit notes and napkins he uses in a conference room to give you the skills you need to work on the project and it makes it realistic. I've read hundreds of books but this is the first tech book that has really made an impact in my career in terms of the way I think about writing, if more books were written like this tech books would be best sellers!!! Paolo Perrotta Thanks for writing Metaprogramming Ruby!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 3 people found the following review helpful
4.0 out of 5 stars How the Deep Magic works, May 26, 2013
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
There are lots of nits to pick with this book, and other reviewers have done a good job with them. The quasi-Socratic Dialogues with Bill are weird, the fanboy relationship with the Ruby language is a little fulsome, blah, blah...

But after reading a half-dozen of the most widely-recommended Ruby texts, this one was still the only one that really made me feel like I had improved my feel for the how and the why of Ruby's really deep magic. Ruby is a perfectly fine scripting language if one just takes it as it is -- easily up to any task you could hand to its brethren, Perl and Python. But Ruby lets you get inside the language, and write programs that modify themselves at runtime, in ways that can boggle your mind. This book explains how you do that, why you'd do it, and shows prominent real-world examples of the techniques in the wild.

Although this book covers language fundamentals pretty well, it might not make a great first Ruby book. But I think lots of programmers would speed up their learning curve by making this their second Ruby book -- it's really the one that "gets" Ruby. "Metaprogramming" makes it sound like there's a specific task that the book teaches, but really, it's just a thorough explanation of how the Ruby universe is constructed.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 3 people found the following review helpful
5.0 out of 5 stars Fantastic, a must read for any serious Rails developer, May 4, 2010
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
I've never written reviews on Amazon, but I felt I had to for this book. It's very elegantly written, as he takes the same format as the way one learns software craftsmanship in real life: solving real world problems under the guidance of a mentor.

In this scenario, you take the role of a new employee at a company guided by the Ruby expert named Bill, on a one week crash course journey though the object model, method creation, blocks, class internals, and finally putting this all together to write a piece of code that seem oddly familiar to the base files you see in some of the famous gems.

The book then goes on and ties this ruby knowledge to a Rails specific lens, examining the internals of ActiveRecord, taking a quick tour of Merb, and then having a glossary of metprogramming "spells" useful for everyday work.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 6 people found the following review helpful
4.0 out of 5 stars Really good despite the annoying style, May 29, 2011
This review is from: Metaprogramming Ruby: Program Like the Ruby Pros (Paperback)
Before anything else, I have to say I really didn't like the style the author chose for the first part of the book. In the chapters named "Monday" to "Friday", you go through your first week in a new job, doing pair programming with your colleague "Bill". While this is fun for about half a page, sentences like "Bill walks over to the whiteboard and starts drawing a blablabla" get old fast. Very fast. I'm not exactly sure why the author decided on this style, since in my opinion it doesn't add anything to the text. As Greg Brown showed in "Ruby Best Practices" you can write an engaging text about advanced Ruby concepts without falling back to alibi prose. The second part of the book deals with some Rails internals and is written in a "normal" style, which I much prefer.

With that out of the way, "Metaprogramming Ruby" is a very good book. The concepts and their presentation are solid and the author knows where to draw the line and leave things for further exploration by the reader. I think there's a slight over-use of footnotes and sidebars, which can disturb the reading flow a bit, but it's not very dramatic and unfortunately this is not that uncommon in technical books.

What I like best is the author repeatedly points out that the distinction between "regular" programming and metaprogramming are blurry in Ruby at best, and that the latter in the end isn't some obscure sort of magic, but "just" a powerful set of tools that can be immensely helpful when used responsibly. Even advanced Ruby programmers are likely to pick up a new trick here or there or at least further their understanding of certain concepts.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


‹ Previous | 1 2 3 4 | Next ›
Most Helpful First | Newest First

Details

Metaprogramming Ruby: Program Like the Ruby Pros
Metaprogramming Ruby: Program Like the Ruby Pros by Paolo Perrotta (Paperback - February 25, 2010)
$32.95 $21.60
In Stock
Add to cart Add to wishlist
Search these reviews only
Rate and Discover Movies
Send us feedback How can we make Amazon Customer Reviews better for you? Let us know here.