4 ms·
It depends what your goal is. Do you want to learn to be a good programmer, or are you looking to, for example, make a website as soon as possible? Is your visi
by fnordsensei 12y ago
It depends what your goal is. Do you want to learn to be a good programmer, or are you looking to, for example, make a website as soon as possible? Is your vision to eventually make apps? Do you want to learn the "art" of programming or the "craft" of programming? You'll end up learning both if you pursue it, but this may impact where you start out.
Some people argue that starting with a functional language will make you a better object oriented programmer later on, while the reverse is less often true. If you believe in this, I would recommend Clojure from personal experience.
In my first programming courses at university, we used Lisp and ML. This was for learning the "art" of programming, i.e., learning to think like a programmer. Once you picked a course that was arguably more about the "craft", you were exposed to a language more native to the domain. As I choose to go towards front end related stuff, I was exposed to JavaScript and (at the time) ActionScript.
I ended up not working as a programmer; I'm UX designer. When I need to, I program most of my interactive prototypes in ClojureScript. Two years ago, that would have been JS, but I found that Clojure conforms to my thoughts rather than the other way around.
So, depending on where you are and where you are going, you might benefit from different advice, I think.