There are lots of little differences between languages. They all have their niches, and there are good and bad points about all of them. The thing is, you can write a program to do anything[1] in any language you choose. Some will make it a bit easier, but the underlying principles are all the same. If you want to learn a language, then it's more useful if you tell us what you want to do with it. The general advice for beginners these days is to go with Javascript or Python. Unless you want to do web development, I'd recommend Python to start with. http://www.codecademy.com/tracks/python [1] Technically correct, the best kind. You can express any algorithm in one programming language in another. The language itself may not have features to allow for certain applications. You can't write a functional hardware driver in Javascript, but you could write a program that simulates one.