

Ask HN: Is learning Scala/Clojure/Haskell a good career move? - conoryoung

Given that our lives are not infinite and that, as much as it is always a good idea to learn as many different problem-solving approaches that various programming languages can open our minds up to, is it a good career move to learn one of these languages? Are there jobs? Will there be? Is there a future in these languages? Do any big companies use them now or plan on using them? I think I heard Twitter dissed Ruby in favor of Scala but I don't know if that really means much.
======
KirinDave
It is a good thing to diversify.

(t) I learned Erlang and Lisp and literally carved out a part of Powerset that
had a problem to solve. Now my Erlang code is part of bing.com, and our
startup got bought and integrated into Microsoft.com.

(t - 1) I decided to learn Ruby, and started to do a bit of open source work
with it. It managed to get me out of a dead end career grind at Lockheed
Martin by catching the eye of a silicon valley recruiter.

(t - 2) I decided to learn Lisp, which allowed me to meet a lot of talented
developers and work on some really interesting projects, and network with
climate scientists who were working in conjunction with me as part of Lockheed
Martin RSAII project doing data modeling. This helped me land a job at
Lockheed during the worst parts of the post-bubble recession, elevating me
from hand-to-mouth temp work (you sure do type fast, sir!) to software
engineering.

------
astrec
There are a few great Java and C# programmers, quite a number who are good and
a great majority who are mediocre or bad.

In my experience, those who hack scala/clojure/lisp/ocaml/f#/haskell/lua etc.
in their spare time trend towards the great/good end of the spectrum.

To answer your question more directly: Yes. I'll nearly always hire you over
someone who wishes simply "to further my J2EE experience".

------
tsally
As a general rule, if you're trying to build a career in industry, no. If
you're trying to start your own company, use whatever blows your hair back.

~~~
conoryoung
So I take it you don't believe any of these languages are going to achieve
much traction in the business world. That's generally my take too. But there's
still a lingering doubt: what if one of these is the "next big thing"? Just
like you would have kicked yourself if you had had the opportunity to buy
Google shares when they had not yet passed $10.

~~~
tsally
Depends on your timeframe. At the moment anything that runs on the JVM has a
decent chance. There are certainly pure Ruby and Python shops that exist now.
Hell, there's even a Common Lisp shop in Boston (ITA). However, you'll find it
difficult to get away with not knowing Java and/or C++.

The next big thing in software is the same thing is was 15 years ago: knowing
how to program well. This is no easy task. Focus on doing this and don't worry
about the language. It's far easier to learn a new language than it is
learning how to be a great programmer. For a starting point see:
<http://norvig.com/21-days.html>.

(The only thing I would add to that is that knowing how to program parallel
and concurrent programs is pretty important. Don't even go there until you've
got the basics down though.)

------
jhancock
Scala may get more mainstream traction. Haskell is good to learn if your also
great at maths and can swing a job in elite financial circles. Erlang is
certainly catching on. Can't speak for Clojure.

I learned Scala and erlang. Did a real world webapp with erlang 5 years ago
before it was noticeably cool. Didn't me make any money aside from the one
project (I chose the tech myself simply out of interest). Both scala and
erlang helped me be a better programmer and renew my flagging interests. Other
than that, I haven't seen any financial profits from it. I'm using ruby now
simply because I have webapps to run and its the simplest way to get the job
done.

Previous comments that people that learn these langs are putting themselves in
better company are on target.

