From the perspective of someone who is looking for a first programming language or a language that is dead simple to use for basic tasks, I think Ruby is a great choice. I think this is primarily because the syntax can be very intuitive, especially compared to something like perl. Ruby code is generally readable even to someone who doesn't know Ruby (there are some exceptions of course, as Ruby can be very terse in t…
Ruby code is generally readable even to someone who doesn't know Ruby.... I hear this claim often about many languages. I'd like to see some sort of proof, as well as some explanation of why that should matter.
It doesn't.
I've heard the same thing, or some variation ("It's executable pseudo-code!"), and thought it a useful indicator of some intangible but important goodness, but it doesn't hold up.
Look at Haskell. (No, really, you won't go blind. ) Few people are going to claim it's generally readable to the uninitiated, but so what? So is French, for a lot of people. The thing is, if you think it would be useful, you learn it, and at that point the value of "readable to people who haven't learned it" goes to nil.
You could argue that some languages (maybe Haskell) maintain a level of inscrutability for a long time as you are learning; you continue to spend too much time decoding text when you could be zipping along with some reads-just-like-English language.
But that's a different issue. "Difficult to obtain proficiency" is not the same as "intelligible to outsiders", and concerns different value to the programmer. Plus, the cost of proficiency needs to be weighed against the return on effort. (Consider Vim or Emacs. Worth the effort to learn? An awful lot of people seem to think so.)
It may take longer to become proficient in (say) Haskell than in Ruby, but the long term payoff may be that you become far more efficient, with your code being far more concise.
There's a difference between BASIC and Brainfuck, and some language comparisons are just apples and oranges, but the value of being easy or readable to newbies or outsiders is largely tied to the value of being a newbie or an outsider. Once you are neither you really need your language to have other strengths.
(Which certainly Ruby has, and its those strengths people should use to sell it.)