First of all, I am a Ruby (and RoR) Zealot...
It's not the prettiest language IMHO, but it's much less hideous than PHP.
Ehh.. Ruby has one of the most elegant syntax possible! Passing blocks of code can be confusing at first but it is so much powerful that once you know about it, you wonder how you lived without!
Also, Ruby as a lot of idiomatic coding, logical default values, etc... I was coding in Java before learning about Ruby and now I deserted java because I find it ugly. Not as ugly has objectiveC, but still...
Ruby and Ruby on rails require more thinking from the developper than other language such as PHP because the framework encourage you to think and come up with a good design. If you do so, you get A LOT of code for free, and that is why a lot of good programmers are embrassing RoR so much. You have to know about MVC, REST, OO to really appreciate RoR.
Each language has a target audience and mantra. R and RoR are the only ones who are made to maximize programmers happiness. This sound cheesy but its true! By doing less coding more thinking you get:
- a better design
- less code to maintain (which increase happiness!)
With a knowledge of database design and some scaffolding you can come up with a complete webapp in under 10mins. And 10 more and you can add autocomplete, validations, and more AJAX crazyness. Of course, a lot of the stuff will be missing, but it will be a working prototype that you can then either modify or rebuilt from scratch.
The real challenge when learning RoR isnt as much as learning Ruby as it is to learn good application design and how/where to apply them.