Listen "38: Maintainable Elixir with Saša Jurić"
Episode Synopsis
Saša Jurić shares how the team at Very Big Things is building maintainable Elixir code. This ranges from the development processes to code design and organization. He takes some "radical" positions and challenges conventions on a mission to find what actually works well. We talk about his library Boundary and how it helps enforce API designs. He talks about the "Junk Drawer Pattern" and how code analysis helps identify lines of separation for refactoring. A thought provoking and fun discussion!
Show Notes online - http://podcast.thinkingelixir.com/38 (http://podcast.thinkingelixir.com/38)
Elixir Community News
- https://twitter.com/josevalim/status/1366417827528396803 (https://twitter.com/josevalim/status/1366417827528396803) – Jose Valim is stepping down in his role as Board Director of the The Erlang Ecosystem Foundation
- https://twitter.com/josevalim/status/1366427218306564096 (https://twitter.com/josevalim/status/1366427218306564096) – Jose Valim calls out to the Erlang community for any developers who are interested in Machine Learning
- https://pragprog.com//titles/liveview/programming-phoenix-liveview/ (https://pragprog.com//titles/liveview/programming-phoenix-liveview/) – A new Phoenix LiveView book is coming out and is currently in a beta release
- https://twitter.com/chris_mccord/status/1365031826813825033 (https://twitter.com/chris_mccord/status/1365031826813825033) – Chris McCord shared his perspective around the general community excitement with LiveView
- https://blog.aeternity.com/erlscripten-92c815786987 (https://blog.aeternity.com/erlscripten-92c815786987) – The company https://aeternity.com released a project called "Erlscripten"
- https://seanmoriarity.com/ (https://seanmoriarity.com/) – Follow Sean Moriarity's blog for his "Nx Tip of the Week" series
- https://www.erlang.org/news/144 (https://www.erlang.org/news/144) – OTP 24 will release candidates have started
- https://hex.pm/packages/finch (https://hex.pm/packages/finch) – Finch HTTP library
- https://twitter.com/chriskeathley/status/1364692787032113153 (https://twitter.com/chriskeathley/status/1364692787032113153) – Chris Keathley posted graphics showing the before and after performance charts from it's use at BleacherReport
- https://github.com/elixir-ecto/ecto/pull/3566 (https://github.com/elixir-ecto/ecto/pull/3566) – Ecto.Multi.inspect/2,3 support being added to Ecto
- https://github.com/phoenixframework/phoenixliveview/pull/1349/files (https://github.com/phoenixframework/phoenix_live_view/pull/1349/files) – Fix for compiler warnings on live_component usage
- https://blog.discord.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f (https://blog.discord.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f) – Discord announced why they were moving away from Go to Rust
Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at [email protected] (mailto:[email protected])
Discussion Resources
- https://www.manning.com/books/elixir-in-action-second-edition (https://www.manning.com/books/elixir-in-action-second-edition) – Elixir in Action 2nd Edition book
- https://verybigthings.com/ (https://verybigthings.com/)
- https://medium.com/very-big-things/towards-maintainable-elixir-the-development-process-205ee257c109 (https://medium.com/very-big-things/towards-maintainable-elixir-the-development-process-205ee257c109)
- https://medium.com/very-big-things/towards-maintainable-elixir-the-core-and-the-interface-c267f0da43 (https://medium.com/very-big-things/towards-maintainable-elixir-the-core-and-the-interface-c267f0da43)
- https://en.wikipedia.org/wiki/Code_Complete (https://en.wikipedia.org/wiki/Code_Complete)
- https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670 (https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670)
- https://github.com/rrrene/credo (https://github.com/rrrene/credo)
- https://github.com/rrrene/credo/blob/master/lib/credo/check/readability/strictmodulelayout.ex (https://github.com/rrrene/credo/blob/master/lib/credo/check/readability/strict_module_layout.ex)
- https://github.com/sasa1977/boundary (https://github.com/sasa1977/boundary)
- https://github.com/sasa1977/ci (https://github.com/sasa1977/ci)
- https://elixirforum.com/ (https://elixirforum.com/)
Guest Information
- https://twitter.com/sasajuric (https://twitter.com/sasajuric) – on Twitter
- https://github.com/sasa1977/ (https://github.com/sasa1977/) – on Github
- https://www.theerlangelist.com/ (https://www.theerlangelist.com/) – Blog
Find us online
- Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir)
- Email the show - [email protected] (mailto:[email protected])
- Mark Ericksen - @brainlid (https://twitter.com/brainlid)
- David Bernheisel - @bernheisel (https://twitter.com/bernheisel)
- Cade Ward - @cadebward (https://twitter.com/cadebward)
Show Notes online - http://podcast.thinkingelixir.com/38 (http://podcast.thinkingelixir.com/38)
Elixir Community News
- https://twitter.com/josevalim/status/1366417827528396803 (https://twitter.com/josevalim/status/1366417827528396803) – Jose Valim is stepping down in his role as Board Director of the The Erlang Ecosystem Foundation
- https://twitter.com/josevalim/status/1366427218306564096 (https://twitter.com/josevalim/status/1366427218306564096) – Jose Valim calls out to the Erlang community for any developers who are interested in Machine Learning
- https://pragprog.com//titles/liveview/programming-phoenix-liveview/ (https://pragprog.com//titles/liveview/programming-phoenix-liveview/) – A new Phoenix LiveView book is coming out and is currently in a beta release
- https://twitter.com/chris_mccord/status/1365031826813825033 (https://twitter.com/chris_mccord/status/1365031826813825033) – Chris McCord shared his perspective around the general community excitement with LiveView
- https://blog.aeternity.com/erlscripten-92c815786987 (https://blog.aeternity.com/erlscripten-92c815786987) – The company https://aeternity.com released a project called "Erlscripten"
- https://seanmoriarity.com/ (https://seanmoriarity.com/) – Follow Sean Moriarity's blog for his "Nx Tip of the Week" series
- https://www.erlang.org/news/144 (https://www.erlang.org/news/144) – OTP 24 will release candidates have started
- https://hex.pm/packages/finch (https://hex.pm/packages/finch) – Finch HTTP library
- https://twitter.com/chriskeathley/status/1364692787032113153 (https://twitter.com/chriskeathley/status/1364692787032113153) – Chris Keathley posted graphics showing the before and after performance charts from it's use at BleacherReport
- https://github.com/elixir-ecto/ecto/pull/3566 (https://github.com/elixir-ecto/ecto/pull/3566) – Ecto.Multi.inspect/2,3 support being added to Ecto
- https://github.com/phoenixframework/phoenixliveview/pull/1349/files (https://github.com/phoenixframework/phoenix_live_view/pull/1349/files) – Fix for compiler warnings on live_component usage
- https://blog.discord.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f (https://blog.discord.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f) – Discord announced why they were moving away from Go to Rust
Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at [email protected] (mailto:[email protected])
Discussion Resources
- https://www.manning.com/books/elixir-in-action-second-edition (https://www.manning.com/books/elixir-in-action-second-edition) – Elixir in Action 2nd Edition book
- https://verybigthings.com/ (https://verybigthings.com/)
- https://medium.com/very-big-things/towards-maintainable-elixir-the-development-process-205ee257c109 (https://medium.com/very-big-things/towards-maintainable-elixir-the-development-process-205ee257c109)
- https://medium.com/very-big-things/towards-maintainable-elixir-the-core-and-the-interface-c267f0da43 (https://medium.com/very-big-things/towards-maintainable-elixir-the-core-and-the-interface-c267f0da43)
- https://en.wikipedia.org/wiki/Code_Complete (https://en.wikipedia.org/wiki/Code_Complete)
- https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670 (https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670)
- https://github.com/rrrene/credo (https://github.com/rrrene/credo)
- https://github.com/rrrene/credo/blob/master/lib/credo/check/readability/strictmodulelayout.ex (https://github.com/rrrene/credo/blob/master/lib/credo/check/readability/strict_module_layout.ex)
- https://github.com/sasa1977/boundary (https://github.com/sasa1977/boundary)
- https://github.com/sasa1977/ci (https://github.com/sasa1977/ci)
- https://elixirforum.com/ (https://elixirforum.com/)
Guest Information
- https://twitter.com/sasajuric (https://twitter.com/sasajuric) – on Twitter
- https://github.com/sasa1977/ (https://github.com/sasa1977/) – on Github
- https://www.theerlangelist.com/ (https://www.theerlangelist.com/) – Blog
Find us online
- Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir)
- Email the show - [email protected] (mailto:[email protected])
- Mark Ericksen - @brainlid (https://twitter.com/brainlid)
- David Bernheisel - @bernheisel (https://twitter.com/bernheisel)
- Cade Ward - @cadebward (https://twitter.com/cadebward)
More episodes of the podcast Thinking Elixir Podcast
283: Erlang Turns 27 and React at Risk
16/12/2025
282: Type Systems and View Transitions
09/12/2025
281: Planning for the Unexpected
02/12/2025
280: Dark Matter Developers
25/11/2025
279: Hot Code Upgrades and Hotter AI Takes
18/11/2025
278: WAL-ing Through Database Changes
11/11/2025
277: Searching Across the Hexiverse
04/11/2025
276: Elixir v1.19 Types and Speed
28/10/2025
275: From Slop to Success?
21/10/2025
274: Protocols, Permissions, and Performance
14/10/2025
ZARZA We are Zarza, the prestigious firm behind major projects in information technology.