Episodes
We talk with Kurt Mackey, founder at Fly.io, about what makes the Fly platform unique and why hosting Elixir applications there makes a lot of sense. They started out looking to make a better CDN for developers and this pushed them to try deploying Full Stack applications closer to users, not just the static assets! We learn about the tech behind the networking, how databases can be moved closer to users, and how LiveView is even more awesome when it is close to users. Kurt also shares what...
Published 07/13/21
We talk with Philipp Schmieder about his experience creating a LiveView application for a political party’s convention and then watching the app blow up. We learn how he recovered, why it failed, and how he fixed it going forward. We also discuss some other application architecture ideas and how they might work. It’s a great post-mortem discussion where Philipp shares his wisdom so others learn from the mistakes. After experiencing all this, find out why he’s still bullish on LiveView and...
Published 07/06/21
We talk with Lucas San Román about his library Sourceror and how it was created to solve some AST parsing limitations. The Elixir parser discards code comments, so it can’t be used for re-writing Elixir code when refactoring. IDE’s often include more advanced refactoring tools and the ability to provide that requires a smarter parser. Sourceror keeps the comments while also providing advanced features like a Zipper API to more easily navigate around the source tree while inserting and...
Published 06/29/21
We talk with Ilya Averyanov about how the SOLID principles, typically associated with OOP, can apply to Elixir. We talk about Ilya's blog post where he applied these principles to his Github project and how that helped in PR discussions. We also talk about testing, architecture, and more. Show Notes online - https://thinkingelixir.com/podcast-episodes/053-solid-elixir-with-ilya-averyanov
Published 06/22/21
We take a deeper dive with Nathan Long into IOLists in Elixir. We cover what they are, how they work, the power they have when concatenating strings, and how they are used in Phoenix and Logger. We even talk about improper lists and why they exist. And no, it isn’t a bug. We then talk about PostgreSQL features like materialized views, triggers, and using denormalized tables for solving complicated caching situations. Nathan shares some tips for when to use them and provides some cautions...
Published 06/15/21
We talk with Alex Loukissas about using Phoenix sockets to provide live auction systems. We comment on the situation of flash-mob-like users coming to a system and needing to handle high traffic volumes for shorter durations. We talk about how the Horde library helps solve fun distributed clustering problems, we cover observability tools, how and why companies should support open source development through sponsorships and more! Show Notes online -...
Published 06/08/21
We talk with Angelika Tyborska about the history of exercism.io, her involvement, the issues addressed in v2 and what's new and cool in the soon to be released v3. We cover the Elixir track, her work as a maintainer, the journey of a student and how people can help as mentors. We also hear about the "fun" she had creating a maze generator and more! Show Notes online - https://thinkingelixir.com/podcast-episodes/050-exercism-io-and-elixir-with-angelika-tyborska
Published 06/01/21
Maciej Kaszubowski returns to talk about how read models can help modularize our systems. There is a focus on background job systems and how they fit in our modular designs. We cover push vs pull based systems and which is more maintainable. Maciej also shares his approach to learning and understanding a new Elixir library and more! Show Notes online - https://thinkingelixir.com/podcast-episodes/049-pushing-for-modularity-with-maciej-kaszubowski
Published 05/25/21
We talk with Sheharyar Naseer about Ecto's feature "association defaults" and how they work. We learn how they even support defining a function that gets called during your changeset operations which can be used to ensure multi-tenancy IDs get populated correctly. We learn more about Slab, talk about Single Table Inheritance designs and how we feel about them. We also talk about wrapping the Repo module for fun and profit! Show Notes online -...
Published 05/18/21
We talk with Kamil Skowron about his Youtube channel that walks people through building a crypto-currency trading bot in Elixir. We learn how that led him to start a free online book sharing that content. He covers what people will learn from the process, his goal of helping people see a larger working Elixir system, and his experience writing the book. A fun chat! Show Notes online - https://thinkingelixir.com/podcast-episodes/047-crypto-trading-in-elixir-with-kamil-skowron
Published 05/11/21
We talk with Jonatan Kłosko, the coder behind Livebook, to learn how it works, how the collaborative feature was done, what you can do with it, what you shouldn't do with it, some unusual ways people are using it, and more! We can’t help but talk about all the fun and cool ways it can be abused and how it's finding exciting uses outside of machine learning. A great discussion with lots of insights. Show Notes online -...
Published 05/04/21
We talk with Michał Buszkiewicz about Junior Developers in the Elixir community. We share tips for Juniors both early in their careers but also more experienced developers coming new to Elixir. We talk about the University vs Bootcamp approaches and what you want to focus on coming from either side. We further discuss how we as employers can support and encourage juniors. A lot of great resources shared! Show Notes online -...
Published 04/27/21
We talk with Sasha Fonseca about Elixir's data types behind the scenes. We learn about binary leaks, discuss memory usage, performance considerations, what boxed values are and much more! Show Notes online - https://thinkingelixir.com/podcast-episodes/044-elixir-data-types-with-sasha-fonseca
Published 04/20/21
We talk with Marcin Lewandowski about Membrane Framework. We learn what it is, the project's goals, how people are using it and how it can solve the speed-to-market problem when streaming multimedia. We cover WebRTC, radio, industry challenges, why you want to deploy it to your own infrastructure, why startups fail and much more! Show Notes online - https://thinkingelixir.com/podcast-episodes/043-membrane-with-marcin-lewandowski
Published 04/13/21
We talk with Velina Petrova about a blog post she wrote showing how a "designer dreamed up" feature was delivered using LiveView and Alpine.js. She shares how she added the LiveView feature to a non-LiveView page demonstrating a great strategy for slowly moving a project in the direction you want to go without stopping to re-write. We also talk about blogging, the value of sharing and putting yourself out there. We all share some tips we've found helpful when creating content. A fun...
Published 04/06/21
We talk with Mrinal Wadhwa about Ockam.io, the project and the company. They are taking on the ambitious goal of building an open protocol through Elixir and Rust libraries to enable secure and trusted IoT platforms. We learn about recurring problems that the IoT industry faces and how they are seeking to solve them differently. A very informative and interesting discussion! Show Notes online -...
Published 03/30/21
We talk about the mental models we use for writing our Elixir code and for thinking about our Elixir systems (starting at 5:46). We cover transformations, plug, and Mark's "Workshop Model" (starting at 23:45). We also talk about LiveView, (starting at 31:20) how we approach it today, mistakes we've both made and seen. A fun discussion! We want to continue the discussion with you over on ElixirForum. Check the show notes for links to those topics! Show Notes online -...
Published 03/23/21
Wojtek Mach returns and talks about the new Mix.install/2 feature coming in Elixir 1.12. We learn about some other features coming that will help script authors. We talk about OTP 24 and when we can expect 1.12 to be released, ExDocs support for Erlang libraries, and more! Show Notes online - https://thinkingelixir.com/podcast-episodes/039-mix-install-and-exdocs-for-erlang-with-wojtek-mach
Published 03/16/21
Saša Jurić shares how the team at Very Big Things is building maintainable Elixir code. This ranges from the development processes to code design and organization. He takes some "radical" positions and challenges conventions on a mission to find what actually works well. We talk about his library Boundary and how it helps enforce API designs. He talks about the "Junk Drawer Pattern" and how code analysis helps identify lines of separation for refactoring. A thought provoking and fun...
Published 03/09/21
After covering the news, we share a live recording of the show from the Lambda Days conference. It was a lot of fun! We covered topics like learning and teaching Elixir, functional programming, strengths of Elixir over Erlang, the developer tooling, why Elixir is awesome even when not building distributed systems, and much more! Show Notes online - https://thinkingelixir.com/podcast-episodes/037-lambda-days-conference-and-elixir
Published 03/02/21
Alexandre Minette shares his adventures with LiveView as he builds a personal finance tracking application. We cover his use of hooks to integrate Javascript libraries that give him the UX he wants. He shares some tips and resources for finding Javascript libraries that work well with LiveView. Alex pushes browser locale data up to the server to customize rendering dates and times for a fun and different approach. We also get his perspective on using Flutter for Mobile development and where...
Published 02/23/21
Tyler Young from X-Plane talks with us about how he added a new MMO feature to the popular flight simulator using Elixir. He shares some behind the scenes information on how it was created and how it’s been working in production. We learn about the single modest server that supports all the mobile users right now. I loved hearing how Tyler found working with Elixir to be super productive. He took on a major new feature that he expected to take over a year but was able to deliver it in...
Published 02/16/21
José Valim visits and finally publicly reveals what Project Nx is! He and others have been working on it for 3 months and he's finally ready to unveil it. José will speak more about it at the LambdaDays conference, demonstrating it with code and announcing the release and availability of the OpenSource code. This is an exciting development that brings Elixir into areas it hasn't been used before. We also talk about what this means for Elixir and the community going forward. A must...
Published 02/09/21
We talk with Allen Wyma about a Postgres PubSub feature and how it plays nice with Elixir. We dispel the idea that you should always use Phoenix PubSub just because it's there and we cover the value of learning what's built-in to tools like the postgrex library. Allen shares how Postgres PubSub elegantly solved a problem for him and he gives tips for using it. We also talk about teaching Elixir through Allen's YouTube videos and teaching in person with his Teach Me Code efforts. Show...
Published 02/02/21