Best programming language to learn (see details)
Asked by
PhiNotPi (
12686)
June 9th, 2011
Right now I know one programming language, which is Perl. I am looking to learn another programming language that I can use to create graphical, interactive programs. I know that which language I should use depends on what I plan on using it for, so here are my intentions:
1) I plan on programming for fun (nothing serious).
2) I plan on creating something graphical (more than a command line interface).
3) I need interactive programs (not very fun otherwise).
4) (Not an intention, but an important fact) I have little programming expirience beyond Perl.
What would be a good programming language to learn, based on the above?
Observing members:
0
Composing members:
0
7 Answers
One language that is quite unknown to a lot of people is the Processing program. It is a code that can do a wide range of things but is best for making some sort of artistic expression. It is easy to learn and is free to get from the internet but serious enough that colleges are now creating courses based upon this coding program.
Given your experience with Perl and your requirements, I recommend Python.
Python, like Perl, is a cross-platform interpreted language. It has several graphical toolkits available, including one cross-platform one (WxWindows, iirc- the others depend on GTK+ or Qt or such).
If you want a graphical IDE then there are several available. IDLE is the one I’ve used, I like it OK but not enough to recommend it. Eclipse also has a Python plugin if you like Eclipse. Or you can just use a good old text editor.
Also like Perl, Python is a mature language with lots of support and excellent documentation (better than Perl’s IMO).
And If you are a Monty Python fan, then There Is Only One Way To Do It!
Python is an excellent language for many different things on many different platforms. There are lots of toolkits out there that allow you to do lots of neat things.
If you’re interested in making stuff for OSX, iOS (iPhone, iPad) then you should learn Objective-C. Objective-C is a really excellent language once you learn it’s nuances that allows lots of flexibility doing things at the runtime, dropping down into low level C code for some tasks, and staying with high level objects for most everything else. It’s compiled, so you have the compiler finding your mistakes for you and language features like garbage collection, blocks and categories make the language very flexible.
javascript + html 5 canvas
(although I’ve become a fan of coffeescript and together with processing it could be fun)
Answer this question
This question is in the General Section. Responses must be helpful and on-topic.