Thinking Elixir Podcast cover image

Thinking Elixir Podcast

Latest episodes

undefined
Jul 9, 2024 • 1h 7min

210: A Bloom'n Fancy UI

Chris Gregori, Creator of Bloom UI, joins the hosts to discuss the launch of Bloom, an extension of Phoenix core components simplifying UI development for Elixir and LiveView projects. They talk about features like avatars and marketing layouts, potential future directions, contributions from the community, and a strong emphasis on accessibility. Plus, updates on Livebook 0.13.x release, viral projects, and more!
undefined
Jul 2, 2024 • 37min

209: New Admin Panel, LiveView Component Kit, and more!

Topics include using setup-beam for GitHub actions, reducing SDK API surfaces, Ash's UUIDv7 support, custom admin panel Backpex, SaladUI for LiveView components, AI testing of function names by Jose Valim, and ElixirConf 2024 talks preview.
undefined
Jun 25, 2024 • 32min

208: Elixir 1.17, Phoenix Playground and more

José Valim, Elixir creator, discusses Elixir 1.17 updates, Phoenix Playground for single-file apps, set-theoretic types for behaviors, Igniter project enhancements. Plus, Phoenix and Inertia.js collaboration, Nx Scholar's new machine learning version, and cutting-edge developments in the Elixir community. Exciting insights into the latest Elixir ecosystem tools, machine learning projects, and unconventional Elixir conference talks.
undefined
Jun 18, 2024 • 31min

207: Poison v6 is Waaay Faster and Drama Turns Productive

News includes the release of Poison v6.0.0, making it faster than ever, the discontinuation of the Lumen/Firefly project, and a new accessibility testing library for Elixir web apps. José Valim discusses managing client and server state with Phoenix LiveView, and there's a showcase of an AI Emoji generator written in Elixir. Tickets for ElixirConfUS 2024 are now available with exciting options for training and speakers, plus a surprise announcement for the event's emcee, and more! Show Notes online - http://podcast.thinkingelixir.com/207 Elixir Community News https://www.reddit.com/r/elixir/s/V5StIsdcbP – Poison v6.0.0 release announcement discussing its performance improvements. https://github.com/devinus/poison – Poison v6.0.0 GitHub repository. https://gist.github.com/devinus/afb351ae45194a6b93b6db9bf2d4c163 – Benchmark comparisons of Poison with other JSON libraries. https://github.com/devinus/poison/blob/master/CHANGELOG.md – Poison v6.0.0 CHANGELOG detailing new features and improvements. https://www.reddit.com/r/elixir/s/ciFzDvfzZL – Announcement that Lumen/Firefly project is discontinued. https://www.reddit.com/r/elixir/comments/1dca6sl/comment/l7yw6sd/ – Brian Cardarella explains why DockYard discontinued the Lumen/Firefly project. https://x.com/src_rip/status/1800210232150470999 – Highlighting a new feature in Elixir 1.17. https://hexdocs.pm/elixir/1.17.0-rc.1/Kernel.html#get_in/2-working-with-structs – Kernel.get_in/2 now works with structs in Elixir 1.17. https://mas.to/@angelikatyborska/112590587923208917 – New A11yAudit test library for automated accessibility testing in Elixir. https://angelika.me/2024/06/10/automated-accessibility-testing-for-elixir-web-apps/ – Blog post about implementing automated accessibility checks in Elixir web apps. https://podcast.thinkingelixir.com/50 – Podcast episode with Angelika Tyborska. https://x.com/charliebholtz/status/1700170783589277996 – AI Emoji generator written in Elixir by Charlie Holtz. https://github.com/cbh123/emoji – GitHub repository for the AI Emoji generator. https://dashbit.co/blog/web-apps-have-client-and-server-state – José Valim's blog post on handling client and server state in web applications with Phoenix LiveView. https://github.com/woutdp/live_svelte – Svelte inside Phoenix LiveView for seamless reactivity. https://x.com/j_tormey/status/1799859208709677512 – Justin created a LiveView Slack clone to showcase Phoenix and LiveView capabilities. https://github.com/fly-apps/live_beats – LiveBeats improvement and bug fixes in Phoenix LiveView. https://x.com/ElixirConf/status/1799829176427463035 – Announcement of ElixirConfUS 2024 tickets availability. David will be the emcee for ElixirConfUS 2024. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Jun 11, 2024 • 1h 1min

