El día de ayer, la comunidad de desarrolladores Elixir México realizó su primer MeetUp del 2019 (aquí el link para el streaming del evento), así que es una buena oportunidad para hablar de esta tecnología y por qué es un buen momento para aprenderlo.
Elixir se introdujo por primera vez en 2012. Es un lenguaje funcional de propósito general diseñado para crear aplicaciones escalables y mantenibles.
El lenguaje es compatible con el bytecode visto en la máquina virtual de Erlang (también conocida como BEAM). Su sintaxis a menudo se compara con el siempre popular marco de desarrollo de Ruby on Rails, y podría decirse que lo supera, dado que la productividad que permite Elixir no se compensa con el retraso en el rendimiento, como ocurre con Rails.
A continuación mostramos los puntos del porqué debes aprender Elixir:
- Escalabilidad
El código de Elixir se ejecuta dentro de procesos ligeros y aislados, lo que permite que miles de procesos se ejecuten simultáneamente en la misma máquina. Esto, a su vez, permite la escala vertical y utiliza todos los recursos de una máquina de la manera más eficiente posible.
Estos procesos pueden comunicarse con otros procesos que se ejecutan en diferentes máquinas en la misma red, proporcionando una base sólida para la distribución y permitiendo el escalamiento horizontal.
Tener problemas con el software de ejecución es inevitable, pero el sistema tolerante a fallas de Elixir puede hacer que el proceso sea un poco menos doloroso. Proporciona «supervisores» que puede programar con descripciones de cómo reiniciar ciertas partes de un sistema cuando las cosas fallan.
- Programación funcional
Elixir permite escribir código corto, rápido y fácil de mantener. La coincidencia de patrones permite a los desarrolladores destruir datos y acceder a sus contenidos. Cuando se mezcla con guardas, esto le permite hacer coincidir y hacer valer las condiciones para que el código se ejecute.
- ¿Quién está adoptando Elixir, y por qué?
Los gigantes de los medios sociales como Pinterest y Bleacher Report se han cambiado a Elixir, a menudo con el marco de Phoenix.
Bleacher Report, por ejemplo, dijo que el cambio de Ruby on Rails a Elixir lo ha llevado a reducir su número de servidores requeridos de 150 a solo cinco, y manejar ocho veces más tráfico.
Elixir generalmente se considera una opción superior para los sistemas de alto tráfico, lo que se está convirtiendo en un problema cada vez más apremiante para los desarrolladores, dado que la cantidad de usuarios de Internet se ha triplicado en la última década.
Mientras que las aplicaciones de Rails pueden responder en decenas de cientos de milisegundos a las solicitudes web, las aplicaciones Elixir pueden responder en microsegundos.
La evolución de las necesidades de las empresas significa que lo mejor para los desarrolladores es considerar el desarrollo de una mayor fluidez en la programación de Elixir. Hacerlo realmente podría darle una ventaja sobre otros candidatos.