

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

Oct 19, 2021 • 46min
69: Elixir on Mobile with Dominic Letz
We talk with Dominic Letz about running Elixir on an Android phone installed in an APK which hosts a LiveView application accessed through a WebView! All while also pursuing a Web 3.0 architecture of being decentralized! Wow! There’s a lot going on here! Oh, and the tech is OpenSource!
Show Notes online - http://podcast.thinkingelixir.com/69
Elixir Community News
https://github.com/phoenixframework/phoenix/blob/master/CHANGELOG.md#162-2021-10-08 – Phoenix 1.6.1 and 1.6.2 were released.
https://twitter.com/mcrumm/status/1446594887034408960 – Michael Crumm explains 1.6.2. It's cool! We all make mistakes!
https://www.cnbc.com/2021/10/05/facebook-says-sorry-for-mass-outage-and-reveals-why-it-happened.html – Facebook major outage. Cause? Bad BGP (Border Gateway Protocol) config, bugs in the "don't let that happen" checks, and being physically locked out of their offices because they couldn't be authenticated.
https://dev.to/oliverandrich/adding-bootstrap-to-a-phoenix-1-6-project-hfe – How to setup Bootstrap with esbuild
https://twitter.com/elixirmembrane/status/1445768307643088897 – Membrane Framework getting a big update. Ability to record WebRTC sessions to MP4 and WebM.
https://thinkingelixir.com/podcast-episodes/043-membrane-with-marcin-lewandowski/ – Previous discussion about Membrane
https://twitter.com/josevalim/status/1446443166048129028 – MSSQL / TDS Database driver for Elixir looking for new maintainer
https://github.com/elixir-ecto/tds/issues/128 – TDS project issue with discussion
https://nts.strzibny.name/12factor-elixir-phoenix-releases/ – 12-Factor app guide by Josef Strzibny updated for Phoenix 1.6 and esbuild
https://12factor.net/ – 12-Factor is about "how to design your applications"
https://hexdocs.pm/phoenix_bakery/PhoenixBakery.html – New library for Phoenix, about better compression for Phoenix assets
https://twitter.com/fhunleth/status/1446448994310369281 – Nerves get's bluetooth support enabled on hardware like the RPi3 while working in Nerves Livebook v0.2.25
https://www.elixirconf.com/ – ElixirConf 2021
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://github.com/elixir-desktop/android-example-app/
https://github.com/elixir-desktop/desktop-example-app
https://github.com/elixir-desktop
https://diode.io/
https://github.com/erlang/otp/blob/master/HOWTO/INSTALL-ANDROID.md
https://github.com/elixir-sqlite/exqlite
http://www.wings3d.com/
https://diode.io/resources/download/#diode-drive-download
https://github.com/boydm/scenic
https://www.forbes.com/sites/forbestechcouncil/2020/01/06/what-is-web-3-0/?sh=6f627da58dfb – Decentralized Web 3.0 approach
https://github.com/elixir-desktop
Guest Information
https://twitter.com/DominicLetz – on Twitter
https://github.com/dominicletz/ – on Github
https://elixirforum.com/u/dominicletz/summary – on Elixir Forum
https://diode.io/ – Diode and blog
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Oct 12, 2021 • 41min
68: Rust and Elixir with Nik Begley
We talk with Niklas Begley about his Doctave service and the problems it's solving. From there we cover why they use Rust for a key piece of the service and how Elixir fits in. We cover tools like Rustler for integrating Elixir and Rust smoothly. We talk about business drivers, Nik's experience building a SaaS product using Elixir and more!
Show Notes online - http://podcast.thinkingelixir.com/68
Elixir Community News
https://github.com/hauleth/mix_unused – Compile errors formatted to be machine readable to make it viewable directly in GitHub Code Scanning or GitLab Code Quality
https://github.com/almightycouch/gitgud – GitHub-like self hosted project written in Elixir
https://github.com/phoenixframework/phoenix/pull/4471#issuecomment-931828623 – Phoenix 1.6.0 made an auth change with a bigger impact than was initially expected.
https://www.tokens24.com/cryptopedia/mining/asic-mining-hashing-algorithm – ASIC hashing
https://www.password-hashing.net/argon2-specs.pdf – Argon2 is a 'Memory Hard' hashing algorithm
https://pragmaticstudio.com/tutorials/adding-tailwind-css-to-phoenix – Pragmatic Studio (Mike Clark) updated their guide on adding TailwindCSS for Phoenix 1.6
https://twitter.com/louispilfold/status/1444664945396879361 – Gleam gets its own package manager
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://blog.doctave.com/2021/08/19/using-rust-with-elixir-for-code-reuse-and-performance.html
https://www.doctave.com
https://github.com/Doctave/doctave
https://github.com/Doctave/doctave-markdown
https://blog.discord.com/using-rust-to-scale-elixir-for-11-million-concurrent-users-c6f19fc029d3
https://github.com/discord/sorted_set_nif
https://www.writethedocs.org/guide/docs-as-code/
https://backstage.io/docs/features/techdocs/techdocs-overview
https://ziglang.org/
https://mermaid-js.github.io/
https://hex.pm/packages/rustler
http://erlang.org/doc/man/erl_nif.html
https://alpinejs.dev/
Guest Information
https://twitter.com/NiklasBegley – on Twitter
https://github.com/begleynk/ – on Github
https://www.doctave.com – Doctave website
nik@doctave.com
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Oct 5, 2021 • 40min
67: Building a Healthy Community
We talk about ways we can all contribute to building a healthy Elixir community. The Elixir community is a welcoming, encouraging and helpful place and we want to help keep it that way! We talk about common problems facing maintainers, tips for engaging productively, the value of expressing appreciation, and much more!
Show Notes online - http://podcast.thinkingelixir.com/67
Elixir Community News
https://www.erlang.org/news/149 – Erlang/OTP 24.1 was released
https://github.com/livebook-dev/nerves_livebook – Nerves Livebook is now part of the Livebook organization on GitHub
https://www.youtube.com/playlist?list=PLvL2NEhYV4ZtdiDIxP_rPMQ5VmVhs4CKJ – ElixirConf EU 2021 keynote videos
https://www.youtube.com/watch?v=6sNmJtoKDCo – Saša Jurić's presentation on Clarity
https://twitter.com/CodeBEAMio/status/1441149132278665235 – Code Beam America switched back to virtual
https://twitter.com/elixirphoenix/status/1441020298141253633 – Phoenix.HTML from 3.0.0-3.0.3 had a security vulnerability. Please update to 3.0.4+
https://hex.pm/packages/phoenix_html – Phoenix HTML package page
https://www.phoenixframework.org/blog/phoenix-1.6-released – Phoenix 1.6.0 was released! This includes the esbuild by default change.
https://fly.io/blog/how-we-got-to-liveview/ – Chris McCord's post telling the story of "How We Got to LiveView"
https://thinkingelixir.com/petal-stack-in-elixir/ – Reminder of the PETAL stack and how central LiveView is to it.
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://github.com/elixir-lang/elixir#issues-tracker-management – Explanation of the Elixir's Issue Tracker Management policy
https://github.com/elixir-lang/elixir#proposing-new-features – Resource for proposing Elixir features
https://github.com/elixir-lang/elixir/issues – Elixir's well maintained issue tracker
https://www.chiark.greenend.org.uk/~sgtatham/bugs.html – How to Report Bugs Effectively
https://opensource.guide/best-practices/ – GitHub's Best Practices for Maintainers
https://go.darrenhardy.com/darrendaily/ – Darren Hardy daily email messages.
https://darrenhardy.cDarren Daily-om/darrendaily-on-demand – Podcast form of the daily messages.
https://www.youtube.com/watch?v=6Z6cFvXb9_A – YouTube video of the "jerk" segment called "A Simple Way to Change Other People"
https://twitter.com/adamwathan – Adam Wathan, maintainer of TailwindCSS
Points to consider when interacting with different projects and maintainers.
Every project is different.
Maintainers work in their spare time. They are not obligated to help you. Make it easier for them to reproduce problems.
Provide good bug reports.
Keep your emotions out of it.
https://twitter.com/tylerayoung/status/1438824261947363329 – Tyler Young's comments on importance of maintainers setting a tone.
https://twitter.com/redrapids/status/1438111195886673929 – Bruce Tate's call to action. Let people and project know you appreciate their work.
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Sep 28, 2021 • 39min
66: Tracing Production with Kai Wern Choong
We talk with Kai Wern Choong about his experience with tracing performance problems in production. We talk about what “tracing” means in a BEAM system, available tools like recon, great resources for learning how the tools work and general approaches for troubleshooting live production Elixir systems. Kai also shares his Livebook notebook setup for demonstrating tracing techniques in an interactive way.
Show Notes online - http://podcast.thinkingelixir.com/66
Elixir Community News
https://twitter.com/hexpm/status/1439268469296570368 – New version of Hex released that fixes issues with version downgrades and slow version resolutions. Run mix local.hex to upgrade.
https://hexdocs.pm/credo/1.6.0-rc.0/changelog.html#1-6-0 – Credo 1.6.0 was released with new "First Run Mode"
https://twitter.com/elixirphoenix/status/1438222537301843970 – Removing Phoenix compiler config change can speed up compilation times when on up-to-date versions
https://github.com/Qqwy/elixir-type_check – New library called TypeCheck
https://blog.oestrich.org/2021/09/introducing-aino/ – Eric Osterich is experimenting with an alternative HTTP framework for Elixir
https://github.com/oestrich/aino – The Aino project
https://techcrunch.com/2021/09/14/logistics-startup-stord-raises-90m-in-kleiner-perkins-led-round-becomes-a-unicorn-and-acquires-another-company/ – Stord, an Elixir company, raised $90M and became a "unicorn"
https://spawnfest.org/ – SpawnFest 2021 happened
https://github.com/spawnfest/eflambe – SpawnFest submission - rapid generation of flamegraphs
https://github.com/spawnfest/Sketch – SpawnFest submission - library for creating generative art with Elixir
https://github.com/spawnfest/lotus – SpawnFest submission - Lotus is a Surface UI wrapper for UIKit
https://github.com/spawnfest/Discovery – SpawnFest submission - Platform for hosting realtime, stateful servers with zero downtime deployment and horizontal scaling on Kubernetes
https://github.com/spawnfest/crash – SpawnFest submission - Crash is a simple (distributed) docker-on-docker Continuous Integration system written in Elixir
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://kaiwern.com/posts/2021/06/27/debugging-with-tracing-in-elixir-with-recon_trace/
https://www.naluri.life/
https://ferd.github.io/recon/recon.html
https://hex.pm/packages/recon
https://twitter.com/kw7oe/status/1409126300636254219
https://github.com/kw7oe/livebook-notebooks/blob/main/debugging-with-tracing-in-elixir-with-recon_trace.livemd – Livebook notebook showing tracing examples
https://www.youtube.com/watch?v=sR9h3DZAA74 – Debugging Live Systems on the BEAM talk by Jeffery Utter
https://www.youtube.com/watch?v=OR2Gc6_Le2U – Operable Erlang and Elixir talk by Fred Hebert (skip to 25:51, where he started talking about tracing)
https://kaiwern.com/posts/2020/11/02/debugging-with-tracing-in-elixir/ – Tracing with dbg modules
https://en.wikipedia.org/wiki/Tracing_(software)
https://erlang.org/doc/man/dbg.html – dbg module in Erlang
:dbg.fun2ms
https://kubernetes.io/blog/2017/12/using-ebpf-in-kubernetes/
https://github.com/cilium/cilium
https://opentelemetry.io/docs/erlang/
https://www.brendangregg.com/blog/2019-01-01/learn-ebpf-tracing.html
https://www.erlang-solutions.com/capabilities/wombatoam/
https://hex.pm/packages/recon_ex
https://erlang-in-anger.com/ – Erlang in Anger (Chapter 9)
https://www.thegreatcodeadventure.com/testing-genservers-with-erlang-trace/ – Testing GenServers with Erlang Trace
http://blog.plataformatec.com.br/2016/04/how-to-trace-elixir-nodes-with-erlyberly/ – How to trace Elixir nodes with Erlyberly - Plataformatec Blog
http://erlang.org/doc/man/seq_trace.html#sequential-tracing – Seq_trace
http://erlang.org/doc/man/erlang.html#trace-3 – Erlang:trace
https://github.com/andytill/erlyberly – Erlang tracing for the masses
https://github.com/tatsuya6502/recon_ex – Elixir wrapper for Recon, tools to diagnose Erlang VM safely in production
Guest Information
https://twitter.com/kw7oe – on Twitter
https://github.com/kw7oe/ – on Github
https://kaiwern.com/ – Blog
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Sep 21, 2021 • 48min
65: Meet Core Team Member Aleksei Magusev
We talk with Elixir Core Team Member Aleksei Magusev about how he got involved in Elixir, what it’s like being on the Core Team, some of his contributions, areas in Elixir that interest him, and his tips for learning a new programming language! He also shares some of his interests outside of computing. Meet Aleksei!
Show Notes online - http://podcast.thinkingelixir.com/65
Elixir Community News
https://github.com/phoenixframework/phoenix_live_view/issues/1617 – Initial proposal to bring slots to LiveView components.
https://twitter.com/elixirbookclub/status/1437034456037068804 – Book Club started "Elixir in Action"
https://techcrunch.com/2021/09/09/supabase-raises-30m-for-its-open-source-insta-backend/ – Supabase, which uses Elixir in their "realtime" project raised $30m
https://github.com/supabase/realtime – Realtime project on github
https://twitter.com/BrooklinJMyers/status/1436744292391923714 – New Podcast "Elixir Newbie"
https://twitter.com/josevalim/status/1436386868539662338 – Fly.io is now a sponsor of the Livebook project!
https://github.com/elixir-desktop/android-example-app/ – Android Application that embeds Elixir, uses a Webview to connect locally to the server, and renders using LiveView!
https://github.com/elixir-lang/elixir/pull/11246 – Mix Formatter Plugins PR
ElixirConf EU has happened!
https://github.com/elixir-lang/elixir/releases/tag/v1.12.3 – Elixir 1.12.3 released
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://forzafootball.com/
https://tech.forzafootball.com/blog/binary-parsing-optimizations-in-elixir – Blog post by Aleksei Magusev on the Forza Football site
https://github.com/celluloid/celluloid
https://racket-lang.org/
https://www.rubinius.com/about/
https://web.archive.org/web/20130422214345/http://www.matasano.com/articles/crypto-challenges/ – The Matasano Crypto Challenge isn't online anymore - this is from the Wayback Machine
https://hexdocs.pm/ex_unit/ExUnit.CaptureLog.html
https://github.com/elixir-lang/elixir/pull/3390 – Early version of the capture_log work which was later simplified
https://github.com/kraftjectory/forgery
https://hex.pm/packages/forgery
https://hex.pm/packages/mint
https://hex.pm/packages/finch
https://en.wikipedia.org/wiki/Cache_stampede
https://github.com/lexmag/cashmere – Caching library Aleksei created and open sourced
https://cassandra.apache.org/_/index.html
https://andrealeopardi.com/
https://github.com/elixir-lang/elixir/pull/4430 – PR adding difference highlighting to ExUnit output
https://github.com/lexmag/elixir-style-guide – He wrote the very early version of Elixir Style Guide
Guest Information
https://twitter.com/lexmag – on Twitter
https://github.com/lexmag/ – on Github
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Sep 14, 2021 • 43min
64: OTP Certificate Woes with Bram Verburg
We talk with Bram Verburg about an important root certificate expiring at the end of September and how this impacts your Elixir and Erlang projects! Bram helps explain where this IS and IS NOT a problem. He also explains the different update options available. We also get Bram’s security perspectives from his years of focused study and contributions in the Elixir and Erlang communities. A great resource for understanding the current certificate situation and for protecting your Elixir projects!
Show Notes online - http://podcast.thinkingelixir.com/64
Elixir Community News
https://github.com/elixir-nx/explorer – New Elixir-Nx project called Explorer released
Explorer summarized with "When combined with other Nx libraries, Explorer is like a super-powerful spreadsheet"
https://twitter.com/cigrainger/status/1433934973682139139 – Twitter announcement of Explorer
https://github.com/hauleth/mix_unused – mix_unused is a compiler tracer for detecting unused public functions.
https://hexdocs.pm/prom_ex/readme.html – PromEx sees a new 1.4.x release
https://github.com/erlang/rebar3/releases/tag/3.17.0 – Rebar had a new release 3.17.0
https://github.com/woylie/ecto_nested_changeset – Ecto Nested Changeset project
https://github.com/elixir-ecto/ecto/pull/3731 – Discussion that lead to pulling out as a separate library
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://blog.voltone.net/post/29 – Initial post describing the problem
https://blog.voltone.net/post/30 – Updates and mitigation recommendations
https://www.youtube.com/watch?v=0jzcPnsE4nQ – Learn you some 'ssl' for much security! - ElixirConfEU 2019
https://erlef.github.io/security-wg/secure_coding_and_deployment_hardening/inets
https://blog.voltone.net/post/27 – CVE-2020-35733 discovered in December
https://blog.voltone.net/post/28
https://www.youtube.com/watch?v=r0DuAse9tK8
https://pragprog.com/titles/jaerlang2/programming-erlang-2nd-edition/
OTP 24.0.4 and later is good
OTP 23.3.4.6 and later is good
https://github.com/dlesl/erqwest
https://hex.pm/packages/mint
https://xkcd.com/927/ – The referenced XKCD comic
https://arstechnica.com/gadgets/2020/12/lets-encrypt-comes-up-with-workaround-for-abandonware-android-devices/
https://github.com/elixir-mint/mint/pull/328
https://blog.voltone.net/post/28
https://blog.voltone.net/post/27
https://en.wikipedia.org/wiki/Heartbleed
https://istio.io/
https://hex.pm/packages/hackney
https://hex.pm/packages/finch
https://blog.voltone.net/
Guest Information
https://twitter.com/voltonez – on Twitter
https://github.com/voltone/ – on Github
https://blog.voltone.net/ – Blog
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Sep 7, 2021 • 44min
63: SMS Texting in Nerves with Peter Ullrich
We talk with Peter Ullrich about his experience sending SMS messages from a Raspberry Pi Zero using Nerves. We cover what went well, what didn’t and get a glimpse into the current state of Nerves for a newbie when dealing with hardware. Peter also tried Livebook for Nerves and had a great experience with that. We discuss the challenges of hardware systems dealing with the “real world” but see how Elixir makes the process easier to model and think about.
Show Notes online - http://podcast.thinkingelixir.com/63
Elixir Community News
https://github.com/elixir-lang/ex_doc/pull/1386#issuecomment-905623723 – LiveBook support in ExDocs
https://hexdocs.pm/phoenix/1.6.0-rc.0/fly.html#goals – Fly.io deployment guide in Phoenix documentation
https://github.com/wojtekmach/mix_install_examples/blob/main/oban.exs – Wojtek Mach's Mix.install script using the Oban library and database tables
https://github.com/smartlogic/augur – SmartLogic open sourced Augur library for helping Elixir systems that send SMS messages
https://elixir-broadway.org/ – Broadway library has it's own website
https://twitter.com/mcrumm/status/1431316375893467137 – Michael Crumm shares how live_session/3 are 2x-4x faster for him
https://twitter.com/atyborska93/status/1431670143483060230 – Angelika Tyborska shares that Exercism v3 is up with a new Elixir track
https://thinkingelixir.com/podcast-episodes/050-exercism-io-and-elixir-with-angelika-tyborska/ – Previous interview with Angelika Tyborska about the Elixir track in Exercism v3
https://exercism.org/tracks/elixir/ – Excercism.io's Elixir track
https://twitter.com/voltonez/status/1432208014103220224 – Erlang updates needed for expiring root CA certificate support
https://blog.voltone.net/post/30 – Bram Verburg's detailed write up on the needed updates
https://elixir-lang.org/getting-started/introduction.html – Elixir getting started docs
https://hexdocs.pm/elixir/Kernel.html – Elixir's docs in HexDocs
https://elixirschool.com/en/ – Elixir School, good free resource for learning Elixir
https://thinkingelixir.com/available-courses/pattern-matching/ – ThinkingElixir free Pattern Matching course for learning Elixir
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://www.peterullrich.com/sending-text-messages-with-nerves
https://www.peterullrich.com/using-livebook-with-nerves
https://podcasts.apple.com/us/podcast/explain-blockchain/id1326636335
https://www.youtube.com/watch?v=bsyjSW46TDg
https://www.youtube.com/watch?v=mrpQHZcy3CI&ab_channel=CraftHubEvents
https://nerves.group/
https://github.com/fhunleth/nerves_livebook/releases
https://github.com/fhunleth/nerves_livebook
Guest Information
https://twitter.com/PJUllrich – on Twitter
https://github.com/PJUllrich/ – on Github
http://peterullrich.com/ – Blog
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Aug 31, 2021 • 57min
62: Chris McCord joins Fly.io and Phoenix 1.6
We talk with Chris McCord about his recent announcement that he’s moved to work at Fly.io! We cover what this means for the Phoenix project and ongoing Phoenix development work. He shares why he’s excited about the Fly platform which includes how it replaces his need for a CDN! We also talk about the new Phoenix 1.6 release and all the goodness coming there. This release includes the HEEX engine for validated HTML at compile time, making the auth generators official, a new mailer generator, and the move away from Webpack to esbuild. We go deeper on what the move to esbuild means for existing projects before hearing where Chris wants to put his focus next. We covered a lot, so buckle up!
Show Notes online - http://podcast.thinkingelixir.com/62
Elixir Community News
https://github.com/elixir-lang/elixir/pull/11184 – Another improvement made to mix xref graph to find why module A depends on module B.
https://github.com/elixir-lang/elixir/pull/11201 – Recompile only necessary deps whenever config/lock change
https://github.com/livebook-dev/livebook/pull/513 – IEx and Livebook both get improved intellisense (code completion) for structs and sigils.
https://twitter.com/akoutmos/status/1429835571745153024 – PromEx sponsored by SmartLogic
https://twitter.com/mitchhanberg/status/1429854685087797248 – Wallaby sponsored by SmartLogic
https://blog.erlang.org/scalable-ets-counters/ – Lukas Larsson from the Erlang OTP team, wrote a blog post about using ETS tables for distributed counters.
https://github.com/erlang/otp/pull/4719 – OTP 24.1 gets better float to string support
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://twitter.com/chris_mccord/status/1428821074553315332 – Chris McCord announced he joined Fly.io
https://github.com/phoenixframework/phoenix/blob/master/CHANGELOG.md#changelog-for-v16 – Phoenix 1.6 changelog
https://github.com/phoenixframework/phoenix_live_view – Phoenix LiveView 0.16 released
https://github.com/surface-ui/surface
https://twitter.com/MarlusSaraiva
https://github.com/surface-ui/surface_catalogue
https://dashbit.co/blog/a-new-authentication-solution-for-phoenix
https://github.com/heartcombo/devise
https://github.com/swoosh/swoosh
https://esbuild.github.io/
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
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Aug 24, 2021 • 31min
61: Elixir's Recent Brex-it
We cover the news then talk about the Brex announcement that they are shifting to a Kotlin-first strategy over Elixir. This reminds us of patterns we’ve seen in our careers and we reflect on what it means to us personally and professionally. We share our perspectives on Elixir, how it’s different from the languages we’ve used before and the unique value we get from it.
Show Notes online - http://podcast.thinkingelixir.com/61
Elixir Community News
https://medium.com/brexeng/building-backend-services-with-kotlin-7c8410795e4b – Brex announcement they are moving to Kotlin first
https://github.com/phoenixframework/phoenix_live_view/blob/master/CHANGELOG.md#0160-2021-08-10 – LiveView 0.16 released
https://github.com/phoenixframework/vscode-phoenix – VSCode support for HEEx is coming in new extension
https://github.com/nvim-treesitter/nvim-treesitter/pull/1700/files – nvim-treesitter gets HEEx support
https://elixirforum.com/t/introducing-elixirls-the-elixir-language-server/5857/136 – ElixirLS 0.8.0 released
https://github.com/erlang-ls/erlang_ls/releases/tag/0.18.0 – Erlang LS 0.18.0 released
https://pragprog.com/titles/sgdpelixir/concurrent-data-processing-in-elixir/ – Book "Concurrent Data Processing in Elixir" released by PragProg
https://twitter.com/elixirbookclub – Book club is reading through this book right now if you're interested
https://github.com/wyeworks/boom – WyeWorks has an open source library called "boom" that was inspired by the ExceptionNotification Rack/Rails gem
https://github.com/mcrumm/live_upload_example/pull/7 – Example showing how to crop a photo using the croppr.js library and LiveView
https://slab.com/blog/announcing-delta-for-elixir/ – Slab open-sourced their Operational Transforms library that pairs nicely with Quill, the JavaScript collaborative editor
https://github.com/slab/delta-elixir – Slab's OT project
https://thinkingelixir.com/podcast-episodes/048-ecto-associations-with-sheharyar-naseer/ – Interview with Sheharyar Naseer from Slab
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://thinkingelixir.com/podcast-episodes/059-how-elixir-came-to-spotify-with-joel-kemp/
https://twitter.com/ChrisKeathley/status/1425471653014876163
https://www.theregister.com/2012/11/08/twitter_epic_traffic_saved_by_java/
https://www.infoq.com/articles/twitter-java-use/
https://sysgears.com/articles/how-and-why-twitter-uses-scala/
https://github.blog/2009-10-20-how-we-made-github-fast/
https://developer.github.com/changes/2018-04-25-github-services-deprecation/
https://www.infoq.com/presentations/github-rails-monolith-microservices/
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Aug 17, 2021 • 43min
60: Compile Faster with Marc-André Lafortune
We talk with Marc-André Lafortune about reducing Elixir project compile times. On larger projects, when a single file like a view template is changed and over 100 files get recompiled, there is something wrong. Marc-André explains how he identified the problems in his project and contributed to Elixir’s mix xref tool making it easier for us to find those problems in our own projects! We cover how these tooling improvements were used to improve the upcoming Phoenix 1.6 and Elixir 1.13! An additional mix xref flag was added to run CI checks on our code to prevent accidentally adding code that slows our compile times.
Show Notes online - http://podcast.thinkingelixir.com/60
Elixir Community News
https://insights.stackoverflow.com/survey/2021#most-loved-dreaded-and-wanted-language-love-dread – Elixir is number 4 among the "most loved" languages on Stack Overflow's developer survey
https://insights.stackoverflow.com/survey/2021#section-top-paying-technologies-top-paying-technologies – Elixir is number 3 in highest paid languages on Stack Overflow's developer survey
https://github.com/nvim-treesitter/nvim-treesitter/pull/1645 – Neovim adds tree-sitter (a syntax parser) support for the Surface library
https://github.com/surface-ui/surface_tailwind/issues/1#issuecomment-884981076 – Surface Catalogue to continue and may redesign the UI using TailwindCSS
https://github.com/phoenixframework/phoenix/issues/4403#issuecomment-895354673 – Phoenix 1.6 possibly released this week?
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://twitter.com/josevalim/status/1421912595456569351 – Thread talks about the change
https://groups.google.com/g/elixir-lang-core/c/Hmg5y8S3v4E/m/FVK50RWBAQAJ?pli=1 – Elixir core mailing list where feature was discussed
https://hexdocs.pm/mix/master/Mix.Tasks.Xref.html#module-understanding-the-printed-graph
https://github.com/elixir-lang/elixir/pull/11044 – Add "--label compile-connected" option to mix xref graph
https://github.com/elixir-lang/elixir/pull/11048 – Add "--fail-above" option to mix xref making it good for CI systems
https://github.com/elixir-lang/elixir/pull/11049 – Support multiple sinks and sources in mix xref graph
https://github.com/elixir-lang/elixir/pull/11162 – Update docs
https://github.com/elixir-lang/elixir/pull/11080 – Rely on modification time and hash to determine modified sources
https://dashbit.co/blog/speeding-up-re-compilation-of-elixir-projects – Blog post on recompilations
https://github.com/phoenixframework/phoenix/issues/4408 – Example 1 of sneaky macros introducing compile-time dependencies
https://github.com/phoenixframework/phoenix/issues/4409 – Example 2 of sneaky macros introducing compile-time dependencies
https://exercism.io/tracks/elixir
https://github.com/rbenv/rbenv
https://rvm.io/
https://www.super.mx/
https://xkcd.com/303/
--label compile-connected
--fail-above
Guest Information
https://twitter.com/malafortune – on Twitter
https://github.com/marcandre/ – on Github
http://blog.marc-andre.ca/ – Blog
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward


