Puro Elixir es un podcast para la comunidad latina interesada en el lenguage de programación Elixir. Escucha un nuevo episodio cada semana.
... moreShare Puro Elixir
Share to email
Share to Facebook
Share to X
En el episodio de hoy, los peligros de tener un proceso único global en el desarrollo en Elixir. Y apúrense que aún están a tiempo de enviar su propuesta para ser oradores en el Elixir Brasil 2020.
Elixir Brazil
Transcriptions[00:00] - Intro
Hola, ¿Qué tal? programadores latinos, programadores hispano hablantes. Bienvenidos a otro episodio de Puro Elixir.
Este es un podcast en español, creemos que el primero sobre el lenguaje de programación Elixir. Mi nombre es Luis Hurtado, CEO de kommit, una compañía que desarrolla productos en este lenguaje.
Cada semana tomamos el Elixir Radar, que es un newsletter muy famoso en el mundo Elixir y tratamos de sacar una versión en español de ese newsletter.
Este episodio está construido a partir del Elixir Radar número 256, que salió en septiembre 16 del año 2020. Así que sean todos bienvenidos.
[00:52] - Luis
Primer artículo se titula 'Creating a Sonos VolumeKnob with Elixir, the BEAM, and LiveView' en español, sería algo así como 'Creando una perilla de volumen para la plataforma Sonos con el Elixir, Beam y LiveView'. Es un artículo escrito por Steven Fuchs estadounidense. Es un ingeniero senior en DockYard y en el artículo Steven, instala elixir en una Raspberry Pi W, que es un computador pequeñito y hace un proyecto para que con una perilla física pueda subir y bajar el volumen del sistema de audio de su casa que está montado en esa plataforma Sonos.
Los que me conocen saben que yo no soy muy fanático de este tipo de proyectos de hardware, pero en especial este me pareció muy, muy bonito. En general por todas las diferentes tecnologías que conecta y al final logran entender lo que se puede hacer hoy en la casa con la tecnología vigente, es un tema que hace 30 años se consideraría magia hoy en día es lo más normal del mundo.
[01:54] - Luis
El siguiente artículo se titula 'Deploying Elixir on ECS - Part 1' en español sería algo así como: 'Desplegando Elixir en ECS', que es la tecnología de Amazon conocida como Elastic Container Service, su tecnología para manejar y desplegar servicios en contenedores. Está escrito por el estadounidense Matt Silbernagel, es un ingeniero en en Procter & Gamble (P&G) que es la empresa de bienes de consumo más grande del mundo.
El artículo está publicado en su blog. Realmente no es un artículo, eso es una serie de tres artículos, y en los tres Matt nos explica detalladamente cómo hacer Deploy o cómo desplegar una aplicación en Elixir clusterizada dentro de Amazon. Dice que le gustan los servicios tipo PAS o Platform as a Service, tipo Heroku, por ejemplo, pero que definitivamente nada iguala poder desplegar nuestras aplicaciones en Elixir directamente en un cluster y él con ejemplos con código, con todo detallado, explica cómo lo hace él. Entonces es una lectura obligada si tenemos un sistema que desplegar en producción.
[03:04] - Luis
El siguiente artículo se titula 'The dangers of the Single Global Process' Los peligros de tener un proceso único global. Es un artículo escrito por otro estadounidense, Chris Keathley es un ingeniero de software. El post estaba en su blog personal y es un artículo muy interesante porque me cuestiona uno de los patrones más comunes que se están imponiendo o que se están poniendo de moda, por decirlo de alguna manera, en la comunidad de Elixir, en el desarrollo en elixir y es usar procesos únicos globales.
Especialmente lo cuestiona cuando esos procesos ya empiezan a vivir en un clúster que va a ser muy común en el tipo de aplicaciones que estamos desarrollando con Elixir y empieza además detallas ¿Por Por qué es peligroso? ¿Qué tipos de problemas se pueden generar? Y algunas de las soluciones.
Al final plantea que quizás la mejor forma es evitar al máximo usar este patrón y no usar procesos globales en el sistema. Es un artículo muy interesante. Toca muchas tecnologías, muchos frameworks, así que hay que separar un buen tiempo para empezar a explorar todos los enlaces que deja. Pero sin duda es un artículo que va a empezar a dar de qué hablar en la comunidad, así que les sugiero que se lo lean a la menor brevedad.
[04:27] - Luis
Y de nuevo, un estadounidense es el autor del siguiente artículo que se llama 'Updating and Deleting from Temporary Assigns in Phoenix LiveView' Actualización y eliminación de Assigns temporales en Phoenix LiveView. Él se llama Logan Leger, es fundador y CEO de NewAperio, un estudio de diseño, desarrollo móvil.
Y en el artículo es un artículo corto, pero Logan nos explica cómo utilizar un feature de LiveView que se conocen como los temporarios Assigns. Y es básicamente editar, mantener el estado de los assigns del data que se renderiza en el servidor y en lugar de eso, limpiarlo cada vez nos ahorra, obviamente memoria.
Pero aparte de eso, también evita enviar muchos datos entre el servidor y el cliente. Es un artículo corto pero muy interesante y puede ser de mucha utilidad para aquellos que están desarrollando con LiveView, así que los invito a que se lo lean, como siempre, el enlace en las notas.
[05:28] - Luis
Esta semana tenemos varios videos, básicamente son los videos de la conferencia que se llevó a cabo hace poco, que es la ElixirConf conferencia más importante de nuestra comunidad. No todas las charlas son para leerlas, pero pues al menos las New from the Elixir team o las noticias del equipo de Elixir que da José Valim son importante escucharlas. También hay una en especial que me gustó mucho, que fue la del estadounidense Justin Schneck, creo que se pronuncia así y en ella él nos explica cómo estructurar un proyecto de tecnología en general.
No quiero decir siquiera de hardware o de software, sino de tecnología. Así que les recomiendo esos dos videos. Sin embargo, pues el resto, como siempre, son de una gran categoría. En las notas encuentran los enlaces a cada uno de los videos.
[06:26] - Luis
De este evento ya habíamos hablado, pero para quienes todavía no se han sintonizado con el podcast, los ponemos al día. Es el Elixir Brasil, que va a ser en noviembre 28 y 29. Esta es la tercera edición del Elixir Brasil. Lo mejor es que si quieren ser oradores, todavía están recibiendo propuestas hasta el 4 de octubre.
Es importante que lean el código de conducta del evento, que en general es muy estándar para este tipo de eventos, pero siempre es bueno leerlos en el sitio web del evento 2020.elixirbrasil.com encuentran todos los detalles.
[07:00] - Luis
Bueno, y eso es todo por este episodio de Puro Elixir invitamos a los desarrolladores de Elixir Latinos, que sé que hay muchos que nos envíen sus artículos, sus eventos, sus saludos para promocionarlos acá en el podcast.
También aclarar que el contenido de Puro Elixir es tomado, o se construye a partir del newsletter Elixir Radar de Hugo Baraúna. Hugo autoriza el uso de su newsletter como base para construir estos episodios.
También hablarles de kommit, nuestra compañía desarrollo en Elixir que también estamos desarrollando, además un hosting para podcast donde está publicado obviamente este podcast, se llama Podnation y va a ser el hosting de podcast más inclusivo que va haber en el mercado.
Eso es todo por esta semana. Los invito a que se suscriban en nuestras redes sociales al podcast, lo compartan con sus amigos, compañeros de trabajo.
Hasta la próxima semana. Muchas gracias por escucharnos.
La compañía Evrone entrevistó a José Valim. Los resultados de la encuesta al ecosistema Elixir del año 2020. Un vídeo sobre procesamiento de datos por lotes con Broadway y el ElixirConf EU.
Batch Operations with Broadway - Lonestar Elixir 2020
ElixirConf EU
Transcriptions[00:04] - Intro
Hola a todos programadores latinos, programadores hispano hablantes, bienvenidos a otro episodio de Puro Elixir.
Para los que estan nuevos aca les cuento que Puro Elixir es un podcast en español sobre el lenguaje programación Elixir. Si están familiarizados con el newsletter Elixir Radar esta se podría considerar la versión podcast de ese newsletter.
Mi nombre es Luis Hurtados CEO de una compañía una consultora de elixir y seré su host en este episodio, el episodio de hoy se construyó a partir del Elixir Radar número 255 que salió el 9 de septiembre del 2020. Bienvenidos
[00:49] - Luis
Bueno y abrimos el episodio con el primer artículo titulado en inglés 'A Quick Style Guide Update for Elixir 1.11' en español, sería algo así como: 'Una guía de estilo rápida para la actualización de Elixir 1.11.' Es un artículo escrito por el brasilero Ulisses Almeida.
Él es un desarrollador de elixir The Coingaming Group, son pioneros en criptomonedas. Y el artículo resumen básicamente uno de los cambios que se vienen próximamente con la salida de la versión 1.11 de Elixir a partir de esta versión los atributos de una estructura va a tener una forma mucho más natural de accederse sin temor a cometer errores, como todas las versiones anteriores.'
No es un cambio en esa versión que vaya a añadir nada al código actual, pero sin duda, personalmente creo que va a mejorar mucho la escritura de código futuro. Entonces los invito a que lean el artículo está en su blog que es Ulises.dev ahí les dejo el enlace en las notas del episodio.
[01:49] - Luis
El siguiente artículo es escrito por el alemán Devon C. Estes en inglés, el título es 'Designing For Elixir Compiler Hints' en castellano sería algo así como: 'Diseñando para la sugerencia del compilador de elixir' y bueno contrario al entusiasmo de Ulises en el artículo anterior, Devon no está tan seguro, diría yo, esa nueva característica para los Structs que va a estar disponible a partir de Elixir 1 .11 como les dije.
Él cree que no va a tener tantos beneficios. Es más, el presenta algunos potenciales casos donde ese beneficio se va a ver opacado más bien por los problemas que puede traer. Personalmente no comparto la opinión de Devon. Creo que los ejemplos que presentan en el artículo se prestan para discusiones técnicas de cómo se va a organizar el código, pero pues los invito a que ustedes lo revisen y saquen sus propias conclusiones. El artículo está en su blog devonestes.com/también está en las notas.
[02:39] - Luis
Bueno, el siguiente artículo no es un artículo en sí, es más bien la transcripción de una entrevista que le hizo la compañía Evrone con uve a José Valim en esa entrevista, que es además muy interesante. Le hace preguntas a José como qué se diría a sí mismo sobre el diseño de Elixir si pudiera volver diez años en el pasado.
O también le preguntan cómo hace José para mantener un balance entre su vida diaria y todo el trabajo que le demanda mantener el lenguaje y la comunidad de Elixir. Entonces es una lectura muy, muy entretenida, muy entretenida, llena de historias. Los invito a que se la lean también... está el enlace, como siempre, en las notas.
[03:18] - Luis
Nuestro siguiente enlace tampoco es un artículo, es más bien los resultados de la encuesta al ecosistema Elixir del año 2020 está publicado por Brian Cardarella, un estadounidense fundador y presidente DockYard. La encuesta se hizo en Typeform y obtuvo más de 3000 respuestas. También Brian comparte los archivos crudos o raw de la encuesta para que ustedes puedan hacer sus propias analíticas. Muy interesante y ayuda también a conocer un poco qué está pasando actualmente en la comunidad y para dónde vamos.
[03:50] - Luis
Organizing LiveView Logic with Presentation Models', que es el artículo a continuación. En castellano, sería algo así como: 'Organizando la lógica del LiveView con modelos de presentación'. Es un artículo escrito por Steven Núñez, programador de República Dominicana, que nuevamente aparece en el Elixir Radar de esta semana.
Nuevamente un artículo muy bueno, muy rico, presentado por este programador. Nos presenta un patrón que sirve para sacar la lógica del negocio del código LiveView. Personalmente creo que lo más valioso de este patrón es que las pruebas van a ser muy fáciles de implementar, sin duda. Si actualmente amigo programador está escribiendo código en la envió, este artículo es uno al que le debe dar una mirada inmediatamente.
El post está en la página de hostiledeveloper.com
[04:36] - Luis
Y el siguiente y último artículo se titula 'Speed up the compilation of Elixir projects that use Gettext' 'Acelerar la compilación de proyectos de elixir que utilizan gettext' es un artículo escrito por Angelika Tyborska, trabaja en Steady Media.
Y Angelika nos comparte algunas configuraciones optimizaciones en la configuración que hizo específicamente con gettext, esto le permitió a ella bajar considerablemente el tiempo de compilación de sus entornos en producción. Esto es algo que sin duda, si tenemos un proyecto grande con mucha internacionalización, nos va a servir demasiado. Y seguro nos está pasando lo mismo, no nos está afectando de la misma forma.
Entonces el artículo está en el blog de angelika.me también, como siempre, el enlace está en las notas.
[05:28] - Luis
El vídeo destacado de la semana se titula 'Batch Operations with Broadway' Es una charla que dio Michael Crumm estadounidense en el Lonestar Elixir 2020. En castellano sería algo así como: 'Operaciones por lotes con Brodway'.
Michael es un ingeniero de DockYard y en el video básicamente, Michael nos muestra un ejemplo de cómo implementar procesamiento de datos por lotes con Broadway. Yo personalmente nunca he usado Broadway, así que no tengo mucho criterio técnico para dar una opinión sobre la charla, pero al parecer lo que vi es algo que es muy, muy necesario y algo muy importante. Si está procesando una importante cantidad de datos con Broadway, el video está en Youtube en el canal de Groxio y dura 16 minutos.
[06:18] - Luis
Eventos en todo estacado de la semana es el ElixirCoff EU que va a ser virtual, será el 7 y 8 de octubre. La conferencia empieza a la 1 p.m. hora del este. Ambos días 7 y 8. Entre los entrenadores está Daniel Tipping, fundador de Git Scientist y quien dará una charla que se va a titular 'Ecto: todo lo que necesita saber'. Y también está Andrea Leopardi, también es entrenadora y su charla se llama 'De cero a héroe en Elixir'.
Para más información vayan a www.elixirconf.eu/ también el enlace en las notas.
[06:53] - Luis
Y bueno, ya para despedirnos los invito nuevamente a ustedes, desarrolladores latinos, a que nos envíen sus artículos, videos y eventos sobre elixir. Incluso los meetups más pequeños son válidos para hablar de ellos acá en este podcast.
Aclarar también que este es un contenido tomado de Elixir Radar, del newsletter Elixir Radar de Hugo Baraúna, Hugo autoriza el uso de su newsletter como base para construir estos episodios.
También hablarles de kommit nuestra consultora Elixir y a Podnation, que es un producto que desarrollamos dentro de kommit obviamente en Elixir y que pretende ser la plataforma para podcast más inclusiva en el mercado.
Les mando un cordial saludo a todos y hasta la próxima
Alex Castaño explica por qué y cómo se detiene un GenServer. Un vídeo de ElixirCasts para manejar la autenticación de nuestros sistemas en Phoenix. Y por último el evento Elixir Brasil en São Paulo.
Adicionales al artículo 3
Using phx_gen_auth for Phoenix Authentication
[00:00] - Intro
Hola, bienvenidos, programadores latinos, programadores hispanohablantes, este es otro episodio de Puro Elixir.
Acá en este show desglosamos el Newsletter Elixir Rardar de Hugo Baraúna y damos una breve introducción a cada uno de los artículos con algunos comentarios también. Yo soy Luis Hurtado, CEO de kommit una compañía que desarrolla Elixir, estamos en Latinoamérica, pero tenemos clientes en todo el mundo.
Y como siempre, vamos a tratar de sacar una versión en castellano del título de los artículos, con el único propósito de hacer este episodio un poco más entretenido. Este episodio está basado en el Elixir Radar número 254, que salió el 2 de septiembre del 2020, bienvenidos
[00:56] - Luis
Y nuestro primer artículo se titula 'Creating LiveView Modals with Tailwind CSS and AlpineJS', que en español sería como 'Creación de ventanas emergentes LiveView usando Tailwind CSS y AlpineJS'. Es un artículo escrito por Patrick Thompson, un estadounidense fundador de Inkstone Software.
Es un artículo extenso, pero muy interesante porque es muy detallado, especialmente en la implementación... en el código, lo cual se agradece mucho. El artículo también muestra claramente cómo lograr que las ventanas emergentes o los modales puedan sobrevivir. Reconexiones del LiveView. Es un artículo que está en el blog de del autor pthompson.org ahí les dejo el enlace en las notas del episodio, les recomiendo que se lo lean porque está muy, muy bueno.
[01:47] - Luis
Nuestro segundo artículo estaba escrito por Robert Prehn, un estadounidense consultor, jefe y copropietario de Mystic Insight, que es una consultora de tecnología de Estados Unidos. Se titula 'Elixir Patterns for Testing with Mo', algo así como: 'Patrones en elixir para probar con Mo'.
En el artículo, Robert nos comparte la experiencia de él utilizando la librería Mox solamente leyendo el artículo se nota que la ha usado extensivamente y a un montón de tips que son lectura obligada para nuestra herramienta de pruebas en Elixir. Es un artículo por tanto muy muy recomendado, está en el blog de Robert, ahí les dejo el enlace en las notas de este episodio.
[02:30] - Luis
Y nuestro tercer artículo me dejó gratamente sorprendido porque me di cuenta apenas que Change.org, que es una plataforma de cambio social con más de 225 millones de usuarios en más de 196 países tiene componentes escritos en elixir que el título del artículo es 'Our Elixir Bandit Service', que en castellano estuvo fácil este sería 'Nuestro servició Elixir Bandit'.
El artículo está en Medium, es una lectura de cuatro minutos. En este artículo, Dimitri Tishchenko, que es un ruso que vive en Canadá, que es ingeniero de software en Change.org, nos da un contexto general de la arquitectura de un servicio que ellos llaman Bandit dentro de Change.org
Ese servicio, básicamente lo que hace es mantener como puntuaciones para seleccionar los mensajes más exitosos de cara a los usuarios finales. No son pruebas A/B precisamente, pero es algo muy similar, aunque en el artículo Dimitri no muestra código alguno, que creo que hubiera sido muy importante si explican muchas de las decisiones que se tomaron a nivel de arquitectura y también los beneficios y consecuencias de haber tomado esas decisiones.
Entonces es un artículo que desde ese punto de vista es bien interesante, es el tipo de conocimiento que uno realmente quiere conocer o quiere ver del mundo real en implementaciones en elixir. También las notas del episodio les pongo dos enlaces adicionales para que exploren más de qué trata el servicio Bandit y por qué tiene ese nombre tan especial en español 'Bandit' es algo así como bandido. Entonces en las notas del episodio les dejo los enlaces para que entiendan, para que puedan explorar un poco más la teoría detrás de este servicio.
[04:13] - Luis
Nuestro siguiente artículo se titula 'Using MJML in Elixir & Phoenix' en castellano sería: 'Usando MJML en Elixir y Pohenix'. Es un artículo escrito por el alemán Paul Götze ahí me perdonan la pronunciación en alemán.
Él es el creador de adoptoposs.org una plataforma para encontrar mantenedores de proyectos open source. Entonces, de qué trata el episodio, estamos en el 2020 y la verdad es que todavía crear correos electrónicos bonitos es una tarea que requiere su esfuerzo, eso lo sabemos todos.
Conozco pocos desarrolladores a los que les guste ir a enfrentarse con el formateo de los correos electrónicos. En el artículo entonces, Paul nos presenta dos alternativas para crear correos electrónicos responsive o responsivo en nuestras aplicaciones Pohenix.
Esto lo logra pues, a través de MJML que es un lenguaje de marcas de una compañía que se llama mailjet, que lo desarrolló. Actualmente no existe una implementación de MJML pura, digámoslo así, ni en Elixir ni en Erlang, de manera que Paul nos muestra cómo usar desde Elixir o de una librerías JavaScript o la librería en Rust, que al parecer son las dos únicas opciones que tenemos hoy en día para trabajar con MJML desde Elixir, el artículo está en Medium y es una lectura de 5 minutos.
[05:40] - Luis
Nuestro siguiente artículo se titula 'Why and how a GenServer stops?' 'Por qué y cómo se detiene un GenServer', que es escrito por un español Alex Castaño de Andorra. Alex es desarrollador de Elixir y Ruby y trabaja en Moodle, un sistema de gestión de aprendizaje en línea gratuito.
En el artículo, Alex detalla los casos más frecuentes en los que un GenServer se detiene, muere, finaliza, finiquita, adiós. Y para Cada caso explica y comparte código, de manera que es muy entendible cómo funcionan las cosas. Este artículo hay que tenerlo reseñado, sin duda, porque esto es material de referencia difícil de encontrar compilado de esta manera, y con el detalle que lo explica Alex.
El artículo está en el blog de él, que es alexcastano.com para que entren y lo visiten.
[06:30] - Luis
Y el último artículo se titula 'Why Divvy chooses Elixir for the future of fintech' en español sería: 'Por qué Vivi elige elixir para el futuro del fintech o de la tecnología o de las startups de tecnología financiera'
Es un artículo escrito por un estadounidense llamado Greg Larsson, es ingeniero SVP en Divvy, una plataforma financiera y es un artículo corto en el que Greg comparte al mundo general porque su compañía apostó por Elixir.
Este es de esos artículos que llama la atención a cualquier persona que tenga un cargo de ingeniería o de gerencia operativa o de tecnología, pero que todavía no esté muy familiarizado con elixir. Entonces, si de pronto conocen a alguien que tenga un especial interés por conocer tecnologías nuevas y que tenga un cargo de esos, es el artículo que le que le deben compartir.
[07:19] - Luis
El video de la semana se titula 'phx_gen_auth for Phoenix Authentication' en castellano sería algo así como: 'Uso de phx_gen_auth para la autenticación en Phoenix'. Es un video publicado por ElixirCasts que ya nos tiene acostumbrados a videos técnicos de muy alta calidad. Y el video nos presenta el nuevo paquete para manejar la autenticación de nuestros sistemas en Phoenix.
El paquete está disponible a partir de Phoenix 1.5 y sin lugar a dudas es algo que de verdad le hacía falta a Phoenix, al menos lo pienso particularmente, esperaría, sin embargo, cambios importantes en las futuras versiones de Phoenix, a medida que la comunidad empieza a usar el paquete.
Entonces les recomendó que se lo vean. Es un video corto como todos los de ElixirCasts es de 8 minutos no más, pero hace una muy buena introducción a este nuevo paquete.
[08:14] - Luis
El evento destacado de la semana es el Elixir Brasil, que se llevará a cabo en noviembre 28 y 29. Este será la tercera edición de Elixir Brasil. Entre los oradores invitados estaban Bruce Tate y Brooklyn Zelenka, fundadora y CTO de fission. El evento será el teatro Prevent Senior, uno de los teatros más modernos de Sao Paulo, eso dicen mis notas, no he tenido el placer de conocerlo aún.
Y el evento tiene algo importante y es que se ofrecen descuentos para empresas que lleven 10 o más personas. Así que ahí les dejo el enlace para que vayan y se inscriban esos eventos en Latinoamérica sí o sí, pues tenemos que apoyarlos.
[08:53] - Luis
Y bueno, eso fue todo por este episodio de Puro Elixir invitamos a todos los desarrolladores d elixir en Latinoamérica que nos envíen sus artículos, sus videos y como en sus eventos acá con nosotros es totalmente gratis.
También aclarar que el contenido de puro elixir está basado en el newsletter Elixir Radar de Hugo Baraúna, Hugo autoriza el uso de su contenido como el fundamento para crear este podcast.
También aprovecho para hablarles de Podnation la plataforma que estamos desarrollando en kommit y que va a ser la plataforma de hosting de podcast más inclusiva en el mercado.
Los invito a suscribirse en el podcast, a compartirlo con sus amigos, compañeros de trabajo y en sus redes sociales también. Eso es todo por esta semana. Gracias por escucharnos.
Hoy tenemos un artículo del programador latino Steven Núñez. Un vídeo donde Hubert, desarrolla una consola web para aplicaciones Phoenix y aplicaciones Elixir. Y la competencia virtual Spawnfest.
Online Competition
[00:00] - Intro
Hey, ¿Como están? programadores latinos, programadores hispanohablantes, bienvenidos a el tercer episodio de Puro Elixir...
Puro Elixir es un podcast en español alrededor del lenguaje de programación Elixir. Está basado en el newsletter Elixir Radar de Hugo Baraúna. Mi nombre es Luis Hurtado, soy el CEO de kommit, la consultora de Elixir que está en América Latina, pero opera para clientes de todo el mundo.
Entonces vamos a ir uno a uno a revisar los artículos de Elixir Radar y vamos a tratar de hacer unas traducciones a español de los términos y los títulos de sus artículos, con el propósito de ser un poquito más entretenido este podcast.
Este episodio está basado en el Elixir Radar número 253, que salió el 26 de agosto del año 2020.
[01:04] - Luis Hurtado
El primer artículo de la lista se llama 'Communicating between LiveViews on the same page' que en español sería algo así como: 'Comunicación entre LiveViews en la misma página'. Es un artículo escrito por el sueco Henrik Nyh, que es un desarrollador de la plataforma Auctionet un marketplace Europeo. Y en el artículo Henrik explica 6 técnicas precisamente para eso, para comunicar LiveViews o para pasar mensajes entre LiveViews que están en la misma página. El artículo, aunque concreto, es lo suficientemente explicativo, diría yo, para mostrarnos cada una de las técnicas.
Al final, Henrik deja las conclusiones sobre cual técnica es mejor como un ejercicio para el lector, que es algo que siempre digo yo, que los artículos que algunos les quedan faltando un poco más como de arriesgarse el autor a decidir por cual se iría o en qué escenarios, como suele suceder en estas cosas de software, funciona mejor una técnica que la otra. El post está en el blog de Henrik 'The Pug Automatic' como el automático pug, es decir, el perro pug no plug de elixir, sino pug de la raza de perros, entonces ahí les dejo el enlace.
[02:25] - Luis Hurtado
Pasamos de hablar de la raza de perros pug, ahora sí a plugs y en el siguiente artículo Alex Koutmos ingeniero de software en Bridge Connector, nos presenta un artículo titulado 'Dynamically Configure Your Plugs at Run-time', que es como: 'Configura dinámicamente sus plugs en tiempo de ejecución'.
Alex es un ingeniero de software y básicamente en el artículo Alex nos presenta dos librerías escritas por él Unplug y Replug. Nos muestra para qué sirven las librerías y en qué casos específicos se deben utilizar. También me pareció interesante que en el artículo Alex explica porque las soluciones existentes en el mercado para para configurar dinámicamente los plugs en tiempo de ejecución se quedan cortas frente a las cosas que él necesitaba. Entonces, como debe ser, se sentó, se rremangó la camisa y escribió sus propias librerías. El post está en el blog 'My.Thoughts v1' ahí les dejo el enlace...
[03:27] - Luis Hurtado
Y el tercer artículo fue escrito por José Valim, que es básicamente una presentación de cómo se implementó Elixir en FarmBot, ¿Qué es FarmBot? es una plataforma open source que básicamente sirve para hacer agricultura con robots y a través de internet... ¿Que pueden ser más loco que eso?
José nos explica en el artículo como Connor Rigby, que es un ex trabajador de FarmBot montó Nerves y utilizó NervesHub para hacer actualizaciones del firmware de FarmBot. Es un artículo super interesante, pero pues más interesante que el artículo es ir a FarmBot, entender de qué trata, pues de pronto quizás antojarnos de crear nuestra propia huerta robotizada en el patio de la casa ¿Qué tal eso?
[04:21] - Luis Hurtado
El siguiente artículo está escrito por un latinoamericano, lo cual me llena de gran agrado. Está escrito por Steven Núñez, que es un programador de República Dominicana. El artículo está posteado en la página hostiledeveloper que es su blog personal.
El artículo se titula 'Phoenix Contexts and Crossing Boundaries', que en castellano sería algo así como: Contextos de Phoenix y cruzando las fronteras. Steven nos presenta un problema muy común cuando tenemos esta entidad omnipresente en nuestro sistema, y es entidad con la que todos tienen que ver pero cada contexto de forma diferente.
Piensen en ese user que eventualmente es un applicant o que después se vuelve un prospecto, cosas así... Ya saben de qué tipo de entidades les estoy hablando. Y luego Steven plantea una solución muy interesante desde el patrón CQRS que en español sería algo así como segregación de la responsabilidad para los comandos y las consultas.
Básicamente es otra forma de decir que unas partes del sistema únicamente son responsables de escribir y hay otras que únicamente pueden hacer consulta. Me parece interesante el artículo por la propuesta que tiene y utilizando algo que en el mundo actual, la verdad veo poco implementado, pero que es una capacidad que está presente en nuestros sistemas así que pues hoy en día rara vez aprovechamos.
Me parece también interesante ver los artículos al final del artículo porque le plantean algunas preguntas a Steven que él aclara de forma, me parece muy muy precisa.
[06:04] - Luis Hurtado
Y fue el mismo Steven Núñez quien le dio una idea a Sophie DeBenedetto para que escribiera nuestro siguiente artículo, que se llama 'Testing GenServers with Erlang Trace' en castellano es algo así como: 'Probando GenServers con Erlang Trace'.
Sophie DeBenedetto es una ingeniera de software en GitHub, estadounidense y básicamente nos presenta la función Trace de Erlang, muestra lo altamente útil que es esta función y cómo lo podemos sumar a nuestro arsenal de testing.
Muy interesante en el artículo, que no solamente presenta la función, sino que también Sophie explica como utilizó la función para resolver el problema que tenía que resolver.
[06:51] - Luis Hurtado
El último artículo titulado 'The New Scalable ETS ordered_set' o en castellano: 'El nuevo escalable conjunto ordenado de ETS' es un artículo escrito por el sueco Kjell Winblad, me perdonan si no pronuncio bien ese nombre, pero por premuras de tiempo no alcancé a buscar bien la pronunciación. Kjell es un ingeniero de software en Ericsson, es un artículo de ingeniería de software de muy alto nivel, como es de esperarse de ingeniero de Ericsson.
Y en el artículo el explica un poco el funcionamiento de una estructura de datos llamada CA Tree en castellano es algo así como 'Árboles de búsqueda con contención adaptativa'. Esos árboles fueron implementados en OTP 22 para ciertos tipos de ETS.
También en el artículo se muestran algunos ejemplos de desempeño de estas estructuras de datos frente a las estructuras que se usaban en OTP 21.
Es un artículo denso a nivel de ingeniería, pero sumamente interesante y les recomiendo mucho que se lo lean y entiendan bien cómo funcionan esas estructuras de datos.
[08:03] - Luis Hurtado
El video de esta semana se titula 'Building Backdoor: web console for Elixir & Phoenix applications - Part 1' en castellano eso sería como: 'Construyendo backdoor: una consola web para aplicaciones Elixir y Phoenix - parte 1' es un video hecho por Hubert Łępicki, el es polaco, cofundador de Amberbit, una empresa de desarrollo de software de aplicaciones web y móviles.
El video está en YouTube, en el canal precisamente de Amberbit, es un video que dura 22 minutos y el video es parte de una serie de videos donde Hubert desarrolla en vivo una consola web para aplicaciones Phoenix y aplicaciones Elixir.
Así que si usted es fanático de ver cómo se construye código en vivo, lo cual es algo que de tanto en tanto debemos hacer los desarrolladores, gústenos o no, este es el video que vas a querer ver. También están los enlaces a los otros videos de esta serie...
[09:06] - Luis Hurtado
El evento destacado de la semana es el SpawnFest, que va a ser el 12 y 13 de septiembre de manera virtual y es un evento gratuito. Es una competencia anual de 48 horas para crear aplicaciones basadas en BEAM. Vayan a la página si quieren participar y registrar su equipo, lean las reglas del concurso, están muy bien detalladas y entre los premios están dos mil dólares en créditos de DigitalOcean, 600 dólares en tarjetas de regalo de Amazon y muchos más.
[09:40] - Luis Hurtado
Bueno, y eso es todo por el Puro Elixir de esta semana. También para finalizar, quiero invitar a los desarrolladores latinos a que nos envíen sus artículos y los publicamos y les hacemos ruido acá en el podcast.
También importante aclarar que Puro Elixir está tomado del newsletter Elixir Radar de Hugo Baraúna, Hugo autoriza el uso de su newsletter como base para construir este podcast.
Quiero hablarles de kommit, nuestra compañía consultora de Elixir y a Podnation como la plataforma de hosting de podcast que va a ser más inclusiva en el mercado.
Los invito a que comenten del podcast a sus amigos, compañeros de trabajo. Se suscriban en las plataformas de podcast y que lo compartan en sus redes sociales, ayúdennos a difundir esta voz.
Eso es todo por esta semana, gracias por escucharnos y hasta la próxima semana.
Hablamos sobre la migración de un blog de GatsbyJS a Phoenix LiewView; un vídeo de ElixirCasts, que introduce la función __schema__ y algunos detalles del Code BEAM V. ¡No se lo pierdan!
1. Batch operations with Ecto Multi
2. Moving the blog to Elixir and Phoenix LiveView
3. An IoT Birdhouse with Elixir Nerves & Phoenix LiveView Components
4. Deploy a Phoenix (Elixir) application on Google Cloud Platform Compute Engine
5. Soft dependencies in Elixir projects
https://elixircasts.io/introspecting-ecto-schemas?utm_source=elixir-radar&utm_medium=email
Conferences:
Online Competition:
[00:00] - Intro
Ey, ¿cómo están? Programadores latinos, programadores hispano parlantes, bienvenidos a Puro Elixir, creo que el primer podcast sobre el lenguaje de Elixir que tenemos en Español.
Yo soy Luis Hurtado soy el CEO de kommit, una compañía latinoamericana que apuesta por el desarrollo de talento, estamos en Colombia pero atendemos clientes de todo el mundo.
Puro Elixir va as er un show semanal y vamos a ahondar, vamos a explorar algunos de los artículos que presentan en Elixir Radar.
Que es una publicación semanal, que les recomienda que se suscriban, si lo quieren ver de alguna forma es la versión podcast de ese newsletter, así que bienvenidos.
[00:57] - Luis Hurtado
El episodio de hoy está basado en el Elixir Radar 252, que salió el 19 de agosto del 2020. El primer artículo es de el ingeniero de software británico Chris Bell y el título del artículo es 'Batch operations with Ecto Multi', que en castellano sería algo así como 'Operaciones por lotes con Ecto multi'
Es un artículo corto, pero con un contenido muy valioso para una de las tareas que nosotros hacemos más comúnmente en este oficio y es procesamiento de información por lotes o en inglés batch. El Post encuentran en el sitio web de Chris Bell que es cjbell.co o en español cjbell.co con doble ele .co y es un sitio que está montado en Gatsby JS.
[01:49] - Luis Hurtado
Y les habló de Gatsby JS. porque eso nos llevó a nuestro segundo artículo, que es 'Moving the blog to Elixir and Phoenix LiveView' es 'Moviendo mi blog a Elixir y Phoenix LiveView' es un artículo escrito por el estadounidense David Bernheisel, que es un desarrollador de software en TaxJar y les habló de GatsbyJS porque pues David migró su blog que tenía en Gatsby a Phoenix LiewView.
Me gustó especialmente este artículo que él es claro y honesto en lo que ganó al hacer la migración y también en lo que perdió al hacer esta migración. No se pueden al final del artículo perder las conclusiones que hace David, dónde explica porque para él fue el cambio correcto y también qué consideraciones deberíamos tener o valdría la pena hacer si queremos hacer un ejercicio similar nosotros.
[02:40] - Luis Hurtado
El siguiente artículo está titulado 'An IoT Birdhouse with Elixir Nerves & Phoenix LiveView Components' en español sería algo así como: 'Una pajarera y hote con Elixir Nerves y componentes de Phoenix LiveView'.
Es un artículo por el alemán Daniel Khaapamyaki, Ingeniero Full Stack en Railslove, que es un equipo de hackers y pensadores.
Me encantó esa definición de equipo, hackers y pensadores. Es una lectura diez minutos y en él Daniel detalla el paso a paso que hizo para construir un sistema que monitorea básicamente una pajarera. El sistema siendo en Elixir Nerves está corriendo en una Raspberri PI. Pero por si no fuera suficiente, el nivel de hack también le involucró LiveView y le involucró conexión con una de las aplicaciones de mensajería instantánea favorita de todos los tiempos Telegram.
Los envidiosos dirán que soy fanático de Telegram.
[03:45] - Luis Hurtado
Nuestro siguiente artículo se titula 'Deploy a Phoenix application on Google Cloud Platform Compute Engine' y mi traducción caprichosa al castellano es 'Desplegando una aplicación Elixir Phoenix en el Cloud de Google. Es un artículo escrito por el francés Thomas Trividic es un desarrollador de Elixir JavaScript en Prestashop, que es una compañía muy conocida de comercio electrónico.
Es un artículo demasiado completo porque en él Thomas detalla el paso a paso que hizo para desplegar esta aplicación Elixir que sencilla, pero pues no quería, me imagino sumarle más complejidad a la tarea. La desplegó en GCP, o en Google Compute Engine.
Me pareció un artículo muy valioso y definitivamente, pues es lectura obligada si estamos interesados en desplegar esas aplicaciones Elixir en Google Cloud es una lectura de 7 minutos.
[04:46] - Luis Hurtado
El siguiente artículo que les quiero destacar es 'Soft dependencies in Elixir projects' en castellano sería Dependencias blandas en proyectos de Elixir. Es un artículo escrito por Josef Strzibny, ingeniero de software Full Stack de República Checa que es CTO en Cloudaper.
Lo que llama mucho la atención de este artículo que es un artículo realmente corto es que muchas veces nosotros pasamos por alto funcionalidades o características que tenemos a la mano y que simplemente por falta de tal vez inquietud de estar buscando no las usamos. En este caso habla sobre las dependencias blandas o débiles y pues para ser un poquito más justos, son más bien dependencias opcionales.
También hace un ejemplo Josef donde explica cómo utilizó esta característica cuando le sonó soporte para decimales a la librería Money. El link del artículo lo encuentran como siempre en las notas de este episodio.
[03:36] - Luis Hurtado
Y el video ha destacado de la semana en el EIixir Radar fue 'Introspecting Ecto Schemas' es un video publicado por ElixirCasts, que es la plataforma que facilita el aprendizaje de aplicaciones Elixir y Phoenix son videos cortos de 3 minutos, pero la gran mayoría de ellos con contenido muy valioso y en este caso el video introduce la función schema.
Esta función está disponible en cualquier schema o cualquier esquema que definamos cuando estemos usando Еcto, y definitivamente es algo demasiado, demasiado útil. Me sorprendió mucho la versatilidad de la función, así que no se pierdan el video. Son tres minutos para audicionar, quizás nuevas herramientas a su baúl de herramientas Еcto.
[06:44] - Luis Hurtado
Qué eventos se vienen para la comunidad de Elixir. El más cercano va a ser el Code BEAM V o el Code BEAM, que va a ser el 10 y 11 de septiembre van a hacer dos días. Para destacar que aunque es un evento virtual, la ubicación original del evento va a ser en Estocolmo, por lo tanto, la zona horaria va a estar alineada con la hora de Europa Central para que lo tengan en cuenta. Vayan a la página web del evento van a encontrar pues obviamente más información sobre las entradas y pongan atención que hay descuentos especiales para académicos y estudiantes.
Además del Code BEAM virtual, también va a estar el ElixirConf que va a ser el 3 y 4 de septiembre !Imperdible¡ El ElixirConf Europa el 7 y 8 de octubre. Elixir Brasil que va a ser en São Paulo el 28 29 noviembre de este año. También la competencia en línea Spawnfest el 12 y 13 de septiembre.
Así que la cartelera de eventos de Elixir va a estar muy nutrida en los próximos meses.
[07:50] - Luis Hurtado
Para cerrar este episodio quiero hacerles una invitación... si ustedes son latinos, tienen artículos en Elixir o material que quieran compartir con el resto de la comunidad. Siéntanse libres de hacérnoslo llegar y les hacemos un highligth bien especial acá en el podcast.
Aclarar que el contenido de este podcast es tomado de Elixir Radar creado por Hugo Baraúna, Hugo autoriza el uso de su newsletter como base para este podcast.
[08:17] - Luis Hurtado
Si tienen una idea de pautas para su negocio o en general, hablennos que en Podnation estamos buscando apoyar todos los podcasters de América Latina necesitamos más podcasts en español definitivamente.
También hablarles de kommit, que es la compañía que actualmente estoy liderando, donde desarrollamos sistemas en Elixir.
En las notas de este episodio pueden encontrar más detalles sobre los artículos que les comenté y los enlaces respectivos. Finalmente, los invitamos a que se suscriban al podcast, lo compartan con conocidos y amigos, compañeros de trabajo y lo compartan en sus redes sociales.
Eso es todo por el episodio de hoy. Gracias y hasta una próxima entrega de Puro Elixir.
En este primer episodio compartimos seis artículos. Uno de ellos escrito por Santiago Bacaro, desarrollador colombiano en kommit la compañía consultora de Elixir.
Una producción de Podnation
1. The BEAM has Spoiled Me
2. Ecto UPSERT for different Primary Keys in Elixir
3. How to Play Audio on a Raspberry PI using Nerves
4. Building the Brex Accounting API
5. How to use Google Maps with Phoenix LiveView - Coletiv Blog
6. 3 ways to schedule tasks in Elixir I learned in 3 years working with it
Programmer Passport: Phoenix LiveView - Bonus Video - phx.gen.auth
Conferences:
Online Competition:
[00:00] - Intro
Ey, ¿cómo están? Programadores latinos, programadores hispano parlantes, bienvenidos a el primer episodio de Puro Elixir, creo que el primer podcast sobre el lenguaje de Elixir que tenemos en Español.
[00:21] - Luis Hurtado
Yo soy Luis Hurtado soy el CEO de kommit, una compañía latinoamericana que apuesta por el desarrollo de talento, estamos en Colombia pero atendemos clientes de todo el mundo.
[00:33] - Luis Hurtado
Entonces...¿De qué tratará Puro Elixir? Puro Elixir va as er un show semanal donde vamos a ahondar, vamos a explorar algunos de los artículos que presentan en Elixir Radar.
Si lo quieren ver de alguna forma es la versión podcast de ese newsletter, así que bienvenidos.
[00:58] - Luis Hurtado
El episodio de hoy va ser sobre el Elixir Radar número 251, que salió publicado el 12 de agosto del 2020. Para hacer un poco divertido el podcast entonces empecemos hablando de los artículos, pero voy a tratar de hacer la traducción al español lo mejor posible del título del artículo, y luego les explico un poco de qué trata.
Entonces el primer artículo que les quiero hablar es escrito por un programador llamado Greg Vaughn, el título del artículo es The BEAM has Spoiled Me, que sería algo así como: "La BEAM me mimó".
Y básicamente en el artículo Greg explica por qué Elixir como nos ha pasado ha varios programadores ya volvió a encender su interés intelectual en el desarrollo de software, así lo escribe literal en el artículo, entonces les recomiendo que vayan y lo miren. Es un artículo corto pero interesante.
[01:58] - Luis Hurtado
El segundo artículo es Ecto UPSERT for different Primary Keys in Elixir sería así como: "El comando Upsert en Ecto para diferentes llaves primarias en Elixir" es un artículo escrito por Vinicius Negrisolo, el es un desarrollador de software brasileño, trabaja en Hashrocket, una compañía pues muy conocida en nuestro medio de desarrollo de software.
En el artículo Vinicius nos explica tres escenarios en los que el comando Upsert puede ser confuso para nosotros los programadores y en consecuencia puede generar bugs en nuestras aplicaciones. Entonces el blog lo encuentran en la página web de Hashrocket entonces aquí les dejo el enlace también para que lo consulten.
[02:46] - Luis Hurtado
El siguiente artículo es "Cómo reproducir audio en una Raspberry PI usando Nerves", es un artículo escrito por Hassan Shaikley, un estadounidense, es un ingeniero de software en Weedmaps, que es un proveedor de infraestructura de software y tecnología para la industria del cannabis.
El artículo esta en Medium y pues es un artículo corto e interesante un poquito de hack de hardware, mhmm lo pueden ver...
[03:14] - Luis Hurtado
El siguiente artículo particularmente es muy interesante y es cómo Brex, construyó el API de Accounting o de contabilidad, lo escribió Julia Wu, que es una ingeniera de software en Brex. Brex que es una compañía que está en el mundo de las Fintech, esta revolucionando los sistemas financieros y Julia nos explica algunos aspectos de la arquitectura detrás de esa API, especifícame nos habla sobre Protocol Buffers y gRPC.
Entonces si les interesa entender más sobre estos dos frameworks y cómo se aplican en una implementación real pues este es un artículo que se deben leer.
El artículo se encuentra en Medium también les dejo el enlace y es una lectura de 5 minutos.
[04:02] - Luis Hurtado
El siguiente artículo destacado en el Elixir Radar fue "Cómo usar Google Maps con Phoenix LiveView", es un artículo escrito por Tiago Duarte de Portugal es el CEO de Colectiv Studio y pues si nos interesa saber de LiveView que ya sabemos que es el nuevo chico lindo del barrio de Elixir, entonces es un artículo que hay que leer, explica cosas interesantes.
Y al final es bueno contrastar como nuestras experiencias con las que nos comparte Tiago luego de haber intentado integrar Google Maps con una aplicación con Phoenix LiveView.
Su artículo esta publicado en el blog de Colectiv Studio entonces ahí les dejo el enlace.
[04:41] - Luis Hurtado
El último artículo del que les quiero hablar es: "3 formas de aprender de agendas tareas en Elixir, que aprendí luego de trabajar tres años con el".
En el Elixir Radar, en el Newsletter aparece de primero este artículo, pero lo deje de último porque es un artículo escrito por alguien de kommit, de la compañía que actualmente estoy liderando, entonces estamos muy orgullosos de haber salido en Elixir Radar.
Fue escrito por Santiago Bacaro, desarrollador colombiano, trabaja en kommit como les conté, es un artículo de nueve minutos muy interesante, pero nos explica como hacer esos background jobs en elixir y cuál es la experiencia que ha tenido con cada uno de los frameworks disponibles en elixir para hacer eso.
[05:25] - Luis Hurtado
El vídeo de estacado de esta semana es un video de 42 minutos en YouTube, en el canal de Groxio que es el canal de la empresa de Bruce Tate, que es quien da la charla o hace el video.
Explica muchos detalles de LiveView el es un amante de LiveView y pues Bruce tiene una forma muy interesante, muy dinámica de dar sus charlas entonces no es un vídeo para nada aburrido.
Se los recomiendo, es como siempre, como todo el contenido de Bruce Tate calidad pura, entonces saquen las palomitas de maíz y dedíquense 42 minutos de su semana a entender más sobre LiveView.
[06:07] - Luis Hurtado
En los eventos de la semana pues vamos a destacar el Elixir Conf que es el 3 y 4 de septiembre que este año va a hacer de manera virtual. Este año se van a ofrecer tres clases de capacitación, ahí están los precios, son precios cómo más o menos de 400 dólares, no voy a decir nada al respecto. Entonces entren al sitio de Elixir conf para obtener más información.
Otros eventos que vienen Elixir Brasil, que va a ser en São Paulo, el 28 y 29 de noviembre de este año; también el Code BEAM V que me imagino que es por virtual, que va ser el 10 y 11 de septiembre y la competencia en línea Spawnfest que se va a llevar a cabo los días 12 y 13 de septiembre.
Este podcast Puro Elixir es construido a partir del Newsletter Elixir Radar creado por Hugo Baraúna, Hugo autoriza el uso de su Newsletter para crear este contenido.
También les quiero hablar de kommit nuestra compañía consultora de Elixir donde desarrollamos, aparte de Podnation que es la plataforma donde se está hosteando este podcast y va ser la plataforma para distribución de podcast más accesible que van a encontrar en el mercado.
Gracias por escuchar Puro Elixir y hasta la próxima semana, saludos.
The podcast currently has 6 episodes available.