What programming language do you want to learn and become an expert it? Why?<p>It can be one that you want to become a master in or maybe it is one that you wish you had time to even learn. Perhaps it is a language you've read about, but haven't even seen a line of code written in it.<p>Mine is C. I am proficient in C, but really wish I had the time to master it and truly know the in's and out's of.
I'd like to master Python. Mainly just because it is so powerful and useful for the kinds of things I need. I wouldn't mind mastering C simply for the badass-ness of the language, but going that low level isn't what I enjoy. Python allows for quick project turnarounds and is, in my opinion, a beautiful language.
Why the focus on language? Programming languages abstract some programming ideas and provide a framework for expressing them easily, but the ideas and abstractions that are used to construct programs are independent of the programming language. I am reminded of a quote from Michael Griffiths (I think from one of the 1962 Software Engineering Conferences) to the effect that he always used the same programming language [that is, programming elements] no matter what the compiler.
Mine is definitely lisp (or currently ... scheme).<p>After following along the with the whole "You should learn a new language every year" line of thinking for a few years, I realized most of the languages I was choosing were all fairly similar - Perl, C++, Java, Python, Ruby, Javascript etc. (Not to say I'm a master in all of them, but I'm at least somewhat proficient in most, and reasonably competent with Ruby and JS)<p>I'm currently working on trying to master a lisp variant just because it's different from what I know and use. I started off with CommonLisp using the "Land of Lisp" book, but found the lack of exercises in the text made it of limited value. I've now started with scheme using "Structure and Interpretation of Computer Programs" book - I'm finding this a lot harder due to the maths involved, but hopefully things should start to become clearer soon =)<p>I'm guessing after this, my target for next year will be something like Haskell.
ok don't shoot me...python.<p>I'm alright with low level stuff but I want to pick up Python so I can roll out prototypes after prototypes to run on Google App Engine.<p>That and Python is SO full featured. Libraries for everything from statistics to visualizing stuff to image manipulation!
Haskell. I've seen a lot of haskell code, and have always been impressed with how few lines of code it takes to express complex ideas. Been reading "Learn You A Haskell" to get started, but it's coming along a lot slower than scheme.
erlang is concise, and useful for systems with a lot of message passing. and scales on both multi-core and clusters seamlessly
definitely going to learn it in the near future