

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

Aug 29, 2023 • 50min
166: Filtering, ordering and pagination via Flop
Mathias Polligkeit created the flop library to simplify filtering, sorting, and pagination in Ecto queries. He also created flop_phoenix package with heex components. The hosts discuss Elixir docs, OTP26 bug, and introduce DNS cluster library. LS version 0.10.0 is released with new features. Dagger.io now supports Elixir. Matthias Polishkite worked on a library for cursor-based pagination. Flop library simplifies filtering, ordering, and pagination in Ecto queries. Topics include challenges of pagination, key set pagination, performance of page-based pagination, filtering in Flop, and sortable fields.

Aug 22, 2023 • 13min
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 show@thinkingelixir.com
Find us online
Message the show - @ThinkingElixir
Message the show on Fediverse - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Aug 15, 2023 • 8min
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 show@thinkingelixir.com
Find us online
Message the show - @ThinkingElixir
Message the show on Fediverse - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Aug 8, 2023 • 56min
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 show@thinkingelixir.com
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 - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Aug 1, 2023 • 50min
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 show@thinkingelixir.com
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 - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Jul 25, 2023 • 58min
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 show@thinkingelixir.com
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 - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Jul 18, 2023 • 55min
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 show@thinkingelixir.com
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 - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Jul 11, 2023 • 50min
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 show@thinkingelixir.com
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 - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Jul 4, 2023 • 57min
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 show@thinkingelixir.com
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 - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Jun 27, 2023 • 54min
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 show@thinkingelixir.com
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 - @ThinkingElixir@genserver.social
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
Mark Ericksen on Fediverse - @brainlid@genserver.social
David Bernheisel - @bernheisel
David Bernheisel on Fediverse - @dbern@genserver.social
Cade Ward - @cadebward
Cade Ward on Fediverse - @cadebward@genserver.social
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!