How to choose the right language
russell: Consider expressiveness.  The number of lines of code that a programmer can write in a month tends to be a constant independent of language.  A program in Java takes 2 to 5 times as many lines of code as in Python.  In Java you will get a lot less accomplished.Take a look at the standard libraries and third party packages.  If someone else has written it, you dont have to, unless you want the experience. Python, Java, and Perl have lots.  Ruby and IO less so.Look at job listings.  If you are starting out, you might as well pick on that you can get money for.Look at the communities.  Are the people ones that you would like to hang around with.  If they dont like newbies, look elsewhere.  Python seems to be pretty good in that respect.As for web development, Python has Django (I recommend) and Pylons.  Ruby has Rails.  Stay away from Java; everything is too damned complicated, but there are a lot of jobs.