206: BeamOps - DevOps on the BEAM

Ellie Fairholm and Josep Giralt D'Lacoste discuss 'Engineering Elixir Applications' and the concept of 'BeamOps.' They talk about unique DevOps challenges in the BEAM ecosystem, insights on the writing process, and future plans for the book.
undefined
Jun 4, 2024 • 28min

205: Elixir 1.17 RC and Other News

In this episode, we delve into the latest developments including the release of Elixir 1.17-rc0, featuring significant type system improvements and new functions like DateTime.shift. We also discuss some unexpected compiler and JIT advancements in OTP 27, which are already showing performance boosts. Elixir celebrated its 12th birthday and the Erlang docs completed their migration to ExDoc, enhancing accessibility and integration. Tune in for these insightful updates and more! Show Notes online - http://podcast.thinkingelixir.com/205 Elixir Community News https://stackoverflow.az1.qualtrics.com/jfe/form/SV_6rJVT6XXsfTo1JI?site=stackoverflow.com – StackOverflow Developer Survey link. https://github.com/elixir-lang/elixir/releases/tag/v1.17.0-rc.0 – Release tag for Elixir 1.17-rc0. https://github.com/elixir-lang/elixir/blob/v1.17.0-rc.0/CHANGELOG.md – Changelog for Elixir 1.17-rc0. https://x.com/marpo60/status/1793993127939969361 – Marcelo Dominguez highlights advantages of the new type system in Elixir 1.17. https://hexdocs.pm/elixir/main/DateTime.html#shift/3 – Documentation for the DateTime.shift function in Elixir. https://hexdocs.pm/elixir/1.17.0-rc.0/Kernel.html#to_timeout/1 – Documentation to convert durations to milliseconds in Elixir 1.17-rc0. https://www.erlang.org/news/170#compiler-and-jit-improvements – News about OTP 27 compiler and JIT improvements. https://x.com/sorentwo/status/1795044358850298343 – Discussion about a 12.5% speed improvement in the Oban test suite. https://github.com/erlang/otp/issues/8469 – Regression of :ets.select in OTP 27 mentioned. https://www.erlang.org/doc/readme.html – New home for Erlang documentation. Get clear on old Elixir Mix episodes being released as new. https://www.imdb.com/title/tt29816472/ – The Thinking Elixir Podcast on IMDB?? https://dashbit.co/blog/req-v0.5 – Announcement of Req v0.5 with improved testing support and error handling. https://gleam.run/news/fault-tolerant-gleam/ – Release notes for Gleam v1.2.0, focusing on fault-tolerant compilation. https://x.com/jacob_luetzow/status/1794075125202956353 – José Valim celebrating Elixir's 12th Birthday. https://www.youtube.com/live/epKeT8-hafE – Video of José Valim discussing Elixir on its 12th Birthday. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social Tyler Young - @TylerAYoung Tyler Young on Fediverse - @tylerayoung@fosstodon.org Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
May 28, 2024 • 56min

204: OTP 27 and Blend for Lib Maintainers

