
Ask HN: Do you have a favourite language, but actually work in something else? - mromnia
I, for example, work in JavaScript in my day job, but my favourite one is probably Elixir. They used to be worlds apart, but since ES7 JS is not that bad... I guess. Still, nothing really beats Elixir&#x27;s immutable-by-default structures, pattern matching and clean concurrency.<p>Are you in a similar situation?
======
itamarst
When I used to interview job candidates I would often ask "what's your
favorite programming language?" Then I would follow up with "what don't you
like about it?"

Inexperienced programmers would have nothing. Experienced programmers would
have things they didn't like, and the specifics were educational.

Going back to your question: languages are tools, and language design is just
part of what makes them useful tools. E.g. Elixir doesn't have all of the
libraries Python has for scientific programming, so if you need those you
might choose Python even for something in Elixir's domain of relevance. You
wouldn't use Elixir for software that is all about mutating state. And so on.

So instead of thinking about favorites, better to ask "what problems is this
language best suited for? which is it not suited for? How do they differ? How
are they the same?" (e.g. [https://codewithoutrules.com/2016/03/10/compare-
contrast/](https://codewithoutrules.com/2016/03/10/compare-contrast/)).

Software is a tool, not a goal. The goal is to solve problems, which is easier
when you use the right tool for the right job.

