1. Opening This Book
Pretend that youve opened this book (although you probably have opened this
book), just to find a huge onion right in the middle crease of the book. (The
manufacturer of the book has included the onion at my request.)
So youre like, Wow, this book comes with an onion! (Even if you dont
particularly like onions, Im sure you can appreciate the logistics of shipping
any sort of produce discreetly inside of an alleged programming manual.)
Then you ask yourself, Wait a minute. I thought this was a book on Ruby, the
incredible new programming language from Japan. And although I can appreciate
the logistics of shipping any sort of produce discreetly inside of an alleged
programming manual: Why an onion? What am I supposed to do with it?
No. Please dont puzzle over it. You dont need to do anything with the onion.
Set the onion aside and let it do something with you.
Ill be straight with you. I want you to cry. To weep. To whimper sweetly. This
book is a poignant guide to Ruby. That means code so beautiful that tears
are shed. That means gallant tales and somber truths that have you waking up the
next morning in the arms of this book. Hugging it tightly to you all the day
long. If necessary, fashion a makeshift hip holster for Whys (Poignant) Guide
to Ruby, so you can always have this books tender companionship.
You really must sob once. Or at least sniffle. And if not, then the onion will
make it all happen for you.
What Im Going to Do With the Massive Proceeds from this Book
Anyone whos written a book can tell you how easily an author is distracted by
visions of grandeur. In my experience, I stop twice for each paragraph, and four
times for each panel of a comic, just to envision the wealth and prosperity that
this book will procure for my lifestyle. I fear that the writing of this book
will halt altogether to make way for the armada of SUVs and luxury town cars
that are blazing away in my head.
Rather than stop my production of the (Poignant) Guide, Ive reserved this space
as a safety zone for pouring my empty and vain wishes.
Today I was at this Italian restaurant, Granados, and I was paying my bill.
Happened to notice (under glass) a bottle of balsamic vinegar going for $150.
Fairly small. I could conceal it in my palm. Aged twenty-two years.
Ive spent a lot of time thinking about that bottle. It is often an accessory in
some of these obsessive fantasies. In one fantasy, I walk into the restaurant,
toss a stack of greenery on the counter and earnestly say to the cashier,
Quick! I have an important salad to make!
In another, related fantasy, I am throwing away lettuce. Such roughage isnt
befitting of my new vinegar. No, I will have come to a point where the fame and
the aristocracy will have corrupted me to my core. My new lettuce will be cash.
Cold, hard cash, Mrs. Price.
Soon, I will be expending hundreds for a block of myzithra cheese.
My imaginations have now gone beyond possessions, though. Certainly, I have
thought through my acquisition of Grecian urns, motorcades, airlines, pyramids,
dinosaur bones. Occasionally Ill see wind-tossed cities on the news and Ill
jot down on my shopping list: Hurricane.
But, now Im seeing a larger goal. Simply put: what if I amassed such a fortune
that the mints couldnt print enough to keep up with my demand? So, everyone
else would be forced to use Monopoly money as actual currency. And you would
have to win in Monopoly to keep food on the table. These would be some seriously
tense games. I mean you go to mortgage St. James Place and your kids start
crying. In addition, I think youll begin to see the end of those who choose to
use the Free Parking square as the underground
coffers for city funds.
Youve got to hand it to fun money, though. Fake money rules. You can get your
hands on it so quickly. For a moment, it seems like youre crazy rich. When I
was a kid, I got with some of the neighborhood kids and we built this little
Tijuana on our street. We made our own pesos and wore sombreros and everything!
One kid was selling hot tamales for two pesos each. Two pesos! Did this kid
know that the money was fake? Was he out of his mind? Who invited this kid?
Didnt he know this wasnt really Tijuana? Maybe he was really from Tijuana!
Maybe these were real pesos! Lets go make more real pesos!
I think we even had a tavern where you could get totally hammered off Kool-Aid.
Theres nothing like a bunch of kids stumbling around, mumbling incoherently
with punchy red clown lips.
2. The Dog Story
So try this first bit of poignancy on for size:
One day I was walking down one of those busy roads covered with car dealerships
(this was shortly after my wedding was called off) and I found an orphaned dog
on the road. A woolly, black dog with greenish red eyes. I was kind of feeling
like an orphan myself, so I took a couple balloons that were tied to a pole at
the dealership and I relocated them to the dogs collar. Then, I decided he
would be my dog. I named him Bigelow.
We set off to get some Milkbones for Bigelow and, afterwards, head over to my
place, where we could sit in recliners and listen to Gorkys Zygotic Mynci. Oh,
and wed also need to stop by a thrift store and get Bigelow his own recliner.
But Bigelow hadnt accepted me as his master. So five minutes later, the stupid
dog took a different crosswalk than I did and I never caught up. So whereas he
had previously only been lost once, he was now lost twice. I slowed my pace
towards the life of Milkbones and an extra recliner. I had a dog for five
Stupid Benedict Arnold of a dog. I sat on a city bench and threw pine cones at a
statue of three sheep crossing a bridge. After that, I wept for hours. The tears
just came. Now theres a little something poignant to get you started.
I wonder where he went with all those balloons. That crazy dog must have looked
like a party with legs.
It wasnt much later that I pulled my own Bigelow. I printed out a bunch of
pages on Ruby. Articles found around the Web. I scanned through them on a train
ride home one day. I flipped through them for five minutes and then gave up. Not
I sat, staring out the window at the world, a life-sized blender mixing graffiti
and iron smelts before my eyes. This worlds too big for such a a little
language, I thought. Poor little thing doesnt stand a chance. Doesnt have
legs to stand on. Doesnt have arms to swim.
And yet, there I was. One little man on a flimsy little train (and I even still
had a baby tooth to lose at the time) out of billions of people living on a
floating blue rock. How can I knock Ruby? Whos to say that Im not going to
happen to choke on my cell phone and die later that evening. Whys dead, Ruby
lives on.
The gravestone:
Whats in his trachea? Oh, look, a Nokia!
Just my luck. Finally get to have a good, long sleep underground, only to be
constantly disturbed by Pachelbels Canon going off in my stomach.
3. The Red Sun Rises
So, now youre wondering why I changed my mind about Ruby. The quick answer is:
we clicked.
Like when you meet Somebody in college and they look like somebody who used to
hit you in the face with paintbrushes when you were a kid. And so, impulsively,
you conclude that this new Somebody is likely a non-friend. You wince at their
hair. You hang up phones loudly during crucial moments in their anecdotes. You
use your pogo stick right there where they are trying to walk!
Six months later, somehow, you and Somebody are sitting at a fountain having a
perfectly good chat. Their face doesnt look so much like that childhood
nemesis. Youve met the Good Twin. You clicked.
So whereas I should probably be pounding your teeth in with hype about Ruby and
the tightly-knit cadre of pertinent acronyms that accompany it everywhere
(whetting the collective whistles of your bosses and their bosses bosses),
instead I will just let you coast. Ill let you free-fall through some code,
interjecting occasionally with my own heartfelt experiences. Itll be quite
easy, quite natural.
I should offer you some sort of motivation, though. So, Smotchkkiss, Im going
to give my three best reasons to learn Ruby and be done with it.

  1. Brain health.
    Vitamin R. Goes straight to the head. Ruby will teach you to express your
    ideas through a computer. You will be writing stories for a machine.
    Creative skills, people. Deduction. Reason. Nodding intelligently. The
    language will become a tool for you to better connect your mind to the world.
    Ive noticed that many experienced users of Ruby seem to be clear thinkers and
    objective. (In contrast to: heavily biased and coarse.)
  2. One man on one island.
    Ruby was born in Japan. Which is freaky. Japan is not known for its
    software. And since programming languages are largely written in English, who
    would suspect a language to come from Japan?
    And yet, here we have Ruby. Against the odds, Yukihiro Matsumoto created
    Ruby on February 24, 1993. For the past ten years, he has steadily brought Ruby
    to a global audience. Its triumphant and noble and all that. Support diversity.
    Help us tilt the earth just a bit.
  3. Free.
    Using Ruby costs nothing. The code to Ruby itself is open for all of the
    world to inhale/exhale. Heck, this book is free. Its all part of a great, big
    giveaway that should have some big hitch to it.
    Youd think wed make you buy vacuums or timeshare or fake Monets. Youd
    think thered be a 90 minute presentation where the owner of the company comes
    out at the end and knuckles you into sealing the deal.
    Nope, free.

