[ANN/ADV] Sample Chapter From "Ruby Best Practices"

== The short story

Hi folks, I bugged O'Reilly to let me release a sample chapter of my
book, and they let me.

So you can now directly download a PDF copy of my "Mastering the
Dynamic Toolkit" chapter without having to go through any hoops:


== For a little background on RBP:

This book is aimed mostly at people with a decent technical grasp of
Ruby but not a ton of practical experience. The goal is to show how
to attack Ruby problems in the way that a seasoned Rubyist might.
Though it might not be suitable for raw beginners, intermediate Ruby
programmers should be able to learn a lot from the book, and strong
Ruby programmers should *enjoy* it. I've put together a great
internal review team to help me make sure I reach this goal, and we
also have Rough Cuts set up for general feedback.

== For a little background on this chapter

In the PDF I linked above, you'll find all sorts of meta-programming
and DSL goodness, if not by name. I try to emphasize how much these
'voodoo' like features can be treated like ordinary Ruby code if you
take some care to do things well.

I chose this chapter to release because it's my favorite. Most of the
other chapters in the book follow the same general format, though.
That means if you like this one, you'll probably enjoy the others as

== Please help me improve the book!

I still have a few weeks to make revisions, so whether you plan on
buying the book or not, feel free to offer some feedback. I've also
made an agreement with O'Reilly to allow me to release the book under
a creative commons license 9 months after publication.

If after reading the chapter you decide you want to see the whole
thing and offer some suggestion before it goes to print, please buy a
rough cut:


If you want to know exactly what's in the book, you can check out this
blog post:


Anyway, I'll spam the list only twice more, when the book reaches
content completeness (in a few weeks), and when it goes to print
(hopefully in June). I hope you enjoy it!