In this episode of the Thinking Elixir podcast, we sit down with Marcelo Dominguez, the driver behind the new "Blend" library, which assists Elixir library developers in testing their projects against multiple versions of dependencies. Marcelo explains the genesis of Blend and the inspiration from the Rubygem "appraisal." He discusses how Blend tackles the common headache of dependency version clashes and integrates smoothly with CI systems to isolate and report specific compatibility issues. We learn how it works under-the-hood and helps library maintainers more easily keep their promises of supporting a library used in diverse environments. We cover the motivations, complexities, and real-world applications of Blend and more! Show Notes online - http://podcast.thinkingelixir.com/204 Elixir Community News https://www.erlang.org/blog/highlights-otp-27/ – OTP 27 release highlights https://www.erlang.org/news/170 – OTP 27 release news https://github.com/erlang/otp/releases/tag/OTP-27.0 – OTP 27 release on GitHub https://en.wikipedia.org/wiki/OCSP_stapling – OCSP stapling explained https://x.com/chris_mccord/status/1791176778989424850 – Chris McCord shares upcoming Cockroach DB support in Phoenix 1.7 https://www.cockroachlabs.com/ – Cockroach Labs business solutions https://github.com/cockroachdb/cockroach – CockroachDB GitHub project https://www.cockroachlabs.com/docs/stable/licensing-faqs.html – Cockroach licensing FAQs https://x.com/josevalim/status/1792642875454259243 – José Valim's tweet on Elixir's 12th birthday celebration https://www.youtube.com/watch?v=epKeT8-hafE – YouTube livestream celebrating Elixir's 12th birthday José teased that an Elixir v1.17 RC might be ready. https://ew.com/pirates-of-the-caribbean-reboot-margot-robbie-movie-exclusive-8651023 – Pirates of the Caribbean reboot discussion... are we that old? https://elixirforum.com/t/ash-framework-3-0/63488 – Ash Framework 3.0 release https://www.reddit.com/r/elixir/s/HMUeyk8Ot3 – LiveToast discussion on Reddit https://github.com/srcrip/live_toast – LiveToast GitHub project https://toast.src.rip – LiveToast demo website https://nerves-project.typeform.com/sotnn-2024 Nerves is an open-source platform for building and deploying production embedded systems using Elixir. https://nerves-project.org/ – Nerves project website https://fly.io/phoenix-files/my-favorite-new-liveview-feature/ – Explanation of the useful new LiveView feature JS.toggle_class. ExDoc light mode possibly getting revamped. https://hexdocs.pm/elixir/main/protocols.html – Example of current dark mode on ExDoc even in light mode. https://erick.navarro.io/blog/simple-obs-client-in-elixir/ – Erick Navarro's post on controlling OBS using Elixir and websockets. https://obsproject.com/ – OBS - Open Broadcaster Software Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://github.com/mimiquate/blend https://rubygems.org/gems/appraisal – Blend was inspired by the Rubygem Appraisal https://github.com/mimiquate/blend?tab=readme-ov-file#Motivation – Motivation for creating the Blend library https://github.com/mimiquate/candlex https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs https://github.com/elixir-plug/plug_crypto/tags https://github.com/rack/rack-attack https://www.mimiquate.com/ https://github.com/elixir-plug/plug/blob/main/mix.exs#L54-L58 – Example of how multiple lockfiles are solved in Plug https://github.com/surface-ui/surface/blob/main/.github/workflows/ci.yml#L54-L56 – Example of how multiple lockfiles are solved in Surface https://github.com/sorentwo/oban/issues/1041 – Example of Oban issue from underlying dep version change https://github.com/sorentwo/oban/commit/f8d3478c27aea56ab01fcc42f13668f4a3516564 – Example where Oban's Ecto version needed to lock to Ecto v3.10 to support materialized cte Guest Information Marcelo Dominguez https://twitter.com/marpo60 – on Twitter https://github.com/marpo60/ – on Github https://www.mimiquate.com/ – Mimiquate agency that published Blend Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
May 21, 2024 • 27min

203: Thinking Elixir News

