From: David Masover Date: 2008-05-28T22:04:13+09:00 Subject: Re: Should I Learn Ruby as a First Language? On Wednesday 28 May 2008 07:45:00 MRH wrote: > Throughout my research into this question, I have seen that the more > credible sources recommend either Python or Ruby, and I am personally > leaning quite heavily toward Ruby, yet I would very much like to read > the thoughts of the group on this question. Depends what you want to do, and how far you want to go. For a first language, either Python or Ruby are fine. Python has stricter syntax, but I suspect Ruby has stricter concepts (of OO, etc). I find Ruby easier to read, but that's an opinion. If you want to get a good concept of programming in general, you should learn (and develop at least some small apps in) a variety of languages -- and a variety of very different languages. So, at least one language low-level enough not to do garbage collection (C, ASM, etc), at least one high-level "scripting" language (Ruby, Python, Perl, JavaScript), at least one purely functional language (Haskell), and I'll throw in LISP and either Erlang or Smalltalk. I'm not sure it matters what order you do this in -- pick whichever has the best absolute beginner books. I would suggest a tight feedback loop for learning, though -- look for interactive interpreter shells (Python, IRB), and avoid compilers (C, C++, Java). And others will have other lists. If you don't have that kind of attention span, or if you're looking to learn what it takes to get stuff done now, that depends very much on what you want to do. For example, if you're planning to do game development, you're probably going to have to know C++, and definitely at least C. If you're just looking to automate some high-level tasks on Unix, learn Bash. And so on.