Programming Books C Java PHP Python Learn more Browse Programming Books
Metaprogramming Ruby: Program Like the Ruby Pros and over one million other books are available for Amazon Kindle. Learn more
Buy New
$21.60
Qty:1
  • List Price: $32.95
  • Save: $11.35 (34%)
FREE Shipping on orders over $35.
In Stock.
Ships from and sold by Amazon.com.
Gift-wrap available.
Add to Cart
Trade in your item
Get a $2.00
Gift Card.
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

Metaprogramming Ruby: Program Like the Ruby Pros Paperback – February 25, 2010

ISBN-13: 978-1934356470 ISBN-10: 1934356476 Edition: 1st

Buy New
Price: $21.60
37 New from $12.48 18 Used from $10.71
Amazon Price New from Used from
Kindle
"Please retry"
Paperback
"Please retry"
$21.60
$12.48 $10.71

There is a newer edition of this item:


Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student




Frequently Bought Together

Metaprogramming Ruby: Program Like the Ruby Pros + Eloquent Ruby (Addison-Wesley Professional Ruby Series) + Practical Object-Oriented Design in Ruby: An Agile Primer (Addison-Wesley Professional Ruby Series)
Price for all three: $88.32

Buy the selected items together

NO_CONTENT_IN_FEATURE

Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Paperback: 296 pages
  • Publisher: Pragmatic Bookshelf; 1 edition (February 25, 2010)
  • Language: English
  • ISBN-10: 1934356476
  • ISBN-13: 978-1934356470
  • Product Dimensions: 9 x 7.5 x 1 inches
  • Shipping Weight: 1.2 pounds (View shipping rates and policies)
  • Average Customer Review: 4.6 out of 5 stars  See all reviews (37 customer reviews)
  • Amazon Best Sellers Rank: #173,655 in Books (See Top 100 in Books)

Editorial Reviews

Review

"If you program in Ruby, buy this book. Twice. Ruby isn’t magic anymore, just great."

—Joe Alba

"In Ruby, the practitioners of metaprogramming have found a language where they are only constrained by their imagination. To reach mastery is hard, and even harder is to apply it tastefully. This book gives a grounding in the fundamentals of metaprogramming Ruby in such a way that anyone can pick it up and then immediately start using it. Paolo brings out the core of how simple metaprogramming can be in this book, and that is no easy task."

—Ola Bini, ThoughtWorks

About the Author

Paolo Perrotta has more than ten years of experience as a developer and writer. He worked for domains ranging from embedded to enterprise software, computer games, and web applications. These days, Paolo coaches agile teams for Yoox, a large Internet fashion shop, and teaches Java to developers throughout Europe. He lives in Bologna, Italy, with his girlfriend and a cat. He loves Ruby.


More About the Author

Paolo Perrotta speaks and writes about software development. He worked as a developer in domains that range from embedded to enterprise software, computer games, and web applications. These days, he mentors and coaches developers throughout Europe. He has a basecamp in Bologna, Italy. He loves Ruby.

Customer Reviews

4.6 out of 5 stars
5 star
29
4 star
2
3 star
5
2 star
0
1 star
1
See all 37 customer reviews
I started reading the introduction and the story about Bob and Bill.... and I found that I was getting crazy about this book.
Satish M. Talim
I have a good handle on object oriented programming but was having trouble around understanding some of the Ruby Meta-programming techniques.
Stephen Davies
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.
execdd17

Most Helpful Customer Reviews

53 of 54 people found the following review helpful By Peter M. Goldstein on April 8, 2010
Format: Paperback Verified Purchase
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
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
22 of 23 people found the following review helpful By Katrina Owen on December 18, 2011
Format: 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.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
28 of 31 people found the following review helpful By Matt Darby on March 3, 2010
Format: 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.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
14 of 14 people found the following review helpful A Kid's Review on April 8, 2010
Format: 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.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
16 of 19 people found the following review helpful By jgoggles on April 5, 2011
Format: 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.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Customer Images

Most Recent Customer Reviews

Search