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.
Similar Podcasts

The Cynical Developer
A UK based Technology and Software Developer Podcast that helps you to improve your development knowledge and career,
through explaining the latest and greatest in development technology and providing you with what you need to succeed as a developer.

Elixir Outlaws
Elixir Outlaws is an informal discussion about interesting things happening in Elixir. Our goal is to capture the spirit of a conference hallway discussion in a podcast.

Linux For Everyone
A show about the thrilling world of desktop Linux, open-source software, and the community creating it. For beginners and veterans alike! Hosted by Jason Evangelho, Jerry Morrison and Schykle.
209: New Admin Panel, LiveView Component Kit, and more!
News includes a neat trick we learned that setup-beam can do for GitHub actions by reading a project's .tool-versions file, Wojtek's insight on reducing SDK API surfaces, Ash's support for UUIDv7, the introduction of the highly customizable Backpex admin panel, a new LiveView component library called SaladUI and its unique ReactJS component conversion feature, Jose Valim's technique of using AI for testing function names, and more! Show Notes online - http://podcast.thinkingelixir.com/209 (http://podcast.thinkingelixir.com/209) Elixir Community News - https://x.com/flo_arens/status/1805255159460532602 (https://x.com/flo_arens/status/1805255159460532602?utm_source=thinkingelixir&utm_medium=shownotes) – TIL setup-beam GitHub action can read asdf's .tool-versions file and parse the OTP and Elixir version out of it. - https://github.com/erlef/setup-beam (https://github.com/erlef/setup-beam?utm_source=thinkingelixir&utm_medium=shownotes) – The setup-beam GitHub action project. - https://github.com/erlef/setup-beam?tab=readme-ov-file#version-file (https://github.com/erlef/setup-beam?tab=readme-ov-file#version-file?utm_source=thinkingelixir&utm_medium=shownotes) – Link to README section about the version file support in setup-beam. - https://dashbit.co/blog/sdks-with-req-stripe (https://dashbit.co/blog/sdks-with-req-stripe?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post by Wojtek on reducing the surface of SDK APIs by focusing on data, not functions. - https://x.com/ZachSDaniel1/status/1805002425738334372 (https://x.com/ZachSDaniel1/status/1805002425738334372?utm_source=thinkingelixir&utm_medium=shownotes) – Ash now supports UUIDv7, a Time-Sortable Identifier for modern databases. - https://github.com/ash-project/ash/pull/1253 (https://github.com/ash-project/ash/pull/1253?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub pull request for Ash's support of UUIDv7. - https://uuid7.com/ (https://uuid7.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Information about UUID7 as a Time-Sortable Identifier. - https://elixirforum.com/t/backpex-a-highly-customizable-admin-panel-for-phoenix-liveview-applications/64314 (https://elixirforum.com/t/backpex-a-highly-customizable-admin-panel-for-phoenix-liveview-applications/64314?utm_source=thinkingelixir&utm_medium=shownotes) – Introduction to Backpex, a new admin backend library for Phoenix LiveView applications. - https://github.com/naymspace/backpex (https://github.com/naymspace/backpex?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for Backpex, a customizable administration panel for Phoenix LiveView applications. - https://github.com/bluzky/salad_ui (https://github.com/bluzky/salad_ui?utm_source=thinkingelixir&utm_medium=shownotes) – SaladUI, a Tailwind LiveView UI toolkit that includes a unique feature to convert ReactJS components. - https://salad-storybook.fly.dev/welcome (https://salad-storybook.fly.dev/welcome?utm_source=thinkingelixir&utm_medium=shownotes) – Storybook for SaladUI to explore components. - https://ui.shadcn.com/ (https://ui.shadcn.com/?utm_source=thinkingelixir&utm_medium=shownotes) – React Shad/cn UI component framework storybook page. - https://salad-storybook.fly.dev/examples/convert_shadui (https://salad-storybook.fly.dev/examples/convert_shadui?utm_source=thinkingelixir&utm_medium=shownotes) – Example of converting a ReactJS component to SaladUI. - https://github.com/codedge-llc/accessible (https://github.com/codedge-llc/accessible?utm_source=thinkingelixir&utm_medium=shownotes) – Accessible, a package to add Access behavior support to Elixir structs. - https://paraxial.io/blog/owasp-top-ten (https://paraxial.io/blog/owasp-top-ten?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post on how the OWASP Top 10 applies to Elixir and Phoenix applications. - https://owasp.org/www-project-top-ten/ (https://owasp.org/www-project-top-ten/?utm_source=thinkingelixir&utm_medium=shownotes) – The OWASP Top 10, a standard awareness document for developers and web application security. - https://x.com/josevalim/status/1804117870764339546 (https://x.com/josevalim/status/1804117870764339546?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's technique of using AI to help review or determine function names in APIs. - https://fly.io/phoenix-files/using-ai-to-boost-accessibility-and-seo/ (https://fly.io/phoenix-files/using-ai-to-boost-accessibility-and-seo/?utm_source=thinkingelixir&utm_medium=shownotes) – Article on using AI to boost image accessibility and SEO, demonstrating working with OpenAI and Anthropic using Elixir. - https://2024.elixirconf.com/ (https://2024.elixirconf.com/?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirConf 2024 details, taking place from August 28-30 with various speakers and talks focused on Elixir. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern)
208: Elixir 1.17, Phoenix Playground and more
This week's show features the latest releases Elixir 1.17.0 and 1.17.1, bringing improved type inference and a new Duration data type. We'll also dive into Phoenix Playground's streamlined approach to single-file applications, José Valim shares another Elixir academic research project taking shape on set-theoretic types for behaviors, and updates from the Igniter project on enhancing code generation and project patching. With a look at how Phoenix and Inertia.js are joining forces and the latest on Nx Scholar's new version for machine learning, this episode is packed with cutting-edge developments in the Elixir community, and more! Show Notes online - http://podcast.thinkingelixir.com/208 (http://podcast.thinkingelixir.com/208) Elixir Community News - https://github.com/elixir-lang/elixir/releases/tag/v1.17.0 (https://github.com/elixir-lang/elixir/releases/tag/v1.17.0?utm_source=thinkingelixir&utm_medium=shownotes) – Release information for Elixir version 1.17.0. - https://github.com/elixir-lang/elixir/releases/tag/v1.17.1 (https://github.com/elixir-lang/elixir/releases/tag/v1.17.1?utm_source=thinkingelixir&utm_medium=shownotes) – Release information for Elixir version 1.17.1. - https://x.com/davydog187/status/1800962252125667748 (https://x.com/davydog187/status/1800962252125667748?utm_source=thinkingelixir&utm_medium=shownotes) – Dave Lucia shared how Elixir 1.17.0 helped find a bug using new type information. - https://x.com/josevalim/status/1801000076497539482 (https://x.com/josevalim/status/1801000076497539482?utm_source=thinkingelixir&utm_medium=shownotes) – José shared additional academic research being started on Elixir for set-theoretic types - https://x.com/wojtekmach/status/1802975489230811354 (https://x.com/wojtekmach/status/1802975489230811354?utm_source=thinkingelixir&utm_medium=shownotes) – Wojtek Mach's announcement of "Phoenix Playground" for creating single-file Phoenix apps. - https://dashbit.co/blog/announcing-phoenix-playground (https://dashbit.co/blog/announcing-phoenix-playground?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post about the announcement of Phoenix Playground. - https://github.com/phoenix-playground/phoenix_playground (https://github.com/phoenix-playground/phoenix_playground?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for Phoenix Playground. - https://github.com/inertiajs/inertia-phoenix (https://github.com/inertiajs/inertia-phoenix?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for Inertia.js Phoenix LiveView adapter. - https://inertiajs.com/ (https://inertiajs.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Official site of Inertia.js, explaining its concept and features. - https://github.com/DockYard/flame_on (https://github.com/DockYard/flame_on?utm_source=thinkingelixir&utm_medium=shownotes) – Update announcement for FlameOn from Dockyard, now with SVG download capability. - https://tylerbarker.com/posts/liveview-is-not-a-zero-js-framework-it-s-a-zero-boring-js-framework (https://tylerbarker.com/posts/liveview-is-not-a-zero-js-framework-it-s-a-zero-boring-js-framework?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post explaining why LiveView is referred to as a "zero-boring-js" framework. - https://github.com/membraneframework-labs/ex_vision/ (https://github.com/membraneframework-labs/ex_vision/?utm_source=thinkingelixir&utm_medium=shownotes) – Repository for ExVision, using ONNX bindings for AI model integration. - https://github.com/cocoa-xu/evision (https://github.com/cocoa-xu/evision?utm_source=thinkingelixir&utm_medium=shownotes) – EVision which uses OpenCV bindings. - https://elixir-nx.github.io/axon/onnxtoaxon.html (https://elixir-nx.github.io/axon/onnx_to_axon.html?utm_source=thinkingelixir&utm_medium=shownotes) – Guide on converting ONNX models to Axon. - https://github.com/ash-project/igniter (https://github.com/ash-project/igniter?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for Igniter, aiming to solve issues with composable mix generators. - https://elixirforum.com/t/igniter-a-code-generation-and-project-patching-framework/64181 (https://elixirforum.com/t/igniter-a-code-generation-and-project-patching-framework/64181?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir forum discussion on Igniter framework's capabilities and applications. - https://x.com/josevalim/status/1803040816404849008 (https://x.com/josevalim/status/1803040816404849008?utm_source=thinkingelixir&utm_medium=shownotes) – José announced the release of Nx Scholar v0.3.1, featuring new embedded notebooks. - https://hexdocs.pm/scholar/manifold_learning.html (https://hexdocs.pm/scholar/manifold_learning.html?utm_source=thinkingelixir&utm_medium=shownotes) – Documentation on manifold learning in Nx Scholar v0.3.1. - https://x.com/yevkurtov/status/1800851584827711607 (https://x.com/yevkurtov/status/1800851584827711607?utm_source=thinkingelixir&utm_medium=shownotes) – Yevhenii Kurtov shared a guide on ES/CQRS with EventStoreDB and Phoenix/LiveView. - https://kurtov.pro/blog/2024/06/an-end-to-end-es/cqrs-example-with-eventstoredb-and-phoenix/liveview/ (https://kurtov.pro/blog/2024/06/an-end-to-end-es/cqrs-example-with-eventstoredb-and-phoenix/liveview/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog detailing an end-to-end example of ES/CQRS implementation. - https://github.com/commanded/commanded (https://github.com/commanded/commanded?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for Commanded, a library for CQRS/ES architectures. - https://learn.eventstore.com/an-end-to-end-example-with-eventstoredb (https://learn.eventstore.com/an-end-to-end-example-with-eventstoredb?utm_source=thinkingelixir&utm_medium=shownotes) – Official guide on implementing end-to-end examples with EventStoreDB. - https://x.com/CodeBEAMio/status/1800918581225431318 (https://x.com/CodeBEAMio/status/1800918581225431318?utm_source=thinkingelixir&utm_medium=shownotes) – CodeBEAM conference announcement, set to take place in Berlin. - https://codebeameurope.com/ (https://codebeameurope.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Official site for CodeBEAM Europe conference details. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern)
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 (http://podcast.thinkingelixir.com/207) Elixir Community News - https://www.reddit.com/r/elixir/s/V5StIsdcbP (https://www.reddit.com/r/elixir/s/V5StIsdcbP?utm_source=thinkingelixir&utm_medium=shownotes) – Poison v6.0.0 release announcement discussing its performance improvements. - https://github.com/devinus/poison (https://github.com/devinus/poison?utm_source=thinkingelixir&utm_medium=shownotes) – Poison v6.0.0 GitHub repository. - https://gist.github.com/devinus/afb351ae45194a6b93b6db9bf2d4c163 (https://gist.github.com/devinus/afb351ae45194a6b93b6db9bf2d4c163?utm_source=thinkingelixir&utm_medium=shownotes) – Benchmark comparisons of Poison with other JSON libraries. - https://github.com/devinus/poison/blob/master/CHANGELOG.md (https://github.com/devinus/poison/blob/master/CHANGELOG.md?utm_source=thinkingelixir&utm_medium=shownotes) – Poison v6.0.0 CHANGELOG detailing new features and improvements. - https://www.reddit.com/r/elixir/s/ciFzDvfzZL (https://www.reddit.com/r/elixir/s/ciFzDvfzZL?utm_source=thinkingelixir&utm_medium=shownotes) – Announcement that Lumen/Firefly project is discontinued. - https://www.reddit.com/r/elixir/comments/1dca6sl/comment/l7yw6sd/ (https://www.reddit.com/r/elixir/comments/1dca6sl/comment/l7yw6sd/?utm_source=thinkingelixir&utm_medium=shownotes) – Brian Cardarella explains why DockYard discontinued the Lumen/Firefly project. - https://x.com/src_rip/status/1800210232150470999 (https://x.com/src_rip/status/1800210232150470999?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://hexdocs.pm/elixir/1.17.0-rc.1/Kernel.html#get_in/2-working-with-structs?utm_source=thinkingelixir&utm_medium=shownotes) – Kernel.get_in/2 now works with structs in Elixir 1.17. - https://mas.to/@angelikatyborska/112590587923208917 (https://mas.to/@angelikatyborska/112590587923208917?utm_source=thinkingelixir&utm_medium=shownotes) – New A11yAudit test library for automated accessibility testing in Elixir. - https://angelika.me/2024/06/10/automated-accessibility-testing-for-elixir-web-apps/ (https://angelika.me/2024/06/10/automated-accessibility-testing-for-elixir-web-apps/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post about implementing automated accessibility checks in Elixir web apps. - https://podcast.thinkingelixir.com/50 (https://podcast.thinkingelixir.com/50?utm_source=thinkingelixir&utm_medium=shownotes) – Podcast episode with Angelika Tyborska. - https://x.com/charliebholtz/status/1700170783589277996 (https://x.com/charliebholtz/status/1700170783589277996?utm_source=thinkingelixir&utm_medium=shownotes) – AI Emoji generator written in Elixir by Charlie Holtz. - https://github.com/cbh123/emoji (https://github.com/cbh123/emoji?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for the AI Emoji generator. - https://dashbit.co/blog/web-apps-have-client-and-server-state (https://dashbit.co/blog/web-apps-have-client-and-server-state?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's blog post on handling client and server state in web applications with Phoenix LiveView. - https://github.com/woutdp/live_svelte (https://github.com/woutdp/live_svelte?utm_source=thinkingelixir&utm_medium=shownotes) – Svelte inside Phoenix LiveView for seamless reactivity. - https://x.com/j_tormey/status/1799859208709677512 (https://x.com/j_tormey/status/1799859208709677512?utm_source=thinkingelixir&utm_medium=shownotes) – Justin created a LiveView Slack clone to showcase Phoenix and LiveView capabilities. - https://github.com/fly-apps/live_beats (https://github.com/fly-apps/live_beats?utm_source=thinkingelixir&utm_medium=shownotes) – LiveBeats improvement and bug fixes in Phoenix LiveView. - https://x.com/ElixirConf/status/1799829176427463035 (https://x.com/ElixirConf/status/1799829176427463035?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern)
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 (http://podcast.thinkingelixir.com/206) Elixir Community News - https://x.com/josevalim/status/1797607009715691637 (https://x.com/josevalim/status/1797607009715691637?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim announces the release of Elixir 1.17.0-rc.1. - https://hexdocs.pm/elixir/1.17/gradual-set-theoretic-types.html (https://hexdocs.pm/elixir/1.17/gradual-set-theoretic-types.html?utm_source=thinkingelixir&utm_medium=shownotes) – Introduction to gradual set-theoretic types in Elixir 1.17. - https://github.com/elixir-lang/elixir/blob/v1.17/CHANGELOG.md (https://github.com/elixir-lang/elixir/blob/v1.17/CHANGELOG.md?utm_source=thinkingelixir&utm_medium=shownotes) – 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/ (https://2024.elixirconf.com/?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://dashbit.co/blog/elixir-ml-s1-2024-mlir-arrow-instructor?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's post on the Dashbit blog discussing the state of ML in Elixir in 2024. - https://mlir.llvm.org/ (https://mlir.llvm.org/?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://x.com/germsvel/status/1796127412511551857?utm_source=thinkingelixir&utm_medium=shownotes) – German Velasco's video showcasing new OTP 27 process labels feature. - https://www.youtube.com/watch?v=XNQhDl4a9Ko (https://www.youtube.com/watch?v=XNQhDl4a9Ko?utm_source=thinkingelixir&utm_medium=shownotes) – Google algorithm leak exposed through a GitHub project explained using Elixir. - https://x.com/akoutmos/status/1796637514704273870 (https://x.com/akoutmos/status/1796637514704273870?utm_source=thinkingelixir&utm_medium=shownotes) – Akoutmos discusses the Google algorithm leak and its analysis using Elixir. - https://hexdocs.pm/googleapicontent_warehouse/api-reference.html (https://hexdocs.pm/google_api_content_warehouse/api-reference.html?utm_source=thinkingelixir&utm_medium=shownotes) – Hexdocs publish the Google algorithm API reference. - https://ipullrank.com/google-algo-leak (https://ipullrank.com/google-algo-leak?utm_source=thinkingelixir&utm_medium=shownotes) – Analysis of Google's algorithm leak and relevancy to Elixir. - https://x.com/PJUllrich/status/1796198764681506898 (https://x.com/PJUllrich/status/1796198764681506898?utm_source=thinkingelixir&utm_medium=shownotes) – Introducing Crawly, an application framework for web crawling and data extraction. - https://github.com/elixir-crawly/crawly (https://github.com/elixir-crawly/crawly?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for the Crawly web crawling framework. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://pragprog.com/titles/beamops/engineering-elixir-applications/ (https://pragprog.com/titles/beamops/engineering-elixir-applications/?utm_source=thinkingelixir&utm_medium=shownotes) – PragProg book listing - https://twitter.com/pragprog/status/1779253657097117890 (https://twitter.com/pragprog/status/1779253657097117890?utm_source=thinkingelixir&utm_medium=shownotes) - https://twitter.com/sm_debenedetto/status/1779558393373409481 (https://twitter.com/sm_debenedetto/status/1779558393373409481?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.hashicorp.com/ (https://www.hashicorp.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.erlang-solutions.com/ (https://www.erlang-solutions.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://opentofu.org/ (https://opentofu.org/?utm_source=thinkingelixir&utm_medium=shownotes) - https://xkcd.com/927/ (https://xkcd.com/927/?utm_source=thinkingelixir&utm_medium=shownotes) - https://en.wikipedia.org/wiki/Blue%E2%80%93green_deployment (https://en.wikipedia.org/wiki/Blue%E2%80%93green_deployment?utm_source=thinkingelixir&utm_medium=shownotes) - https://docs.docker.com/engine/swarm/ (https://docs.docker.com/engine/swarm/?utm_source=thinkingelixir&utm_medium=shownotes) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Dave Lucia - @davydog187 (https://twitter.com/davydog187)
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 (http://podcast.thinkingelixir.com/205) Elixir Community News - https://stackoverflow.az1.qualtrics.com/jfe/form/SV_6rJVT6XXsfTo1JI?site=stackoverflow.com (https://stackoverflow.az1.qualtrics.com/jfe/form/SV_6rJVT6XXsfTo1JI?site=stackoverflow.com?utm_source=thinkingelixir&utm_medium=shownotes) – StackOverflow Developer Survey link. - https://github.com/elixir-lang/elixir/releases/tag/v1.17.0-rc.0 (https://github.com/elixir-lang/elixir/releases/tag/v1.17.0-rc.0?utm_source=thinkingelixir&utm_medium=shownotes) – Release tag for Elixir 1.17-rc0. - https://github.com/elixir-lang/elixir/blob/v1.17.0-rc.0/CHANGELOG.md (https://github.com/elixir-lang/elixir/blob/v1.17.0-rc.0/CHANGELOG.md?utm_source=thinkingelixir&utm_medium=shownotes) – Changelog for Elixir 1.17-rc0. - https://x.com/marpo60/status/1793993127939969361 (https://x.com/marpo60/status/1793993127939969361?utm_source=thinkingelixir&utm_medium=shownotes) – Marcelo Dominguez highlights advantages of the new type system in Elixir 1.17. - https://hexdocs.pm/elixir/main/DateTime.html#shift/3 (https://hexdocs.pm/elixir/main/DateTime.html#shift/3?utm_source=thinkingelixir&utm_medium=shownotes) – Documentation for the DateTime.shift function in Elixir. - https://hexdocs.pm/elixir/1.17.0-rc.0/Kernel.html#to_timeout/1 (https://hexdocs.pm/elixir/1.17.0-rc.0/Kernel.html#to_timeout/1?utm_source=thinkingelixir&utm_medium=shownotes) – Documentation to convert durations to milliseconds in Elixir 1.17-rc0. - https://www.erlang.org/news/170#compiler-and-jit-improvements (https://www.erlang.org/news/170#compiler-and-jit-improvements?utm_source=thinkingelixir&utm_medium=shownotes) – News about OTP 27 compiler and JIT improvements. - https://x.com/sorentwo/status/1795044358850298343 (https://x.com/sorentwo/status/1795044358850298343?utm_source=thinkingelixir&utm_medium=shownotes) – Discussion about a 12.5% speed improvement in the Oban test suite. - https://github.com/erlang/otp/issues/8469 (https://github.com/erlang/otp/issues/8469?utm_source=thinkingelixir&utm_medium=shownotes) – Regression of :ets.select in OTP 27 mentioned. - https://www.erlang.org/doc/readme.html (https://www.erlang.org/doc/readme.html?utm_source=thinkingelixir&utm_medium=shownotes) – New home for Erlang documentation. - Get clear on old Elixir Mix episodes being released as new. - https://www.imdb.com/title/tt29816472/ (https://www.imdb.com/title/tt29816472/?utm_source=thinkingelixir&utm_medium=shownotes) – The Thinking Elixir Podcast on IMDB?? - https://dashbit.co/blog/req-v0.5 (https://dashbit.co/blog/req-v0.5?utm_source=thinkingelixir&utm_medium=shownotes) – Announcement of Req v0.5 with improved testing support and error handling. - https://gleam.run/news/fault-tolerant-gleam/ (https://gleam.run/news/fault-tolerant-gleam/?utm_source=thinkingelixir&utm_medium=shownotes) – Release notes for Gleam v1.2.0, focusing on fault-tolerant compilation. - https://x.com/jacob_luetzow/status/1794075125202956353 (https://x.com/jacob_luetzow/status/1794075125202956353?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim celebrating Elixir's 12th Birthday. - https://www.youtube.com/live/epKeT8-hafE (https://www.youtube.com/live/epKeT8-hafE?utm_source=thinkingelixir&utm_medium=shownotes) – Video of José Valim discussing Elixir on its 12th Birthday. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Tyler Young - @TylerAYoung (https://twitter.com/TylerAYoung) - Tyler Young on Fediverse - @tylerayoung@fosstodon.org (https://fosstodon.org/@tylerayoung)
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 (http://podcast.thinkingelixir.com/204) Elixir Community News - https://www.erlang.org/blog/highlights-otp-27/ (https://www.erlang.org/blog/highlights-otp-27/?utm_source=thinkingelixir&utm_medium=shownotes) – OTP 27 release highlights - https://www.erlang.org/news/170 (https://www.erlang.org/news/170?utm_source=thinkingelixir&utm_medium=shownotes) – OTP 27 release news - https://github.com/erlang/otp/releases/tag/OTP-27.0 (https://github.com/erlang/otp/releases/tag/OTP-27.0?utm_source=thinkingelixir&utm_medium=shownotes) – OTP 27 release on GitHub - https://en.wikipedia.org/wiki/OCSP_stapling (https://en.wikipedia.org/wiki/OCSP_stapling?utm_source=thinkingelixir&utm_medium=shownotes) – OCSP stapling explained - https://x.com/chris_mccord/status/1791176778989424850 (https://x.com/chris_mccord/status/1791176778989424850?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord shares upcoming Cockroach DB support in Phoenix 1.7 - https://www.cockroachlabs.com/ (https://www.cockroachlabs.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Cockroach Labs business solutions - https://github.com/cockroachdb/cockroach (https://github.com/cockroachdb/cockroach?utm_source=thinkingelixir&utm_medium=shownotes) – CockroachDB GitHub project - https://www.cockroachlabs.com/docs/stable/licensing-faqs.html (https://www.cockroachlabs.com/docs/stable/licensing-faqs.html?utm_source=thinkingelixir&utm_medium=shownotes) – Cockroach licensing FAQs - https://x.com/josevalim/status/1792642875454259243 (https://x.com/josevalim/status/1792642875454259243?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's tweet on Elixir's 12th birthday celebration - https://www.youtube.com/watch?v=epKeT8-hafE (https://www.youtube.com/watch?v=epKeT8-hafE?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://ew.com/pirates-of-the-caribbean-reboot-margot-robbie-movie-exclusive-8651023?utm_source=thinkingelixir&utm_medium=shownotes) – Pirates of the Caribbean reboot discussion... are we that old? - https://elixirforum.com/t/ash-framework-3-0/63488 (https://elixirforum.com/t/ash-framework-3-0/63488?utm_source=thinkingelixir&utm_medium=shownotes) – Ash Framework 3.0 release - https://www.reddit.com/r/elixir/s/HMUeyk8Ot3 (https://www.reddit.com/r/elixir/s/HMUeyk8Ot3?utm_source=thinkingelixir&utm_medium=shownotes) – LiveToast discussion on Reddit - https://github.com/srcrip/live_toast (https://github.com/srcrip/live_toast?utm_source=thinkingelixir&utm_medium=shownotes) – LiveToast GitHub project - https://toast.src.rip (https://toast.src.rip?utm_source=thinkingelixir&utm_medium=shownotes) – LiveToast demo website - https://nerves-project.typeform.com/sotnn-2024 (https://nerves-project.typeform.com/sotnn-2024?utm_source=thinkingelixir&utm_medium=shownotes) - Nerves is an open-source platform for building and deploying production embedded systems using Elixir. - https://nerves-project.org/ (https://nerves-project.org/?utm_source=thinkingelixir&utm_medium=shownotes) – Nerves project website - https://fly.io/phoenix-files/my-favorite-new-liveview-feature/ (https://fly.io/phoenix-files/my-favorite-new-liveview-feature/?utm_source=thinkingelixir&utm_medium=shownotes) – Explanation of the useful new LiveView feature JS.toggle_class. - ExDoc light mode possibly getting revamped. - https://hexdocs.pm/elixir/main/protocols.html (https://hexdocs.pm/elixir/main/protocols.html?utm_source=thinkingelixir&utm_medium=shownotes) – Example of current dark mode on ExDoc even in light mode. - https://erick.navarro.io/blog/simple-obs-client-in-elixir/ (https://erick.navarro.io/blog/simple-obs-client-in-elixir/?utm_source=thinkingelixir&utm_medium=shownotes) – Erick Navarro's post on controlling OBS using Elixir and websockets. - https://obsproject.com/ (https://obsproject.com/?utm_source=thinkingelixir&utm_medium=shownotes) – OBS - Open Broadcaster Software Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://github.com/mimiquate/blend (https://github.com/mimiquate/blend?utm_source=thinkingelixir&utm_medium=shownotes) - https://rubygems.org/gems/appraisal (https://rubygems.org/gems/appraisal?utm_source=thinkingelixir&utm_medium=shownotes) – Blend was inspired by the Rubygem Appraisal - https://github.com/mimiquate/blend?tab=readme-ov-file#Motivation (https://github.com/mimiquate/blend?tab=readme-ov-file#Motivation?utm_source=thinkingelixir&utm_medium=shownotes) – Motivation for creating the Blend library - https://github.com/mimiquate/candlex (https://github.com/mimiquate/candlex?utm_source=thinkingelixir&utm_medium=shownotes) - https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs (https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/elixir-plug/plug_crypto/tags (https://github.com/elixir-plug/plug_crypto/tags?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/rack/rack-attack (https://github.com/rack/rack-attack?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.mimiquate.com/ (https://www.mimiquate.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/elixir-plug/plug/blob/main/mix.exs#L54-L58 (https://github.com/elixir-plug/plug/blob/main/mix.exs#L54-L58?utm_source=thinkingelixir&utm_medium=shownotes) – Example of how multiple lockfiles are solved in Plug - https://github.com/surface-ui/surface/blob/main/.github/workflows/ci.yml#L54-L56 (https://github.com/surface-ui/surface/blob/main/.github/workflows/ci.yml#L54-L56?utm_source=thinkingelixir&utm_medium=shownotes) – Example of how multiple lockfiles are solved in Surface - https://github.com/sorentwo/oban/issues/1041 (https://github.com/sorentwo/oban/issues/1041?utm_source=thinkingelixir&utm_medium=shownotes) – Example of Oban issue from underlying dep version change - https://github.com/sorentwo/oban/commit/f8d3478c27aea56ab01fcc42f13668f4a3516564 (https://github.com/sorentwo/oban/commit/f8d3478c27aea56ab01fcc42f13668f4a3516564?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/marpo60?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/marpo60/ (https://github.com/marpo60/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://www.mimiquate.com/ (https://www.mimiquate.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Mimiquate agency that published Blend Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern)
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 (http://podcast.thinkingelixir.com/203) Elixir Community News - https://phoenixframework.org/blog/phoenix-liveview-1.0-released (https://phoenixframework.org/blog/phoenix-liveview-1.0-released?utm_source=thinkingelixir&utm_medium=shownotes) – Phoenix LiveView is hitting 1.0 soon with thoughtful comparisons to the broader web development industry. - https://hexdocs.pm/phoenixliveview/1.0.0-rc.0/changelog.html (https://hexdocs.pm/phoenix_live_view/1.0.0-rc.0/changelog.html?utm_source=thinkingelixir&utm_medium=shownotes) – Backward incompatible changes for Phoenix LiveView 1.0 along with bug fixes. - https://www.youtube.com/watch?v=aOk67eT3fpg (https://www.youtube.com/watch?v=aOk67eT3fpg?utm_source=thinkingelixir&utm_medium=shownotes) – Theo reacts positively to the Phoenix LiveView release, discussing it from the React and JS perspective. - https://www.youtube.com/watch?v=agkXUp0hCW8 (https://www.youtube.com/watch?v=agkXUp0hCW8?utm_source=thinkingelixir&utm_medium=shownotes) – Keynote by José Valim on design patterns in Elixir at ElixirConf EU 2024. - https://twitter.com/josevalim/status/1790354042243203283 (https://twitter.com/josevalim/status/1790354042243203283?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim discusses design patterns in Elixir revisiting the "Gang of Four" patterns. - https://www.youtube.com/watch?v=GICJ42OyBGg (https://www.youtube.com/watch?v=GICJ42OyBGg?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord’s ElixirConf EU keynote on FLAME and its applications. - https://worldpagespeed.fly.dev/ (https://worldpagespeed.fly.dev/?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord’s "World Page Speed Test" tool using FLAME. - https://fly.io/phoenix-files/world-page-speed-test-elastic-scale-with-flame/ (https://fly.io/phoenix-files/world-page-speed-test-elastic-scale-with-flame/?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord’s blog post on World Page Speed Test and FLAME on Fly.io. - https://twitter.com/ZachSDaniel1/status/1775516026551099852 (https://twitter.com/ZachSDaniel1/status/1775516026551099852?utm_source=thinkingelixir&utm_medium=shownotes) – Announcement of Ash 3.0 release after 46 RC releases. - https://hex.pm/packages/ash (https://hex.pm/packages/ash?utm_source=thinkingelixir&utm_medium=shownotes) – Ash Framework version 3.0 final release details. - https://twitter.com/sorentwo/status/1790007674077073474 (https://twitter.com/sorentwo/status/1790007674077073474?utm_source=thinkingelixir&utm_medium=shownotes) – Oban support is moving to ElixirForum for better searchability and visibility, away from Slack. - https://twitter.com/sorentwo/status/1788181209530466518 (https://twitter.com/sorentwo/status/1788181209530466518?utm_source=thinkingelixir&utm_medium=shownotes) – Oban hot tip on managing exception messages for better exception reporting. - https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-6/ (https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-6/?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://erlangforums.com/t/matching-empty-map-performance-of-map-size/3572?utm_source=thinkingelixir&utm_medium=shownotes) – Discussion on matching empty map performance. - https://hexdocs.pm/elixir/1.14/naming-conventions.html#length-and-size (https://hexdocs.pm/elixir/1.14/naming-conventions.html#length-and-size?utm_source=thinkingelixir&utm_medium=shownotes) – Naming conventions in Elixir related to length and size. - https://github.com/mimiquate/blend (https://github.com/mimiquate/blend?utm_source=thinkingelixir&utm_medium=shownotes) – New Elixir library "Blend" helps library maintainers test against different versions of dependencies. - https://rubygems.org/gems/appraisal (https://rubygems.org/gems/appraisal?utm_source=thinkingelixir&utm_medium=shownotes) – Blend library appears to be inspired by the Ruby gem “appraisal”. - https://twitter.com/jeffbarr/status/1790072050855588265 (https://twitter.com/jeffbarr/status/1790072050855588265?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern)
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 (http://podcast.thinkingelixir.com/202) Elixir Community News - https://elixirforum.com/t/elixirls-the-elixir-language-server/5857/213 (https://elixirforum.com/t/elixirls-the-elixir-language-server/5857/213?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://github.com/elixir-lsp/elixir-ls/pull/1057?utm_source=thinkingelixir&utm_medium=shownotes) – 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/ (https://pragtob.wordpress.com/2024/05/01/10-elixir-gotchas/?utm_source=thinkingelixir&utm_medium=shownotes) – A blog post by Tobias Pfeiffer discussing "10 Elixir gotchas" to help new Elixir developers. - https://twitter.com/PragTob/status/1785681200322924666 (https://twitter.com/PragTob/status/1785681200322924666?utm_source=thinkingelixir&utm_medium=shownotes) – Tobias Pfeiffer's tweet about his blog post on "10 Elixir gotchas." - https://twitter.com/PragTob/status/1785681200322924666 (https://twitter.com/PragTob/status/1785681200322924666?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's response to Tobias Pfeiffer's post, providing insights on Elixir's upcoming type system. - https://twitter.com/josevalim/status/1785989792141890015 (https://twitter.com/josevalim/status/1785989792141890015?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://github.com/elixir-lang/elixir/pull/13527?utm_source=thinkingelixir&utm_medium=shownotes) – A merged Elixir PR for "Perform type checking across comparison operators." - https://twitter.com/josevalim/status/1785990361418006768?t=ZvCKMAXrZFtDX8pfjW14Lw (https://twitter.com/josevalim/status/1785990361418006768?t=ZvCKMAXrZFtDX8pfjW14Lw?utm_source=thinkingelixir&utm_medium=shownotes) – A tweet by José Valim discussing the power of set-theoretic types in Elixir. - https://twitter.com/josevalim/status/1787543767341486181 (https://twitter.com/josevalim/status/1787543767341486181?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://hexdocs.pm/elixir/main/gradual-set-theoretic-types.html?utm_source=thinkingelixir&utm_medium=shownotes) – The Elixir documentation for the gradual set-theoretic types. - https://hexdocs.pm/elixir/main/changelog.html#warnings-from-gradual-set-theoretic-types (https://hexdocs.pm/elixir/main/changelog.html#warnings-from-gradual-set-theoretic-types?utm_source=thinkingelixir&utm_medium=shownotes) – The Elixir 1.17.0 changelog on "Warnings from gradual set-theoretic types." - https://github.com/elixir-lang/elixir/pull/13534 (https://github.com/elixir-lang/elixir/pull/13534?utm_source=thinkingelixir&utm_medium=shownotes) – A Github pull request for a new is_non_struct_map guard in Elixir 1.17. - https://twitter.com/codestirring/status/1785769316304228590 (https://twitter.com/codestirring/status/1785769316304228590?utm_source=thinkingelixir&utm_medium=shownotes) – Chris Gregori announces "Bloom," a new LiveView component library project. - https://bloom-ui.fly.dev/ (https://bloom-ui.fly.dev/?utm_source=thinkingelixir&utm_medium=shownotes) – The "Bloom" UI component library site showcasing its features and usage. - https://github.com/chrisgreg/bloom (https://github.com/chrisgreg/bloom?utm_source=thinkingelixir&utm_medium=shownotes) – The Github repository for the "Bloom" LiveView component library. - https://twitter.com/chris_mccord/status/1785678249424461897 (https://twitter.com/chris_mccord/status/1785678249424461897?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://hexdocs.pm/mix/1.16.2/Mix.Tasks.Release.html#module-hot-code-upgrades?utm_source=thinkingelixir&utm_medium=shownotes) – Mix documentation discussing how to perform hot code upgrades. - https://twitter.com/bcardarella/status/1785419505134456895 (https://twitter.com/bcardarella/status/1785419505134456895?utm_source=thinkingelixir&utm_medium=shownotes) – A tweet from Brian Cardarella showing a LiveView Native tvOS simulator demo. - https://www.youtube.com/@CodeSync/videos (https://www.youtube.com/@CodeSync/videos?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://medium.com/@maciej.pocwierz/how-an-empty-s3-bucket-can-make-your-aws-bill-explode-934a383cb8b1?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/jeffbarr/status/1787844682216792163?utm_source=thinkingelixir&utm_medium=shownotes) – 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/ (https://www.employmentlawworldview.com/ftc-bans-non-competes-throughout-the-united-states-us/?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern)
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 (http://podcast.thinkingelixir.com/201) Elixir Community News - https://github.com/lexical-lsp/lexical/releases/tag/v0.6.0 (https://github.com/lexical-lsp/lexical/releases/tag/v0.6.0?utm_source=thinkingelixir&utm_medium=shownotes) – 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/ (https://benreinhart.com/blog/verifying-slack-requests-elixir-phoenix/?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/PJUllrich/status/1784707877157970387?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://indiecourses.com/catalog/building-forms-with-phoenix-liveview-2OPYIqaekkZwrpgLUZOyZV?utm_source=thinkingelixir&utm_medium=shownotes) – The course covers building forms with Phoenix LiveView including various types of schema and dynamic fields. - https://paraxial.io/blog/live-view-support (https://paraxial.io/blog/live-view-support?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://github.com/nccgroup/sobelow/pull/123?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/sasajuric/status/1784958371998601526?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://www.youtube.com/watch?v=JvBT4XBdoUE?utm_source=thinkingelixir&utm_medium=shownotes) – 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/ (https://www.elixirconf.eu/?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://www.ftc.gov/news-events/news/press-releases/2024/04/ftc-announces-rule-banning-noncompetes?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern)
200: Ready for a new frontier?
In this landmark 200th episode of the Thinking Elixir podcast, we dive into the revolutionary world of LiveView Native with Brian Cardarella and Carson Katri. Discover how this emerging technology is expanding Elixir's reach onto mobile devices and beyond, shaking up traditional development with server-side state management and opening a new frontier for native applications. Our experts share insights on its performance, live reload features, and strategic advantages that promise to speed up prototyping and cut down on dev time. Plus, hear about our latest news on EEF voting, new testing libraries for Phoenix, the future of the Elixir Protobuf library with a call for new maintainers, and Livebook's integrations for data sources. And if that wasn't enough, we cover additional tech stories, including the shutdown of the Women Who Code foundation, a study linking mentally stimulating work to a reduced risk of dementia, and more! Show Notes online - http://podcast.thinkingelixir.com/200 (http://podcast.thinkingelixir.com/200) Elixir Community News - https://twitter.com/TheErlef/status/1782560017633202578 (https://twitter.com/TheErlef/status/1782560017633202578?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet about the start of EEF voting. - https://erlef.org/blog/eef/election-2024 (https://erlef.org/blog/eef/election-2024?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post detailing the EEF 2024 election process. - https://members.erlef.org/Sys/Poll/52537 (https://members.erlef.org/Sys/Poll/52537?utm_source=thinkingelixir&utm_medium=shownotes) – The actual voting page for the EEF election. - https://members.erlef.org/join-us (https://members.erlef.org/join-us?utm_source=thinkingelixir&utm_medium=shownotes) – Information on how to join the EEF and become a voting member. - https://twitter.com/royalicing/status/1782534107807007046 (https://twitter.com/royalicing/status/1782534107807007046?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet introducing a new library for testing Phoenix templates with ARIA roles. - https://hexdocs.pm/ensemble/Ensemble.html (https://hexdocs.pm/ensemble/Ensemble.html?utm_source=thinkingelixir&utm_medium=shownotes) – Documentation for the Ensemble library mentioned in the tweet. - https://playwright.dev/docs/locators#quick-guide (https://playwright.dev/docs/locators#quick-guide?utm_source=thinkingelixir&utm_medium=shownotes) – PlayWright locators quick guide, reminiscent of the Ensemble library's functionality. - https://twitter.com/whatyouhide/status/1782434830057107660 (https://twitter.com/whatyouhide/status/1782434830057107660?utm_source=thinkingelixir&utm_medium=shownotes) – Andrea Leopardi's announcement about seeking a new maintainer for the Elixir Protobuf library. - https://github.com/elixir-protobuf/protobuf (https://github.com/elixir-protobuf/protobuf?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for the Elixir Protobuf library mentioned by Andrea Leopardi. - https://twitter.com/josevalim/status/1782391223036039247 (https://twitter.com/josevalim/status/1782391223036039247?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's tweet on Livebook's data integration support, seeking community feedback on other necessary integrations. - https://livebook.dev/integrations/?type=database (https://livebook.dev/integrations/?type=database?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook's database integrations webpage that José Valim referred to for feedback. - https://gleam.run/news/gleam-v1.1/ (https://gleam.run/news/gleam-v1.1/?utm_source=thinkingelixir&utm_medium=shownotes) – Announcement of the release of Gleam v1.1, a statically typed language for the BEAM. - https://github.com/eigr/spawn?tab=readme-ov-file (https://github.com/eigr/spawn?tab=readme-ov-file?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub page for Spawn, an open-source serverless library designed for cloud and on-premises environments. - https://fly.io/blog/rethinking-serverless-with-flame/ (https://fly.io/blog/rethinking-serverless-with-flame/?utm_source=thinkingelixir&utm_medium=shownotes) – Article discussing the rethinking of serverless architecture with the FLAME framework. - https://womenwhocode.com/blog/the-end-of-an-era-women-who-code-closing (https://womenwhocode.com/blog/the-end-of-an-era-women-who-code-closing?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post about the shutdown of the Women Who Code foundation due to funding issues. - https://www.theguardian.com/science/2024/apr/17/mentally-stimulating-work-plays-key-role-in-staving-off-dementia-study-finds (https://www.theguardian.com/science/2024/apr/17/mentally-stimulating-work-plays-key-role-in-staving-off-dementia-study-finds?utm_source=thinkingelixir&utm_medium=shownotes) – The Guardian article reporting on a study that finds mentally stimulating work is key in staving off dementia. - https://www.neurology.org/doi/10.1212/WNL.0000000000209353 (https://www.neurology.org/doi/10.1212/WNL.0000000000209353?utm_source=thinkingelixir&utm_medium=shownotes) – Research paper on Neurology.org about the link between mentally stimulating work and the risks of dementia and cognitive problems in later life. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://native.live/ (https://native.live/?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.youtube.com/watch?v=xBi2Hj22qUU (https://www.youtube.com/watch?v=xBi2Hj22qUU?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirConf US 2023 presentation - Brian's ElixirConf EU 2024 presentation is not published at this time. - https://developer.apple.com/documentation/financekit (https://developer.apple.com/documentation/financekit?utm_source=thinkingelixir&utm_medium=shownotes) - https://developer.android.com/develop/ui/compose (https://developer.android.com/develop/ui/compose?utm_source=thinkingelixir&utm_medium=shownotes) - https://learn.microsoft.com/en-us/windows/apps/winui/winui3/ (https://learn.microsoft.com/en-us/windows/apps/winui/winui3/?utm_source=thinkingelixir&utm_medium=shownotes) - https://electric-sql.com/ (https://electric-sql.com/?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/bcardarella (https://twitter.com/bcardarella?utm_source=thinkingelixir&utm_medium=shownotes) – Brian Cardarella on Twitter - https://github.com/bcardarella/ (https://github.com/bcardarella/?utm_source=thinkingelixir&utm_medium=shownotes) – Brian Cardarella on Github - http://dockyard.com/ (http://dockyard.com/?utm_source=thinkingelixir&utm_medium=shownotes) – DockYard - https://twitter.com/CarsonKatri (https://twitter.com/CarsonKatri?utm_source=thinkingelixir&utm_medium=shownotes) – Carson Katri on Twitter - https://github.com/person/ (https://github.com/person/?utm_source=thinkingelixir&utm_medium=shownotes) – Carson Katri on Github - https://carsonkatri.com (https://carsonkatri.com?utm_source=thinkingelixir&utm_medium=shownotes) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern)
199: Websockets' Late Hero and Elixir's Fresh Updates
In this episode, we talk about the eagerly awaited Elixir 1.17.0-dev changelog, the exciting ExDoc v0.32 release, and the slightly amusing declaration of Cloudflare playing the websocket hero – about 9 years after Phoenix neatly demoed 2 million concurrent connections to the world. We also explore potential performance improvements with Ecto's support for unlogged tables and how PragProg's new Elixir book is shaping up as a must-read for DevOps enthusiasts. But that's not all, we also touch on the launch of a constraint solver in Elixir, a nifty Livebook visualization tip, and more! Plus, don't miss out as Mark, Tyler, and David also share insights into their current projects, ranging from tackling Elixir mock libraries to the latest in the tech conference scene and educational initiatives in the Erlang ecosystem. Show Notes online - http://podcast.thinkingelixir.com/199 (http://podcast.thinkingelixir.com/199) Elixir Community News - https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md#v1170-dev (https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md#v1170-dev?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir 1.17.0-dev changelog update introducing a new Duration type and calendar-specific shifts support. - https://hexdocs.pm/db_connection/DBConnection.Ownership.html#module-callers-lookup (https://hexdocs.pm/db_connection/DBConnection.Ownership.html#module-callers-lookup?utm_source=thinkingelixir&utm_medium=shownotes) – ExUnit start_supervised now populates $callers, affecting libraries like Mox and Ecto. - https://hexdocs.pm/mox/Mox.html#module-explicit-allowances (https://hexdocs.pm/mox/Mox.html#module-explicit-allowances?utm_source=thinkingelixir&utm_medium=shownotes) – ExUnit changes with regards to $callers provide better support for global mocks like Mox. - https://github.com/elixir-ecto/ecto_sql/pull/601 (https://github.com/elixir-ecto/ecto_sql/pull/601?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir Ecto experiment for adding support to unlogged tables that could speed up test suites. - https://twitter.com/josevalim/status/1777990973454262476 (https://twitter.com/josevalim/status/1777990973454262476?utm_source=thinkingelixir&utm_medium=shownotes) – Announcement of ExDoc v0.32 release. - https://hexdocs.pm/ex_doc/changelog.html (https://hexdocs.pm/ex_doc/changelog.html?utm_source=thinkingelixir&utm_medium=shownotes) – Official changelogs for ExDoc v0.32 highlighting new features like OS default font for content and search bar improvements. - https://x.com/chris_mccord/status/1776370373946175706 (https://x.com/chris_mccord/status/1776370373946175706?utm_source=thinkingelixir&utm_medium=shownotes) – Cloudflare Workers support for WebSockets and its impact on real-time web experiences. - https://blog.cloudflare.com/introducing-websockets-in-workers/ (https://blog.cloudflare.com/introducing-websockets-in-workers/?utm_source=thinkingelixir&utm_medium=shownotes) – Introduction and explanation of websockets in Cloudflare Workers. - https://www.phoenixframework.org/blog/the-road-to-2-million-websocket-connections (https://www.phoenixframework.org/blog/the-road-to-2-million-websocket-connections?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord's blog post on achieving 2 million WebSocket connections. - https://twitter.com/pragprog/status/1779253657097117890 (https://twitter.com/pragprog/status/1779253657097117890?utm_source=thinkingelixir&utm_medium=shownotes) – Announcement of a new Elixir focused book in beta from PragProg. - https://twitter.com/sm_debenedetto/status/1779558393373409481 (https://twitter.com/sm_debenedetto/status/1779558393373409481?utm_source=thinkingelixir&utm_medium=shownotes) – Additional information about the new PragProg Elixir book. - https://pragprog.com/titles/beamops/engineering-elixir-applications/ (https://pragprog.com/titles/beamops/engineering-elixir-applications/?utm_source=thinkingelixir&utm_medium=shownotes) – Direct link to the forthcoming Elixir book on PragProg focused on DevOps for the BEAM ecosystem. - https://developer.hashicorp.com/terraform/intro (https://developer.hashicorp.com/terraform/intro?utm_source=thinkingelixir&utm_medium=shownotes) – Introduction to Terraform, as covered in PragProg's new Elixir book. - https://x.com/thibaut_barrere/status/1777702586944036899 (https://x.com/thibaut_barrere/status/1777702586944036899?utm_source=thinkingelixir&utm_medium=shownotes) – Discussion on a constraint solver implementation in Elixir. - https://github.com/bokner/fixpoint (https://github.com/bokner/fixpoint?utm_source=thinkingelixir&utm_medium=shownotes) – Boris Okner's Fixpoint, a constraint solver library for Elixir. - https://en.wikipedia.org/wiki/NP-completeness (https://en.wikipedia.org/wiki/NP-completeness?utm_source=thinkingelixir&utm_medium=shownotes) – Explanation of NP Completeness related to constraint solving. - https://twitter.com/hugobarauna/status/1779930969593512159 (https://twitter.com/hugobarauna/status/1779930969593512159?utm_source=thinkingelixir&utm_medium=shownotes) – Tip on building custom visualizations for Elixir data structures in Livebook using the Kino.Render protocol. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://cloud.withgoogle.com/next (https://cloud.withgoogle.com/next?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/brainlid/langchain (https://github.com/brainlid/langchain?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/dashbitco/mox (https://github.com/dashbitco/mox?utm_source=thinkingelixir&utm_medium=shownotes) - https://twitter.com/TylerAYoung/status/1780240662341849256 (https://twitter.com/TylerAYoung/status/1780240662341849256?utm_source=thinkingelixir&utm_medium=shownotes) – Tyler's Tweet about Mox - https://fly.io/phoenix-files/safe-ecto-migrations/ (https://fly.io/phoenix-files/safe-ecto-migrations/?utm_source=thinkingelixir&utm_medium=shownotes) Guest Host Information - https://twitter.com/TylerAYoung (https://twitter.com/TylerAYoung?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/s3cur3 (https://github.com/s3cur3?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://fosstodon.org/@tylerayoung (https://fosstodon.org/@tylerayoung?utm_source=thinkingelixir&utm_medium=shownotes) – on Fediverse - https://tylerayoung.com/ (https://tylerayoung.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
198: Cade Gets the Last Word
This week's show covers exciting updates in the Elixir world, including the peek at what's coming with Elixir v1.17.0's new "Duration" and "shift" features. We'll also dive into the impressive Kino Benchee integration for Livebook, showcasing benchmarking visualizations. Not to be missed is the release of a fitting Phoenix emoji 🐦🔥 that's set to ignite your dev conversations, as well as the announcement of Ash Framework's v3 Release Candidate. Amidst these powerful tools and features, there's an essential shift in our hosting lineup; Cade will discuss his decision to step back from the show due to the arrival of a new member in the family. Make sure to tune in for these stories, valuable Elixir tips, intriguing alternatives to Redis, and more! Show Notes online - http://podcast.thinkingelixir.com/198 (http://podcast.thinkingelixir.com/198) Elixir Community News - https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md#v1170-dev (https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md#v1170-dev?utm_source=thinkingelixir&utm_medium=shownotes) – Changelog for the forthcoming Elixir v1.17.0 revealing new features like support for the "Duration" type and the "shift" function for date types. - https://github.com/livebook-dev/kino_benchee (https://github.com/livebook-dev/kino_benchee?utm_source=thinkingelixir&utm_medium=shownotes) – Integration of Benchee with Livebook for Elixir benchmarking, known as Kino Benchee. - https://twitter.com/akoutmos/status/1775158490819858542 (https://twitter.com/akoutmos/status/1775158490819858542?utm_source=thinkingelixir&utm_medium=shownotes) – Alex Koutmos's tweet showcasing the graphical visualization capabilities of the Kino Benchee integration in Livebook. - https://twitter.com/JLarky/status/1777552462876168549 (https://twitter.com/JLarky/status/1777552462876168549?utm_source=thinkingelixir&utm_medium=shownotes) – Benchmark comparison between Gleam and Go languages in terms of latency and speed, shared on Twitter. - https://emojipedia.org/phoenix-bird (https://emojipedia.org/phoenix-bird?utm_source=thinkingelixir&utm_medium=shownotes) – A Phoenix emoji 🐦🔥 was released. - https://emojipedia.org/emoji-15.1 (https://emojipedia.org/emoji-15.1?utm_source=thinkingelixir&utm_medium=shownotes) – Page showing new emojis introduced along with the Phoenix, including a reference to the lime emoji. - https://twitter.com/germsvel/status/1777645631533633757 (https://twitter.com/germsvel/status/1777645631533633757?utm_source=thinkingelixir&utm_medium=shownotes) – German Velasco shares an Elixir tip about using the "tap" and "then" functions in pipelines, providing an insight and example. - https://twitter.com/germsvel/status/1775476085624344581 (https://twitter.com/germsvel/status/1775476085624344581?utm_source=thinkingelixir&utm_medium=shownotes) – German Velasco discusses the differences between the '&&/and' and '||/or' in Elixir. - https://dashbit.co/blog/req-api-client-testing (https://dashbit.co/blog/req-api-client-testing?utm_source=thinkingelixir&utm_medium=shownotes) – A new blog post about testing with the Req HTTP client library in Elixir on the Dashbit website. - https://elixirforum.com/t/ash-framework-3-0-release-candidates/62684 (https://elixirforum.com/t/ash-framework-3-0-release-candidates/62684?utm_source=thinkingelixir&utm_medium=shownotes) – The announcement of the Ash Framework v3 Release Candidate on the Elixir Forum, showcasing the ecosystem's growth. - https://github.com/ash-project/ash/issues/943 (https://github.com/ash-project/ash/issues/943?utm_source=thinkingelixir&utm_medium=shownotes) – The GitHub issue tracking the status of Ash Framework v3 Release Candidate for both core and community packages. - https://twitter.com/sorentwo/status/1777037533366387067 (https://twitter.com/sorentwo/status/1777037533366387067?utm_source=thinkingelixir&utm_medium=shownotes) – Parker Selbert shares a git alias command for 'changelog', helpful for maintainers of hex packages. - https://www.linuxfoundation.org/press/linux-foundation-launches-open-source-valkey-community (https://www.linuxfoundation.org/press/linux-foundation-launches-open-source-valkey-community?utm_source=thinkingelixir&utm_medium=shownotes) – The announcement of Valkey, an open-source alternative to Redis supported by the Linux Foundation and various industry leaders. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - Cade's family has grown and he needs to step back from the show to prioritize his family's needs. Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
197: Thinking Elixir News
In this episode, we're diving into the fascinating world of at-home AI with a ready-to-deploy project harnessing Bumblebee and Fly GPUs, unraveling the tale of how an Xz backdoor catastrophe was narrowly sidestepped, and highlighting the power of customizing your Elixir IEx environment. We'll also touch upon the eager anticipation for ElixirConf EU, taking place in Lisbon, where innovations in vehicular tech meet Elixir, and the upcoming NervesConf US - a prime event for embedded systems enthusiasts. Tune in for these buzzworthy topics and more! Show Notes online - http://podcast.thinkingelixir.com/197 (http://podcast.thinkingelixir.com/197) Elixir Community News - https://twitter.com/brainlid/status/1775148526621827548 (https://twitter.com/brainlid/status/1775148526621827548?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet about an easy at-home AI project using Bumblebee and Fly GPUs. - https://fly.io/phoenix-files/easy-at-home-ai-with-bumblebee-and-fly-gpus/ (https://fly.io/phoenix-files/easy-at-home-ai-with-bumblebee-and-fly-gpus/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post detailing the easy deployment of LLM models on Fly.io machines with GPUs. - https://github.com/fly-apps/bumblebee-model-harness (https://github.com/fly-apps/bumblebee-model-harness?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for deploying Llama 2 7B, Mistral 7B, and Zephyr 7B LLMs with Bumblebee. - https://twitter.com/fr0gger_/status/1774342248437813525 (https://twitter.com/fr0gger_/status/1774342248437813525?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet about the mostly avoided disaster of the Xz backdoor. - https://xkcd.com/2347/ (https://xkcd.com/2347/?utm_source=thinkingelixir&utm_medium=shownotes) – Related XKCD comic regarding the pressure on open-source developers. - https://en.wikipedia.org/wiki/XZUtilsbackdoor (https://en.wikipedia.org/wiki/XZ_Utils_backdoor?utm_source=thinkingelixir&utm_medium=shownotes) – Wikipedia article on the XZ Utils backdoor incident. - https://www.wired.com/story/xz-backdoor-everything-you-need-to-know/ (https://www.wired.com/story/xz-backdoor-everything-you-need-to-know/?utm_source=thinkingelixir&utm_medium=shownotes) – Wired article providing an overview of the Xz backdoor event. - https://diff.hex.pm/ (https://diff.hex.pm/?utm_source=thinkingelixir&utm_medium=shownotes) – A resource for Elixir developers to inspect changes between published versions of Hex packages. - https://gist.github.com/brainlid/5cc4944509de87289fb1a1680da22911 (https://gist.github.com/brainlid/5cc4944509de87289fb1a1680da22911?utm_source=thinkingelixir&utm_medium=shownotes) – Gist showing an example of an .iex.exs file for customizing IEx behavior. - https://hexdocs.pm/iex/IEx.html#module-the-iex-exs-file (https://hexdocs.pm/iex/IEx.html#module-the-iex-exs-file?utm_source=thinkingelixir&utm_medium=shownotes) – HexDocs documentation on the .iex.exs file. - https://www.elixirconf.eu/ (https://www.elixirconf.eu/?utm_source=thinkingelixir&utm_medium=shownotes) – Website for ElixirConf EU, Europe's largest Elixir Conference. - https://twitter.com/mlainez/status/1773679346328195334 (https://twitter.com/mlainez/status/1773679346328195334?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet teasing a talk about retrofitting a Nissan leaf engine into VWGroup body and using Elixir. - https://twitter.com/NervesConfUS/status/1774473097426370744 (https://twitter.com/NervesConfUS/status/1774473097426370744?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet announcing NervesConf US, a one-day single-track conference. - https://nervesconf.us/ (https://nervesconf.us/?utm_source=thinkingelixir&utm_medium=shownotes) – The official site for NervesConf US with the date and venue information. - https://www.gigcityelixir.com/ (https://www.gigcityelixir.com/?utm_source=thinkingelixir&utm_medium=shownotes) – The official site for GigCityElixir with dates and speaker announcements. - https://2024.elixirconf.com/ (https://2024.elixirconf.com/?utm_source=thinkingelixir&utm_medium=shownotes) – The official site for ElixirConf US including dates and location. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
196: Thinking Elixir News
This week's news includes the release of OTP 27.0-rc2 featuring the new json module, Phoenix Live reload's insightful update, and Chris McCord's blog post that surfaces server logs directly in your browser console. We're also discussing the streamlined workflows in Oban Pro 1.4.0, and a deeper discussion on recent Redis licensing changes that have sent ripples through the open-source community. If that's not enough, we've got insights into the refactoring Elixir survey that's underway and we share some innovative tools like the Livebook Smart Cell Template. Tune in for this and more! Show Notes online - http://podcast.thinkingelixir.com/196 (http://podcast.thinkingelixir.com/196) Elixir Community News - https://twitter.com/michalmuskala/status/1770748066976424195 (https://twitter.com/michalmuskala/status/1770748066976424195?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet announcing the release of OTP 27.0-rc2. - https://github.com/erlang/otp/releases/tag/OTP-27.0-rc2 (https://github.com/erlang/otp/releases/tag/OTP-27.0-rc2?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub link to OTP 27.0-rc2 release which includes the json module proposed by Michał Muskała. - https://twitter.com/chris_mccord/status/1772631567568871575 (https://twitter.com/chris_mccord/status/1772631567568871575?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord's tweet regarding the update to Phoenix Live Reload. - https://fly.io/phoenix-files/phoenix-dev-blog-server-logs-in-the-browser-console/ (https://fly.io/phoenix-files/phoenix-dev-blog-server-logs-in-the-browser-console/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post detailing updates to Phoenix Live Reload and server logs in the browser console. - https://twitter.com/sorentwo/status/1771170601153003648 (https://twitter.com/sorentwo/status/1771170601153003648?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet announcing the release of Oban Pro 1.4.0. - https://getoban.pro/releases/pro/v1.4 (https://getoban.pro/releases/pro/v1.4?utm_source=thinkingelixir&utm_medium=shownotes) – Official release notes for Oban Pro 1.4.0. - https://twitter.com/elixirfun/status/1770336803280556486 (https://twitter.com/elixirfun/status/1770336803280556486?utm_source=thinkingelixir&utm_medium=shownotes) – Public service announcement for Logger users to avoid pipes that may be compiled out. - https://elixirforum.com/t/logging-a-silent-performance-killer/3258 (https://elixirforum.com/t/logging-a-silent-performance-killer/3258?utm_source=thinkingelixir&utm_medium=shownotes) – Forum post discussing how purging loggers can aid in performance. - https://twitter.com/ac_alejos/status/1770642763802952021 (https://twitter.com/ac_alejos/status/1770642763802952021?utm_source=thinkingelixir&utm_medium=shownotes) – Andrés Alejos shares his template for SmartCells with Vite JS and Tailwind Css support. - https://github.com/acalejos/kinosmartcelltemplate/ (https://github.com/acalejos/kino_smartcell_template/?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub link to the SmartCell template for Livebook. - https://hexdocs.pm/liveview_playground/0.1.1/readme.html (https://hexdocs.pm/liveview_playground/0.1.1/readme.html?utm_source=thinkingelixir&utm_medium=shownotes) – Documentation for the "simple setup" LiveView server running library. - https://github.com/lubien/liveview_playground (https://github.com/lubien/liveview_playground?utm_source=thinkingelixir&utm_medium=shownotes) – GitHub repository for the library that simplifies setting up a LiveView server. - https://twitter.com/josevalim/status/1770458542849339646 (https://twitter.com/josevalim/status/1770458542849339646?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's tweet inviting Elixir developers to participate in a survey on refactoring. - https://docs.google.com/forms/d/e/1FAIpQLSey_cf-gsGSbqJ2un4ySlWv7Y3vzzzwZzexnC8sDr7pNPHQ8Q/viewform (https://docs.google.com/forms/d/e/1FAIpQLSey_cf-gsGSbqJ2un4ySlWv7Y3vzzzwZzexnC8sDr7pNPHQ8Q/viewform?utm_source=thinkingelixir&utm_medium=shownotes) – Google Forms survey on refactoring in Elixir conducted by a team of researchers. - https://twitter.com/lucasvegi/status/1770457760469057815 (https://twitter.com/lucasvegi/status/1770457760469057815?utm_source=thinkingelixir&utm_medium=shownotes) – Additional invitation to Elixir developers to contribute to a survey on refactorings. - https://lwn.net/Articles/966133/ (https://lwn.net/Articles/966133/?utm_source=thinkingelixir&utm_medium=shownotes) – Article discussing the change in the Redis license, which no longer qualifies as free software. - https://www.gomomento.com/blog/rip-redis-how-garantia-data-pulled-off-the-biggest-heist-in-open-source-history (https://www.gomomento.com/blog/rip-redis-how-garantia-data-pulled-off-the-biggest-heist-in-open-source-history?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post exploring the history of the Redis project and its recent licensing changes. - https://andrewkelley.me/post/redis-renamed-to-redict.html (https://andrewkelley.me/post/redis-renamed-to-redict.html?utm_source=thinkingelixir&utm_medium=shownotes) – Post announcing a fork of Redis to Redict due to licensing issues. - https://redict.io/ (https://redict.io/?utm_source=thinkingelixir&utm_medium=shownotes) – Official website of Redict, the independent fork of Redis. - http://antirez.com/news/133 (http://antirez.com/news/133?utm_source=thinkingelixir&utm_medium=shownotes) – Creator of Redis, Salvatore Sanfillipo, discussing the transfer of IP and trademark rights. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
195: Migrating from Next.js to Phoenix
In this compelling episode, we sit down with Ben Reinhart who shares his journey of transitioning from the JavaScript ecosystem, specifically migrating off of Next.js and Vercel, to Elixir and Phoenix, with Fly.io as the new host. Ben discusses his frustrations with the complexity and performance issues he faced, and how the switch to Elixir helped streamline operations and improve the efficiency of his AI-focused product at Axflow. He delves into his strategic choice for leveraging the operational simplicity and real-time features of Phoenix, while also acknowledging trade-offs such as rebuilding front-end components. Join us to explore Ben's story, learn about the features of Elixir that helped him, and discover how the move has influenced Axflow's path towards finding product-market fit, and more! Show Notes online - http://podcast.thinkingelixir.com/195 (http://podcast.thinkingelixir.com/195) Elixir Community News - Update on the phoenixlivereload package to v1.5 containing useful tips. - https://www.elixirstreams.com/tips/streamserverlogstoconsole (https://www.elixirstreams.com/tips/stream_server_logs_to_console?utm_source=thinkingelixir&utm_medium=shownotes) – Tips on how to stream Elixir server logs to the browser console. - https://github.com/phoenixframework/phoenixlivereload?tab=readme-ov-file#streaming-serving-logs-to-the-web-console (https://github.com/phoenixframework/phoenix_live_reload?tab=readme-ov-file#streaming-serving-logs-to-the-web-console?utm_source=thinkingelixir&utm_medium=shownotes) – Documentation on streaming Elixir server logs to the web console using phoenixlivereload v1.5. - Advise to change Appearance theme to "Dark" in the browser console for better readability of debug-level messages. - https://github.com/phoenixframework/phoenixlivereload?tab=readme-ov-file#jumping-to-heex-function-definitions (https://github.com/phoenixframework/phoenix_live_reload?tab=readme-ov-file#jumping-to-heex-function-definitions?utm_source=thinkingelixir&utm_medium=shownotes) – Information on the new feature "Jumping to HEEx function definitions" in phoenixlivereload v1.5. - https://blog.appsignal.com/2024/03/19/direct-file-uploads-to-amazon-s3-with-phoenix-liveview.html (https://blog.appsignal.com/2024/03/19/direct-file-uploads-to-amazon-s3-with-phoenix-liveview.html?utm_source=thinkingelixir&utm_medium=shownotes) – A new blog post by Joshua Plique about uploading files directly to S3 using Phoenix LiveView. - https://hexdocs.pm/phoenixliveview/uploads-external.html (https://hexdocs.pm/phoenix_live_view/uploads-external.html?utm_source=thinkingelixir&utm_medium=shownotes) – Official Phoenix documentation on direct file uploads to external services like S3. - https://x.com/whatyouhide/status/1768345597369532660 (https://x.com/whatyouhide/status/1768345597369532660?utm_source=thinkingelixir&utm_medium=shownotes) – Andrea Leopardi working on integrating Open Telemetry (OTel) with Sentry for the Elixir SDK. - https://github.com/getsentry/sentry-elixir/issues/538 (https://github.com/getsentry/sentry-elixir/issues/538?utm_source=thinkingelixir&utm_medium=shownotes) – A Github issue discussing the integration of OTel with Sentry's Elixir SDK. - https://twitter.com/TylerAYoung/status/1769741350126149857 (https://twitter.com/TylerAYoung/status/1769741350126149857?utm_source=thinkingelixir&utm_medium=shownotes) – Tyler Young's tip for keeping Elixir tests running faster and asynchronously by using the Process dictionary instead of Application environment. - https://saltycrackers.dev/posts/bye-bye-async-false/ (https://saltycrackers.dev/posts/bye-bye-async-false/?utm_source=thinkingelixir&utm_medium=shownotes) – An article discussing how to avoid async false in tests by using the Process dictionary. - https://github.com/jbsf2/process-tree (https://github.com/jbsf2/process-tree?utm_source=thinkingelixir&utm_medium=shownotes) – Introduction of a new Elixir library, ProcessTree, to navigate the process ancestry hierarchy and aid in better test configuration. - Advice on using the process dictionary check only in MIX_ENV=test to prevent runtime overhead in production. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://axflow.dev/ (https://axflow.dev/?utm_source=thinkingelixir&utm_medium=shownotes) - https://twitter.com/benjreinhart/status/1758616465589014531 (https://twitter.com/benjreinhart/status/1758616465589014531?utm_source=thinkingelixir&utm_medium=shownotes) - https://exercism.org/tracks/elixir (https://exercism.org/tracks/elixir?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.youtube.com/watch?v=JvBT4XBdoUE (https://www.youtube.com/watch?v=JvBT4XBdoUE?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.typescriptlang.org/ (https://www.typescriptlang.org/?utm_source=thinkingelixir&utm_medium=shownotes) - https://nextjs.org/ (https://nextjs.org/?utm_source=thinkingelixir&utm_medium=shownotes) - https://vercel.com/ (https://vercel.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://supabase.com/ (https://supabase.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://remix.run/ (https://remix.run/?utm_source=thinkingelixir&utm_medium=shownotes) - https://inertiajs.com/ (https://inertiajs.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://vitejs.dev/ (https://vitejs.dev/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/fidr/phoenixlivereact (https://github.com/fidr/phoenix_live_react?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/geolessel/react-phoenix (https://github.com/geolessel/react-phoenix?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.pinterest.com/ (https://www.pinterest.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://fly.io/docs/gpus/ (https://fly.io/docs/gpus/?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/benjreinhart (https://twitter.com/benjreinhart?utm_source=thinkingelixir&utm_medium=shownotes) – Ben on Twitter - https://twitter.com/axflow_dev (https://twitter.com/axflow_dev?utm_source=thinkingelixir&utm_medium=shownotes) – AxFlow on Twitter - https://github.com/benjreinhart/ (https://github.com/benjreinhart/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://benreinhart.com/ (https://benreinhart.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog - https://axflow.dev/ (https://axflow.dev/?utm_source=thinkingelixir&utm_medium=shownotes) – AxFlow Website Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)