Is Elixir a good first language?

After html & css is Elixir recommended as a good first programming language for web apps and backeds of mobile apps?

1 Like

I know that José has mentioned that he would love to see material/a book aimed more at newbies, and so I think it’s only a matter of time before that happens.

In the meantime I guess it depends on you and whether you can learn from material that may not necessarily be aimed at newbies. The Getting Started guides on the Elixir Lang site are actually pretty good - so I would suggest having a read of that to see if it ‘makes sense’.


I agree that it would be better if there were more learning materials aimed at programming newbies. I would definitely recommend picking up a functional language like Elixir for a first language though! You can come to imperative/stateful/OOP languages when the time comes. As far as learning core programming concepts, and especially those relevant to us today, like concurrency, I think Elixir is a great way to go about it.


Elixir is very promising language… But from more practical point of view You will have much better chances finding a job with some of the mainstream languages like: JavaScript, Java or C#… So if You’re into HTML/CSS I think You should focus on JS/Node and related frameworks… maybe Go also… And You can just learn Elixir step-by-step after You will start You career in IT :slight_smile:


I think the first language should always be a more popluar one (like java or c), at least its easier when you find examples for everything.
However if you want to start learning elixir by doing something practical, i can recommend the programming phoenix book tho.


Just my opinion, but I think a functional language should be the first language, then move to more applicable (more jobs) languages like C# or Java. Especially in this multi-core age.

The reason why I say this is because functional languages teach you be cognizant of things that are important such as state management. Immutability is easier to manage than mutability. Not having to worry about nuances like immutability makes the learning curve smoother.

One of the reasons why I like Elixir so much is because it’s simplicity applies to a broader spectrum of problem solving. A simple function can solve the same problems that I have to solve with classes, inheritance, overriding members, interfaces, and coordinating 3 or more stateful objects at the same time.


Temporarily no, it’s not because newbie-ready ecosystem must develop first. The StackOverflow must fill up, newbie books must appear, etc.


Ask yourself where you want to go, what you want to do for a living. For example - if you’re interested in IoT you should learn programming languages that are working well with embedded devices (and it depends to some degree on the device environment). Or, as mentioned afore, if you are heading towards web development you should learn js and at least basic sql. Last example: driver development c and some assembler.

To sum it up: It depends on where you want to go. If it’s pure (no pun intended) recreational coding - feel free.
If you want to make a living out of coding: what are the main languages in the industry you want to work.