Will learning elixir is enough to build? or i should learn Elixir too?
They both compile to the same VM, so at the end of the day, they care capable of the same things. The best advice I can give you would be to pick that language that you can identify with the best. For some people, that will be Erlang. For others, it will be Elixir.
I did a video on if you should choose Erlang or Elixir. But in general you should be fine just knowing Elixir
do you have did any course in Elixir?
Elixir is sufficient, although you might not even need this. I would do all the heavy lifting using MongooseIM / Ejabbered.
For a basic app you would need:
- Elixir (backend)
This would likely be a good starter project. Erlang would not be necessary.
what about phoenix? @Fl4m3Ph03n1x
He probably meant Elixir/Phoenix (backend), as Elixir is the language, and Phoenix the web framework.
Which also could be Erlang/Cowboy.
You could use Phoenix, like @kokolegorille said, however this is where I will drop the it depends bomb.
- If your objective is to get out something fast that works, sure, go with Phoenix.
- If your main objective is to learn how Elixir works and how to properly use the Actor model, I would suggest you discard it.
Frameworks are not mandatory. You can certainly build a chat server without one, but it depends on your objectives. At my work for example, we rarely use Phoenix, we opt instead to use Plug and do layers of logic on top of each other, using Cowboy for pools. It really depends on what you want.