News includes Phoenix LiveView hitting 1.0 soon, with thoughtful comparisons to the broader web development industry and detailed changelog insights. Theo reacts positively to the release from a React and JS perspective, highlighting its significance. José Valim's keynote at ElixirConf EU 2024 revisits the famous "Gang of Four" design patterns and their relevance to Elixir today. Chris McCord introduces the innovative World Page Speed Test using FLAME, illustrating its ease of use and benefits over traditional solutions. Ash 3.0 is officially released after 46 RC releases. Additionally, Oban support is moving to ElixirForum to improve searchability, and more! Show Notes online - http://podcast.thinkingelixir.com/203 Elixir Community News https://phoenixframework.org/blog/phoenix-liveview-1.0-released – Phoenix LiveView is hitting 1.0 soon with thoughtful comparisons to the broader web development industry. https://hexdocs.pm/phoenix_live_view/1.0.0-rc.0/changelog.html – Backward incompatible changes for Phoenix LiveView 1.0 along with bug fixes. https://www.youtube.com/watch?v=aOk67eT3fpg – Theo reacts positively to the Phoenix LiveView release, discussing it from the React and JS perspective. https://www.youtube.com/watch?v=agkXUp0hCW8 – Keynote by José Valim on design patterns in Elixir at ElixirConf EU 2024. https://twitter.com/josevalim/status/1790354042243203283 – José Valim discusses design patterns in Elixir revisiting the "Gang of Four" patterns. https://www.youtube.com/watch?v=GICJ42OyBGg – Chris McCord’s ElixirConf EU keynote on FLAME and its applications. https://worldpagespeed.fly.dev/ – Chris McCord’s "World Page Speed Test" tool using FLAME. https://fly.io/phoenix-files/world-page-speed-test-elastic-scale-with-flame/ – Chris McCord’s blog post on World Page Speed Test and FLAME on Fly.io. https://twitter.com/ZachSDaniel1/status/1775516026551099852 – Announcement of Ash 3.0 release after 46 RC releases. https://hex.pm/packages/ash – Ash Framework version 3.0 final release details. https://twitter.com/sorentwo/status/1790007674077073474 – Oban support is moving to ElixirForum for better searchability and visibility, away from Slack. https://twitter.com/sorentwo/status/1788181209530466518 – Oban hot tip on managing exception messages for better exception reporting. https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-6/ – NextLS 0.21.0 released with new features like alias-refactor workspace command, completions, snippets, and more. Followup from a comment last week on the difference between pattern-matching empty keyword lists and empty maps, including speed improvements in OTP 26 and 27. https://erlangforums.com/t/matching-empty-map-performance-of-map-size/3572 – Discussion on matching empty map performance. https://hexdocs.pm/elixir/1.14/naming-conventions.html#length-and-size – Naming conventions in Elixir related to length and size. https://github.com/mimiquate/blend – New Elixir library "Blend" helps library maintainers test against different versions of dependencies. https://rubygems.org/gems/appraisal – Blend library appears to be inspired by the Ruby gem “appraisal”. https://twitter.com/jeffbarr/status/1790072050855588265 – Amazon AWS S3 will stop charging for unauthorized requests, being deployed to regions currently. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
May 14, 2024 • 27min

202: Thinking Elixir News

In this week's edition, we dive into the exciting release of ElixirLS 0.21.0, enhancing the developer experience with new code actions and more efficient dialyzing on the latest OTP. We also discuss José Valim's insightful commentary on Elixir's upcoming type system, addressing bug-prone comparison operations, and additional advancements in exception handling. Don't miss the unveiling of "Bloom," an opinionated extension to Phoenix core components, alongside Chris McCord's demo of lightning-fast hot code deploys across a global Fly.io cluster. We round off with the legal tussle over the FTC's ruling on non-compete clauses and AWS's S3 billing adjustments that provide relief from unauthorized access charges, and more! Show Notes online - http://podcast.thinkingelixir.com/202 Elixir Community News https://elixirforum.com/t/elixirls-the-elixir-language-server/5857/213 – Announcing the release of ElixirLS 0.21.0 with improvements and features like incremental dialyzer and experimental support for code actions. https://github.com/elixir-lsp/elixir-ls/pull/1057 – A pull request related to the experimental support for code actions in ElixirLS 0.21.0. https://pragtob.wordpress.com/2024/05/01/10-elixir-gotchas/ – A blog post by Tobias Pfeiffer discussing "10 Elixir gotchas" to help new Elixir developers. https://twitter.com/PragTob/status/1785681200322924666 – Tobias Pfeiffer's tweet about his blog post on "10 Elixir gotchas." https://twitter.com/PragTob/status/1785681200322924666 – José Valim's response to Tobias Pfeiffer's post, providing insights on Elixir's upcoming type system. https://twitter.com/josevalim/status/1785989792141890015 – José Valim details how the Elixir v1.17 will perform type-checking with the comparison operators to catch potential bugs. https://github.com/elixir-lang/elixir/pull/13527 – A merged Elixir PR for "Perform type checking across comparison operators." https://twitter.com/josevalim/status/1785990361418006768?t=ZvCKMAXrZFtDX8pfjW14Lw – A tweet by José Valim discussing the power of set-theoretic types in Elixir. https://twitter.com/josevalim/status/1787543767341486181 – José Valim sharing updates about Elixir's type system checking exceptions fields and warning on undefined exceptions. https://hexdocs.pm/elixir/main/gradual-set-theoretic-types.html – The Elixir documentation for the gradual set-theoretic types. https://hexdocs.pm/elixir/main/changelog.html#warnings-from-gradual-set-theoretic-types – The Elixir 1.17.0 changelog on "Warnings from gradual set-theoretic types." https://github.com/elixir-lang/elixir/pull/13534 – A Github pull request for a new is_non_struct_map guard in Elixir 1.17. https://twitter.com/codestirring/status/1785769316304228590 – Chris Gregori announces "Bloom," a new LiveView component library project. https://bloom-ui.fly.dev/ – The "Bloom" UI component library site showcasing its features and usage. https://github.com/chrisgreg/bloom – The Github repository for the "Bloom" LiveView component library. https://twitter.com/chris_mccord/status/1785678249424461897 – A teaser from Chris McCord about hot deploys on Fly.io to a planet-wide cluster in seconds. https://hexdocs.pm/mix/1.16.2/Mix.Tasks.Release.html#module-hot-code-upgrades – Mix documentation discussing how to perform hot code upgrades. https://twitter.com/bcardarella/status/1785419505134456895 – A tweet from Brian Cardarella showing a LiveView Native tvOS simulator demo. https://www.youtube.com/@CodeSync/videos – Videos uploaded by CodeSync from ElixirConf EU 2024, including keynotes. https://medium.com/@maciej.pocwierz/how-an-empty-s3-bucket-can-make-your-aws-bill-explode-934a383cb8b1 – An article highlighting how unauthorized requests to S3 buckets can inflate AWS bills and AWS's billing policy update to address this. https://twitter.com/jeffbarr/status/1787844682216792163 – AWS's Jeff Barr's tweet about the adjustment of billing policy for S3. https://www.employmentlawworldview.com/ftc-bans-non-competes-throughout-the-united-states-us/ – A follow-up on the FTC's recent ruling on non-compete clauses and the resulting legal challenges. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
May 7, 2024 • 19min

