195 avsnitt

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

Thinking Elixir Podcast ThinkingElixir.com

    • Utbildning
    • 4,5 • 2 betyg

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

    195: Migrating from Next.js to Phoenix

    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


    Elixir Community News



    Update on the phoenix_live_reload package to v1.5 containing useful tips.
    https://www.elixirstreams.com/tips/stream_server_logs_to_console – Tips on how to stream Elixir server logs to the browser console.
    https://github.com/phoenixframework/phoenix_live_reload?tab=readme-ov-file#streaming-serving-logs-to-the-web-console – Documentation on streaming Elixir server logs to the web console using phoenix_live_reload v1.5.
    Advise to change Appearance theme to "Dark" in the browser console for better readability of debug-level messages.
    https://github.com/phoenixframework/phoenix_live_reload?tab=readme-ov-file#jumping-to-heex-function-definitions – Information on the new feature "Jumping to HEEx function definitions" in phoenix_live_reload v1.5.
    https://blog.appsignal.com/2024/03/19/direct-file-uploads-to-amazon-s3-with-phoenix-liveview.html – A new blog post by Joshua Plique about uploading files directly to S3 using Phoenix LiveView.
    https://hexdocs.pm/phoenix_live_view/uploads-external.html – Official Phoenix documentation on direct file uploads to external services like S3.
    https://x.com/whatyouhide/status/1768345597369532660 – Andrea Leopardi working on integrating Open Telemetry (OTel) with Sentry for the Elixir SDK.
    https://github.com/getsentry/sentry-elixir/issues/538 – A Github issue discussing the integration of OTel with Sentry's Elixir SDK.
    https://twitter.com/TylerAYoung/status/1769741350126149857 – 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/ – An article discussing how to avoid async false in tests by using the Process dictionary.
    https://github.com/jbsf2/process-tree – 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 or email at show@thinkingelixir.com


    Discussion Resources



    https://axflow.dev/
    https://twitter.com/benjreinhart/status/1758616465589014531
    https://exercism.org/tracks/elixir
    https://www.youtube.com/watch?v=JvBT4XBdoUE
    https://www.typescriptlang.org/
    https://nextjs.org/
    https://vercel.com/
    https://supabase.com/
    https://remix.run/
    https://inertiajs.com/
    https://vitejs.dev/
    https://github.com/fidr/phoenix_live_react
    https://github.com/geolessel/react-phoenix
    https://www.pinterest.com/
    https://fly.io/docs/gpus/


    Guest Information



    https://twitter.com/benjreinhart – Ben on Twitter
    https://twitter.com/axflow_dev – AxFlow on Twitter
    https://github.com/benjreinhart/ – on Github
    https://benreinhart.com/ – Blog
    https://axflow.dev/ – AxFlow Website


    Find us online



    Message the show - @ThinkingElixir
    Message the show on Fediverse - @ThinkingElixir@genserver.social
    Email the show - show@thinkingelixir.com
    Mark Ericksen - @brainlid
    Mark Ericksen on Fediverse - @brainlid@genserver.social
    Dav

    • 52 min
    194: Operational Elixir: Knowing When to Grow Up

    194: Operational Elixir: Knowing When to Grow Up

    In the final installment of our series, we sit down with the creator of the Ash framework, Zach Daniel, to move beyond his expertise in Ash and explore his experiences with the other systems we use to support our Elixir applications. Zach shares his journey from the dynamic environment of startups to the structured world of midsize companies, giving us a glimpse into the strategic timing for scaling monitoring and data collection tools. He emphasizes the value of fostering a blame-free culture and sheds light on his hands-on encounters with deployments, Kubernetes, and more!


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


    Elixir Community News



    https://github.com/erlang/otp/pull/8111 – The json module was merged into Erlang OTP, adding it to the standard library and is expected to be included in OTP 27 RC 2.
    https://github.com/elixir-lang/elixir/blob/v1.16/CHANGELOG.md#v1162-2024-03-10 – Release notes for Elixir v1.16.2, detailing bug fixes and minor additions.
    https://elixir-lang.org/blog/2024/03/05/veeps-elixir-case/ – A new case study on scaling a streaming service for hundreds of thousands of concurrent viewers using Elixir at Veeps.
    https://github.com/elixir-unicode/unicode_string – Kip Cole's Unicode String library release 1.4.0 includes dictionary-based word breaking for several Asian languages.
    https://github.com/jonatanklosko/mix_install_watcher/ – Jonatan Kłosko's project, mix_install_watcher, assists with automatic recompilation of path dependencies in Livebook notebooks.
    https://twitter.com/germsvel/status/1767499526309347739 – German Velasco shares a video example of an anti-pattern in Elixir documentation related to complex extraction in clauses.
    https://hexdocs.pm/elixir/code-anti-patterns.html#complex-extractions-in-clauses – Detailed documentation regarding code anti-patterns in Elixir, specifically "complex extractions in clauses."
    https://github.com/abdelaz3r/sparkline_svg – SparklineSVG v0.4 released, providing a simple, zero-dependency Elixir library for generating SVG sparkline charts.
    https://hexdocs.pm/sparkline_svg/changelog.html – Changelog for SparklineSVG library showcasing recent updates and features.


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


    Discussion Resources



    https://ash-hq.org/
    https://alembic.com.au/
    https://podcast.thinkingelixir.com/27 – Previous interview with Zach about Ash
    https://podcast.thinkingelixir.com/123 – Previous interview with Zach about Ash
    https://github.com/spandex-project/spandex
    https://opentelemetry.io/
    https://www.appsignal.com/
    https://www.datadoghq.com/
    https://zipkin.io/
    https://posthog.com/
    https://segment.com/
    https://github.com/cabol/nebulex
    https://mode.com/
    https://www.tableau.com/
    https://postmarkapp.com/
    Async is the NOT answer you think it is.
    Declarative programming is so important and beneficial. It's worth learning more about it.


    Guest Information



    https://twitter.com/ZachSDaniel1 – Zach on Twitter
    https://twitter.com/AshFramework – Ash Framework on Twitter
    https://github.com/zachdaniel/ – on Github
    https://genserver.social/zachdaniel – on Fediverse
    https://zachdaniel.dev/about – Blog
    https://ash-hq.org – Ash Framework site


    Find us online



    Message the show - @ThinkingElixir
    Message the show on Fediverse - @ThinkingElixir@genserver.social
    Email the show - show@thinkingelixir.com
    Mark Ericksen - @brainlid
    Mark Ericksen on Fediverse - @brainlid@genserver.social
    David Bernheisel - @bernheisel
    David Bernheisel on Fediverse - @dbern@genserver.social
    Cade Ward - @cadebward
    Cade Ward on Fediverse - @cadebward@genserver.social
    Sponsored By:
    Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

    • 52 min
    193: Operational Elixir: Observing the Midsize Madness

    193: Operational Elixir: Observing the Midsize Madness

    In this engaging third episode of our series, Dave Lucia returns to delve into the various systems that support small and medium-sized teams and companies for their Elixir systems. Dave shares insights gained from a range of situations including working at startups on up to Series C and D sized companies, with a particular focus on the critical role of observability tools. Drawing on his extensive experience, Dave discusses how these tools can greatly enhance a team's ability to monitor and troubleshoot applications, ensuring high performance and reliability. Tune in for a comprehensive look at the essential systems and tools that can make a tangible difference in the day-to-day operations of Elixir-powered organizations, and more!


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


    Elixir Community News



    https://twitter.com/josevalim/status/1762921819776934146 – José Valim has teased a new feature for Elixir 1.17 which may include a mix test flag --breakpoints for debugging failed tests.
    https://gleam.run/news/gleam-version-1/ – Gleam v1.0 has been released, marking the language's stability and readiness for production with a commitment to maintain backwards compatibility.
    https://github.com/underjord/entrace – Lars Wikman shared his work on the Entrace tracing project, offering easier tracing support to applications.
    https://github.com/underjord/entrace_live_dashboard – Entrac LiveDashboard was announced by Lars Wikman to add a tracing page to the LiveDashboard plugin.
    https://docs.google.com/forms/d/e/1FAIpQLSeGxJUadP1CaaU6EnTwe7Hv76RnBLIiqT6SJLIBvncHcEzGRg/viewform – The Call for Proposals for talks at ElixirConfUS is open, including information to book hotel rooms for the event taking place from August 28-30, 2024.


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


    Discussion Resources



    https://podcast.thinkingelixir.com/75 – Previous interview with Dave Lucia talking about RabbitMQ and Commanded
    https://podcast.thinkingelixir.com/97 – Previous interview with Dave Lucia talking about Avro and Elixir
    https://podcast.thinkingelixir.com/129 – Previous interview with Dave Lucia talking about Time series data with Timescale DB
    https://Sentry.io
    https://www.servicenow.com/products/observability.html – Observability tool formerly knowns as LightStep
    https://www.honeycomb.io/
    https://opentelemetry.io/docs/collector/
    https://github.com/open-telemetry
    https://opentelemetry.io/docs/concepts/signals/traces/
    https://hex.pm/packages/opentelemetry
    https://hex.pm/packages/opentelemetry_exporter
    https://davelucia.com/ – Dave's personal blog
    https://github.com/prometheus/prometheus
    https://grafana.com/
    https://grafana.com/docs/loki/latest/send-data/promtail/
    https://fly.io/docs/reference/metrics/
    https://isburmistrov.substack.com/p/all-you-need-is-wide-events-not-metrics
    https://amplitude.com/
    Custom LiveView admin pages for dashboards
    https://postmarkapp.com/
    https://sendgrid.com/en-us
    https://milkroad.com/ – A newsletter company that Dave Lucia worked at.
    https://www.beehiiv.com/ – Newsletters as a service company
    https://ahrefs.com/ – Tracking the back links from other sites to yours for SEO
    https://search.google.com/search-console/about
    https://github.com/dbernheisel/phoenix_seo
    https://tvlabs.ai/ – Where Dave Lucia is working now.


    Guest Information



    https://twitter.com/davydog187 – on Twitter
    https://github.com/davydog187/ – on Github
    https://davelucia.com – Blog
    https://tvlabs.ai – TVLabs company where he works now.


    Find us online



    Message the show - @ThinkingElixir
    Message the show on Fediverse - @ThinkingElixir@genserver.social
    Email the show - show@thinkingelixir.com
    Mark Ericksen - @brainlid
    Mark Ericksen on Fediverse - @brainlid@genserver.social
    David Bernheisel - @bernheisel
    David Bernheisel on Fediverse - @dbern@genserver.social
    Cade Ward - @cadebward
    Cade Ward on Fediverse - @cadebward@genserver.social
    Sponsore

    • 55 min
    192: Operational Elixir: Scrappy Startups Edition

    192: Operational Elixir: Scrappy Startups Edition

    In this second installment of our series, we're joined by Philip Brown, who returns to share his insights on running lean startups in the Elixir ecosystem. We dive into the art of supporting Elixir systems on a shoestring budget. Philip will walk us through his must-haves for MVPs, offering practical advice on how to leverage cost-effective solutions without sacrificing functionality. We'll discuss the balancing act between delivering a product and managing expenses, and highlight the essential tools that keep a scrappy startup's Elixir system robust yet affordable. Tune in for a candid look at making the most of limited resources, insights into Prise.com, ElixirMerge.com strategies, and more for the aspiring bootstrapper!


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


    Elixir Community News



    https://github.com/erlang/eep/pull/59 – Erlang EEP 68, a new JSON module, has been accepted and merged into OTP's standard library.
    https://www.erlang.org/eeps/eep-0068 – Details on Erlang EEP 68, which claims to significantly outperform other JSON libraries like Jason and jiffy.
    Speculation on whether EEP 68 will be included in OTP 27 and its performance compared to existing JSON libraries.
    https://github.com/electric-sql/pglite – PostgreSQL has been redeveloped as a WASM library called PGlite, allowing it to run in browsers and other environments without additional dependencies.
    https://twitter.com/sasajuric/status/1762394843341353390 – Announcement of the printing of 'Elixir in Action 3rd Edition' and its rank on Manning's bestseller list.
    Remember to use the "devtalk.com" or "mljuric3" coupon codes until March 9th for 45% off the ebook.
    Release updates on Language Server Protocols (LSPs) for Elixir and Erlang, detailing new features and improvements like autocomplete and diagnostics.
    https://twitter.com/zeddotdev/status/1757882887972528152 – Zed, a high-performance, multiplayer code editor now offers support for Erlang.
    https://zed.dev/ – Zed editor's official website where you can find more information about its capabilities and open source nature.
    https://twitter.com/thmsmlr/status/1762210503810507140 – Thomas Millar introduces kino_livereload, a library for LiveBook to auto-reload cells when source code changes.
    https://github.com/thmsmlr/kino_livereload – GitHub repository for kino_livereload, showcasing its live reload feature for LiveBook cells.
    https://fly.io/phoenix-files/what-if-s3-could-be-a-fast-globally-synced-key-value-database-that-s-tigris/ – An article describing Tigris, a globally-synced, S3-compatible file storage service designed for Fly.io.
    Explanation of how Elixir applications can take advantage of Tigris as a key-value store using :erlang.term_to_binary for storing any Elixir data structure.
    https://twitter.com/wojtekmach/status/1759511154131427516 – Release announcement for Req v0.4.10, an HTTP client for Elixir with added functionality for stubbing responses in concurrent tests.
    https://elixirforum.com/t/req-a-batteries-included-http-client-for-elixir/48494/34 – Elixir Forum discussion thread about the latest updates and features in Req.
    https://hexdocs.pm/req/Req.Test.html – Documentation for the Req.Test module, detailing new functions for stubbing HTTP responses in tests.
    https://github.com/elixir-nx/bumblebee/blob/main/CHANGELOG.md – Changelog for Bumblebee's recent releases, including updates and new feature highlights.
    Mention of contributions from Jonatan Kłosko and added Bumblebee features such as Mistral LLM support and the :seed option for generating inputs.
    https://twitter.com/polvalente/status/1762234885777817666 – Nx v0.7.0 is released with EXLA's MLIR implementation, enabling new possibilities like quantization and Apple Metal support.
    https://github.com/brainlid/langchain – Update to the Elixir LangChain library to align with the latest features of Bumblebee, allowing conversations with various LLMs.
    Additional details on how the updated LangChai

    • 1 tim.
    191: Operational Elixir: What's Supporting the Apps at Felt.com and SleepEasy.app?

    191: Operational Elixir: What's Supporting the Apps at Felt.com and SleepEasy.app?

    In this special episode, we kick off a brand-new series that dives into the world of Elixir—but with a twist. We're exploring the systems surrounding the language and what it takes to support and run a company or team that uses Elixir. Join us as we engage in insightful conversations with various industry voices, starting with Tyler Young, about the practical systems and solutions used by businesses like Felt.com and SleepEasy.app. This series promises to be an enlightening journey for anyone curious about the behind-the-scenes workings of an Elixir-based product. Tune in to hear the unique challenges and successes experienced by others in the field and more!


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


    Elixir Community News



    https://github.com/erlang/otp/pull/8111 – Erlang's potential new OTP json module is showing significant performance improvements in recent benchmarks.
    https://twitter.com/michalmuskala/status/1759932700624912832 – Michał Muskała shares insights online about future Elixir idiomatic wrapper around the new OTP json module.
    https://www.erlang.org/news/167 – OTP 27-RC1 was released with new features like the maybe expression and Triple-Quoted Strings.
    https://github.com/erlang/otp/ – Official repository for Erlang/OTP where the 27-RC1 release can be found.
    https://twitter.com/_uwu_cocoa/status/1758878453309505958 – Tweet mentioning that Erlang 27.0-rc1 runs natively on ARM64 Windows.
    https://fly.io/blog/tigris-public-beta/ – Fly.io announces a new globally distributed object storage solution that supports the S3 API.
    https://github.com/elixir-webrtc/ex_webrtc – New WebRTC library for Elixir called ex_webrtc is introduced.
    https://blog.swmansion.com/introducing-elixir-webrtc-a37ece4bfca1 – Blog post introducing ex_webrtc, detailing the motivation and development of the new WebRTC library for Elixir.
    https://membrane.stream/ – Membrane Framework site; although ex_webrtc was created due to certain challenges with Membrane, Membrane is noted for its pipeline model.
    https://www.w3.org/TR/webrtc/ – The W3C WebRTC specification, which ex_webrtc implements in Elixir, is more JS focused.
    The Erlang Ecosystem Foundation recently celebrated their 5 year anniversary, highlighting the community's achievements.
    https://github.com/gleam-lang/gleam/releases/tag/v1.0.0-rc2 – Release of Gleam v1.0.0-rc2 which includes a bug fix for the compiler.
    Announcement about ElixirConf US, with a call for training classes and upcoming call for talks.


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


    Discussion Resources



    https://felt.com/
    https://sleepeasy.app/
    https://twitter.com/TylerAYoung/status/1730253716073148470 – Tyler shared on X when he bought his physical hardware
    https://sentry.io/for/elixir/
    https://www.appsignal.com/elixir
    https://felt.com/blog/startup-and-shutdown-for-phoenix-applications
    https://retool.com
    https://www.heap.io/


    Guest Information



    https://twitter.com/TylerAYoung – on Twitter
    https://github.com/s3cur3 – on Github
    https://fosstodon.org/@tylerayoung – on Fediverse
    https://tylerayoung.com/ – Blog


    Find us online



    Message the show - @ThinkingElixir
    Message the show on Fediverse - @ThinkingElixir@genserver.social
    Email the show - show@thinkingelixir.com
    Mark Ericksen - @brainlid
    Mark Ericksen on Fediverse - @brainlid@genserver.social
    David Bernheisel - @bernheisel
    David Bernheisel on Fediverse - @dbern@genserver.social
    Cade Ward - @cadebward
    Cade Ward on Fediverse - @cadebward@genserver.social
    Sponsored By:
    Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

    • 45 min
    190: Thinking Elixir News

    190: Thinking Elixir News

    In this episode, we delve into the significant updates to Phoenix LiveView with its march towards 1.0, including crucial bug fixes in the latest v0.20.5 release. We explore the sleek new testing utility for Elixir, example_test, that's redefining readability in code tests. Plus, the Erlang community is abuzz with a fresh proposal to integrate JSON into the standard library. We'll look into how Fly.io has made GPU instances widely available and what this means for your projects. Don't miss out as we discuss these topics, Gleam's journey toward its 1.0.0 release, and more!


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


    Elixir Community News



    https://twitter.com/elixirphoenix/status/1755593690863620319 – Announcement of Phoenix LiveView v0.20.5 release on Twitter.
    https://github.com/phoenixframework/phoenix_live_view/blob/main/CHANGELOG.md – Changelog for Phoenix LiveView v0.20.5 detailing deprecations and bug fixes.
    https://twitter.com/germsvel/status/1754834825457127606 – German Velasco's tip for printing the name of a currently executed function in a test without prior knowledge.
    https://github.com/erlang/eep/pull/59 – Pull request proposing the addition of a JSON module to the Erlang standard library.
    https://github.com/michalmuskala/eep/blob/json-eep/eeps/eep-0068.md – EEP68 document with details about the proposed JSON support interface for the Erlang standard library.
    https://twitter.com/TylerAYoung/status/1757391526668202060 – Tyler Young announcing a new testing library, example_test, for Elixir on Twitter.
    https://github.com/s3cur3/example_test – GitHub repository for example_test, a utility for defining readable example-based tests in Elixir.
    https://fly.io/blog/gpu-ga/ – Announcement that Fly GPUs are now generally available and no longer on a waitlist.
    https://github.com/acalejos/merquery – Merquery library release, offering a Postman-like Livebook kino cell for interactive queries in Elixir.
    https://www.youtube.com/watch?v=clsTrQUt-4M – YouTube video of Louis Pilfold's "Past, Present, Future" talk at FOSDEM 2024 on the language Gleam.
    https://twitter.com/gleamlang/status/1756376900782399629 – Twitter announcement of Gleam Lang v1.0.0-rc.1 release.
    https://github.com/gleam-lang/gleam/releases/tag/v1.0.0-rc1 – GitHub release page for Gleam v1.0.0-rc.1.
    https://github.com/gleam-lang/gleam/blob/v1.0.0-rc1/CHANGELOG.md – Changelog for Gleam v1.0.0-rc.1 highlighting new features and changes.


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


    Find us online



    Message the show - @ThinkingElixir
    Message the show on Fediverse - @ThinkingElixir@genserver.social
    Email the show - show@thinkingelixir.com
    Mark Ericksen - @brainlid
    Mark Ericksen on Fediverse - @brainlid@genserver.social
    David Bernheisel - @bernheisel
    David Bernheisel on Fediverse - @dbern@genserver.social
    Cade Ward - @cadebward
    Cade Ward on Fediverse - @cadebward@genserver.social
    Sponsored By:
    Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

    • 20 min

Kundrecensioner

4,5 av 5
2 betyg

2 betyg

Mest populära poddar inom Utbildning

I väntan på katastrofen
Kalle Zackari Wahlström
The Mel Robbins Podcast
Mel Robbins
Livslångt
RISE Research Institutes of Sweden
Sjuka Fakta
Simon Körösi
TED Talks Daily
TED
Hjärnsmart Självledarskap
malinxy

Du kanske också gillar

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