Erlang - Because it handles scalability and reliability very well, is Actor based (each process being an Actor), has a great library for backend stuff in OTP, and because I love it.
Tie between Elixir (because scripting language that runs on Erlang BEAM), and Javascript (because it is so ubiquitous, despite having so many bad parts - though it has a fair share of good parts too).
Java - Because it is the modern COBOL...everyone hates it, but there are so many systems and shops that use Java that it becomes a de factor requirement to learn it.
Close runners up are:
* Clojure - Because it is based on Scheme, which is based on Lisp, and takes the functional approach.
* Python - Because the philosophy and syntax are beautiful
* Ruby - Because it is really fast to get web server stuff done
Tie between Elixir (because scripting language that runs on Erlang BEAM), and Javascript (because it is so ubiquitous, despite having so many bad parts - though it has a fair share of good parts too).
Java - Because it is the modern COBOL...everyone hates it, but there are so many systems and shops that use Java that it becomes a de factor requirement to learn it.
Close runners up are:
* Clojure - Because it is based on Scheme, which is based on Lisp, and takes the functional approach. * Python - Because the philosophy and syntax are beautiful * Ruby - Because it is really fast to get web server stuff done