USA/UK English

Elixir: behind the Brazilian programming language

Elixir, first of all, it is worth mentioning, is a language of Brazilian birth, created, developed and maintained by José Valim, in 2011, together with the Development and Research (R&D) nucleus of Plataformatec.

By its own definition, Elixir is “a dynamic and functional language, designed to build scalable and sustainable applications”.

The language was developed to run on the Erlang VM virtual machine, with the objective of increasing the productivity and extensibility of the Erlang language ecosystem, created in the 80’s for multiple purposes.

In 2012, Elixir was presented as “a modern programming approach to Erlang VM” and thought of as an alternative for web development.

A “Elixir promise” was simple: “access the power of the Erlang VM through a much more modern and user-friendly.”

Learn to program through a modern method that combines learning and opportunities

Vital Promises

One of the most successful cases of Elixir execution, within the web ecosystem, is the Discord communication.

According to the team of developers, the choice for Elixir came from the beginning, when they aimed to create a highly concurrent system in real time — the Discord prototype was programmed in Elixir, betting on the promises that the language made when running in the virtual machine.

For them, the “Elixir promise” was simple: “access the power of Erlang VM through a much more modern and user-friendly language.”

However, as it is a relatively new ecosystem, built on an old tool, adaptation and success came later from a series of experiments and research.

In this extensive article, published in 2017, Discord presents robust documentation about its experience building the platform and tries to answer the question : How did they manage to scale Elixir to support five million concurrent users?

Community Collaboration

In addition to Discord, hundreds of other companies have adopted the language for problem solving, believing in the advantages of their ecosystem built on Erlang VM.

You can check a “small” list of them here.

According to Valim, in this documentary for Honeypot, from the beginning its project was developed to be Open Source, so that “anyone could come in at any time and leave ideas, contribute and share.”

The initial challenge was to pass on the ” Elixir promise” and convince developers of the importance and potential that technology could reach. The initiative to be Open Source contributed to the maturation of the project, as it was motivated by several companies that started to adopt and bet on the language. That way you “don’t feel alone”, notes Valim.

>Be part of a community, share and learn from other developers

Take the problem off the table

We’ve talked a few times here about the creation of new languages, it seems that programmers and software engineers think like this: “I have a problem, I’m going to create a language.”

However, we know that the reality is much more complex. Systems and technologies are thought and developed, many times, to solve specific problems or foresee possible difficulties in the future.

That’s how Elixir came about. According to Valim, the original demand came from the need to write efficient code within a reality with multiple CPU cores, something that traditional languages ​​— Java, Ruby, Python and Erlang itself — struggled with.

Seeing the efficiency of Erlang VM to deal with the high demand of telephony in the 80’s, Valim had the insight to take advantage of the technology and insert a language that could solve, once and for all, modern competition problems with the arrival of the web.

As he says in the aforementioned documentary:

“I have this absolutely beautiful software which is Erlang VM, I want to use it more but it’s missing things so I’m going to add these things I need.”

Creativity and solutions

From a philosophical point of view, the contribution of Elixir can overcome barriers of practical market logic. In addition to proposing the solution to a problem, the creation of José Valim, and Plataformatec, proposes a technology, based on the collaboration of open source, willing to present creative alternatives for the community of programmers.

The application of Elixir and its ecosystem has a lot to teach us and to develop itself in the process. You can check out more about the project at this official link here. Take the opportunity to learn more about Valim in this interview given to the programming portal Welcome to the Jungle, where he goes into more detail about his career and where the inspirations for the development of Elixir came from.

Mostrar mais

Artigos relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Botão Voltar ao topo