
About this episode
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]
Get every episode summarized
Each time Thinking Elixir Podcast publishes, we email you a written briefing from the transcript — the topics, who appeared, and any specific claims, with the ad reads skipped.
Email me new episodesFree for 3 shows. No card needed.
Hosts & guests
No transcript yet
This episode has not been transcribed. Request it and it moves to the front of the queue.
More episodes
More from Thinking Elixir Podcast

299: Don't Paste That Into Your Terminal
Thinking Elixir Podcast

298: Hex Gets a Glow Up
Thinking Elixir Podcast

297: JavaScript Joins the BEAM?
Thinking Elixir Podcast

296: OpenAI Chose Elixir and A VM Inside a VMV
Thinking Elixir Podcast