One thing I have learned is that there is nothing that you can do in one language that you can't do in another (assuming Turing complete of course and excluding the odd API call with particularly strange data types - is that cheating?)
While this is true, I have also learned that there are significant differences in convenience and ease of development, that libraries matter a lot for actual applications (as opposed to experimenting to get the 'feel' for a language), and that the new concepts and coding-and-code-structuring conventions I learn along with a new language may be as important as the language itself.
Among my formative experiences, I'd list C, Lisp, Java (namespaces and Javadoc), Javascript and Erlang - they take quite different approaches to computing.
Go offers the most interesting possibilities but also looks the strangest to me. Lisp I'd be re-learning and expanding on my knowledge. ARM assembler for purposes of porting things but also I can't quite resist the low-level.
I'm also considering the "seven languages in seven weeks" book (http://www.pragprog.com/titles/btlang/seven-languages-in-sev... ). I know some of those languages already, but I think it's worthwhile to spend a few weeks getting an overview of what else is out there.
C - Refreshing knowledge by going through K&R and then CII
C++ - Never taught properly at university, so bought Accelerated C++
Java - just bought a copy of Effective Java
I'm starting to go to more local dev events as well, especially those based around Python and Ruby. Can anyone recommend any decent events around London for C++/Java/Scala?Get a MEAP discount code off their website:
http://rubylearning.com/blog/2010/03/09/clojure-101-a-new-co...
scala/lift, clojure (and learning java through those 2!)
erlang, perl (yes, perl, I never used moose before)
-----------
Will get serious at some point:
objective-C, OCaml, haskell,
F# (when i get VS2010 license)
Also, Joy.