…it’s a new year now and I’m looking for a new language. So what do I learn?
Smalltalk has been recommended but I think I may have already learned some of it’s most important lessons through Ruby.
From chatting to colleagues, I’ve narrowed the list down to:
- LISP (with CLOS and MOP)
So, which one should it be? How will they change the way I think? What will you be learning this year?
Last year I looked at:
Python, Ruby, Lisp, Scheme and Haskell. I bought books about 2 of them. I actually ended up learning Perl. Which, if you’re a zealot, means you learned the best bits of all of them. Not my place to comment on that though. I also dabbled a bit in Smalltalk, to the extent I can now read it, if not yet code fluently in it.
From your list, Joe, I’d say go for Scheme if you feel like exploring just how much can be done with just lists and heaps of recursion. Or try Haskell for some truly functional coding. Both paradigms are significantly differerent from (ahem) run-of-the-mill OO development.
My current thoughts for this year are that I want to try Ruby or Haskell or something truly off the wall like OCAML or Erlang.
I’ll probably end up learning Python as I’ve started getting into Marathon Man, which uses Jython to script its tests. I find learning a new language without a context to apply it to somewhat dry and rather unfulfilling. Its similar to how much more quickly you learn a foreign tongue when you are in that country than you do from books and lessons.