PLAY PODCASTS
Thinking Elixir Podcast

Thinking Elixir Podcast

303 episodes — Page 3 of 7

203: Thinking Elixir News

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

May 21, 202427 min

202: Thinking Elixir News

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

May 14, 202426 min

201: Thinking Elixir News

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

May 7, 202418 min

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 Elixir Community News https://twitter.com/TheErlef/status/1782560017633202578 – Tweet about the start of EEF voting. https://erlef.org/blog/eef/election-2024 – Blog post detailing the EEF 2024 election process. https://members.erlef.org/Sys/Poll/52537 – The actual voting page for the EEF election. https://members.erlef.org/join-us – Information on how to join the EEF and become a voting member. https://twitter.com/royalicing/status/1782534107807007046 – Tweet introducing a new library for testing Phoenix templates with ARIA roles. https://hexdocs.pm/ensemble/Ensemble.html – Documentation for the Ensemble library mentioned in the tweet. https://playwright.dev/docs/locators#quick-guide – PlayWright locators quick guide, reminiscent of the Ensemble library's functionality. https://twitter.com/whatyouhide/status/1782434830057107660 – Andrea Leopardi's announcement about seeking a new maintainer for the Elixir Protobuf library. https://github.com/elixir-protobuf/protobuf – GitHub repository for the Elixir Protobuf library mentioned by Andrea Leopardi. https://twitter.com/josevalim/status/1782391223036039247 – José Valim's tweet on Livebook's data integration support, seeking community feedback on other necessary integrations. https://livebook.dev/integrations/?type=database – Livebook's database integrations webpage that José Valim referred to for feedback. https://gleam.run/news/gleam-v1.1/ – Announcement of the release of Gleam v1.1, a statically typed language for the BEAM. https://github.com/eigr/spawn?tab=readme-ov-file – GitHub page for Spawn, an open-source serverless library designed for cloud and on-premises environments. https://fly.io/blog/rethinking-serverless-with-flame/ – Article discussing the rethinking of serverless architecture with the FLAME framework. https://womenwhocode.com/blog/the-end-of-an-era-women-who-code-closing – 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 – 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 – 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 or email at [email protected] Discussion Resources https://native.live/ https://www.youtube.com/watch?v=xBi2Hj22qUU – ElixirConf US 2023 presentation Brian's ElixirConf EU 2024 presentation is not published at this time. https://developer.apple.com/documentation/financekit https://developer.android.com/develop/ui/compose https://learn.microsoft.com/en-us/windows/apps/winui/winui3/ https://electric-sql.com/ Guest Information https://twitter.com/bcardarella – Brian Cardarella on Twitter https://github.com/bcardarella/ – Brian Cardarella on Github http://dockyard.com/ – DockYard https://twitter.com/CarsonKatri – Carson Katri on Twitter https://github.com/person/ – Carson Katri on Github https://carsonkatri.com – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected]

Apr 30, 20241h 8m

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 Elixir Community News https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md#v1170-dev – 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 – ExUnit start_supervised now populates $callers, affecting libraries like Mox and Ecto. https://hexdocs.pm/mox/Mox.html#module-explicit-allowances – ExUnit changes with regards to $callers provide better support for global mocks like Mox. https://github.com/elixir-ecto/ecto_sql/pull/601 – Elixir Ecto experiment for adding support to unlogged tables that could speed up test suites. https://twitter.com/josevalim/status/1777990973454262476 – Announcement of ExDoc v0.32 release. https://hexdocs.pm/ex_doc/changelog.html – 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 – Cloudflare Workers support for WebSockets and its impact on real-time web experiences. https://blog.cloudflare.com/introducing-websockets-in-workers/ – Introduction and explanation of websockets in Cloudflare Workers. https://www.phoenixframework.org/blog/the-road-to-2-million-websocket-connections – Chris McCord's blog post on achieving 2 million WebSocket connections. https://twitter.com/pragprog/status/1779253657097117890 – Announcement of a new Elixir focused book in beta from PragProg. https://twitter.com/sm_debenedetto/status/1779558393373409481 – Additional information about the new PragProg Elixir book. https://pragprog.com/titles/beamops/engineering-elixir-applications/ – Direct link to the forthcoming Elixir book on PragProg focused on DevOps for the BEAM ecosystem. https://developer.hashicorp.com/terraform/intro – Introduction to Terraform, as covered in PragProg's new Elixir book. https://x.com/thibaut_barrere/status/1777702586944036899 – Discussion on a constraint solver implementation in Elixir. https://github.com/bokner/fixpoint – Boris Okner's Fixpoint, a constraint solver library for Elixir. https://en.wikipedia.org/wiki/NP-completeness – Explanation of NP Completeness related to constraint solving. https://twitter.com/hugobarauna/status/1779930969593512159 – 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 or email at [email protected] Discussion Resources https://cloud.withgoogle.com/next https://github.com/brainlid/langchain https://github.com/dashbitco/mox https://twitter.com/TylerAYoung/status/1780240662341849256 – Tyler's Tweet about Mox https://fly.io/phoenix-files/safe-ecto-migrations/ Guest Host Information Tyler Young joined as a guest host. 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 - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected]

Apr 23, 202440 min

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 Elixir Community News https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md#v1170-dev – 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 – Integration of Benchee with Livebook for Elixir benchmarking, known as Kino Benchee. https://twitter.com/akoutmos/status/1775158490819858542 – Alex Koutmos's tweet showcasing the graphical visualization capabilities of the Kino Benchee integration in Livebook. https://twitter.com/JLarky/status/1777552462876168549 – Benchmark comparison between Gleam and Go languages in terms of latency and speed, shared on Twitter. https://emojipedia.org/phoenix-bird – A Phoenix emoji 🐦‍🔥 was released. https://emojipedia.org/emoji-15.1 – Page showing new emojis introduced along with the Phoenix, including a reference to the lime emoji. https://twitter.com/germsvel/status/1777645631533633757 – 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 – German Velasco discusses the differences between the '&&/and' and '||/or' in Elixir. https://dashbit.co/blog/req-api-client-testing – 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 – 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 – The GitHub issue tracking the status of Ash Framework v3 Release Candidate for both core and community packages. https://twitter.com/sorentwo/status/1777037533366387067 – 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 – 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 or email at [email protected] 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 Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Apr 16, 202421 min

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 Elixir Community News https://twitter.com/brainlid/status/1775148526621827548 – 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/ – Blog post detailing the easy deployment of LLM models on Fly.io machines with GPUs. https://github.com/fly-apps/bumblebee-model-harness – GitHub repository for deploying Llama 2 7B, Mistral 7B, and Zephyr 7B LLMs with Bumblebee. https://twitter.com/fr0gger_/status/1774342248437813525 – Tweet about the mostly avoided disaster of the Xz backdoor. https://xkcd.com/2347/ – Related XKCD comic regarding the pressure on open-source developers. https://en.wikipedia.org/wiki/XZ_Utils_backdoor – Wikipedia article on the XZ Utils backdoor incident. https://www.wired.com/story/xz-backdoor-everything-you-need-to-know/ – Wired article providing an overview of the Xz backdoor event. https://diff.hex.pm/ – A resource for Elixir developers to inspect changes between published versions of Hex packages. https://gist.github.com/brainlid/5cc4944509de87289fb1a1680da22911 – Gist showing an example of an .iex.exs file for customizing IEx behavior. https://hexdocs.pm/iex/IEx.html#module-the-iex-exs-file – HexDocs documentation on the .iex.exs file. https://www.elixirconf.eu/ – Website for ElixirConf EU, Europe's largest Elixir Conference. https://twitter.com/mlainez/status/1773679346328195334 – Tweet teasing a talk about retrofitting a Nissan leaf engine into VWGroup body and using Elixir. https://twitter.com/NervesConfUS/status/1774473097426370744 – Tweet announcing NervesConf US, a one-day single-track conference. https://nervesconf.us/ – The official site for NervesConf US with the date and venue information. https://www.gigcityelixir.com/ – The official site for GigCityElixir with dates and speaker announcements. https://2024.elixirconf.com/ – The official site for ElixirConf US including dates and location. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Apr 9, 202420 min

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 Elixir Community News https://twitter.com/michalmuskala/status/1770748066976424195 – Tweet announcing the release of OTP 27.0-rc2. https://github.com/erlang/otp/releases/tag/OTP-27.0-rc2 – 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 – 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/ – Blog post detailing updates to Phoenix Live Reload and server logs in the browser console. https://twitter.com/sorentwo/status/1771170601153003648 – Tweet announcing the release of Oban Pro 1.4.0. https://getoban.pro/releases/pro/v1.4 – Official release notes for Oban Pro 1.4.0. https://twitter.com/elixirfun/status/1770336803280556486 – Public service announcement for Logger users to avoid pipes that may be compiled out. https://elixirforum.com/t/logging-a-silent-performance-killer/3258 – Forum post discussing how purging loggers can aid in performance. https://twitter.com/ac_alejos/status/1770642763802952021 – Andrés Alejos shares his template for SmartCells with Vite JS and Tailwind Css support. https://github.com/acalejos/kino_smartcell_template/ – GitHub link to the SmartCell template for Livebook. https://hexdocs.pm/liveview_playground/0.1.1/readme.html – Documentation for the "simple setup" LiveView server running library. https://github.com/lubien/liveview_playground – GitHub repository for the library that simplifies setting up a LiveView server. https://twitter.com/josevalim/status/1770458542849339646 – 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 – Google Forms survey on refactoring in Elixir conducted by a team of researchers. https://twitter.com/lucasvegi/status/1770457760469057815 – Additional invitation to Elixir developers to contribute to a survey on refactorings. https://lwn.net/Articles/966133/ – 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 – Blog post exploring the history of the Redis project and its recent licensing changes. https://andrewkelley.me/post/redis-renamed-to-redict.html – Post announcing a fork of Redis to Redict due to licensing issues. https://redict.io/ – Official website of Redict, the independent fork of Redis. http://antirez.com/news/133 – 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 or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Apr 2, 202421 min

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 [email protected] 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 - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Mar 26, 202452 min

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 [email protected] 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 - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Mar 19, 202452 min

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 [email protected] 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 - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Mar 12, 202455 min

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 LangChain library supports LLMs like Llama 2, Mistral, and Zephyr, and its flexibility in changing conversation models. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://podcast.thinkingelixir.com/133 – Previous interview with Philip about his service Prise.com https://elixirmerge.com – Elixir Merge newsletter https://github.com/elixir-haystack/haystack – Haystack - Simple extendible search engine written in Elixir https://fly.io https://sentry.io/ https://www.appsignal.com/ https://github.com/wyeworks/boom https://postmarkapp.com/ ElixirMerge sends email's at 8:00am in the user's timezone. https://sendgrid.com/en-us https://resend.com/ https://aws.amazon.com/ses/ https://plausible.io/ https://clarity.microsoft.com/ https://github.com/spreedly/kaffe https://www.metabase.com/ https://clarity.microsoft.com/ – Microsoft Clarity Guest Information https://twitter.com/philipbrown – on Twitter

