Programming languages: where to begin?
There's been tremendous evolution in the programming language space, as new coding philosophies and paradigms change over time to address old problems or new visions. But how to decide where to invest your time and energy?
Apple's new Swift language is the newborn on the block, and iOS developers seem to be impressed. Infoworld recommends nine languages that make writing Javascript a joy, if that's possible (coffeescript, gorillascript, typescript, and others). Venturebeat recommends you start with Javascript before moving onto something like Python or Ruby. The Google engineer who invented Dart, Gilad Bracha, deplores the dearth of viable programming languages that would allow the Web to compete with native code. CIO also recommends Javascript, but also suggests budding web designers also look into Opa, Scala, and Erlang, among others.
Or should you just throw in the towel, and have a little fun with something totally useless like Brainfuck, or the Arnold Schwartzenegger programming language?
Apple's new Swift language is the newborn on the block, and iOS developers seem to be impressed. Infoworld recommends nine languages that make writing Javascript a joy, if that's possible (coffeescript, gorillascript, typescript, and others). Venturebeat recommends you start with Javascript before moving onto something like Python or Ruby. The Google engineer who invented Dart, Gilad Bracha, deplores the dearth of viable programming languages that would allow the Web to compete with native code. CIO also recommends Javascript, but also suggests budding web designers also look into Opa, Scala, and Erlang, among others.
Or should you just throw in the towel, and have a little fun with something totally useless like Brainfuck, or the Arnold Schwartzenegger programming language?
If you want to learn to program, then I'd recommend starting with something simple and then adding to it. I started my college education with Pascal, and I can't think of a reason that was a bad choice then, or would be now. But very soon thereafter I did some of:
* C
* ADA
* Prolog
* lisp
* Assembly (68000)
These days I would probably recommend starting with something like pascal - simple, no (c style) pointers, no OO. And then
* C (understand the machine)
* Maybe some assembly - but maybe not
* Something OO (Java, python, ruby)
* Something crazy (Prolog)
* Something DI (maybe javascript)
You could do a lot worse than http://pragprog.com/book/btlang/seven-languages-in-seven-weeks once you have the fundamentals.