• 200: Ready for a new frontier?
    Apr 30 2024
    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...
    Show more Show less
    1 hr and 9 mins
  • 199: Websockets' Late Hero and Elixir's Fresh Updates
    Apr 23 2024
    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 (...
    Show more Show less
    41 mins
  • 198: Cade Gets the Last Word
    Apr 16 2024
    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...
    Show more Show less
    21 mins
  • 197: Thinking Elixir News
    Apr 9 2024
    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...
    Show more Show less
    21 mins
  • 196: Thinking Elixir News
    Apr 2 2024
    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 ...
    Show more Show less
    21 mins
  • 195: Migrating from Next.js to Phoenix
    Mar 26 2024
    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) - ...
    Show more Show less
    53 mins
  • 194: Operational Elixir: Knowing When to Grow Up
    Mar 19 2024
    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 (http://podcast.thinkingelixir.com/194) Elixir Community News - https://github.com/erlang/otp/pull/8111 (https://github.com/erlang/otp/pull/8111?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://github.com/elixir-lang/elixir/blob/v1.16/CHANGELOG.md#v1162-2024-03-10?utm_source=thinkingelixir&utm_medium=shownotes) – Release notes for Elixir v1.16.2, detailing bug fixes and minor additions. - https://elixir-lang.org/blog/2024/03/05/veeps-elixir-case/ (https://elixir-lang.org/blog/2024/03/05/veeps-elixir-case/?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://github.com/elixir-unicode/unicode_string?utm_source=thinkingelixir&utm_medium=shownotes) – Kip Cole's Unicode String library release 1.4.0 includes dictionary-based word breaking for several Asian languages. - https://github.com/jonatanklosko/mixinstallwatcher/ (https://github.com/jonatanklosko/mix_install_watcher/?utm_source=thinkingelixir&utm_medium=shownotes) – Jonatan Kłosko's project, mixinstallwatcher, assists with automatic recompilation of path dependencies in Livebook notebooks. - https://twitter.com/germsvel/status/1767499526309347739 (https://twitter.com/germsvel/status/1767499526309347739?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://hexdocs.pm/elixir/code-anti-patterns.html#complex-extractions-in-clauses?utm_source=thinkingelixir&utm_medium=shownotes) – Detailed documentation regarding code anti-patterns in Elixir, specifically "complex extractions in clauses." - https://github.com/abdelaz3r/sparkline_svg (https://github.com/abdelaz3r/sparkline_svg?utm_source=thinkingelixir&utm_medium=shownotes) – SparklineSVG v0.4 released, providing a simple, zero-dependency Elixir library for generating SVG sparkline charts. - https://hexdocs.pm/sparkline_svg/changelog.html (https://hexdocs.pm/sparkline_svg/changelog.html?utm_source=thinkingelixir&utm_medium=shownotes) – Changelog for SparklineSVG library showcasing recent updates and features. 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://ash-hq.org/ (https://ash-hq.org/?utm_source=thinkingelixir&utm_medium=shownotes) - https://alembic.com.au/ (https://alembic.com.au/?utm_source=thinkingelixir&utm_medium=shownotes) - https://podcast.thinkingelixir.com/27 (https://podcast.thinkingelixir.com/27?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview with Zach about Ash - https://podcast.thinkingelixir.com/123 (https://podcast.thinkingelixir.com/123?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview with Zach about Ash - https://github.com/spandex-project/spandex (https://github.com/spandex-project/spandex?utm_source=thinkingelixir&utm_medium=shownotes) - https://opentelemetry.io/ (https://opentelemetry.io/?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.appsignal.com/ (https://www.appsignal.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.datadoghq.com/ (https://www.datadoghq.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://zipkin.io/ (https://zipkin.io/?utm_source=thinkingelixir&utm_medium=shownotes) - https://posthog.com/ (https://posthog.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://segment.com/ (https://segment.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/cabol/nebulex (https://github.com/cabol/nebulex?utm_source=thinkingelixir&utm_medium=shownotes) - https://mode.com/ (https://mode.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.tableau.com/ (https://www.tableau.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://postmarkapp.com/ (https://...
    Show more Show less
    53 mins
  • 193: Operational Elixir: Observing the Midsize Madness
    Mar 12 2024
    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 (http://podcast.thinkingelixir.com/193) Elixir Community News - https://twitter.com/josevalim/status/1762921819776934146 (https://twitter.com/josevalim/status/1762921819776934146?utm_source=thinkingelixir&utm_medium=shownotes) – 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/ (https://gleam.run/news/gleam-version-1/?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://github.com/underjord/entrace?utm_source=thinkingelixir&utm_medium=shownotes) – Lars Wikman shared his work on the Entrace tracing project, offering easier tracing support to applications. - https://github.com/underjord/entracelivedashboard (https://github.com/underjord/entrace_live_dashboard?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://docs.google.com/forms/d/e/1FAIpQLSeGxJUadP1CaaU6EnTwe7Hv76RnBLIiqT6SJLIBvncHcEzGRg/viewform?utm_source=thinkingelixir&utm_medium=shownotes) – 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 (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://podcast.thinkingelixir.com/75 (https://podcast.thinkingelixir.com/75?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview with Dave Lucia talking about RabbitMQ and Commanded - https://podcast.thinkingelixir.com/97 (https://podcast.thinkingelixir.com/97?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview with Dave Lucia talking about Avro and Elixir - https://podcast.thinkingelixir.com/129 (https://podcast.thinkingelixir.com/129?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview with Dave Lucia talking about Time series data with Timescale DB - https://Sentry.io (https://Sentry.io?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.servicenow.com/products/observability.html (https://www.servicenow.com/products/observability.html?utm_source=thinkingelixir&utm_medium=shownotes) – Observability tool formerly knowns as LightStep - https://www.honeycomb.io/ (https://www.honeycomb.io/?utm_source=thinkingelixir&utm_medium=shownotes) - https://opentelemetry.io/docs/collector/ (https://opentelemetry.io/docs/collector/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/open-telemetry (https://github.com/open-telemetry?utm_source=thinkingelixir&utm_medium=shownotes) - https://opentelemetry.io/docs/concepts/signals/traces/ (https://opentelemetry.io/docs/concepts/signals/traces/?utm_source=thinkingelixir&utm_medium=shownotes) - https://hex.pm/packages/opentelemetry (https://hex.pm/packages/opentelemetry?utm_source=thinkingelixir&utm_medium=shownotes) - https://hex.pm/packages/opentelemetry_exporter (https://hex.pm/packages/opentelemetry_exporter?utm_source=thinkingelixir&utm_medium=shownotes) - https://davelucia.com/ (https://davelucia.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Dave's personal blog - https://github.com/prometheus/prometheus (https://github.com/prometheus/prometheus?utm_source=thinkingelixir&utm_medium=shownotes) - https://grafana.com/ (https://grafana.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://grafana.com/docs/loki/latest/send-data/promtail/ (https://grafana.com/docs/loki/latest/send-data/promtail/?utm_source=thinkingelixir&utm_medium=shownotes) - https://fly.io/docs/reference/metrics/ (https://fly.io/docs/reference/metrics/?utm_source=thinkingelixir&utm_medium=shownotes) - https://isburmistrov.substack.com/p/all-you-need-is-wide-events-not-metrics (https://...
    Show more Show less
    55 mins