Mar 5, 20241h 0m

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 [email protected] 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 - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Feb 27, 202445 min

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 [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Feb 20, 202420 min

189: Thinking Elixir News

In this week's podcast, we cover the release of Elixir 1.16.1 with its various bug fixes, delve into German Velasco's ExUnit testing tip for running tests in parallel, explore the performance boosts experienced by Thomas Millar after upgrading to Bandit, and celebrate the 10-year anniversary of Inch, René Föhring's documentation analysis tool. We also discuss the innovative use of Elixir Protocols for customized route parameters in Phoenix, the creation of a new Kino for embedding YouTube videos into Livebook, and a stark reminder of the potential dark side of AI and ML with a deepfake phishing scam that cost a company $25 million, and more! Show Notes online - http://podcast.thinkingelixir.com/189 Elixir Community News https://github.com/elixir-lang/elixir/releases/tag/v1.16.1 – Elixir 1.16.1 release with bug fixes for Elixir, IEx, and Mix. https://twitter.com/germsvel/status/1752296600024543386 – German Velasco's tip on using temporary directories in ExUnit for parallel testing. https://twitter.com/thmsmlr/status/1749628412073857340 – Thomas Millar's experience on upgrading to Bandit which improved CPU and latency performance. https://github.com/mtrudel/bandit – Bandit, an Elixir HTTP server toolkit, mentioned for its performance benefits. https://twitter.com/philipbrown/status/1753009553904701753 – Philip Brown's insight on using Elixir Protocols to select different params for verified routes. https://twitter.com/ac_alejos/status/1754020191976001729 – Announcement of a Kino for embedding YouTube videos in Livebook by Andrés Alejos. https://github.com/acalejos/kino_youtube – GitHub repository for kino_youtube for embedding YouTube content in Livebook. https://twitter.com/rrrene/status/1751920017870860422 – Celebration of the 10 year anniversary of Inch by René Föhring. https://rrrene.org/2024/01/28/inch-turns-ten/ – More on the 10 year anniversary of Inch, a documentation analysis tool. https://youtu.be/RABXu7zqnT0?si=1sQUtAyRmlYbVMae&t=50 – Thomas Millar's talk on InstructorEx, a bridge between Elixir and AI. https://podcast.thinkingelixir.com/185 – Episode 185 of the Thinking Elixir podcast discussing InstructorEx. https://amp.cnn.com/cnn/2024/02/04/asia/deepfake-cfo-scam-hong-kong-intl-hnk/index.html – CNN article about a deepfake scam that tricked a finance worker into paying $25 million. Explanation of the deepfake video call scam and a reminder of the potential misuse of AI and ML. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Feb 13, 202412 min

188: Thinking Elixir News

In this week's news, we follow-up on Erlang's use of ExDoc with José Valim's reveal of upcoming features for ExDoc that promises to enhance documentation experiences. We'll also explore the return of the Elixir Slack inviter, now powered by a Plug app, and take a look at the latest PhoenixTest project, aiming to unify testing workflows for LiveView and static pages. Plus, we discuss adding sound effects to LiveView with Howler.js and get a sneak peek at the Nx library's newest Explorer v0.8 release, bridging Elixir to GPU operations for data exploration, and more! Show Notes online - http://podcast.thinkingelixir.com/188 Elixir Community News https://twitter.com/josevalim/status/1749453086232351173 – José Valim shared insights on big plans for ExDoc, including autocompletion and cross-package search, following Erlang's adoption of ExDocs with OTP 27. https://elixir-lang.slack.com/archives/C03EPRA3B/p1706132703749299 – Return of the Elixir Slack inviter, now through a Plug app that redirects to Slack invites. https://github.com/elixir-lang/elixir-lang.github.com/pull/1746 – Users are encouraged to help maintain the Elixir Slack community's health by contributing invite tokens. https://github.com/sorentwo/elixir-slack – GitHub project for the Elixir Plug application managing Slack invite redirections. https://github.com/dashbitco/nimble_ownership – New NimbleOwnership library for tracking resource ownership across processes, useful for isolating resource access in test suites. https://hexdocs.pm/phoenix_test – PhoenixTest project by German Velasco to unify feature testing for LiveView and static pages in Elixir. https://twitter.com/germsvel/status/1751971517326414063 – Announcement of the PhoenixTest project that aims to provide seamless navigation and testing between LiveView and static pages. https://hexdocs.pm/phoenix_test/readme.html#why-phoenixtest – An explanation of the reasoning behind the creation of the PhoenixTest project for a unified testing experience. https://fly.io/phoenix-files/making-phoenix-liveview-sing/ – A guide on adding sound effects to LiveView pages, dealing with browser restrictions and integrating with Howler.js for user interaction. https://cigrainger.com/explorer-0-8-0/ – Release details of Explorer v0.8 in the Nx library, a tool for data exploration in Elixir that transitions smoothly between Elixir's syntax and GPU operations. https://github.com/elixir-explorer/explorer – GitHub repository for the Explorer library, part of the Nx ecosystem, that provides spreadsheet-like functionalities for Elixir. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Feb 6, 202416 min

187: Thinking Elixir News

In this episode, we celebrate the incredible ten-year journey of the Phoenix framework, marvel at the new interactive language tour by Gleam, explore the latest features of ElixirLS v0.19.0 designed to enhance the developer experience, and delve into Erlang's big leap towards adopting ExDoc for its documentation. Stay tuned for these exciting developments in the Elixir ecosystem and more! Show Notes online - http://podcast.thinkingelixir.com/187 Elixir Community News https://twitter.com/chris_mccord/status/1748007024921542707 – Chris McCord celebrated the 10th anniversary of his first commit to Phoenix, listing major features added over time. https://gleam.run/news/v0.34-multi-target-projects/ – Release of Gleam v0.34 introduces Multi-target projects. https://gleam.run/news/gleams-new-interactive-language-tour/ – Gleam adds a new interactive language tour that works directly in the browser. https://github.com/elixir-tools/next-ls/releases/tag/v0.16.0 – Announcement of Next LS v0.16.0 release for Elixir with new features including OpenTelemetry and logging. https://github.com/elixir-lsp/elixir-ls/releases/tag/v0.19.0 – Release notes for ElixirLS v0.19.0, highlighting on-type parsing for Phoenix .heex files and workspace symbols improvements. https://github.com/erlang/otp/pull/8026 – Erlang adopts ExDocs for documentation, starting transition with a huge PR converting docs from XML to Markdown. https://erlang.github.io/prs/8026/doc/readme.html – Read the updated Erlang documentation using ExDoc and conforming to EEP-59 style. https://www.youtube.com/playlist?list=PLvL2NEhYV4ZtBoR52raL_l7XQIb1YH-H7 – YouTube Playlist featuring talks from ElixirConf EU held in April 2023. https://www.elixirconf.eu/archives/lisbon_2023/index.html – Archive page for ElixirConf EU 2023 with information about the event and talks. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jan 30, 202414 min

186: Thinking Elixir News

In today's episode, we peek into Elixir's impact on operational costs and developer experience, highlighted by Amplified's move to Elixir and insights from José Valim. Learn about the latest community discussions, including a tip for Elixir package maintainers. Plus, there's a buzz about the upcoming NervesConf US. Join us for these stories and more! Show Notes online - http://podcast.thinkingelixir.com/186 Elixir Community News https://www.youtube.com/watch?v=mrFwWuD7gVo – DockYard posted an Elixir Roundtable interview with Chris Grainger discussing Amplified's switch from Python to Elixir, leading to a significant AWS bill reduction. https://twitter.com/cigrainger/status/1745371714660258169 – Chris Grainger tweeted about cutting AWS costs in half by utilizing tools like Nx, Axon, OTP, and Broadway after moving to Elixir from Prefect and Spark. https://twitter.com/josevalim/status/1745431023893024827 – José Valim discussed on Twitter the benefits of reducing operational complexity with Elixir and how it can also slash AWS bills. https://twitter.com/zachsdaniel1/status/1745894060890452476 – Zach Daniel reminds Elixir package maintainers on Twitter to update ex_doc to benefit from its ongoing improvements and suggests using mix hex.publish docs for updating documentation. José Valim suggested checking the Hex API for new ex_doc versions and willing to accept a PR for a warning implementation, exemplifying OpenSource collaboration. https://www.thestackcanary.com/phoenix-liveuploads-pdf/ – Andrés X Alejos created a tutorial on integrating Phoenix LiveView with pdf.js for handling PDF previews in applications. https://elixirforum.com/t/elixir-forum-2024-update/61007 – Elixir Forum 2024 Update mentions a discount section, the Ash Framework moving there for support, added chat features, and teases more features for 2024. https://nervesconf.us/ – NervesConf US announcement for May 9th, 2024, in Chattanooga, Tenn, calling for speakers and mentioning the CFP is open for all levels and Nerves-related topics. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jan 23, 20247 min

185: InstructorEx for LLMs

Dive into the world of structured LLM prompting with our latest guest who shares insights on their innovative project, InstructorEx. We'll explore how this tool is pushing the boundaries of large language models to return structured data, particularly JSON, and the benefits it offers when integrated into existing systems. The conversation takes a deep dive into the challenges and solutions of forcing LLMs to output data in desirable formats using Elixir technology, like Ecto schemas, and what it means to treat an LLM like a digital human, even applying it to tasks like spam detection in emails. Discover the intriguing concept of using a local database as a cache for LLM results. If you're curious about the intersection of structured data, Python experience transition to Elixir, and the future of LLM integration, this is an episode not to miss. Tune in for these engaging topics and more! Show Notes online - http://podcast.thinkingelixir.com/185 Elixir Community News https://twitter.com/spawnfest/status/1743987039345782978 – Announcement and prize awarding of the SpawnFest winners. https://spawnfest.org/2023.html – Official SpawnFest 2023 webpage with details on the projects and winners. https://github.com/spawnfest/heimdall – 1st Place Overall at SpawnFest, Heimdall is a web app for secure and easy sharing of sensitive data. https://github.com/spawnfest/fluffytrain – 2nd Place Overall at SpawnFest, Fluffytrain is a web app for generating working Elixir code using OpenAI GPT-4. https://github.com/spawnfest/tabtab – 3rd Place Overall at SpawnFest, tabtab is an autocompletion generator plugin for Erlang's rebar3. https://github.com/spawnfest/arizona – Arizona, an Erlang Web Framework, was one of the highlighted projects at SpawnFest. https://github.com/spawnfest/latch – Latch, a tool for viewing OpenTelemetry data in real-time was a highlighted project at SpawnFest. https://github.com/spawnfest/youcan – Youcan, an Elixir library for using UCANs in app authorization flows, featured at SpawnFest. https://ucan.xyz/ – UCAN.xyz, related to the Youcan Elixir library for user-controlled authorization networks. https://github.com/spawnfest/lorax – Lorax, a Livebook app implementing LoRA for fine-tuning language models, was highlighted at SpawnFest. https://github.com/spawnfest/karel_dreams – SpawnFest's highlighted project Karel_dreams, a Livebook app for controlling a robot with AI or script. https://twitter.com/josevalim/status/1744395345872683471 – José Valim celebrates Elixir's 13th anniversary and announces Elixir as a gradually typed language. https://twitter.com/bcardarella/status/1743370338254139712 – Announcement of LiveView Native v0.2.0-rc.1 release and upcoming changes. https://twitter.com/germsvel/status/1744686958196973787 – German Valesco shares a tip about LiveView helpers for creating pipe-friendly functions in Elixir. https://codebeamamerica.com/ – CodeBeam America conference information, happening on March 7-8, 2024 in San Francisco and virtually. https://twitter.com/sasajuric/status/1744649232793886963 – Tweet about CodeBeam America conference. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://github.com/thmsmlr/instructor_ex https://twitter.com/thmsmlr/status/1736645576324784375 https://www.stitchfix.com/ https://docs.pydantic.dev/latest/ https://github.com/boudra/jaxon https://github.com/ggerganov/llama.cpp https://fly.io/phoenix-files/using-llama-cpp-with-elixir-and-rustler/ https://hadoop.apache.org/ https://pig.apache.org/ https://www.r-project.org/ https://fly.io/blog/rethinking-serverless-with-flame/ BNF Grammar enforcement for JSON output https://www.linkedin.com/company/modal-labs/ https://airflow.apache.org/ Guest Information https://twitter.com/thmsmlr – on Twitter https://github.com/thmsmlr/ – on Github https://thmsmlr.com/ – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jan 16, 202454 min

184: Magic Links

In the news, we dive into a mix of intriguing Elixir updates and innovative developments. We explore the convenient and versatile Testcontainers project, designed to streamline your testing environment, and touch on Zach Daniel's efforts to integrate bulk operations into the Ash Framework. German Velasco has been busy sharing a wealth of tips on ElixirStreams.com, and we stumbled upon a rare gem, a Windows-focused Elixir library that bridges the gap with Azure authentication services. But the heart of our discussion revolves around the magic of "magic links" in Phoenix applications. We delve deep into how these links offer a seamless user experience by simplifying authentication, the challenges they may pose, and the impressive ways they can refine your developer workflow. Stay tuned for these updates and more in the show! Show Notes online - http://podcast.thinkingelixir.com/184 Elixir Community News https://github.com/testcontainers – Website for Testcontainers, a project for developing in multiple languages without needing a local test database. https://github.com/testcontainers/testcontainers-elixir – The Elixir-specific project under Testcontainers created by Jarl André Hübenthal, allowing for automated container management in test mode. https://twitter.com/ZachSDaniel1/status/1741260030748324287 – Tweet by Zach Daniel discussing his work on adding bulk operations into the Ash Framework. https://elixirforum.com/t/basic-bulk-actions-atomics-new-stream-options-error-2-expression/60496?u=zachdaniel – Elixir Forum thread where Zach Daniel explains the bulk operations feature for the Ash Framework. https://twitter.com/germsvel/status/1740707041373503771 – German Velasco's announcement on Twitter about his ongoing series of Elixir tips and a list of top videos on ElixirStreams.com. https://github.com/chgeuer/ex_windows_api_dataprotection – GitHub repository for an Elixir library that provides access to the Windows Data Protection API, useful for Azure services on Windows. https://www.youtube.com/watch?v=eM8vl7pgRJM – Andrew Stewart's video tutorial on adding magic links to a Phoenix application for passwordless authentication. https://andrewian.dev/blog/magic-links – Blog post by Andrew Stewart detailing the implementation of magic links in Phoenix applications. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://haveibeenpwned.com/ – Resource for checking if an email address or password has been part of a data breach. https://github.com/dashbitco/nimble_totp – NimbleTOTP - A tiny Elixir library for time-based one time passwords (TOTP) Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jan 9, 202423 min

183: Thinking Elixir News

We kick off the new year diving into the freshly released Elixir 1.16.0 with new features like enhanced documentation and improved error reporting. We explore the burgeoning Elixir Machine Learning ecosystem, and discuss the innovative use of Llama.cpp with Elixir for machine learning on less powerful hardware. We also touch on the release of Benchee 1.3.0, which focuses on improving memory usage in benchmarks, and introduce Magma AI Prompt IDE, a handy tool for Elixir developers looking to streamline their project knowledge and documentation process. Plus, we unveil Adobe's Elixir Styler for smarter code formatting, and share insights on the comprehensive Membrane SDK release for multimedia enthusiasts, and more! Show Notes online - http://podcast.thinkingelixir.com/183 Elixir Community News https://elixir-lang.org/blog/2023/12/22/elixir-v1-16-0-released/ – Announcement of Elixir 1.16.0 release, including features like code snippets in diagnostics, revamped documentation, and a living anti-patterns reference. https://www.thestackcanary.com/understanding-the-elixir-machine-learning-ecosystem/ – Andrés Alejos's introduction to Machine Learning in Elixir through a glossary of libraries. https://fly.io/phoenix-files/using-llama-cpp-with-elixir-and-rustler/ – Jason Stiebs's article on using LLama.cpp with Elixir and Rustler for running machine learning models on CPU with lesser hardware requirements. https://github.com/jeregrine/llama_cpp_ex – Github repository for "Llama CPP Ex," a Hex package by Jason Stiebs to integrate LLama.cpp with Elixir. https://pragtob.wordpress.com/2023/12/22/benchee-1-3-0-published-oh-save-the-memory/ – Blog post about the release of Benchee 1.3.0 focusing on memory savings. https://github.com/bencheeorg/benchee – Github repository for Benchee, a benchmarking tool for Elixir. https://pragtob.wordpress.com/2023/12/18/careful-what-data-you-send-or-how-to-tank-your-performance-with-task-async/ – Blog post by Tobi Pfeiffer on how the size of data passed between processes can impact performance in Elixir. https://github.com/elixir-lang/elixir/pull/13173/files – Github pull request showing code changes to the Elixir language. https://github.com/elixir-lang/elixir/pull/13194/files – Another Github pull request showing code changes to the Elixir language. https://github.com/marcelotto/magma – Marcel Otto's Github repository for Magma, an IDE for constructing complex prompts, especially aimed at Elixir developers. https://x.com/ElixirMembrane/status/1737791927636893981 – Announcement of the release of Membrane SDK, offering a comprehensive suite of Membrane plugins for multimedia processing. https://github.com/membraneframework/membrane_sdk – Github repository for Membrane SDK, with details on features and release cycle. https://elixircasts.io/elixir-styler – ElixirCasts video introducing and demonstrating Elixir Styler, an automated code styling tool. https://github.com/adobe/elixir-styler – Github repository for Adobe's Elixir Styler, which combines issue detection with auto-correction for Elixir code. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jan 2, 202418 min

182: Year End Review

As we close another year packed with developments in the Elixir ecosystem, we're rolling out the red carpet for a "Year End Review" episode! Before we do that, we cover the most recent news events like the release of Supabase's Supavisor, a connection pooler, crafted with a helping hand from Dashbit. We shed light on the partnership between Supabase and Fly.io introducing a managed Postgres option. Then, for front-end enthusiasts, we discuss the released beta of LiveView Native and more! And, if that's not enough, we've got loads to unwrap from highlights of the past year's achievements! Show Notes online - http://podcast.thinkingelixir.com/182 Elixir Community News https://elixirforum.com/t/elixir-v1-16-0-rc-1-released/60310 – Elixir 1.16.0-RC.1 announced, featuring minor improvements and better error reporting. https://github.com/elixir-lang/elixir/commit/8e9cbfcd8c219f9d3558158f1ebee5ec4fadd762 – Optimization of the Enum.random function in the Elixir programming language. https://twitter.com/planeterlang/status/1734882621577183524?t=Xn6DY9Qzc5nGLdqEskRjvQ – Announcement of Erlang/OTP 26.2 Release, a maintenance patch with bug fixes and improvements. https://www.erlang.org/news/166 – Erlang/OTP 26.2 release news with details on improvements. https://erlang.org/download/OTP-26.2.README – README document for Erlang/OTP 26.2, including the highlight on process_info/2 support for looking up specific keys in the process dictionary. https://twitter.com/kiwicopple/status/1734903746704945425?t=Xn6DY9Qzc5nGLdqEskRjvQ – Supabase announces Supavisor 1.0 as part of their launch week. https://supabase.com/blog/supavisor-postgres-connection-pooler – Blog post detailing the Supavisor Postgres connection pooler released by Supabase. https://github.com/supabase/supavisor – GitHub repository for Supavisor, the Postgres connection pooler by Supabase. https://www.youtube.com/watch?v=ogYNmJOFEpk – José Valim created an intro video for Supavisor included in the announcement blog post, hinting at Dashbit's involvement. https://supabase.com/blog/postgres-on-fly-by-supabase – Supabase partnership with Fly.io to manage Fly Postgres databases. https://twitter.com/kiwicopple/status/1735628135750602769?t=ZvCKMAXrZFtDX8pfjW14Lw – Twitter update on the Supabase and Fly.io partnership offering managed Postgres databases. https://www.youtube.com/watch?v=WyjwFP2QgeI – YouTube video featuring LiveView Native 0.2.0-beta.1 Getting Started guide. https://twitter.com/bcardarella/status/1736164327931924483?t=ZvCKMAXrZFtDX8pfjW14Lw – Announcement of LiveView Native v0.2.0-beta.2 release with bug fixes and performance improvements for client navigation. https://www.youtube.com/watch?v=ewf-18jacmo – Theo, a YouTube personality, gives his take on the FLAME idea, expressing concerns and impressions on Chris McCord's article and library. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Dec 26, 202331 min

181: FLAME with Chris McCord

In this week's episode, we ignite the exciting world of Elixir with Chris McCord's announcement of FLAME, showcasing a revolutionary approach to serverless with the Phoenix framework. Chris joins us to unravel the inspiration behind FLAME - Fleeting Lambda Application for Modular Execution and its promise to streamline the developer experience, significantly simplifying elastic compute. We discuss why this isn't just another job queue solution and explore how it effortlessly scales. We cover how other backends can be implemented and learn there's even a Kubernetes option! The FLAME pattern can be implemented in other languages and frameworks too. To avoid FOMO, tune in and ride the wave of Elixir's evolution with us. Show Notes online - http://podcast.thinkingelixir.com/181 Elixir Community News https://twitter.com/chris_mccord/status/1732368400876249310 – Chris McCord announced FLAME, a library for Phoenix, with a video demo link. https://fly.io/blog/rethinking-serverless-with-flame/ – Blog post by Chris McCord detailing the FLAME pattern and library for Phoenix. https://twitter.com/bcardarella/status/1734219297721921968 – Announcement of LiveView Native beta release v0.2.0.beta.1. https://github.com/liveview-native/live_view_native/tree/main – GitHub repository for LiveView Native with the beta release. https://twitter.com/peregrine/status/1733182408969650579 – Jason Stiebs' tweet about his article on using Machine Learning with Elixir apps. https://fly.io/phoenix-files/real-world-machine-learning-on-fly-gpu/ – The article by Jason Stiebs on implementing Machine Learning in Hex package searches with Fly.io GPUs. https://twitter.com/bernheisel/status/1732487442052083810 – David's date_time_parser tool announcement on Twitter. https://github.com/dbernheisel/date_time_parser – GitHub repository for the date_time_parser library, highlighting its latest updates and features. https://twitter.com/paraxialio/status/1732382704098763155 – Paraxial 2.0 announcement, a server-side hosted tool for Elixir security. https://paraxial.io/blog/introducing-paraxial – Introduction blog post for Paraxial 2.0, presenting its Elixir focused security dashboard and features. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://twitter.com/chris_mccord/status/1732368400876249310 – FLAME X/Twitter announcement https://fly.io/blog/rethinking-serverless-with-flame/ – Rethinking Serverless with FLAME blog post https://www.youtube.com/watch?v=l1xt_rkWdic – FLAME YouTube video https://github.com/phoenixframework/flame – flame library on GitHub - in PhoenixFramework org https://github.com/fly-apps/live_beats https://en.wikipedia.org/wiki/Periscope_(service) https://www.merriam-webster.com/dictionary/obviate https://github.com/chrismccord/atlas Guest Information https://twitter.com/chris_mccord – on Twitter https://github.com/chrismccord – on Github http://chrismccord.com/ – Blog https://twitter.com/flydotio – Fly.io on Twitter Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Dec 19, 20231h 11m

180: Thinking Elixir News

News teases an intriguing update from Chris McCord hinting at a groundbreaking feature in Phoenix and Elixir's capabilities. José Valim proposes local accumulators in Elixir, stirring discussions on the future of coding elegance. Supabase launches the innovative "libcluster_postgres" library, promising to enhance Elixir node discovery with Postgres. And for those seeking to crunch numbers differently, a must-read blog post lays out a roadmap for translating code in NumPy to Nx. Plus, Elixir enthusiasts are buzzing about this year's Advent of Code challenges—find out how the community tackles these puzzles with bespoke tooling and shared Livebooks strategies, and more! Show Notes online - http://podcast.thinkingelixir.com/180 Elixir Community News https://twitter.com/chris_mccord/status/1731668893213544900 – Teaser by Chris McCord hinting a new development in Phoenix and LiveView as a potent alternative to something. https://elixirforum.com/t/local-accumulators-for-cleaner-comprehensions/60130 – José Valim's proposal on ElixirForum for adding local accumulators to cleaner list comprehensions in Elixir. https://elixirforum.com/t/introducing-for-let-and-for-reduce/44773 – A discussion from two years ago on ElixirForum about a different variation of local accumulators proposal for Elixir. https://twitter.com/kiwicopple/status/1730242820441588147 – Announcement of a newly released Elixir library called "libcluster_postgres" by Paul Copplestone from Supabase. https://github.com/supabase/libcluster_postgres – GitHub repository for the "libcluster_postgres" library, used by Supabase for Elixir node discovery using a Postgres strategy. https://www.thestackcanary.com/numpy-to-nx/ – A blog post that guides through translating NumPy code to Nx by providing side-by-side examples. https://adventofcode.com/ – Link to the official Advent of Code website which is a popular coding challenge during the Christmas season. https://github.com/mhanberg/advent-of-code-elixir-starter – Mitch Hanberg's Advent of Code Starter Kit repository, which provides a template project for solving the Advent of Code challenges in Elixir. https://notes.club – A platform that hosts a frontend of Livebooks on GitHub, organized by author, likes, and tags, useful for exploring how people are solving Advent of Code problems in Elixir. https://github.com/ljgago/kino_aoc – A GitHub repository for a Livebook Smart Cell which aids in solving Advent of Code directly from Livebook. https://github.com/nettinho/smaoc – Another Livebook Smart Cell repository on GitHub for Advent of Code that facilitates problem interaction within Livebook. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Dec 12, 202319 min

179: Future of AI with Elixir?

In the latest episode, we delve into the rapidly evolving AI ecosystem and its implications for us as Elixir developers, highlighting the potential hazards of relying on proprietary services like OpenAI and the benefits of self-hosted, open-source AI models. We touch on the Elixir LangChain library, how Elixir's position of running our own AI models strengthens us, and the governance and financial risks of depending on a single AI provider. Tune in for why these topics matter and how they shape the future of development in the context of Elixir, plus the holiday season's impact on our show schedule, and more! Show Notes online - http://podcast.thinkingelixir.com/179 Elixir Community News https://twitter.com/chris_mccord/status/1724861258548052109 – Chris McCord teased a new visual on Twitter resembling a colorful flame logo with the text "Soon™", with more details to come. https://hauleth.dev/post/who-watches-watchmen-ii/ – Hauleth's blog post explores creating an Elixir service supervised by SystemD, building on his series about managing BEAM applications. https://www.elixirstreams.com/tips/how-page-title-is-updated – German Valesco explains the updating of the page_title in Phoenix LiveView with a tip and video demonstration. https://dockyard.com/blog/2023/11/08/three-years-of-nx-growing-the-machine-learning-ecosystem – Sean Moriarity discusses the past three years and the future of the Elixir Machine Learning Ecosystem and Nx in a blog post on Dockyard. https://twitter.com/TheErlef/status/1726654135750066390 – Announcement of the 3rd edition of a BEAM-focused devroom at the 2024 FOSDEM conference, set to take place in Brussels. https://beam-fosdem.dev/ – FOSDEM's BEAM devroom, an event for the Elixir community and enthusiasts, provides details about the upcoming sidetrack. https://www.youtube.com/playlist?list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY – The official playlist of ElixirConf US videos, with several more sessions expected to be added. https://www.youtube.com/watch?v=nw-030FD0Qc&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=46 – ElixirConf US video of Rafal Studnicki discussing keeping real-time auctions running during rollouts. https://www.youtube.com/watch?v=P44hFAhKPao&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=47 – Tyler Young's ElixirConf US presentation on migrating data without downtime. https://www.youtube.com/watch?v=4XaB4XWg-Qg&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=48 – Michał Śledź's session at ElixirConf US on rewriting Pion in Elixir. https://www.youtube.com/watch?v=E9pZP5jUYZg&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=49 – Andrew Berrien introduces ECSx and discusses a new approach to game development in Elixir at ElixirConf US. https://www.youtube.com/watch?v=F42B6AZ879Q&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=50 – Geoffrey Lessel's introduction to Vox, a static site generator for Elixir enthusiasts, at ElixirConf US. https://adventofcode.com/ – Advent of Code is approaching, presenting new coding challenges starting December 1st with a new rule against using AI for leaderboard rankings. https://twitter.com/ljgago/status/1724917401462997413 – Leonardo Gago tweets about his kino_aoc smart cell to assist with Advent of Code puzzles in Livebook. https://github.com/ljgago/kino_aoc – GitHub repository for KinoAoc, a Livebook smart cell created by Leonardo Gago for solving Advent of Code puzzles. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources The discussion explores the AI ecosystem's influence on Elixir developers, addressing risks and dependencies unrelated to Elixir itself. Concerns are raised about the dangers of building on top of OpenAI and the risk of service outages, as experienced with an AI fitness trainer. Open-source AI models are discussed as viable alternatives that offer the possibility of self-hosting and independence from proprietary systems. Mention of the Elixir LangChain library signifies an interest in being able to seamlessly switch AI models without altering application code. The discussion covers the risks of government regulation, policy changes, financial and governance uncertainties, and how they could affect dependencies on single AI providers. An industry desire for regulatory measures is expressed, aiming to build a legal buffer that could protect from competition. The conversation questions the broader implications of reliance on AI, including why the topic is intriguing and why self-hosted, open-source models are crucial. Arguably, Elixir is considered to have a strong position for running self-managed AI models, highlighting the alignment with open-source philosophies. Looking to the future, Elixir is positioned well to do this. A final note touches on the holiday season's effect on the podcast's show schedule with potential changes or pauses in the regular programming. Find

Nov 28, 202333 min

178: Safe Ecto Migrations and AI Updates

In this episode, we revisit the Safe Ecto Migrations guide and get an update on improvements. We also discuss the role and importance of OpenSource AI models. We cover updates in the Elixir LangChain library, the advantages of self-hosted AI models like Mistral, and learning how to run Bumblebee on Fly.io GPUs. Tune in for an insightful blend of database best practices and the cutting-edge of AI in Elixir, plus more! Show Notes online - http://podcast.thinkingelixir.com/178 Elixir Community News https://www.youtube.com/playlist?list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY – Playlist of 44+ ElixirConf US talks now available on YouTube. https://www.youtube.com/watch?v=eCnfdHtgAN4&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=39 – Owen Bickford's talk on Elixir's Secret Ingredient at ElixirConf. https://www.youtube.com/watch?v=gtCJ56GxKf0&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=43 – Jeffery Utter's ElixirConf presentation on Scaling Teams with Kafka on the BEAM. https://www.youtube.com/watch?v=VLO0ma-1uD4&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=44 – Andrew Bennett discusses Erlang Dist Filtering and the WhatsApp Runtime System at ElixirConf. https://www.youtube.com/watch?v=bBaZDAynM08 – Michael Lubas's insights into Elixir Security from a Business and Technical Perspective. https://dockyard.com/blog/2023/11/01/the-road-toward-live-view-native-v-0-2-part-2 – Update on the progress of LiveView Native, including multi-character sigils and Phoenix layouts. https://sessionize.com/lambda-days-2024 – Call for talks for the Lambda Days 2024 conference focused on functional programming in Kraków, Poland. https://twitter.com/germsvel/status/1722221427112456533 – Elixir 1.16 introduces the ability to run multiple tests with line numbers as shown by German Velasco. https://www.youtube.com/watch?v=bfrzGXM-Z88 – Theo's livestream with José Valim, discussing various topics for 2.5 hours. https://peterullrich.com/test-an-external-read-only-repository-in-phoenix – Peter Ullrich's method for testing an external, read-only repository in Phoenix. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources 7:43 - David introduces and explains Safe Ecto migrations. Updates on Safe Ecto for additional safety features and latest improvements. Review of the performance of using text columns in databases showing that they have the same performance as VARCHAR types. Examples provided of non-immutable expressions within database contexts. Highlighting an error that can occur when backfilling data without a sort order. Suggestion that Common Table Expressions (CTE) offers a more reliable method for certain database operations. David's call for a library to assist with running database operations through a UI, indicating the desire for tooling improvements. Consider the use-cases in the development and implementation of safety tools for databases. 18:47 - Mark discusses new Fly.io GPU hardware, model improvements, and the Bumblebee tool. Mistral LLM and its capabilities in the AI space. Insights into running Bumblebee on GPUs and performance considerations. Importance of Mistral being self-hosted. Explanation of why self-hosting AI models like Mistral is significant for developers and users. OpenAI's outage interrupted Mark's AI-powered workout trainer. Outlining the Elixir LangChain goals, its roadmap, and potential impact on AI and data processing. Discussion on how Large Language Models (LLMs) are effectively used for data extraction tasks. Discussion on what an AI router is and what problem it solves. Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Nov 21, 202329 min

177: Thinking Elixir News

This week's news highlights Discord's deep-dive into how they've scaled their servers to support millions of concurrent users, leveraging Elixir's power. We cover how the Oban notifier has evolved to include Phoenix.PubSub and Redis integration, allowing more flexibility for your job processing needs. LiveView Native's tutorial experience looks promising to make mobile development smoother and more intuitive. Plus, we cover the Livebook PR merge upgrading to the Bandit library and more! Show Notes online - http://podcast.thinkingelixir.com/177 Elixir Community News https://discord.com/blog/maxjourney-pushing-discords-limits-with-a-million-plus-online-users-in-a-single-server – Discord blog post detailing the scaling of individual Discord servers and the technical challenges involved. https://github.com/discord/manifold – GitHub link to Discord's opensource Elixir library "Manifold" used for batch message passing between nodes. https://www.youtube.com/watch?v=HP86Svk4hzI – Chris Grainger discusses using Elixir + Phoenix + Nx in production with machine learning on the BEAM. https://github.com/livebook-dev/livebook/pull/2316 – A Livebook PR titled "Upgrade to bandit" merged by José Valim, signifying an endorsement for the Bandit library. https://twitter.com/cvkmohan/status/1719489327925694682 – Discussion on Twitter about using Bandit as an upgrade for a Phoenix app. https://elixirstream.dev/gendiff/phx_new/19CBA027FA97E2873CC24093F6AC1820 – A flag added to elixirstream.dev for diffing generated output, introduced in Phoenix 1.7.8. https://github.com/sorentwo/oban_notifiers_phoenix – Release of a new Oban notifier powered by Phoenix.PubSub, compatible with OTP and now able to use Redis. https://twitter.com/bcardarella/status/1720179762088272080 – Tease of the upcoming LiveView Native v0.2 and its tutorial experience using Livebook. https://podcast.thinkingelixir.com/174 – Previous interview about DockYard's BeaconCMS https://twitter.com/bcardarella/status/1721172482298663214 – Twitter post discussing the 'Variants' feature for A/B/C/D/etc. page variant testing in BeaconCMS. https://twitter.com/NervesMeetup/status/1721389396417728782 – Announcement tweet for the next Nerves embedded systems meetup. https://www.meetup.com/nerves/events/290189609/ – Meetup link for the Nerves embedded systems event featuring a walkthrough by Alex McLain. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Nov 14, 202313 min

176: Thinking Elixir News

In the latest episode, we explore the release of Elixir v1.16.0-rc.0 which brings compiler performance improvements, code snippets in diagnostics, and enhanced documentation. Understand the perf enhancements and get a grip on the enriching changes in Elixir docs, including novel sections on anti-patterns and a built-in cheatsheet for the Enum module. We also discuss the launch of Lexical LS 0.4.0 and FlameOn v0.6.0 with enhanced features, the potential integration of JSON support into OTP, and updates on LiveView Native and Bumblebee's new addition, the Zephyr 7B LLM model. Stay tuned for insights on the Req library through Wojtek Mach's ElixirConf video, the versatility of Elixir and Phoenix and how they can “do it all”, a wrap-up of the online coding competition, SpawnFest, and more! Show Notes online - http://podcast.thinkingelixir.com/176 Elixir Community News https://elixirforum.com/t/elixir-v1-16-0-rc-0-released/59386 – Release of Elixir v1.16.0-rc.0 with compiler perf improvements, code snippets in diagnostics and improved documentation https://twitter.com/josevalim/status/1717866840389542125 – Discussion about compiler perf improvements in Elixir https://hexdocs.pm/elixir/1.16/introduction.html – Improvements and changes in Elixir docs, introduction of tutorials and diagrams https://hexdocs.pm/elixir/1.16/GenServer.html https://hexdocs.pm/elixir/1.16/GenServer.html#module-client-server-apis https://hexdocs.pm/elixir/1.16/what-anti-patterns.html – A new section in Elixir docs covering various types of anti-patterns https://hexdocs.pm/elixir/1.16/enum-cheat.html – Release of built-in cheatsheet for the Enum module in Elixir https://github.com/lexical-lsp/lexical/releases/tag/v0.4.0 – Release of Lexical LS 0.4.0 with document hover for functions and modules and improved completions https://podcast.thinkingelixir.com/161 – Previous interview about Lexical LS https://twitter.com/1stAvenger/status/1710415907770528023 – Release of Flame On v0.6.0 with support for Phoenix LiveView 0.20 https://github.com/DockYard/flame_on – FlameOn project page https://twitter.com/wojtekmach/status/1719058515614961755 – Video about Wojtek Mach's ElixirConf covering his Req library released on YouTube https://twitter.com/michalmuskala/status/1718384939836518651 – Announcement about JSON support build in OTP at Code BEAM https://twitter.com/toranb/status/1717931991276884349 – Addition of Zephyr 7B LLM model in Bumblebee https://huggingface.co/HuggingFaceH4/zephyr-7b-alpha – Zephyr model on HuggingFace https://github.com/rust-lang/rust/pull/115773#issuecomment-1783925711 – Update on LiveView Native supporting TvOS Simulator in Rust Core https://fly.io/phoenix-files/elixir-and-phoenix-can-do-it-all/ – Blog post by Jason Stiebs on how Elixir and Phoenix can do everything https://github.com/spawnfest/spawnfest.github.io/wiki/SpawnFest-repositories,-teams-and-people – Completion of SpawnFest - online 48 hour competition with multiple project submissions Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Nov 7, 202320 min

175: Thinking Elixir News

In this episode, we kick off with the major release of Bandit 1.0, an Elixir substitute for Cowboy, that's making an impact with its performance. We move on to the Elixir compiler's dev experience improvements in the upcoming Elixir v1.16. We then transition to talk about the various Language Server alternatives available, how their features compare, and the newly announced Erlang Language Server at CodeBEAM Europe. We talk about the newly added support of the Mistral LLM with the Bumblebee library and why this is interesting, the introduction of Permit - an authorization library for Phoenix apps, and more! Show Notes online - http://podcast.thinkingelixir.com/175 Elixir Community News https://twitter.com/ryanrwinchester/status/1715129566421831878 – Announcement about Bandit 1.0 release. https://podcast.thinkingelixir.com/128 – Previous interview with Mat Trudel about Bandit as a Phoenix web server. https://elixirforum.com/t/bandit-a-pure-elixir-http-server-for-plug-websock-applications/59146/1 – Forum post related to Bandit and its integration with Phoenix Projects https://mat.geeky.net/2023/10/19/bandit-is-all-grown-up.html – Blog post covering the history and the release of Bandit https://cloud.google.com/blog/products/identity-security/how-it-works-the-novel-http2-rapid-reset-ddos-attack – Reference to HTTP/2 related topics https://twitter.com/josevalim/status/1716372821671067900 – Updates from José Valim about new compiler error reporting diagnostics coming in Elixir v1.16. https://twitter.com/magevinicius/status/1716601466113130685 – Follow up about the compiler error reporting diagnostics. https://gist.github.com/Nezteb/dc63f1d5ad9d88907dd103da2ca000b1 – Comparison of different Language Server (LS) options in Elixir created by Noah Betzen. https://elixirforum.com/t/comparing-elixir-language-servers-elixirls-lexical-and-next-ls/59372 – ElixirForum post about LS comparisons. https://twitter.com/PragTob/status/1715339945898869225 – Announcement of new Erlang Language Server at CodeBEAM Europe. https://github.com/WhatsApp/erlang-language-platform – Github link for new Erlang Language Server. https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-4/ – Updates about NextLS, another Language Server. https://twitter.com/sean_moriarity/status/1715042161677201428 – Information about Mistral coming to Bumblebee. https://github.com/elixir-nx/bumblebee/pull/264 – The PR for adding Mistral support. https://mistral.ai/ – More about Mistral. https://twitter.com/sean_moriarity/status/1715758666001928613 – Process of adding new models to Bumblebee. https://curiosum.com/blog/authorize-access-to-your-phoenix-app-with-permit – Introduction to Permit, an authorization library for Phoenix application. https://podcast.thinkingelixir.com/162 – Interview with Patrick Smith about Orb and using WebAssembly in the browser. https://youtu.be/UnMcBa2efX4?si=l1xer5YpzrJyvMov&t=742 – Presentation about his color picker example that uses WebAssembly for complex but very smooth browser side operation. https://twitter.com/sprsmpl/status/1716635858281902140 – Announcement about NervesConf. https://elixirconf.africa/ – Information regarding the Elixir Safari conference in Africa. https://twitter.com/ElixirConfEU/status/1713929804062273663 – ElixirConf Europe's call for talks. https://www.elixirconf.eu/ – Conference website for ElixirConf Europe. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Oct 31, 202320 min

174: DockYard's BeaconCMS

The Elixir community has a new OpenSource CMS thanks to DockYard and Leandro Pereira! We talk with Leandro to better understand what the Beacon project is and what it can do. It's built using Phoenix LiveView and can be deployed standalone or as part of an existing Elixir Phoenix application. The Admin features include the ability for non-developers to edit content and immediately deploy changes without re-deploying the app. We talk about how BeaconCMS is positioned against Wordpress and static sites and where the greatest benefits are. A feature in development is the HEEx template editor which promises to be a very exciting tool for non-developers. Learn along with us! Show Notes online - http://podcast.thinkingelixir.com/174 Elixir Community News https://twitter.com/chris_mccord/status/1713894354962534808 – LiveView optimized DOM patching announced, resulting in significant speed improvements in browser's DOM patching time. https://twitter.com/basilenouvellet/status/1713981828028133847 – Real world test results demonstrating faster speeds due to LiveView's optimized DOM patching. https://dashbit.co/blog/latency-rendering-liveview – New post on performance optimization in Phoenix LiveView by José Valim. https://youtu.be/Ckgl9KO4E4M?si=UNf5sNShzl1oTZQS&t=1731 – Chris McCord's ElixirConf keynote demo on LiveView's new dev tool features. Time signature for dev tools example https://twitter.com/josevalim/status/1711756969814426066 – José Valim's explanation on LiveView's unreleased feature. https://github.com/elixir-saas/click_to_component – An external library called "click_to_component" to support the Cmd+Click functionality in LiveView. https://news.livebook.dev/remote-execution-smart-cell---launch-week-2---day-1-m3dv2 – Announcement of Livebook's new feature - Remote execution Smart cell. https://news.livebook.dev/speech-to-text-with-whisper-timestamping-streaming-and-parallelism-oh-my---launch-week-2---day-2-36osSY – Livebook's new features in their Whisper integration for improved speech-to-text performance. https://news.livebook.dev/introducing-file-integration---launch-week-2---day-3-2HoFfa – Livebook's introduction to File Integration. https://news.livebook.dev/integration-with-snowflake-and-microsoft-sql-server---launch-week-2---day-4-2o4z9C – Livebook adds support for Snowflake and SQL Server. https://news.livebook.dev/vim-and-emacs-key-bindings---launch-week-2---day- – Livebook support for VIM & Emacs key bindings. https://hexdocs.pm/ash_sqlite/get-started-with-sqlite.html – Ash Framework's new AshSqlite library release. https://oban.pro/releases/web/v2.10 – Release of Oban Web 2.10.0. https://github.com/emmanueltouzery/elixir-extras.nvim – Release of a new Neovim Elixir plugin called elixir-extras.nvim. https://twitter.com/samokhvalov/status/1714153676212949355 – PostgreSQL tip for setting a human-readable label for a connection session. https://github.com/pgbouncer/pgbouncer/releases/tag/pgbouncer_1_21_0 – Upcoming PgBouncer 1.21 release with support for prepared statements. https://twitter.com/ElixirConfEU/status/1713929804062273663 – Announcement for call for talks for ElixirConf Europe 2024. https://www.elixirconf.eu/ – ElixirConf Europe 2024 conference details. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://github.com/BeaconCMS/beacon – The main Beacon CMS project https://github.com/BeaconCMS/beacon_demo – Beacon CMS demo project https://github.com/BeaconCMS/beacon_live_admin – Beacon CMS admin project https://beaconcms.org/ https://www.youtube.com/watch?v=5jk0fIJOFuc&list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY&index=16 – ElixirConf 2023 - Beacon - The next generation of CMS in Phoenix LiveView https://mdxjs.com/ https://hex.pm/packages/earmark https://github.com/leandrocp/mdex https://github.com/BeaconCMS/live_monaco_editor – The code editor, based on the Livebook editor https://github.com/leandrocp/mdex – Markdown parser and formatter https://github.com/leandrocp/autumn – Syntax highlighter for code blocks https://github.com/TheFirstAvenger/safe_code – Inspect HEEx for unsafe code https://github.com/BeaconCMS/beacon/milestone/1 – Beacon v0.1 release milestone https://github.com/BeaconCMS/beacon_live_admin/milestone/1 Guest Information https://twitter.com/leandrocesquini – on Twitter https://github.com/leandrocp/ – on Github [hhttps://leandrocp.com.br](hhttps://leandrocp.com.br?utm_source=thinkingelixir&utm_medium=shownotes) – Blog https://github.com/leandrocp/mdex – Other project MDEx - A fast 100% CommonMark-compatible GitHub Flavored Markdown parser and formatter for Elixir. Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheise

Oct 24, 202354 min

173: Web App Security Best Practices and Sobelow

We delve into the tricky world of cybersecurity with our guest, Michael Lubas. We touch on the widely-discussed 23andMe data breach, discussing what went wrong and how it applies to Elixir apps. A significant part of our talk is centered around the informative guide by the EEF Security Working Group called “Web Application Security Best Practices for BEAM languages.” An essential tool featured in our discussion is Sobelow, a security-focused static code analysis tool invaluable in warding off potential security breaches. We wrap up the conversation by discussing the practical application of these tools, using Paraxial.io's vulnerable-by-design “Potion Shop” app as a case study to run Sobelow and practice fixing issues. Join us for an enlightening discussion packed full of important insights! Show Notes online - http://podcast.thinkingelixir.com/173 Elixir Community News https://github.com/phoenixframework/phoenix_live_view/pull/2845 – Information on the upcoming LiveView that speeds up client DOM patching 5x. https://twitter.com/chris_mccord/status/1709681327019086044 – The post to further explain the upcoming LiveView. https://twitter.com/josevalim/status/1709841186972705033 – José Valim's clarification on how LiveView's 5x DOM patching works. https://twitter.com/wojtekmach/status/1709675064944144605 – Teaser about a cool new Req feature by Wojtek Mach. https://twitter.com/wojtekmach/status/1710053454217887970 – Release note for Req v0.3.12 and v0.4.4 and encouragement to upgrade. https://twitter.com/Tangui/status/1709645048906748378 – Announcement of a new HTTP Caching library called http_cache. http://svground.fr/blog/posts/introducing-http-cache/ – Blog post that accompanies the release of the new HTTP Caching library. https://github.com/tanguilp/plug_http_cache – plug_http_cache - An Elixir plug that caches HTTP responses. https://github.com/tanguilp/tesla_http_cache – tesla_http_cache - HTTP caching Tesla middleware. https://news.livebook.dev/remote-execution-smart-cell---launch-week-2---day-1-m3dv2 – Post about Day 1 of Livebook's launch week with information on the new feature. https://twitter.com/thmsmlr/status/1709309268183367901 – Announcement of Livebook Copilot by Thomas Millar. https://github.com/thmsmlr/kino_copilot – kino_copilot - Livebook SmartCell that refactors code, generates SQL for data analysis, writes documentation, and generates dashboards. https://twitter.com/hugobarauna/status/1709631824555573554 – Demonstration of Livebook voice transcription by Hugo Baraúna. https://github.com/brainlid/langchain_demo – LangChain Demo project that includes an example of an Agent. https://fly.io/phoenix-files/created-my-personal-ai-fitness-trainer-in-2-days/ – Blog post - Created my Personal AI Fitness Trainer in 2 Days https://www.youtube.com/watch?v=AsfQNtoaB1M – YouTube video overview for AI Personal Fitness Trainer with demo https://spawnfest.org/ – Information on SpawnFest, a 48-hour online software development contest. https://codebeameurope.com/ – Information on CodeBEAM Europe event. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://www.wired.com/story/23andme-credential-stuffing-data-stolen/ – 23andMe breach https://erlef.github.io/security-wg/web_app_security_best_practices_beam/ – Web Application Security Best Practices for BEAM languages - a guide from the EEF Security Working Group https://paraxial.io/blog/real-sobelow – Elixir Security - Real World Sobelow https://podcast.thinkingelixir.com/148 – Security Scanning our Apps with Sobelow https://www.ftc.gov/enforcement/refunds/equifax-data-breach-settlement – Why use Sobelow? The Equifax breach, $425 million penalty, was a remote code execution (RCE) vulnerability https://paraxial.io/blog/elixir-rce – Understanding remote code execution (RCE) attacks in Elixir https://paraxial.io/blog/potion-shop – Potion Shop https://www.meetup.com/new-york-city-elixir/events/296705817/ – The NYC Elixir meetup https://www.meetup.com/denver-erlang-elixir/ – Denver Elixir meetup Guest Information https://twitter.com/paraxialio – on Twitter https://github.com/paraxialio/ – on Github https://genserver.social/paraxial – on Fediverse https://paraxial.io/blog/index – Blog https://www.linkedin.com/company/paraxial-io – LinkedIn https://www.youtube.com/@paraxial5874 – Paraxial YouTube channel Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Oct 17, 202347 min

172: Thinking Elixir News

The latest news features a compelling blog post on the Dashbit blog focusing on the advances in Machine Learning with Elixir, intriguing tips on how to get the most out of ExDocs for offline browsing, and using a new Phoenix LiveView 0.20.x feature. Additionally, a transition story from Serverless to Elixir, resulting in significant cost savings, got attention and was shared by “Prime Reacts”, further spreading Elixir awareness. With more exciting announcements around ElixirConf 2023 Videos and the opening of proposals for CodeBEAM America 2024 and more! Show Notes online - http://podcast.thinkingelixir.com/172 Elixir Community News https://twitter.com/josevalim/status/1709168365816700979 – José Valim's Tweet about the new "Machine learning roundup" post on the Dashbit blog. https://dashbit.co/blog/elixir-and-machine-learning-q3-roundup – The new post on Dashbit blog about "Elixir and Machine Learning" and the advances in libraries like Nx and Bumblebee. https://twitter.com/jadengis/status/1705434212399263982 – John Dengis shared a cool ExDocs tip for downloading all the docs for dependencies in your mix project. https://hexdocs.pm/hex/Mix.Tasks.Hex.Docs.html – A reference to the Hex.Docs, containing the commands for downloading libraries for your project and accessing offline versions. https://twitter.com/germsvel/status/1707710473796190372 – German Velasco shared a video demonstrating the use of debug Heex annotations in Phoenix LiveView 0.20.x https://medium.com/coryodaniel/from-erverless-to-elixir-48752db4d7bc – Blog post by Cory O'Daniel on transitioning from Serverless to Elixir, outlining the architecture and cost savings achieved. https://www.youtube.com/watch?v=UGG2HMonQ1c – Twitch and YouTube personality, “Prime Reacts”, reacts to Cory O'Daniel's post and brings wider awareness to Elixir. https://twitter.com/chris_mccord/status/1707767732270186595 – Chris McCord showcased a working Llama 2 running on GPU with Elixir/Bumblee/Phoenix in LiveView. https://gist.github.com/chrismccord/1f1d4ee6a2d609952d99b1b0a5ffa657 – A link to a Gist showing the details of running Llama 2 on GPU with Elixir/Bumblee/Phoenix in LiveView. https://www.youtube.com/playlist?list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY – Announcement of the upcoming release of ElixirConf 2023 Videos with 17 videos now online. https://codebeamamerica.com/#cft – Announcement for the call for proposals for talks for CodeBEAM America 2024 on March 7-8. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Oct 10, 202312 min

171: Thinking Elixir News

News includes José Valim's blog post about Elixir's "strong arrows" that expands on his keynote, the release of LiveView 0.20.0 with its myriad of updates and improvements, and a sneak peek into the upcoming Livebook features with a new "Authentication" section. Additionally, Wojtek Mach shares a success story using beammachine.cloud for a quick Erlang check, Sundi Myint shares a tip for 404 pages in LiveView when URLs are tweaked, and Lionel Aimerie demonstrates how to integrate Chart.js into Elixir Phoenix for visual impact in LiveView. All these, along with newly released ElixirConf videos, the upcoming SpawnFest contest, and more! Show Notes online - http://podcast.thinkingelixir.com/171 Elixir Community News https://elixir-lang.org/blog/2023/09/20/strong-arrows-gradual-typing/ – Jose Valim's "Strong arrows - a new approach to gradual typing" post is published on the Elixir blog expanding on his keynote talk. https://twitter.com/theerlef/status/1706352873926430813 – Jose appears on the Software Unscripted podcast to talk about Gradual vs Static Typing. https://twitter.com/clarkware/status/1705263936491356325 – Mike Clark shares a CSS trick to display an empty state when rendering collections with a LiveView stream. https://twitter.com/chris_mccord/status/1705297511408091627 – The release of LiveView 0.20.0 is announced. https://github.com/phoenixframework/phoenix_live_view/blob/main/CHANGELOG.md – The detailed changelog of newly released LiveView 0.20.0. https://twitter.com/livebookdev/status/1705285257316983272 – A sneak peek into the upcoming Livebook features with a new sidebar section titled “Authentication”. https://github.com/livebook-dev/livebook/milestone/9 – Expectation of new features being a part of the upcoming v0.11 release of Livebook. https://twitter.com/wojtekmach/status/1705915941056323853 – Success story shared by Wojtek Mach using the site https://beammachine.cloud/ to quickly check some Erlang stuff. https://smartlogic.io/blog/phoenix-liveview-error-html-pages/ – Detailed blog post by Sundi Myint for showing 404 page when URL is tweaked to invalid ID in LiveView situations. https://medium.com/@lionel.aimerie/integrating-chart-js-into-elixir-phoenix-for-visual-impact-9a3991f0690f – Lionel Aimerie's blog post about integrating Chart.js into Elixir Phoenix for visual impact in LiveView. https://www.youtube.com/playlist?list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY – Release of 5 more ElixirConf videos. Link to the video playlist. https://spawnfest.org/ – Reminder for SpawnFest, a 48-hour online software development contest starting on 2023-10-28. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Oct 3, 202313 min

170: Thinking Elixir News

News this week includes the release of ElixirConf 2023 video playlist featuring keynote videos, a guide on Web Application Security Best Practices for BEAM languages from the EEF Security Working Group, the release of NextLS v0.12 with exciting new features, and a new library to integrate the JavaScript all-in-one toolkit, Bun with Phoenix. A new LangChain library makes it easy to integrate Elixir applications with an LLM like ChatGPT. Regarding the open source community, we discuss the major update in the Lodash JS project, the latest PostgreSQL 16 release, and a noteworthy article from ZigLang on bounties potentially damaging open source projects, and more! Show Notes online - http://podcast.thinkingelixir.com/170 Elixir Community News https://www.youtube.com/playlist?list=PLqj39LCvnOWbHaZldxw_g02RaTQ4vQ1eY – ElixirConf 2023 video playlist, currently only includes the keynote videos. https://twitter.com/bernheisel/status/1704019930515919092 – Chris McCord's keynote for ElixirConf 2023. https://erlef.github.io/security-wg/web_app_security_best_practices_beam/ – Guide on Web Application Security Best Practices for BEAM languages https://twitter.com/paraxialio/status/1703146204404535467 – Update on the same topic on Twitter. https://podcast.thinkingelixir.com/134 – Podcast episode discussing inside the Security Working Group https://podcast.thinkingelixir.com/93 – Preventing Service Abuse with Michael Lubas podcast episode https://github.com/elixir-tools/next-ls – NextLS v0.12 released with new features. https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-3/ – More information on the Elixir Tools update. https://twitter.com/crbelaus/status/1702703595236331668 – Phoenix's new library to integrate Bun, the JavaScript all-in-one toolkit. https://hex.pm/packages/elixir_bun – Link to the new Phoenix library on Hex. https://podcast.thinkingelixir.com/83 – More info about Zig with a previous guest Isaac Yonemoto. https://github.com/brainlid/langchain – LangChain for Elixir library was released. https://twitter.com/RudManusachi/status/1702093261530403223 – Brian Cardarella's LiveViewNative keynote showed the ExDoc documentation. https://hexdocs.pm/ex_doc/readme.html#tabsets – Explanation on the use of tabsets in ExDocs. https://twitter.com/danielcroe/status/1703127430523703432 – Lodash JS project declared "Issue bankruptcy" https://github.com/lodash/lodash – Lodash, a modern JavaScript utility library, went through some changes. https://ziglang.org/news/bounties-damage-open-source-projects/ – ZigLang blog stating that "Bounties Damage Open Source Projects" https://www.postgresql.org/about/news/postgresql-16-released-2715/ – PostgreSQL 16 released with performance improvements and new features. https://www.crunchydata.com/blog/active-active-postgres-16 – Understanding of "Active-Active" replication in PostgreSQL 16. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Sep 26, 202320 min

169: Thinking Elixir News

News covers the conclusion of ElixirConf US 2023 with key highlights being Chris McCord's keynote on improved Phoenix debugging tools, and Jose Valim's keynote introducing the "Strong Arrows" concept for handling dynamic types. Looking forward, the next ElixirConf will take place in Lisbon, EU in April 2024, followed by ElixirConf US 2024 at SeaWorld. Alex Koutmos points us towards a valuable resource on Erlang.org about efficiencies and performance myths, and a handy blog post walks you through customizing Phoenix generators, and more! Show Notes online - http://podcast.thinkingelixir.com/169 Elixir Community News https://twitter.com/TylerAYoung/status/1699415514936672440 – Chris McCord's opening keynote at ElixirConf US 2023 focused on improved Phoenix debugging tools. LiveViewNative, with almost all SwiftUI components and styling modifiers being implemented, is still being worked on for Android/Windows. https://twitter.com/bernheisel/status/1700179932150747514?s=20 – Jose Valim's closing keynote at ElixirConf dispelled some myths about coding in Elixir, explained set-theoretic types, introduced the concept of "Strong Arrows", and analyzed the implications of different approaches to handle dynamic types. The next venue for ElixirConf will be Lisbon, EU on April 18-19, 2024. ElixirConf US 2024 will be held at SeaWorld from August 27 - 30 2024. https://fly.io/phoenix-files/customizing-phoenix-generators/ – This blog post documents how to customize Phoenix Generators, a topic discussed in episode 167 with Victor Björklund. It serves as a walkthrough for customizing generators for established projects. https://www.erlang.org/doc/efficiency_guide/users_guide.html – A valuable resource for Elixir developers, this guide by Alex Koutmos provides insights into efficiencies of Lists, maps, binaries while dispelling some performance myths. https://twitter.com/akoutmos/status/1700915275317555627 – A reminder from Alex Koutmos about the 'Efficiency Guide' in Erlang.org docs. While the code samples are in Erlang, the guide applies similarly to BEAM code written in Elixir. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Sep 19, 202316 min

168: Thinking Elixir News

News includes a new "async" feature being added to LiveView, a new translation library called Kanta was announced, formatted logging, improved keyboard navigation in ExDocs, the Membrane framework released a pure Elixir H264 video plugin, and more! Show Notes online - http://podcast.thinkingelixir.com/168 Elixir Community News https://github.com/phoenixframework/phoenix_live_view/pull/2763 – New “async” features built-in to LiveView https://elixirstatus.com/p/ElYf7-introducing-kanta---the-ultimate-open-source-solution-to-translations-in-elixir--phoenix-web-apps – New translation library called Kanta https://github.com/curiosum-dev/kanta – User-friendly translations manager for Elixir/Phoenix projects. https://blog.appsignal.com/2023/07/18/observe-your-phoenix-app-with-structured-logging.html – Structured logging post by Sophie DeBenedetto https://github.com/akasprzok/logfmt_ex – Elixir library called logfmt_ex https://mas.to/@angelikatyborska/110973663083838384 – Improved keyboard navigation in ExDocs v0.30.6 https://twitter.com/ElixirMembrane/status/1697186141030490432 – Membrane project adds a pure Elixir H264 parser. https://membrane.stream/learn/h264 – An article that covers the “H264 - what, why and how” https://github.com/membraneframework/membrane_h264_plugin – The Membrane framework can now use it to stream in H264. https://github.com/wojtekmach/req/releases/tag/v0.4.0 – Req library v0.4.0 was released. Includes some breaking changes. https://twitter.com/josevalim/status/1698675318238707820 – ElixirConf is starting and keynotes will hopefully be released soon after. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Sep 12, 202311 min

167: Customizing mix phx.new?

We've all run "mix phx.new", but have you ever thought to customize what that does? We talk with Victor Björklund who explains how we can create customized Phoenix project generators and why we might want to. We also discuss customizing the phoenix generators for our already generated projects. We explore the idea of supporting 3rd-party maintained generators and what that might look like. A fun discussion sure to “generate” ideas for your project! Show Notes online - http://podcast.thinkingelixir.com/167 Elixir Community News https://github.com/elixir-lang/elixir/releases/tag/v1.15.5 – Elixir 1.15.5 bug fix release https://pdx.social/@kenichi/110934002380304132 – Livebook code cells getting Vim and Emacs support https://pragprog.com/titles/tvmelixir/adopting-elixir/ – Good quote from the “Adopting Elixir” book (published 5 years ago) https://twitter.com/paraxialio/status/1694832429087728005 https://elixirforum.com/t/elixir-saves-pinterest-2-million-year-other-marketing-examples/57909/14 – Elixir Saves Pinterest $2 million/year https://twitter.com/davydog187/status/1694768741467165147 – Tweet by Dave Lucia about what people can accomplish with Elixir and Phoenix in a short amount of time. https://twitter.com/geolessel/status/1695467313477173313 – Geoffrey Lessel shared observation that the timing page used by the World Cube Association is a Phoenix LiveView page. https://github.com/thewca/wca-live – Platform for running WCA competitions and sharing live results with the world created by Jonatan Kłosko https://twitter.com/AshFramework/status/1696257451857707295 – Ash Framework experiments with adding a new “atomics” feature. https://github.com/ash-project/ash/blob/main/documentation/topics/atomics.md – Atomics documentation and design https://twitter.com/ac_alejos/status/1695562511787983164 – Elixir gets a new Reinforcement Learning library named "Rein" for Nx. https://github.com/DockYard/rein – Rein project on Github https://fly.io/phoenix-files/star-cross-live-view-processes/ – Star-Crossed LiveView Processes about linking processes to solve UI design Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://victorbjorklund.com/guide-to-custom-phoenix-phx-new-generator-mix-task https://jawdropping.io/ https://github.com/phoenixframework/phoenix/tree/main/installer https://hex.pm/packages/oban Guest Information https://twitter.com/BjorklundVictor – on Twitter https://github.com/victorbjorklund/ – on Github https://genserver.social/victorbjorklund – on Fediverse https://victorbjorklund.com/ – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Sep 5, 202352 min

166: Filtering, ordering and pagination via Flop

Most of us have created our own filtering, sorting and pagination code before in one project after the other. Mathias Polligkeit got tired of doing that too and created the flop library to wrap it all into a portable and reusable solution. We talk with Mathias to learn what it can do and are pleased to learn it's surpassed our own solutions. He also created a flop_phoenix package with heex components to help build filter forms and tables. A fun look into an interesting library! Show Notes online - http://podcast.thinkingelixir.com/166 Elixir Community News https://bsky.app/profile/josevalim.bsky.social/post/3k56qd2q2xf2g – A tease about noticing something new. https://hexdocs.pm/elixir/main/GenServer.html – Elixir docs getting diagram support? 1.16.0-dev https://github.com/erlang/otp/issues/7292#issuecomment-1688181562 – Followup on that OTP 26 “overrun stack and heap” bug https://github.com/phoenixframework/dns_cluster – The dns_cluster project was brought under the phoenixframework Github org https://fly.io/phoenix-files/beam-clustering-made-easy/ – Blog post about new Phoenix library dns_cluster https://github.com/elixir-tools/next-ls/releases/tag/v0.10.0 – Next LS v0.10.0 Released https://open-vsx.org/extension/elixir-tools/elixir-tools – Next LS extension is listed on VSCode's open extension repository https://twitter.com/ashframework/status/1692767604622922152 – The Ash Framework announced the new release of a double-entry accounting project https://github.com/ash-project/ash_double_entry https://hexdocs.pm/ash_double_entry/get-started-with-double-entry.html https://thestackcanary.com/understanding-the-elixir-machine-learning-ecosystem/ – Post that connects many ML libraries to their Python counterparts. https://twitter.com/akoutmos/status/1693669295585161394 – Elixir tip on using Elixir as a shell scripting solution https://twitter.com/akoutmos/status/1693322879230672905 – Version 0.5.0 of DenoEx was released. https://github.com/akoutmos/deno_ex https://deno.com/ – Deno project is a "secure by default" Rust-based alternate JavaScript runtime https://twitter.com/PJUllrich/status/1693232219198726620 – Tip on how we can use tags to more cleanly customize tests. https://www.peterullrich.com/exunit-context-tags https://dagger.io/ – Dagger.io is a programmable CI/CD engine that runs your pipelines in containers. https://hex.pm/packages/dagger – Dagger.io now supports Elixir Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://github.com/woylie/flop https://github.com/woylie/flop_phoenix https://scoville.jp/ https://en.wikipedia.org/wiki/Scoville_scale https://elixirforum.com/t/flop-filtering-sorting-and-pagination-for-ecto/51750/25 https://hexdocs.pm/flop/Flop.Schema.html https://hexdocs.pm/flop/Flop.Filter.html#t:op/0 https://relay.dev/graphql/connections.htm – Specification used in Flop library for cursor pagination https://hexdocs.pm/flop/Flop.Relay.html – Format the result sets in an Absinthe structure https://hexdocs.pm/flop/Flop.html#with_named_bindings/4 https://slack.engineering/evolving-api-pagination-at-slack/ – Recommended resource on pagination https://hex.pm/packages/quarto – Other library that helps with filtering or pagination https://github.com/drewolson/scrivener – Other library that helps with filtering or pagination https://elixirstream.dev/tips/cfc62b74-3ad9-427e-b9d2-8e8c768f8c57 https://hexdocs.pm/ecto_psql_extras/readme.html#records_rank https://github.com/woylie/flop_phoenix#liveview-streams – flop_phoenix with streams Guest Information https://github.com/woylie/ – on Github https://www.mathiaspolligkeit.com – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Aug 29, 202350 min

165: Thinking Elixir News

In the news, we cover a new Livebook Desktop feature tease, a new daily bite-sized Elixir newsletter, Supabase's new Supavisor architecture, and Livebook joins the online Spawnfest competition as a sponsor. We also share a PSA about Alpine Docker image troubles with OTP 26 and an Ecto schema introspection tip. Elixir's errors get more helpful when modules aren't found, then a new Hex search tool was created and explained, and much more! Show Notes online - http://podcast.thinkingelixir.com/165 Elixir Community News https://twitter.com/wojtekmach/status/1688596696123555855 – Wojtek Mach teased a new "Check for Updates" Livebook Desktop feature with a screenshot. https://twitter.com/philipbrown/status/1688885480283156481 – A new 5-minute daily Elixir newsletter is being launched by Philip Brown and Richard Taylor. https://twitter.com/kiwicopple/status/1690032065641684992 – Supabase shared news of their new Supavisor architecture. https://github.com/supabase/supavisor – Github project for the Elixir supavisor Postgres connection pooler https://supabase.com/blog/supavisor-1-million – Blog post - Supavisor - Scaling Postgres to 1 Million Connections https://twitter.com/spawnfest/status/1690031606159802368 – Livebook is joining the online Spawnfest competition as a sponsor. https://twitter.com/akoutmos/status/1689843816000307200 – Alex Koutmos shared a PSA for issues running Elixir 1.15+OTP 26 in an Alpine 3.17.4 container. https://github.com/erlang/otp/issues/7292 – OTP issue tracking the problem for OTP 26 https://twitter.com/akoutmos/status/1689683030162513948 – Alex Koutmos shared an Ecto Tip about schema introspection. https://twitter.com/YOOOODAAAA/status/1689701911908249601 – Steve Bussey shared an Ecto tip for using test code to introspect schemas and check for missing indexes https://www.elixir-tools.dev/news/the-elixir-tools-update-vol-2/ – NextLS will use burrito to distribute binaries instead of Mix.install https://twitter.com/josevalim/status/1689951699832639489 – Jose Valim drew attention to the Honey Potion project letting you write Elixir code that is compiled down to eBPF https://en.wikipedia.org/wiki/EBPF – Background on eBPF https://www.youtube.com/watch?v=qgT_gMWJuvY – HoneyPotion project usage demoed in a video https://github.com/lac-dcc/honey-potion – Honey Potion project on Github https://twitter.com/davydog187/status/1691082535143440385 – Elixir is gaining some more helpful error messages when referencing modules https://github.com/elixir-lang/elixir/pull/12839 – Merged PR to Improve UndefinedFunctionError for mis-cased module https://github.com/elixir-lang/elixir/pull/12859 – Merged PR to Improve UndefinedFunctionError for unqualified module https://fly.io/phoenix-files/let-s-search-all-of-elixir-s-packages/ – Jason Stiebs wrote a blog post called “Let's search all of Elixir's Packages!” https://hex-search.fly.dev/ – Cool Hex search tool created by Jason Stiebs https://www.theregister.com/2023/08/11/hashicorp_bsl_licence/ – Hashicorp goes “Business Source License” Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Aug 22, 202313 min

164: Thinking Elixir News

News roundup includes the ElixirConf schedule being published, Bumblebee gets streaming text support, Oban Web is getting a big update, Elixir for Cynical Curmudgeons blog post brings broader positive attention, and Elixir Nx being successfully used to follow along with high profile AI examples. Show Notes online - http://podcast.thinkingelixir.com/164 Elixir Community News https://2023.elixirconf.com/schedule – ElixirConf US schedule is up. https://github.com/elixir-nx/bumblebee/pull/232 – Merged PR on Bumblebee by Jonatan Kłosko adds support for streaming text generation results. https://twitter.com/sean_moriarity/status/1687123146787233792 – Sean Moriarity drew attention to Jonatan Kłosko's recent PR work on Bumblebee. https://twitter.com/sorentwo/status/1687215720067637249 – Oban Web gets upgraded metrics https://podcast.thinkingelixir.com/163 – Our recent interview with Parker Selbert about Oban https://wiki.alopex.li/ElixirForCynicalCurmudgeons – Hacker News had an Elixir-positive article up for a while called “Elixir For Cynical Curmudgeons” https://twitter.com/royalicing/status/1687271985548820480 – Library author tip by Patrick Smith to create a test that checks the mix.exs version with the README https://twitter.com/nickgnd/status/1686827833325133825 – People are using Elixir Nx to follow along a YouTube video that builds a GPT from scratch. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Aug 15, 20237 min

163: Job Queues using Oban with Parker Selbert

If you need background jobs or scheduled tasks in your Elixir project, you've probably already heard of Oban. We talk with Parker Selbert, the creator and maintainer of Oban, to learn more about the project and the additional paid features in Oban Web and Oban Pro. Parker explains the origins, why it's architected the way it is, and how the paid extensions work. We also get some insights into companies using Oban and the kind of scale people reach. Spoiler--100's of millions of jobs is a thing. Show Notes online - http://podcast.thinkingelixir.com/163 Elixir Community News https://elixirforum.com/t/nerves-supports-erlang-otp-26-and-elixir-1-15-now/57344 – Nerves updated to support OTP 26 and Elixir 1.15 https://twitter.com/germsvel/status/1686350499967123456 – Phoenix LiveView 0.19 had some enhancements that German Valesco highlights in a video https://twitter.com/DNAutics/status/1684418487987441665 – Zigler 0.10.1 was released https://github.com/E-xyza/zigler/ https://hexdocs.pm/zigler/beam.html – Zigler's BEAM integration docs https://twitter.com/wojtekmach/status/1685390898329178114 – Private modules in Elixir? Using @moduledoc false https://elixirforum.com/t/proposal-private-modules-general-discussion/19374 – Previous discussion on private modules https://dev.to/savonarola/testing-timer-based-logic-in-elixir-with-klotho-library-2c90 – Klotho library may help with timer based testing logic https://twitter.com/spawnfest/status/1683788630156877825 – SpawnFest will be Oct 28 - 29 https://spawnfest.org/ – SpawnFest is an annual, 48 hour, online software development contest in which teams from around the world get exactly one weekend to create the best BEAM-based app they can. https://github.com/meanderingstream/dl_foundations_in_elixir/blob/main/ElixirFashionML_Challenge/fashion_mnist_challenge.livemd – There's an ML challenge https://elixirforum.com/t/elixirfashionmlchallenge-general-discussion-questions/57341 – ML challenge discussion thread Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://getoban.pro/ https://github.com/sorentwo/oban – OSS Oban project https://podcast.thinkingelixir.com/29 – Previous interview with Parker from January 2021 https://dscout.com/ https://getoban.pro/oban – Oban Web demo https://github.com/sidekiq/sidekiq https://github.com/sorentwo/kiq https://github.com/dashbitco/bytepack_archive Guest Information https://twitter.com/sorentwo – on Twitter https://github.com/sorentwo – on Github https://sorentwo.com/ – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Aug 8, 202355 min

162: Elixir to WebAssembly with Orb

WebAssembly is an interesting technology that feels completely separate from Elixir. Patrick Smith created an Elixir project called Orb, an Elixir DSL for WebAssembly. He also shows how a WebAssembly component can play a meaningful role in a LiveView page! We talk more about what WebAssembly is, the promise for the technology, how it can improve UX, and where Patrick sees real practical applications for Elixir developers. Show Notes online - http://podcast.thinkingelixir.com/162 Elixir Community News https://github.com/phoenixframework/phoenix_live_view/blob/main/CHANGELOG.md – Phoenix LiveView released v0.19.5 https://twitter.com/josevalim/status/1681719691503386632 – Will the Elixir type system make it harder for beginners? https://twitter.com/wojtekmach/status/1683468212975939585 – New Req feature that makes it easy to stream a response. https://andrealeopardi.com/posts/breakdown-of-http-clients-in-elixir/ – Andrea Leopardi wrote a helpful post about HTTP clients in Elixir. https://www.thestackcanary.com/from-python-pytorch-to-elixir-nx/ – An article titled “From Python to Elixir Machine Learning” has been getting some attention recently about moving from Python PyTorch to Elixir-Nx. https://twitter.com/sean_moriarity/status/1681422911763107841 – Sean Moriarity's book "Machine Learning in Elixir" is now in beta https://podcast.thinkingelixir.com/154 – Previous interview with Sean Moriarity - Serving Up AI with Sean Moriarity https://pragprog.com/titles/smelixir/machine-learning-in-elixir/ – Machine Learning in Elixir book https://twitter.com/ElixirMembrane/status/1679129777490280449 – The Membrane Framework announced they are planning a conference in October. https://rtcon.live/ – Membrane Framework conference will be October 12-14 in Krakow Poland. https://twitter.com/IScottMing/status/1682307757695979521 – Lexical LSP now supports Elixir 1.15 https://github.com/lexical-lsp/lexical/issues/244 – Github issue for tracking Lexical LSP and OTP 26 support https://paraxial.io/blog/still-safe – Michael Lubas wrote a new security blog post about Elixir in response to a research paper. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://twitter.com/royalicing/status/1671689512685301762 – Orb, a friendly DSL for WebAssembly https://icing.space/2023/introducing-orb https://hexdocs.pm/orb/Orb.html https://github.com/RoyalIcing/Orb – Orb Github project https://calculated.world/ https://icing.space/2023/how-is-a-webassembly-module-like-a-ruby-class https://dockyard.com/blog/2022/09/01/dockyard-r-d-firefly-optimizes-your-elixir-compilation https://getfirefly.org/ – Firefly project https://github.com/GetFirefly/firefly – Firefly Github project https://www.figma.com/blog/webassembly-cut-figmas-load-time-by-3x/ https://www.figma.com/ https://github.com/RoyalIcing/OrbWasmtime https://hex.pm/packages/rustler https://github.com/viniarck/wasmtime-ex https://github.com/tessi/wasmex https://github.com/christhekeele/matcha https://components.guide/color https://github.com/grych/drab Guest Information https://twitter.com/royalicing – on Twitter https://github.com/royalicing/ – on Github https://hachyderm.io/@royalicing – on Fediverse https://icing.space/ – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Aug 1, 202350 min

161: Lexical LS and Elixir Dev UX

Language Servers underpin the language specific support we rely on in modern code editors. Lately, there have been new efforts in this area in the Elixir community. We talk with Steve Cohen about his project Lexical LS to learn about his new Elixir Language Server, how long he's been at it, and what it can do today. We learn about some of the technical challenges when creating a tool like this, and why there's still room for new projects in this area. Steve explains how Lexical LS is architected and that it is a goal to be easy to contribute to and work on the Lexical project itself. Time to give it a try! Show Notes online - http://podcast.thinkingelixir.com/161 Elixir Community News https://github.com/elixir-lang/elixir/releases/tag/v1.15.4 – Elixir v1.15.3 and v1.15.4 were released. v1.15.4 includes fixes for running on Erlang/OTP 26. https://github.com/elixir-lang/elixir/releases/tag/v1.15.3 – Elixir v1.15.3 release notes https://gleam.run/news/v0.30-local-dependencies-and-enhanced-externals/ – Gleam v0.30 was released https://news.livebook.dev/whats-new-in-livebook-0.10---introducing-multi-session-livebook-apps-3Dbpss – The Livebook v0.10 was released https://gitlab.com/MachinesAreUs/archeometer – Archeometer analyzes your project and now supports a --format livemd https://twitter.com/MachinesAreUs/status/1676127531840204800 – Archeometer Twitter share with Livebook demo https://gitlab.com/MachinesAreUs/archeometer/-/merge_requests/205 – MR for the new feature https://twitter.com/wojtekmach/status/1679919717648138241 – Learned about "repo_transact" as an alternative to Ecto.Multi https://tomkonidas.com/repo-transact/ – Blog post about repo_transact with the code https://twitter.com/germsvel/status/1678721797561131012 – German Valesco highlighted the new DateTime comparison functions added in Elixir 1.15. https://github.com/phoenixframework/dns_cluster – DNS Cluster - Simple DNS clustering for distributed Elixir nodes https://twitter.com/DNAutics/status/1679902629000880128 – Apical 0.2.0 released - an OpenAPI schema builder https://0x7f.dev/post/ntp-implementation-in-elixir – Post about implementing a Network Time Protocol in Elixir. https://erikarow.land/articles/mix-completions – Post about implementing shell completions for mix tasks https://www.youtube.com/playlist?list=PLKBMoE8mCkXijPYoLCKtWeHa-q69EYwDf – Youtube playlist for published GigCityElixir conference talks Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://github.com/lexical-lsp/lexical – Lexical LS Github project https://github.com/lexical-lsp/vscode-lexical – Lexical VS Code project https://github.com/lexical-lsp/vscode-lexical#known-issues – Currently need to using Erlang 25.2 https://marketplace.visualstudio.com/items?itemName=lexical-lsp.lexical – VS Marketplace Link for Lexical LS extension https://venturebeat.com/dev/pinterest-elixir/ https://discord.com/invite/elixir – Join the Elixir Discord https://github.com/elixir-lsp/elixir_sense https://en.wikipedia.org/wiki/Comparison_of_Unicode_encodings Guest Information https://twitter.com/icecreamcohen – on Twitter https://github.com/scohen/ – on Github Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jul 25, 202357 min

160: LiveView Async Pattern and Admin Tools

After experience with a LiveView “anti-pattern”, Andy Glassman developed an “Async Pattern” for loading data into a LiveView. Andy shares the problem this helps solve and we discuss when it's a good fit. We also talk with Andy about the current state of “admin tools” in Elixir and he shares his feelings on the importance of building admin tools from the start in our projects. Show Notes online - http://podcast.thinkingelixir.com/160 Elixir Community News https://twitter.com/josevalim/status/1678411790361718786 – A new Livebook version should have been released with a new “Presentation View” feature https://2023.elixirconf.com/presenters#speakers – List of speakers for ElixirConf US 2023 has been released along with their talk topics. https://paraxial.io/blog/app-audit – Inspecting Elixir Dependencies at Runtime for Security https://twitter.com/josevalim/status/1678536270664876033 – José Valim completed his live-coding work to load database results directly into Explorer dataframes with ADBC https://github.com/elixir-explorer/explorer/pull/648 – ADBC work resulted in a PR https://twitter.com/mitchhanberg/status/1676611642786820096 – Mitch Hanberg announced the first public release of Next LS and an elixir-tools update. https://www.elixir-tools.dev/news/introducing-next-ls-and-an-elixir-tools-update/ – To get started with Next LS, either install the “Elixir Tools” NeoVim extension or the “Elixir Tools” VSCode extension. https://twitter.com/joao_lubien/status/1676983495476891648 – Lubien wrote a mix task to turn any Phoenix Site into a static site. https://github.com/lubien/single-file-phoenix-static/blob/main/lib/mix/tasks/generate_static.ex – Lubien's example mix task https://tylerayoung.com/2023/07/08/hiring-elixir-devs/ – Tyler Young wrote a blog post with tips for companies wanting to hire Elixir devs. https://twitter.com/TylerAYoung/status/1677635466990874626 – Tyler's Twitter thread https://johnelmlabs.com/posts/magic-link-auth/ – John Curran wrote up a nice guide for how to build the “magic link” feature into mix gen.auth generated code https://link.springer.com/article/10.1007/s10664-023-10343-6 – Paper about Elixir was submitted to the Empirical Software Engineering journal titled “Understanding code smells in Elixir functional language” https://twitter.com/peregrine/status/1676984142251081728 – Jason Stiebs wrote a post about how “Elixir Docs are Built Different” https://fly.io/phoenix-files/elixir-docs-are-built-different/ – Article that guides people on using the Elixir docs. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://blog.andyglassman.com/2023/06/phoenix-liveview-async-assign-pattern.html – Phoenix Live View - Async Assigns https://blog.andyglassman.com/2022/08/write-admin-tools-from-day-one.html – Write Admin Tools From Day One https://sway.dm/info/ https://www.empex.co/new-york https://github.com/aesmail/kaffy https://www.youtube.com/watch?v=3c9kMmxeSA0 – Andy Glassman - Write Admin Tools from Day One (EMPEX) https://github.com/pragdave/earmark https://activeadmin.info/ https://github.com/ash-project/ash_admin https://www.postman.com/collection/ Guest Information https://twitter.com/a_glassman – on Twitter https://github.com/aglassman/ – on Github https://blog.andyglassman.com/ – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jul 18, 202354 min

159: Langchain with Elixir and Safe Ecto Migrations

Mark and David share what's caught their interests and focus. Langchain is a popular framework in JS and Python communities for building services that knit together different services enabling people to quickly build impressive demos. Mark talks about the parts of Langchain that interest him and how he's been building ways for Elixir apps to play in that space too. We also catch up with David’s job change, moving, and talk about his ideas around using Oban for managing data migrations in a new way. Show Notes online - http://podcast.thinkingelixir.com/159 Elixir Community News https://twitter.com/josevalim/status/1674817111863054337 – Elixir v1.15.2 and Erlang/OTP 26.0.2 are both out. All of the known bugs have been ironed out. This release also contains fixes needed by ElixirLS. ElixirLS release 0.15.1 leverages these. https://github.com/elixir-lang/elixir/releases/tag/v1.15.1 https://github.com/elixir-lang/elixir/releases/tag/v1.15.2 https://twitter.com/josevalim/status/1675900744954785796 – Elixir's type system has moved out of the “research” phase into the “development” phase. https://elixir-lang.org/blog/2023/06/22/type-system-updates-research-dev/ https://twitter.com/ElixirConf/status/1675995012453093376 – José will be talking more about the Elixir work around types in his ElixirConf US 2023 keynote talk. https://twitter.com/josevalim/status/1674893183640125442 – José shared where he wants to turn more of his focus in Elixir 1.16. It's all around “docs”. https://github.com/woodward/integrator – A new Nx focused Hex package by Greg Woodward called “Integrator”. https://github.com/woodward/integrator/tree/main/guides – Includes Livebook guides with samples https://twitter.com/whatyouhide/status/1675887336339406850 – Andrea Leopardi released v2.0.0 of Corsica, an Elixir library for handling CORS requests. https://hex.pm/packages/corsica https://twitter.com/voltonez/status/1676125858581422080 – Bram Verburg pointed out AWS RDS database connection failure issue after upgrading to Erlang/OTP 26 is probably due to certificate validation. https://elixirforum.com/t/aws-rds-castore-certificate-validation-for-aws-rds-dbs/55111 https://github.com/voltone/aws_rds_castore – The Hex package aws_rds_castore to help manage AWS CA certificates https://hex.pm/packages/image – Image 0.35.0 was released. Updates primarily focused on image contrast. https://twitter.com/DNAutics/status/1676059564188286976 – ZigDocs was released https://hexdocs.pm/zig_doc/Zig.Doc.html – Integrates Zig documentation into Elixir docs. https://getoban.pro/releases#1.0.0 – Oban Pro v1.0 is out without any new features or bugfixes, purely a renamed engine and deprecation cleanup. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://blog.langchain.dev/announcing-our-10m-seed-round-led-by-benchmark/ – Langchain announced $10m seed round https://js.langchain.com/docs/ – Langchain JS docs and introduction to the project https://python.langchain.com/docs/get_started/introduction.html – Python version of the docs Be agentic - allow a language model to interact with its environment https://github.com/orthagonal/langchainex – Existing Elixir library called langchainex. https://twitter.com/josevalim/status/1668726716947222528 – José talked about OpenAI's new function support https://openai.com/blog/function-calling-and-other-api-updates – OpenAI blog announcing official function calling support https://dscout.com/ David is thinking about Oban and data migrations https://fly.io/phoenix-files/safe-ecto-migrations/ – David wrote a guide on how to run Safe Ecto Migrations for production systems https://github.com/fly-apps/safe-ecto-migrations – Guide to Safe Ecto Migrations on Github Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jul 11, 202349 min

158: From Ruby to Elixir with Steve Bussey

A challenge for many people learning Elixir is the change in the mental model. Coming from OOP to Functional changes how we reason about our applications and the old way doesn't always map over cleanly. Also, Elixir is capable of doing a lot more than other languages and frameworks can and this means learning how to build a “normal” application may change. We talk with Steve Bussey about his new book “From Ruby to Elixir” that aims to help people bridge that gap. While the title says “Ruby”, we discuss how many of the concepts apply to people coming from most OOP languages. We talk about different libraries to recommend to people coming from a traditional Rails stack and more! Show Notes online - http://podcast.thinkingelixir.com/158 Elixir Community News https://github.com/livebook-dev/livebook/security/advisories/GHSA-564w-97r7-c6p9 – Livebook security advisory for Windows installs https://twitter.com/livebookdev/status/1671576191461990407 – Livebook security notice on Twitter https://www.twitch.tv/josevalim/videos?filter=highlights&sort=time – José Valim shared where we can find past Twitch videos https://elixirforum.com/t/elixir-v1-15-0-released/56584/6 – Workaround for Elixir 1.15.0 with issues compiling the Erlang dependency ssl_verify_fun. https://twitter.com/ac_alejos/status/1672351346278944769 – New Decision Tree library called Mockingjay takes advantage of Nx https://github.com/acalejos/mockingjay – Mockingjay Decision Tree library https://twitter.com/zachsdaniel1/status/1673278949667885057 – The EEF (Erlang Ecosystem Foundation) approved the creation of a new working group. https://erlef.org/wg/libs-and-frameworks – the Libraries and Frameworks working group page https://twitter.com/ZachSDaniel1/status/1672248650502660098 – Ash Framework released 2.11.0-rc.0 is out https://github.com/CargoSense/briefly – Noticed "briefly" is a library to help manage temporary files https://twitter.com/DNAutics/status/1672828839574089728 – Isaac Yonemoto released 0.1 of his OpenAPI router library Apical https://hexdocs.pm/apical – Apical github project https://www.elixir-tools.dev/next-ls/ – Mitch Hanberg sharing some early progress with his Next-LS project. https://twitter.com/royalicing/status/1671689512685301762 – Patrick Smith shared a sneak peak of a new library called Orb for compiling Elixir code to WebAssembly https://github.com/ComponentsGuide/components_guide/tree/master/lib/components_guide/wasm – The OpenSource project where Orb code will be extracted from. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://twitter.com/YOOOODAAAA/status/1663988571047354371 – Twitter post announcing Beta version of the book. https://pragprog.com/titles/sbelixir/from-ruby-to-elixir/ https://www.supered.io/ https://pragprog.com/titles/sbsockets/real-time-phoenix/ – Previous book "Real-Time Phoenix” published in March 2020. https://www.supered.io https://github.com/elixir-tesla/tesla https://github.com/wojtekmach/req Guest Information https://twitter.com/YOOOODAAAA – on Twitter https://github.com/sb8244/ – on Github http://www.stephenbussey.com/ – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jul 4, 202357 min

157: Adding Dialyzer Late in the Game

Dialyzer is something that eventually everyone hears about in the Elixir community. It's a static code analysis tool that has both fans and detractors, and with good reasons on both sides! We talk with Noah Betzen about how he brought Dialyzer to several mature Elixir projects. He wanted the benefits of finding and fixing bugs and to prevent new problems from being added. He shared tools, strategies and other resources for how to get started without stopping everything to fix all the existing problems. If you've ever tried to add Dialyzer to a project and aborted, then this discussion may give you the courage and the tools to try again! Show Notes online - http://podcast.thinkingelixir.com/157 Elixir Community News https://elixir-lang.org/blog/2023/06/19/elixir-v1-15-0-released/ – Elixir 1.15 release blog post https://github.com/elixir-lang/elixir/releases/tag/v1.15.0 – full release notes https://twitter.com/josevalim/status/1670879654134050828 – José Valim's tweet about reported compilation time improvements https://elixirforum.com/t/elixir-v1-15-0-released/56584 – ElixirForum.com post about the release with comments, feedback, and workarounds for issues. https://github.com/phoenixframework/phoenix/blob/v1.7.4/CHANGELOG.md – Phoenix 1.7.4 (then up to 1.7.6) was released with a small, but handy fix around deploying with active websockets https://survey.stackoverflow.co/2023/ – StackOverflow Developer Survey results https://survey.stackoverflow.co/2023/#technology-most-popular-technologies – Most popular technologies https://survey.stackoverflow.co/2023/#section-top-paying-technologies-top-paying-technologies – Top paying technologies https://survey.stackoverflow.co/2023/#section-admired-and-desired-web-frameworks-and-technologies – Phoenix is the most admired web framework and technology https://twitter.com/bcardarella/status/1669423297518264320 – LiveView Native got animated charts working in SwiftCharts https://twitter.com/moomerman/status/1670021284900614144 – Apache ECharts with LiveView https://huggingface.co/blog/livebook-app-deployment – José Valim's has a Livebook blog post on the Hugging Face blog. https://twitter.com/thibaut_barrere/status/1670789241436028931 – Using IEx helpers in Livebook cells - import IEx.Helpers https://twitter.com/germsvel/status/1669669754305404928 – German Velasco has created a number of short tip videos that now have a home on ElixirStreams.com https://twitter.com/elixirphoenix/status/1670856560480747526 – Adding Bandit to a Phoenix 1.7 project fits in a single tweet https://erlef.org/events – The EEF (Erlang Ecosystem Foundation) has an "events" page.1 Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://fly.io/phoenix-files/adding-dialyzer-without-the-pain/ – Blog post with more resources and code https://www.erlang.org/doc/man/dialyzer.html – Dialyzer docs https://github.com/jeremyjh/dialyxir – Dialyxir project https://github.com/jeremyjh/dialyxir/pull/493 – PR to add new format for ignore_file_strict https://elixirforum.com/t/blog-post-adding-dialyzer-without-the-pain/56461 – Feedback to blog post that we discuss https://www.youtube.com/watch?v=4PZE40h13wM – Slaying the Type Hydra, or How We Went from 12,000 Dialyzer Errors to None | Jesper Eskilson - Senior Engineer at Klarna https://github.com/bamorim/typed_ecto_schema https://podcast.thinkingelixir.com/72 – Interview about type_check https://github.com/Qqwy/elixir-type_check https://github.com/lexical-lsp/lexical – Lexical Language Server https://github.com/elixir-tools/next-ls – Next-LS Language Server https://smartlogic.io/podcast/elixir-wizards/s10-e12-jose-guillaume-giuseppe-types-elixir/ – José Valim, Guillaume Duboc, and Giuseppe Castagna discussing static types in Elixir Guest Information https://twitter.com/Nezteb – on Twitter https://github.com/Nezteb/ – on Github https://genserver.social/Nezteb/ – on Fediverse https://nezteb.net – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jun 27, 202353 min

156: React to LiveView for Performance

When their React app stuttered and slowed with the hundreds of items they needed to display, Tim Gremore tried it out as a LiveView rendered page and found they could scale to thousands without issue. The LiveView version was so responsive the users thought it must not be working because there was no delay to register the changes! Tim shares their journey migrating a service from React to LiveView to solve their issue. He shares tips, what they learned in the process and more! Show Notes online - http://podcast.thinkingelixir.com/156 Elixir Community News https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.2 – Elixir 1.15.0-rc.2 https://elixirforum.com/t/elixir-v1-15-0-rc-2-released/56450 – Release announcement on ElixirForum https://danschultzer.com/posts/prefixed-base62-uuidv7-object-ids-with-ecto – Automated UUIDs with human-friendly prefixes - blog post by Dan Schultzer https://twitter.com/sean_moriarity/status/1668371536481337346 – Decision trees get the ability to be compiled to Nx/EXLA https://twitter.com/sean_moriarity/status/1668053540302999552 – Sean Moriarity teased an image showing EXLA_TARGET=metal https://github.com/phoenixframework/phoenix_live_view/blob/v0.19.2/CHANGELOG.md#L1 – Phoenix LiveView 0.19.1 and 0.19.2 - minor bug fix releases https://hauleth.dev/post/beam-process-memory-usage/ – Blog post from Hauleth, “How much memory is needed to run 1M Erlang processes?” https://paraxial.io/blog/exploit-guard – ExploitGuard blog post is a security focused tool https://github.com/paraxialio/exploit_guard – Github project for ExploitGuard - aims to help prevent RCE (Remote Code Execution) https://github.com/ferd/recon/ – Recon library https://www.twitch.tv/josevalim – José Valim's Twitch account https://smartlogic.io/podcast/elixir-wizards/s10-e12-jose-guillaume-giuseppe-types-elixir/ – ElixirWizards podcast interview with José Valim, Guillaume Duboc, and Giuseppe Castagna about Elixir and a type system https://twitter.com/bcardarella/status/1666995102542118913 – LiveView Native gets SwiftCharts support Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://twitter.com/dpaola2/status/1654591023341772803 – The tweet that inspired the discussion https://usebirdseye.com – Birdseye - the app being discussed https://expo.dev/ – Cross-platform mobile framework https://usebirdseye.com/ – The task management service being discussed https://github.com/chrismccord/todo_trek – A trello-like todo board which shows off different dynamic form strategies with Phoenix LiveView. Guest Information https://twitter.com/timgremore – on Twitter https://github.com/timgremore/ – on Github https://headway.io/ – Headway company https://usebirdseye.com – Birdseye task management app Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jun 20, 202345 min

155: Thinking Elixir News

OpenSource contributions recognition for Jonatan Kłosko, more from Sean Moriarity on AI with Elixir, the latest update on LLaMa running locally, Stephen Bussey is helping people move from OO languages like Ruby to Elixir with a new book, unraveling recent Arrow related contributions, a security fix to apply and conferences requesting speakers! Show Notes online - http://podcast.thinkingelixir.com/155 Elixir Community News https://twitter.com/michalslaski/status/1664237603728551936 – Jonatan Kłosko won an award for opensource contributions to Livebook. https://podcast.thinkingelixir.com/151 – Previous interview with Jonatan Kłosko about Livebook https://dockyard.com/blog/2023/05/16/open-source-elixir-alternatives-to-chatgpt – Sean Moriarity wrote a post titled “Open-Source Elixir Alternatives to ChatGPT” https://twitter.com/natfriedman/status/1665402680376987648 – LLaMa update running on local hardware https://twitter.com/yoooodaaaa/status/1663988571047354371 – Stephen Bussey's new book in beta called "From Ruby to Elixir" https://pragprog.com/titles/sbelixir/from-ruby-to-elixir/ – PragProg book page where it can be purchased as early access. https://twitter.com/josevalim/status/1664743585873264641 – José Valim calling out contributions by Qqwy with links to the Arrow related PRs https://github.com/elixir-nx/explorer – Nx Explorer https://arrow.apache.org/docs/format/ADBC.html – ADBC Apache project for data connectivity https://arrow.apache.org/ – Arrow Apache project https://github.com/jorgecarleitao/arrow2 – Aarow2 Rust project https://jorgecarleitao.github.io/arrow2/main/guide/ – Arrow2 guide https://elixirforum.com/t/mime-v2-0-4-has-been-released-with-a-potential-security-fix/56216 – PSA for security concern with package version update available https://elixirforum.com/t/livemonacoeditor-monaco-editor-component-for-phoenix-liveview/56212 – New library LiveMonacoEditor for integrating the VSCode JS-powered editor called Monoco into LiveView https://github.com/BeaconCMS/live_monaco_editor – BeaconCMS linked LiveMonacoEditor project https://codebeameurope.com/ – CodeBEAM EU October 19-20 https://twitter.com/ElixirConf/status/1663920528829161474 – ElixirConf US 2023 - call for speakers https://docs.google.com/forms/d/e/1FAIpQLSeN6BFybOd4vXweCuBvINjhbO-Ev7Zk1sZf8YBXwjnwQC0-aA/viewform – Form for submitting a talk Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jun 13, 20239 min

154: Serving Up AI with Sean Moriarity

AI topics are all the rage right now, so we team up with Sean Moriarity to unpack what's going on and what it means for Elixir. Sean talks about Nx and his insights on the timing of Elixir's readiness for the public AI shift. He explains some of the Python frustrations that Elixir can alleviate and he shares tips on putting a PoC ML solution into a production Elixir app. Recently, Sean added LLaMa support to Bumblebee and he explains the background for the OpenSource Meta LLM people have been playing with and more! Turns out there's a lot to be excited about for AI and Elixir! Show Notes online - http://podcast.thinkingelixir.com/154 Elixir Community News https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.1 – Elixir 1.15.0-rc.1 https://github.com/elixir-lang/elixir/releases/tag/v1.14.5 – Elixir 1.14.5 - small bug fix release https://elixirforum.com/t/elixirls-not-working-runtime-terminating-during-boot/56017/6 – Elixir-LS crashes with OTP 26. Using OTP 25.x works great. https://github.com/elixir-lsp/elixir-ls/issues/886 – Issue that tracks Elixir LS OTP 26 issues https://github.com/phoenixframework/phoenix_live_view/blob/v0.19.0/CHANGELOG.md – Phoenix LiveView 0.19 changelog https://twitter.com/chris_mccord/status/1663275883845566473 – Chris McCord announced LiveView 0.19 and TodoTrek demo application. https://phoenixframework.org/blog/phoenix-liveview-0.19-released – Blog post for the LiveView 0.19 release https://github.com/chrismccord/todo_trek – OpenSourced Todo Trek project. “A trello-like todo board which shows off different dynamic form strategies with Phoenix LiveView.” https://www.twitch.tv/josevalim – José Valim Twitch account https://www.twitch.tv/videos/1827518510 – Prompts for AI agents in Elixir - Day 1 (NO LONGER AVAILABLE) https://www.twitch.tv/videos/1828360654 – Prompts for AI agents in Elixir - Day 2 (NO LONGER AVAILABLE) https://www.twitch.tv/videos/1832616594 – Contributing to Open Source with Elixir! https://twitter.com/josevalim/status/1663316201584443394 – José on Twitter sharing the https://github.com/livebook-dev/livebook/pull/1936 – Livebook doctest feature ended in a PR that was merged. https://twitter.com/christhekeele/status/1661178730037886978 – Chris Keele shared a tip about customizing your IEx prompt to make copying output easier. https://www.youtube.com/watch?v=qr6VAfCm_QE – On the shoulder of giants there's room for larger giants- F. Cesarini, A. Leopardi | CBL Mexico 23 https://www.youtube.com/watch?v=7yU9mvwZKoY – Distributed Elixir made easy by Johanna Larsson | Code BEAM Lite Mexico 2023 https://www.youtube.com/watch?v=phRXs8SKzP0 – How to sell Elixir (Again) by Evadne Wu | Code BEAM Lite Stockholm 2023 https://2023.elixirconf.com – ElixirConf tickets are now on sale Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected] Discussion Resources https://pragprog.com/titles/smgaelixir/genetic-algorithms-in-elixir/ https://teller.io/ https://github.com/livebook-dev/kino_bumblebee https://github.com/elixir-nx/bumblebee/pull/199 – You recently added LLaMa support to Bumblebee https://www.semianalysis.com/p/google-we-have-no-moat-and-neither – Google AI researcher leaked memo https://ai.facebook.com/blog/large-language-model-llama-meta-ai/ https://en.wikipedia.org/wiki/Monkey_selfie_copyright_dispute – In December 2014, the United States Copyright Office stated that works created by a non-human, such as a photograph taken by a monkey, are not copyrightable. https://github.com/microsoft/LoRA Guest Information https://twitter.com/sean_moriarity – on Twitter https://github.com/seanmor5/ – on Github https://seanmoriarity.com – Blog Find us online Message the show - @ThinkingElixir Message the show on Fediverse - @[email protected] Email the show - [email protected] Mark Ericksen - @brainlid Mark Ericksen on Fediverse - @[email protected] David Bernheisel - @bernheisel David Bernheisel on Fediverse - @[email protected] Cade Ward - @cadebward Cade Ward on Fediverse - @[email protected]

Jun 6, 202350 min