Eventually yes, if one wants to participate in open source or work professionally or write a very non-trivial application, but why would you need to understand OTP and actors and such when you're first learning? A hello world can literally just be a single line:
IO.puts("Hello World")
and you execute it with: `elixir hello_world.exs`When you get to parallelizable stuff, I think every language will have a learning curve. I do tend to think that OTP/erlang stuff would be harder, but thinking further on it I'm not sure why it would be harder than say threads or runnables in java or ruby, or asynchronous stuff (promises and callbacks) in javascript. Definitely interesting to think about.
The Elixir stuff that I was thinking of that might be harder are things like immutability, pattern matching, anonymous (aka lambda) functions, etc. To some extent though even those can be avoided if you're writing simple personal scripts or solving Project Euler problems.
Definitely worth some thought though, thanks