José Valim returns to continue with part 2 of our 5 part series as we count down to the 10 year anniversary of the Elixir project we know and love. In Part 2, we talk through the Elixir releases of 1.4, 1.5, and 1.6. We still manage to sneak in discussions about some new things in Elixir 1.13 and the upcoming release. We go deeper on GenStage, Registry, and growing up through production releases. We also learn about the history with unicode while touching on the recent unicode security issues th...
Feb 22, 2022•1 hr 6 min
We talk with Derrick Reimer about his product SavvyCal. He used Elixir as a solo dev to create a service that can take on an 800lb gorilla like Calendly. He shares what competitive advantages he feels he has both from Elixir but also in being more nimble. We also talk about creating a company as an independent, solo developer and how that can work. Derrick shares some tips and resources that were helpful for him on his journey. We feel the PETAL stack positions Elixir developers well for optiona...
Feb 15, 2022•51 min
We talk with Cocoa Xu about his PhD robotics project and his related Evision project that creates Elixir bindings to the OpenCV library. The project enables computer vision in Elixir much easier by building on existing projects. We learn about the kinds of features this enables and how it can target embedded devices as well. His goal of a clustered, collaborative, hoard of Elixir robots is terrifyingly fascinating! 😄 Show Notes online - http://podcast.thinkingelixir.com/85 Elixir Community News...
Feb 08, 2022•27 min
We talk with Chris McCord about the LiveBeats project he created. It’s a high-quality, showcase, open source project that highlights new and powerful features in LiveView. LiveBeats is a social music playing application that challenges current ideas about what LiveView is able to do. It uses presence, new JS features, defines reusable Tailwind styled components, includes accessibility and more! An exciting project that people can actually use in addition to being a great community resource. We a...
Feb 02, 2022•58 min
We talk with Isaac Yonemoto about the Zig language and his Zigler Elixir library. We learn where Zig came from, why it is capturing people's interest, and how Zigler makes it easy to write native, cross-compiled NIFs in Elixir! At the end we shift into talking about his OpenAPI Elixir project that comes at the problem from a different direction than others. A fun get-to-know-you with Isaac and a great look into Zig and where it might go with Elixir in the future. Show Notes online - http://podca...
Jan 25, 2022•46 min
José Valim joins us to kick off part 1 of a 5 part series as we count down to the 10 year anniversary of the Elixir project we know and love. In Part 1, we talk through the Elixir releases of 1.1, 1.2, and 1.3. We cover the significant changes in each release, what instigated the change, the thinking behind it, and more. We cover some long-present features that people may not be aware of and recall what these changes meant to us. Show Notes online - http://podcast.thinkingelixir.com/82 Elixir Co...
Jan 18, 2022•1 hr
We talk with Digit and Quinn Wilton about the Burrito project. It wraps up Elixir to a single binary, enables cross-platform builds, and uses Zig to help while also enabling NIFs! They share how the security focused software they create uses this to run in isolated environments where Elixir can’t be installed. A really cool project that can be used for one-off scripts, long running CLI applications with full OTP features and more. They share some of the challenges they had to overcome in creatin...
Jan 11, 2022•54 min
We talk with Boris Kuznetsov to learn about the Waffle library and how it is used to attach images, video, and audio to your Ecto records while also processing the attachments for thumbnails, encodings, and more. We learn about the history of the project having forked from Arc, which is no longer maintained. We cover the challenges of supporting and maintaining a library created as a fork. We talk about Second System Syndrome and the desire we often feel that it would be easier to just start ove...
Jan 04, 2022•33 min
We talk with Nathan Willson about GEMS, his collaborative music generator written in LiveView. He explains how it's built, the JS sound library integrations, what could be done by Phoenix and what is done in the browser. Nathan shares how he deployed it globally to 10 regions using Fly.io. We go over some of the challenges he overcame creating an audio focused web application. It's a fun open-source project that pushes the boundaries of what we think LiveView apps can do! Show Notes online - htt...
Dec 28, 2021•44 min
We talk with Chase Granberry about Logflare. We learn why Chase started the company, what Logflare does, how it's built on Elixir, about their custom Elixir logger, where the data is stored, how it's queried, and more! We talk about dealing with the constant stream of log data, how Logflare is collecting and displaying metrics, and talk more about Supabase acquiring the company! Show Notes online - http://podcast.thinkingelixir.com/78 Elixir Community News https://www.twitch.tv/josevalim – José ...
Dec 21, 2021•41 min
We talk with Chris Bell, host of the Elixir Talk podcast and EMPEX conference organizer. Chris tells us about a new EMPEX chapter in the US Western states. EMPEX MTN will be in Salt Lake City, Utah. Chris started a new company called Knock using Elixir. We hear what problems it helps solve and more about his startup journey. A fun discussion with some tech insights, architecture overviews, and more on the rollercoaster of starting your own thing! Show Notes online - http://podcast.thinkingelixir...
Dec 14, 2021•53 min
We talk with host David Bernheisel about his Safe Ecto Migrations guide that was recently released. Intended as a resource for the community, it’s a 4-part series covering how Ecto migrations work, running migrations on production, provides a set of common-task recipes and strategies for migrating data in addition to DB structure. We discuss ideas around migrations like avoiding table locks on production, how to safely add DB check constraints, separating data migrations from structure changes, ...
Dec 07, 2021•36 min
We talk with Dave Lucia about Simplebet’s use of RabbitMQ and Commanded for solving unique real-time problems. We learn how Simplebet uses Elixir when creating real-time sports betting markets. We also learn what CQRS systems are, how the Commanded library supports that in Elixir, and how Commanded pairs well with RabbitMQ. Dave talks about moving away from Kafka to RabbitMQ and how that made sense for their use cases. Also valuable, Dave shares where they have found the “dragons” in their desig...
Nov 30, 2021•56 min
We talk with mother/daughter team Miki and Kate Rezentes about their experiences learning and working with Elixir and as women in the tech industry. Miki presented “Greasing the Wheel of Adoption” at ElixirConf. Her focus was on the people aspect of adoption and we had a great time going deeper on that topic here. Kate, who is just starting her career as a developer, talks about ways we can share tech with the young people around us. We get their ideas and suggestions for ways to support women i...
Nov 23, 2021•1 hr 4 min
We talk with Paul Copplestone, founder and CEO of Supabase. Supabase leverages the power of Elixir, Postgres, and more to create an OpenSource Firebase alternative that brings these powers to the Jamstack community. We cover TechCrunch’s coverage of their funding and how Paul considers Supabase as “the easiest way to use Postgres”. They offer a row-level security feature and we dig in to understand that. We go deeper on how an OpenSource company got VC funding and how their business model works....
Nov 16, 2021•45 min
We talk with Wiebe-Marten Wijnja about his project TypeCheck that provides a new kind of runtime type checking for Elixir applications. The syntax builds on your existing spec types so it still works for dialyzer but adds additional compile time created checks. It also works for generating property based test data. This feature comes out in a new ability called "spectest". Like doctests, you can have automated checks that verify the function adheres to the spec! We also cover how TypeCheck allow...
Nov 09, 2021•46 min
We catch up with German Velasco then talk about how he learned of the 7-GUI Tasks online challenge and how he wanted to see how LiveView could approach it. We talk about his ElixirConf presentation and how the idea of modeling state impacted his solutions to these problems. We go over what these common UI patterns are and how LiveView is able to approach them differently. We talk about Chris McCord’s idea of “Live Apps” and how LiveView really is different from what other languages and communiti...
Nov 02, 2021•52 min
After a big news section, we talk with Alfred Reinold Baudisch about his project PardallMarkdown. It's a reactive Elixir server that reads markdown files, compiles them to HTML, stores them in an ETS table, and serves them up. It's a different take on serving markdown files for a blog. It can also be used as a wiki and supports deeply nested hierarchies. An interesting feature is it can be used as a library inside your own Phoenix application to provide blog posts or other "static" content. Show...
Oct 26, 2021•41 min
We talk with Dominic Letz about running Elixir on an Android phone installed in an APK which hosts a LiveView application accessed through a WebView! All while also pursuing a Web 3.0 architecture of being decentralized! Wow! There’s a lot going on here! Oh, and the tech is OpenSource! Show Notes online - http://podcast.thinkingelixir.com/69 Elixir Community News https://github.com/phoenixframework/phoenix/blob/master/CHANGELOG.md#162-2021-10-08 – Phoenix 1.6.1 and 1.6.2 were released. https://t...
Oct 19, 2021•46 min
We talk with Niklas Begley about his Doctave service and the problems it's solving. From there we cover why they use Rust for a key piece of the service and how Elixir fits in. We cover tools like Rustler for integrating Elixir and Rust smoothly. We talk about business drivers, Nik's experience building a SaaS product using Elixir and more! Show Notes online - http://podcast.thinkingelixir.com/68 Elixir Community News https://github.com/hauleth/mix_unused – Compile errors formatted to be machine...
Oct 12, 2021•41 min
We talk about ways we can all contribute to building a healthy Elixir community. The Elixir community is a welcoming, encouraging and helpful place and we want to help keep it that way! We talk about common problems facing maintainers, tips for engaging productively, the value of expressing appreciation, and much more! Show Notes online - http://podcast.thinkingelixir.com/67 Elixir Community News https://www.erlang.org/news/149 – Erlang/OTP 24.1 was released https://github.com/livebook-dev/nerve...
Oct 05, 2021•40 min
We talk with Kai Wern Choong about his experience with tracing performance problems in production. We talk about what “tracing” means in a BEAM system, available tools like recon, great resources for learning how the tools work and general approaches for troubleshooting live production Elixir systems. Kai also shares his Livebook notebook setup for demonstrating tracing techniques in an interactive way. Show Notes online - http://podcast.thinkingelixir.com/66 Elixir Community News https://twitte...
Sep 28, 2021•39 min
We talk with Elixir Core Team Member Aleksei Magusev about how he got involved in Elixir, what it’s like being on the Core Team, some of his contributions, areas in Elixir that interest him, and his tips for learning a new programming language! He also shares some of his interests outside of computing. Meet Aleksei! Show Notes online - http://podcast.thinkingelixir.com/65 Elixir Community News https://github.com/phoenixframework/phoenix_live_view/issues/1617 – Initial proposal to bring slots to ...
Sep 21, 2021•48 min
We talk with Bram Verburg about an important root certificate expiring at the end of September and how this impacts your Elixir and Erlang projects! Bram helps explain where this IS and IS NOT a problem. He also explains the different update options available. We also get Bram’s security perspectives from his years of focused study and contributions in the Elixir and Erlang communities. A great resource for understanding the current certificate situation and for protecting your Elixir projects! ...
Sep 14, 2021•43 min
We talk with Peter Ullrich about his experience sending SMS messages from a Raspberry Pi Zero using Nerves. We cover what went well, what didn’t and get a glimpse into the current state of Nerves for a newbie when dealing with hardware. Peter also tried Livebook for Nerves and had a great experience with that. We discuss the challenges of hardware systems dealing with the “real world” but see how Elixir makes the process easier to model and think about. Show Notes online - http://podcast.thinkin...
Sep 07, 2021•44 min
We talk with Chris McCord about his recent announcement that he’s moved to work at Fly.io! We cover what this means for the Phoenix project and ongoing Phoenix development work. He shares why he’s excited about the Fly platform which includes how it replaces his need for a CDN! We also talk about the new Phoenix 1.6 release and all the goodness coming there. This release includes the HEEX engine for validated HTML at compile time, making the auth generators official, a new mailer generator, and ...
Aug 31, 2021•57 min
We cover the news then talk about the Brex announcement that they are shifting to a Kotlin-first strategy over Elixir. This reminds us of patterns we’ve seen in our careers and we reflect on what it means to us personally and professionally. We share our perspectives on Elixir, how it’s different from the languages we’ve used before and the unique value we get from it. Show Notes online - http://podcast.thinkingelixir.com/61 Elixir Community News https://medium.com/brexeng/building-backend-servi...
Aug 24, 2021•31 min
We talk with Marc-André Lafortune about reducing Elixir project compile times. On larger projects, when a single file like a view template is changed and over 100 files get recompiled, there is something wrong. Marc-André explains how he identified the problems in his project and contributed to Elixir’s mix xref tool making it easier for us to find those problems in our own projects! We cover how these tooling improvements were used to improve the upcoming Phoenix 1.6 and Elixir 1.13! An additio...
Aug 17, 2021•43 min
We talk with Joel Kemp about his experience introducing Elixir at Spotify. We learn about the concurrency problems he had with the default stack and how that was solved with the BEAM. We talk about the inertia that larger companies have that make introducing any change harder. Joel compares the process to running a marathon and shares some tactics used to help build internal support and interest. Fascinating insight into a well known company and how Elixir is helping internally. Show Notes onlin...
Aug 10, 2021•43 min
After covering the news we catch up on what Elixir things we've been thinking about and working on. Mark brings up using Livebook as a Business Intelligence tool for doing analysis of a running application's data. David brings up how to design safe data migrations in Elixir systems, examples from the Rails ecosystem and how he's thinking about that for Elixir. Show Notes online - http://podcast.thinkingelixir.com/58 Elixir Community News https://2021.elixirconf.com/#up-next – ElixirConf talks ar...
Aug 03, 2021•21 min