Elixir, een korte introductie

Joost

Geschreven door Joost Saanen op 14-9-2017
3 minuten leestijd

Wil je een webapplicatie (laten) bouwen met een krachtige backend. Een applicatie die makkelijk schaalbaar is zodat deze door miljoenen mensen kan worden gebruikt? Of zoek je een systeem wat betrouwbaar is en klaar is voor de “Internet of Things”-toekomst?

Elixir is één van de snelst groeiende programmeertalen van dit moment — en dat is niet voor niets. Zonder al te diep in te gaan op de techniek, probeer ik in deze blogpost in het kort uit te leggen wat Elixir is en waarom het zo goed is.

elixir

Ontstaan Elixir

Elixir is ontwikkeld door José Valim en ‘geboren’ op september 2014. Elixir wordt nog steeds doorontwikkeld en op 1 augustus 2017 is versie 1.5.1 uitgebracht. Momenteel zijn er zo’n 600 actieve contributors (developers die mee ontwikkelen aan Elixir) aangemeld bij het Elixir-project.

Elixir is populair binnen de Ruby on Rails community en wordt door veel Ruby on Rails ontwikkelaars omarmd. Een reden hiervan is dat de bedenker José, ook team member is van het Ruby on Rails core team. Dat het zo geliefd is bij developers, heeft ook te maken met de ‘developer happiness’ die het brengt. Door de goed leesbare, simpele en elegante syntax is het voor een developer een plezier om mee te werken. Iets waar Ruby on Rails ook bekendheid mee heeft verworven. Bij Elixir is dit net zo. Elixir heeft meer te bieden dan Ruby (in een latere blogpost zullen we hier verder op in gaan). Daarnaast zijn er krachtige functies en features van andere talen zoals bijvoorbeeld Clojure en Python overgenomen.

Wat is Elixir?

In tegenstelling tot Ruby, is Elixir een functionele programmeertaal. De kracht van Elixir zit hem misschien wel in de onderliggende laag: de BEAM Virtual Machine. Dit is dezelfde VM waar Erlang op draait. BEAM is open source en heeft zich in de meer dan 20 jaar dat het oud is, al aardig bewezen. Erlang is een programmeertaal die voornamelijk bij telecombedrijven wordt gebruikt. Het wordt inmiddels bij 60% van al het 4G-verkeer wereldwijd gebruikt en wordt ook succesvol ingezet bij grote bedrijven.

Een goed voorbeeld van zo’n bedrijf is WhatsApp. Erlang heeft hier een sterke bijdrage aan het mogelijk maken van berichtenverkeer voor de bijna één miljard(!) gebruikers.

Om je een idee te geven: Er worden bij WhatsApp dagelijks 2x zoveel berichten gestuurd dan bij alle telecombedrijven bij elkaar. En wat veel mensen niet weten is dat WhatsApp minder dan 70 developers in dienst heeft. Dat zegt ook iets over de gebruikte techniek.

Je kunt Elixir vergelijken met Erlang. Het heeft dezelfde krachtige elementen (en meer) en maakt gebruik van dezelfde onderliggende Virtual Machine. Het verschil is dat Elixir meer toegankelijk is voor de moderne developer.

Interesse?

Ben je geïnteresseerd in Elixir? Overweeg je om het te gebruiken voor een project? Wij durven ons bij Kabisa inmiddels wel Elixir-experts te noemen. We hebben al een aantal Elixir-projecten met succes afgerond. Maar ook zijn er verscheidene collega’s die reeds een bijdrage hebben geleverd aan het Elixir eco-systeem. Dit bijvoorbeeld door contributions op verschillende libraries of presentaties bij Elixir-events. Zoek je zo’n Elixir-expert? Neem dan contact met ons op. Wij helpen je graag verder.

Joost

Joost Saanen

Gepassioneerde all-rounder met brede interesses; van serverbeheer en cloudhosting tot (UI)design en (web)development. Hardloopt en schrijft het liefst tegelijk.