Tomando una decisión
Hagamos un experimento mental, intentemos imaginarnos haciendo una aplicación en tu lenguaje de programación favorito con estas restricciones:
- Sin tipo de seguridad (como en JavaScript)
- Sin variables, solo constantes.
- Sin atributos de miembro / privados, solo valores estáticos.
- Sin bucles «for» o «while».
- Sin declaración de «si» o «caso».
- Debe ejecutarse simultáneamente en varios núcleos / máquinas
¿Imposible dices? ¡No solo es posible, sino que también te encantará!
Qué es elixir
Elixir es un lenguaje dinámico y funcional diseñado para crear aplicaciones escalables y fáciles de mantener. Elixir aprovecha Erlang VM, conocido por ejecutar sistemas de baja latencia, distribuidos y tolerantes a fallas, mientras que también se utiliza con éxito en el desarrollo web y el dominio de software integrado: http://elixir-lang.org/
Elixir tiene una sintaxis moderna que se basa en lenguajes como Ruby y admite funciones avanzadas de metaprogramación.
Ser un lenguaje funcional te permite abordar los problemas desde otro punto de vista, un punto de vista que te permite tener una app que será:
- Sólida como una roca y fácilmente comprobable.
- «Siempre encendido», cambios de código activo, sin tiempo de inactividad para implementar / actualizar.
- Aprovechar al máximo su máquina / entorno, utilizando cada núcleo de cada máquina.
- Módulos 100% apátridas.
Que es Phoenix
Un marco web productivo que no compromete la velocidad y la capacidad de mantenimiento. – http://www.phoenixframework.org/
Para decirlo en términos simples, Phoenix es para Elixir lo que Rails es para Ruby, es el marco todo en uno que le permitirá hacer aplicaciones web de la manera más rápida y sencilla posible.
Phoenix se basa en Elixir para crear aplicaciones web de muy baja latencia, en un entorno que sigue siendo agradable. Las aplicaciones ultrarrápidas y los entornos de desarrollo agradables ya no son mutuamente excluyentes. Elixir y Phoenix te dan ambos. Los tiempos de respuesta en Phoenix a menudo se miden en microsegundos en lugar de milisegundos.
Dónde aprender más sobre ellos
La intención de esta publicación es principalmente hacerle saber que existen estas increíbles tecnologías, sin entrar demasiado en el aspecto técnico.
Si quieres saber más sobre ellos puedes esperar hasta mi próxima publicación, pero mientras tanto puedes echarle un vistazo aquí:
- Página de inicio de Elixir
- Página de inicio de Phoenix
- Escuela de elixir
- El Bootcamp completo de Elixir y Fénix
Escrito por Alberto Rota