Secondly, this article is far more verbose than necessary when compared to the succinct 5-paragraph explanation provided by David Flanagan in "The Ruby Programming Language" p. 69-70 [1]
It's great that you took a chance to dive into the source of Ruby. Nonetheless, it's times like these when I wish people would understand that the best way to learn a programming language is by example AND by documentation (whether official docs or books). Those that ONLY learn by example fail to understand or unlock the true power of a language until it's too late.
[1] http://www.amazon.com/Ruby-Programming-Language-David-Flanag...
http://shop.oreilly.com/product/9780596516178.do
Know the fundamentals.
That said, the Pragmatic Programmer's book Agile Development with Rails is a pretty good intro: http://pragprog.com/titles/rails3/agile-web-development-with...
But, with Rails 3 (with many changes) coming in the next few months, books are going to become outdated yet again.
As for Ruby in general, the fairly recent The Ruby Programming Language (http://www.amazon.com/Ruby-Programming-Language-David-Flanag...) is a pretty good intro. David Black's The Well-Grounded Rubyist (http://www.amazon.com/Well-Grounded-Rubyist-David-Black/dp/1...) is recent, and I'm sure a great book, as his previous (Ruby for Rails) was excellent.
One of the reasons you see so much disappointment with ruby is people start with rails and that doesn't really help you become a good ruby programmer. It may actually teach you bad habits and keep you from knowing how the language and http requests, and db requests really work (none of which is that complicated).
I use ruby over python. Mainly because I picked it up first and don't have a good reason to switch. I use merb as my framework, which is a fine choice, but if I had to start again, I might go with Sinatra.
If you do go with Ruby, buy this book: The Ruby Programming Language http://www.amazon.com/Ruby-Programming-Language-David-Flanag...
I have seen no text that comes close to this new book in teaching Ruby.
1. Reading through the Matz book on Ruby (http://oreilly.com/catalog/9780596516178/index.html), there's a very good explanation as to why Ruby/Python/Perl are "scripting" languages as opposed to "programming" languages: no main! That is, whichever file is fed to the interpreter is run (with some exceptions) in order. So these are, and probably always will be, scripting languages.
2. The author vastly underestimates the importance of Javascript...
http://www.amazon.com/Ruby-Programming-Language-David-Flanag...
I think it's the most relevant Ruby book, because it documents the basic thinking and mental approach of the language, which is actually very stable.