201: Thinking Elixir News

This week's podcast dives into the latest tech updates, including the release of Lexical 0.6.0 with its impressive performance upgrades and new features for Phoenix controller completions. We'll also talk about building smarter Slack bots with Elixir, and the LiveView support enhancements that bolster security against spam connections. Plus, we celebrate the 5-year milestone of Saša Jurić's influential “Soul of Erlang and Elixir” talk. Of course we have to touch on the FTC's impactful ruling that bans non-compete employment clauses, a significant shift that will likely shake up the tech industry and innovation landscape. Stay tuned for this and more! Show Notes online - http://podcast.thinkingelixir.com/201 Elixir Community News https://github.com/lexical-lsp/lexical/releases/tag/v0.6.0 – Lexical 0.6.0 release includes document and workspace symbols, improved Phoenix controller completions, and enhanced indexing performance. https://benreinhart.com/blog/verifying-slack-requests-elixir-phoenix/ – Ben Reinhart's blog post details the process for cryptographically verifying event notifications from Slack in Phoenix apps for Slack bots. https://twitter.com/PJUllrich/status/1784707877157970387 – Peter Ulrich has launched a LiveView-oriented course on building forms as announced on his Twitter account. https://indiecourses.com/catalog/building-forms-with-phoenix-liveview-2OPYIqaekkZwrpgLUZOyZV – The course covers building forms with Phoenix LiveView including various types of schema and dynamic fields. https://paraxial.io/blog/live-view-support – Michael Lubas outlines security-focused support for LiveView on Paraxial.io, including protection against initial connection and websocket spam. https://github.com/nccgroup/sobelow/pull/123 – There was work on adding support for HEEx to Sobelow.XSS.Raw, as a part of Sobelow's security-focused static analysis for the Phoenix Framework. https://twitter.com/sasajuric/status/1784958371998601526 – It's the 5 Year Anniversary of Saša Jurić's “Soul of Erlang and Elixir” talk, recommended for its lasting relevance in the development community. https://www.youtube.com/watch?v=JvBT4XBdoUE – Saša Jurić's influential “Soul of Erlang and Elixir” talk is still very relevant and worth watching, even five years later. https://www.elixirconf.eu/ – ElixirConf EU 2025 dates and location have been announced, with a waitlist available for those interested in attending. https://www.ftc.gov/news-events/news/press-releases/2024/04/ftc-announces-rule-banning-noncompetes – The FTC ruling banning non-compete clauses aims to increase wages, entrepreneurship, and overall economic dynamism in the US technology sector. While bans on non-compete clauses for technology workers are in effect, trade secret laws and NDAs continue to provide employers with protection against information leaks. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Fediverse - @dbern@genserver.social Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Remember Everything You Learn from Podcasts

Save insights instantly, chat with episodes, and build lasting knowledge - all powered by AI.
App store bannerPlay store banner