Aprendiendo Elixir
Elixir es un lenguaje que conviene aprender por varias razones que si estás aquí tal vez ya conozcas. En este post describiré lo que creo que es un buen camino de aprendizaje para dominarlo completamente. Asumo que ya tienes experiencia programando.
Los recursos que menciono son sobre todo libros, que yo mismo estoy en proceso de estudiar.
Si no te has convencido aún puedes ver este documental:
Empieza aquí
En esta sección encontrarás cómo empezar con el lenguaje y su entorno.
-
Programming Elixir. Algunos lo consideran una introducción demasiado pesada, pero creo que si ya tienes experiencia en programción es necesario recibir instrucción de alguien como Dave Thomas, te exige y te enseña al mismo tiempo.
-
The Little Elixir & OTP Guidebook. Es una introducción más completa a OTP.
Otros recursos, que considero opcionales, pero bastante útiles:
-
Elixir in Action. Escrito por Saša Jurić, uno de los principales contribuidores al ecosistema actual de Elixir.
-
Elixir School - Tutorial para aprender Elixir, me parece que es el único recurso en español.
Elixir para Web
Una vez dominado lo fundamental (y esto es por lo que muchos se acercan a Elixir), puedes aprender Phoenix, el principal framework para programar para web con Elixir.
Recomiendo los siguientes recursos en este orden:
-
Programming Phoenix >=1.4. Es el libro por excelencia sobre Phoenix, creado por el programador de Phoenix, el creador de Elixir y una leyenda de la programación.
-
Functional Web Development with Elixir, OTP, and Phoenix. Presenta un punto de vista muy interesante, habilitado por las capcidades de Erlang y Elixir: estamos listos para crear de nuevo servicios y aplicaciones web que conserven el estado de los datos entre peticiones y que mantengan conexiones persistentes entre el servidor y los clientes, además de que la lógica del negocio, para ser verdaderamente modular y escalable, debería estar completamente separada del framework web que la habilita.
Otros recursos:
- Phoenix Inside Out. Es una serie de libros sobre Phoenix, con cada libro centrado en un tema diferente. El autor los está actualizando para las nuevas versiones.
Conocimiento avanzado
-
Metaprogramming Elixir. Este libro te abrirá la mente acerca de lo que es capaz Elixir como lenguaje de programación y si lo aplicas, pasarás de ser usuario a creador del lenguaje. Además entenderás la razón detrás de algunas de las decisiones del lenguaje.
-
Erlang in Anger. No lo he podido leer, pero el autor, un gran exponente en el mundo de Erlang, siempre está proponiendo maneras de hacer tu aplicación confiable.
Habilidades específicas
-
Property-Based Testing with PropEr, Erlang, and Elixir. Fred Herbert, autor de Erlang in Anger y Learn you some Erlang, nos enseña como hacer Property Testing en Elixir y Erlang.
-
Programming Ecto. Aprende a manejar Ecto de la mano de los creadores de las principales bibliotecas y aplicaciones en Elixir.
Conclusión
Aunque la mayoría de los recursos están en inglés, hay una gran cantidad para empezar a aprender y mejorar tus habilidades en Elixir. Además puedes unirte a la comunidad mundial en Slack, tenemos un canal para México en donde puedes pedir ayuda si te trabas en algo.
Comentar