I try to avoid programming in Java where possible, preferring scripting languages such as Perl, Python, and Ruby. However, it is quite often that you are forced to program against some vendor given API which is available only in Java or .NET. One alternative is to use Jython or JRuby - a Python and Ruby Java interpretor respectively. This allows you to write your code in Python or Ruby with seamless access to any Java class or object.

I’m quite familar with Python and decided to try JRuby instead with all the (recent / past ?) hype with Rails. While learning the language I stumbled upon Why’s (Poignant) Guide to Ruby. To put it simply, this is one of the best and most entertaining programming books I’ve read to date - I even managed to finish the whole book in one go. Really liked the Intro :

Pretend that you’ve 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.)

No. Please don’t puzzle over it. You don’t need to do anything with the onion. Set the onion aside and let it do something with you.

I’ll 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 Why’s (Poignant) Guide to Ruby, so you can always have this book’s tender companionship.

You really must sob once. Or at least sniffle. And if not, then the onion will make it all happen for you.

I didn’t cry, but was really impressed with the features and elegance of of the language. In some ways, it does really live up to its hype.