207 episodes

The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community.
Whether you are already experienced with Elixir or just exploring the language, this show is created with you in mind. We discuss community news, Functional Programming, transitioning from OOP, coding conventions, and more.
Guests visit the show to help challenge our assumptions, learn about new developments and grow in the process.
Subscribe to join us on this journey!

Thinking Elixir Podcast ThinkingElixir.com

    • Utdannelse

The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community.
Whether you are already experienced with Elixir or just exploring the language, this show is created with you in mind. We discuss community news, Functional Programming, transitioning from OOP, coding conventions, and more.
Guests visit the show to help challenge our assumptions, learn about new developments and grow in the process.
Subscribe to join us on this journey!

    207: Poison v6 is Waaay Faster and Drama Turns Productive

    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!

    • 30 min
    206: BeamOps - DevOps on the BEAM

    206: BeamOps - DevOps on the BEAM

    In this episode we dive into the exciting release of Elixir 1.17.0-rc.1 and other news from the community. Our main segment features an in-depth interview with Ellie Fairholm and Josep Giralt D'Lacoste about their new Elixir book "Engineering Elixir Applications - Navigate Each Stage of Software Delivery with Confidence." We explore their professional experiences, the concept of "BeamOps," and the unique DevOps challenges and advantages in the BEAM ecosystem. Ellie and Josep share insights about the writing process, their collaboration, and what's next for the book. Tune in to hear all this and more!


    Show Notes online - http://podcast.thinkingelixir.com/206


    Elixir Community News



    https://x.com/josevalim/status/1797607009715691637 – José Valim announces the release of Elixir 1.17.0-rc.1.
    https://hexdocs.pm/elixir/1.17/gradual-set-theoretic-types.html – Introduction to gradual set-theoretic types in Elixir 1.17.
    https://github.com/elixir-lang/elixir/blob/v1.17/CHANGELOG.md – Detailed changelog of Elixir 1.17.0-rc.1.
    Added mix profile.tprof profiler in Erlang/OTP 27+ and Deprecated mix profile.cprof and mix profile.eprof.
    https://2024.elixirconf.com/ – Information about ElixirConfUS 2024, including keynotes, speakers, and training.
    David speaking on “Dancing with Data, Guide to ETLs” at ElixirConfUS 2024.
    Mark speaking on “Elixir & AI - Creating Autonomous Agents with LangChain” at ElixirConfUS 2024.
    https://dashbit.co/blog/elixir-ml-s1-2024-mlir-arrow-instructor – José Valim's post on the Dashbit blog discussing the state of ML in Elixir in 2024.
    https://mlir.llvm.org/ – Introduction of MLIR (Multi-Level Intermediate Representation) in Elixir's ML projects.
    Broader ML/AI community and new projects in Elixir, including instructor_ex and Elixir LangChain.
    https://x.com/germsvel/status/1796127412511551857 – German Velasco's video showcasing new OTP 27 process labels feature.
    https://www.youtube.com/watch?v=XNQhDl4a9Ko – Google algorithm leak exposed through a GitHub project explained using Elixir.
    https://x.com/akoutmos/status/1796637514704273870 – Akoutmos discusses the Google algorithm leak and its analysis using Elixir.
    https://hexdocs.pm/google_api_content_warehouse/api-reference.html – Hexdocs publish the Google algorithm API reference.
    https://ipullrank.com/google-algo-leak – Analysis of Google's algorithm leak and relevancy to Elixir.
    https://x.com/PJUllrich/status/1796198764681506898 – Introducing Crawly, an application framework for web crawling and data extraction.
    https://github.com/elixir-crawly/crawly – GitHub repository for the Crawly web crawling framework.


    Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com


    Discussion Resources



    https://pragprog.com/titles/beamops/engineering-elixir-applications/ – PragProg book listing
    https://twitter.com/pragprog/status/1779253657097117890
    https://twitter.com/sm_debenedetto/status/1779558393373409481
    https://www.hashicorp.com/
    https://www.erlang-solutions.com/
    https://opentofu.org/
    https://xkcd.com/927/
    https://en.wikipedia.org/wiki/Blue%E2%80%93green_deployment
    https://docs.docker.com/engine/swarm/


    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
    Dave Lucia - @davydog187

    • 1 hr
    205: Elixir 1.17 RC and Other News

    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!

    • 27 min
    204: OTP 27 and Blend for Lib Maintainers

    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

    • 56 min
    203: Thinking Elixir News

    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!

    • 27 min
    202: Thinking Elixir News

    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.employ

    • 26 min

Top Podcasts In Utdannelse

Do it with passion-podden
Silje Landevåg
Foreldrerådet
KLYNGE & Acast
Level Up med Anniken Binz
Anniken Binz
Hanna & de heldige
Vrang produksjon
DEKODET
Bauer Media og Kristian Hope
Kunsten å Leve
Marte Fredriksen

You Might Also Like

Elixir Wizards
SmartLogic LLC
Beam Radio
Lars Wikman
Elixir Mix
Charles M Wood
Elixir Newbie
Brooklin Myers
The Changelog: Software Development, Open Source
Changelog Media
Go Time: Golang, Software Engineering
Changelog Media