I concur, and I'd add that I think Python is better as a first language. The basic language features in Python are all fairly intuitive, and the syntax is about as English-like as you're likely to get. You don't run into weird stuff like all the __methods__ until you do more advanced programming, at which point you'll be ready for them.
Ruby has a bunch of added concepts like sigils, blocks, weird operators, redefinable methods, metaprogramming, etc. These aren't terribly hard to understand if you've been programming a while, but they can be a little overwhelming for a newbie. I'd say Ruby is more suited for a Lisp or Smalltalk refugee that wants something a little more practical, not for a complete newcomer.
In terms of actual programming power, they're both good. Ruby is a little bit more flexible and provides a few more shortcuts for common operators, but anything you can do in Ruby can be done without too much trouble in Python.
Comments
I concur, and I'd add that I think Python is better as a first language. The basic language features in Python are all fairly intuitive, and the syntax is about as English-like as you're likely to get. You don't run into weird stuff like all the __methods__ until you do more advanced programming, at which point you'll be ready for them.
Ruby has a bunch of added concepts like sigils, blocks, weird operators, redefinable methods, metaprogramming, etc. These aren't terribly hard to understand if you've been programming a while, but they can be a little overwhelming for a newbie. I'd say Ruby is more suited for a Lisp or Smalltalk refugee that wants something a little more practical, not for a complete newcomer.
In terms of actual programming power, they're both good. Ruby is a little bit more flexible and provides a few more shortcuts for common operators, but anything you can do in Ruby can be done without too much trouble in Python.