In this class, we teach students how to code in Python. I never cease to be amazed by the passion with which geeks can debate the relative merits of different programming languages (and the underlying programming approaches they represent). I’m not here to swear fealty to the House of Python and claim that we made the only logical choice. But I think Python works amazingly well for us, and I don’t regret the choice for a minute. Here are the pros and cons.
Pros
Widespread adoption
Easy to learn
Tons of online resources
Great library support
Cons
Dynamic typing might spur bad habits
Horrible regular expression syntax
The Version 3 and 2 mess
The competitors
Javascript
Nothing else, really. Maybe R?
Don’t learn a language-a-week when you’re just starting out.
My “third language” theory.