Metaprogramming Ruby: Program Like the Ruby Pros
P**N
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 languagesii) Shows how those conceptual differences are expressed in programming constructs by walking the reader through a number of small but realistic example problemsiii) 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 problemsiv) Provides a number of helpful and applicable guidelines on how to 'think in Ruby'v) Generates a GoF style catalog of implementation patternsvi) Skewers the notion that 'metaprogramming' is any different than regular programmingAfter 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
K**R
Best Book I've Read on Ruby
This book gets to the heart of what makes Ruby such an amazing language. It is also a great example of why reading an in-depth discussion on a topic in (e)book form can be far more valuable than spending the same amount of time researching the topic online.The author starts by letting you know the ever-important "whys" around the language's origin & design; many of which I didn't know despite programming in Ruby for many years. Building on these basics, the author presents a coherent view of how to use the unique features of the language to become much more effective at software development. He extends this with example after example of how the world's best have done exactly that in Ruby's popular frameworks & gems -- including the core components of Ruby on Rails and ActiveRecord.A few reviews I saw before reading the book mentioned the story-based narrative was distracting. While I can completely see this point of view, and the author is a developer not a novelist for sure, the story did serve as a solid tool to connect the various topics.Highly, highly recommended.
P**Y
One of the best Ruby books I've ever read
The book contains great practical examples of how to use metaprogramming, taking you through basic designs and improving them incrementally with concepts from the text. I found this easy to understand and useful from a process standpoint. Like many others, I'd used Ruby metaprogramming many times before without fully understanding what I was doing. The book filled in many missing details for me. For the first time I felt I understood the Ruby object model. I actually dreamed of the object model after reading the book, seeing all of the parts line up. In contrast to some other reviewers, I like how the book weaves a story about two fictional coworkers as it explicates metaprogramming concepts. The light-hearted side story made it super readable for me since I enjoy narrative. The storyline kept me interested and made the text less dry. In conclusion, this is an excellent book that I will return to again and again. I highly recommend it to anyone who wants to put the pieces together of Ruby Metaprogramming.
E**7
I Love This Book!
I've been using Ruby for about 3 years now and thought I had a good understanding of the language and its capabilities. Wow, was I wrong! This book was like a grenade going off in my head that rearranged my perception of Ruby programming reality. There is a ton of good information in this book that can be used for new projects, refactoring, and anything in between.A great thing about this book is that it presents these cool but seemingly impractical techniques, and then gives you a great real world example of just how common and practical it really is. Another thing I wasn't expecting is the humor. I laughed out loud reading some sections of the book.I'm not sure that I'd recommend this for the new Rubyist, but if you have a decent foundation, this book will take you to the next level.
C**R
I learned more about ruby from this book than any other
I didn't expect to enjoy this book as much as I did. I am an experienced software developer who has only recently started working on ruby and rails projects. I thought meta-programming was interesting but that I was not experienced enough with the language yet to benefit from reading much about it. It turns out that learning the techniques in this book has taught me so much about the ruby object model and how the language works that it has benefited all aspects of my ruby programming and drastically increased my understanding of how rails works. I cannot recommend it highly enough for that reason alone. I cannot however attest to its usefulness to people who want to use it as a foundation for doing serious ruby meta-programming themselves.
A**X
Imprescindible si programas en Ruby
Libro imprescindible si programas en Ruby. Lo mejor es que su lectura se hace bastante entretenida, cosa rara en libros técnicos. Un 10.
I**S
Mind-bending!
This is a mind bending book. I already had o little crush on Ruby but after this book, I'm completely in love!The book is clear, it has a funny way of introducing things and the whole "lets tell a story about this" kind of approach just makes it seem like I'm not reading a technical book but a story book.This book helped me understand how many ruby gems do things, especially ActiveRecord, and helped me be a better programmer.Now I'm so much into the metaprogramming concept that any language that doesn't support it, I'm not interested!
C**S
Wer dieses Buch liest, versteht, wie Ruby wirklich funktioniert.
Das Buch erklärt zwar - wie der Titel sagt - viele Tricks aus der Metaprogramming-Zauberkiste. Das wirklich wertvolle an diesem Buch finde ich jedoch, dass es die beste und gründlichste Erklärung des Ruby Objekt-Modells enthält, die ich bisher gefunden habe.Diese Buch hat mir enorm geholfen, alle Ruby-spezifischen Konzepte wie Singleton Classes, Scopes, Klassenobjekte, method_missing, method lookup, include/extend, ancestor chain, class_eval/instance_eval etc wirklich zu verstehen und sicher anwenden zu können.Im hinteren Teil gibts es dazu eine handliche Referenz, die typische Idiome und Patterns erklärt (der Autor nennt sie "Spells"), die man in Ruby-Code häufig antrifft und die die eigene Arbeit erleichtern.Wer Ruby wirklich verstehen will, sollte dieses Buch unbedingt anschauen und sich nicht vom Titel abschrecken lassen.
N**I
Einführung in "Metaprogramming Ruby" gelungen
Nachdem ich ein deutsches Handbuch in Einführung Ruby und Rails gelesen hatte, waren für mich noch zu viele Fragen offen. Schließlich möchte (muss) man ja verstehen, wie die Methoden, Klassen und Objekte in Ruby miteinander funktionieren.Das Kindle-Buch "Metaprogramming Ruby" hat für mich diese große Lücke geschlossen. Auch wenn man in der englischen Sprache nicht ganz zu Hause ist, ist dieses Buch - umrahmt von einer kleinen Alltagsgeschichte aus dem Büro (Workshop) - sehr gut zu lesen.Im Rahmen eines Workshops in Form von Aufgaben werden hier die verschiedensten Methoden/Klassen/Objekte und die Funktionsweise innerhalb von Ruby dargestellt.Auf jeden Fall macht es Lust auf mehr... Also von meiner Seite eine klare Kaufempfehlung!
D**9
A very good book on Ruby
This is the best Ruby book I came across as it explains the concepts behind Ruby in a very easy to understand way. Besides, the book is written in a very similar style to Head First - Design Patterns, which is funny and easy to follow. I was also pleased to see that it's up to date with Ruby 1.9.
Trustpilot
3 weeks ago
2 days ago