With that, its time for the book to begin. You can now get out your highlighter
and start dragging it along each captivating word from this sentence on. I think
I have enough hairspray and funny money on my person to keep me sustained until
the final page.
4. How Books Start
Now, if you ever have read a book, you know that no book can properly start
without an exorbitant amount of synergy. Yes, synergy. Maybe you didnt know
this. Synergy means that you and I are supposed to cooperate to make this a
great reading experience.
We start off the book by getting along well in the Introduction. This
togetherness, this synergy, propels us through the book, with me guiding you
on your way. You give me a reassuring nod or snicker to indicate your progress.
Im Peter Pan holding your hand. Come on, Wendy! Second star to the right and on
till morning.
One problem here. I dont get along well with people. I dont hold hands very
Any of my staff will tell you. At the Opening Ceremonies of This Book (a catered
event with stadium seating), I discovered that the cucumber sandwiches werent
served in tea towels. As a result, the butter hadnt set with the cucumbers
right Anyways, I made a big scene and set fire to some of the advertising
trucks outside. I smashed this spotlight to pieces and so on. I had this loud
maniacal laughing thing going on deep into that night. It was a real mess.
But, since I dont get along well with people, I hadnt invited anyone but
myself to the Opening Ceremonies of This Book. So it wasnt really that
embarrassing. I kept it under wraps and no one found out about the whole ordeal.
So youve got to know that synergy doesnt actually mean synergy in this
book. I cant do normal synergy. No, in this book, synergy means
cartoon foxes. What Im saying is: this book will be starting off with an
exorbitant amount of cartoon foxes.
And I will be counting on you to turn them into synergy.
Turn page.