But really what’s most important is learning portable skills, which amounts to learning about different approaches. In that case, I’d say learn both.
There are a lot of interesting ideas in both languages.
(I learned a lot of great ideas from Go, especially about concurrency. I think it’s great for writing the kind of frameworks where that matters. But in terms of “normal” business logic programming, I think it’s trash. It not ergonomic at all.)
What’s your background? I’ve mainly used language with huge standard libraries and Go’s intentionally small standard library feels very unergonomic sometimes (I miss sets).
Elixir feels very ergonomic to me, but a lot of programmers struggle with the lack of typing.
Jobs? Probably Go.
But really what’s most important is learning portable skills, which amounts to learning about different approaches. In that case, I’d say learn both.
There are a lot of interesting ideas in both languages.
(I learned a lot of great ideas from Go, especially about concurrency. I think it’s great for writing the kind of frameworks where that matters. But in terms of “normal” business logic programming, I think it’s trash. It not ergonomic at all.)
What lang would be ergonomic you’d say?
Python is ergonomic. It’s very expressive without the language feeling too magical.
If you are comfortable “programming with types” then Rust is a very ergonomic language. But it does take a while to get your brain thinking in Rust.
It’s also useful to have counter examples.
C is not ergonomic. You basically have to reimplement collections for different applications.
What’s your background? I’ve mainly used language with huge standard libraries and Go’s intentionally small standard library feels very unergonomic sometimes (I miss sets).
Elixir feels very ergonomic to me, but a lot of programmers struggle with the lack of typing.
I came from JavaScript NodeJS and Python.
I’ve learnt Elixir and it seems like it’s packed with lots of features/patterns.