

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

Apr 26, 2022 • 1h 18min
96: Reviewing Elixir with José Valim - Part 4
José Valim returns for part 4 in our 5 part series as we count down to the 10 year anniversary of the Elixir project we know and love! In Part 4, we talk through the Elixir releases of 1.10, 1.11, and 1.12. We go deeper on the philosophy of “explicit vs implicit” and how that informs many design decisions about the language. We learn about how Elixir and Erlang loggers were unified, how matching on map keys in guards enabled receives block enhancements, how common date sorting bugs were solved with Enum.sort improvements (that you should really listen to), the improvements to application config, how exceptions work in Erlang and Elixir and much more! A packed episode!
Show Notes online - http://podcast.thinkingelixir.com/96
Elixir Community News
https://github.com/livebook-dev/livebook/pull/1115 – Livebook adds “Code Focus Mode” making it easier to focus on the code cells.
https://github.com/livebook-dev/livebook/discussions – Livebook project announced and opened a Github Discussions section to the project.
https://github.com/phoenixframework/phoenix_live_dashboard/pull/367 – Full screen mode contribution added to Phoenix LiveDashboard project.
https://podcast.thinkingelixir.com/92 – Mitch Hanberg talked with us previously about Temple
https://github.com/mhanberg/eex_compiler_visualizer – Mitch Hanberg created an “EEX Compiler Visualizer” project.
https://twitter.com/mitchellh/status/1515369637726224385?s=12&t=so7B66NTrJKPwDWLqMxpJA – The Zig language reached the milestone of being self-hosted
https://github.com/ziglang/zig/pull/11442 – Zig being self-hosted means the compiler is capable of building itself.
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/blob/v1.10/CHANGELOG.md – Elixir 1.10 changelog
https://elixirforum.com/t/discussion-incorporating-erlang-otp-21-map-guards-in-elixir/14816 – Incorporating Erlang/OTP 21 map guards in Elixir
https://github.com/elixir-lang/elixir/blob/v1.11/CHANGELOG.md – Elixir 1.11 changelog
https://github.com/elixir-lang/elixir/blob/v1.12/CHANGELOG.md – Elixir 1.12 changelog
https://www.erlang.org/eeps/eep-0054.html – EEP 54 - Provide more information about errors
https://github.com/sasa1977/boundary
https://hexdocs.pm/elixir/Enum.html#sort/2-sorting-structs – Improvements to sort-based APIs in Enum - Enum.sort(dates, Date)
https://hexdocs.pm/elixir/Calendar.html#strftime/3
https://github.com/elixir-nx/nx
https://livebook.dev/
https://hexdocs.pm/mix/Mix.html#install/2
CMD+\ or CTRL+\
https://github.com/doawoo/teex
https://hexdocs.pm/elixir/Kernel.html
https://hexdocs.pm/elixir/Kernel.html#then/2
https://hexdocs.pm/elixir/Kernel.html#tap/2
https://hexdocs.pm/elixir/Range.html
https://hexdocs.pm/elixir/Range.html#disjoint?/2
https://github.com/elixir-lang/elixir/blob/a64d42f5d3cb6c32752af9d3312897e8cd5bb7ec/lib/elixir/lib/range.ex#L249-L251
https://math.stackexchange.com/questions/1656120/formula-to-find-the-first-intersection-of-two-arithmetic-progressions
Guest Information
https://twitter.com/josevalim – on Twitter
https://github.com/josevalim – on Github
https://dashbit.co/ – Dashbit website and blog
https://erlef.org/news/ – The Erlang Ecosystem Foundation news
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Apr 19, 2022 • 39min
95: Rustler Precompiled with Philip Sampaio
The recent announcement of Rustler Precompiled prompted a lot of interest and questions. We talk with Philip Sampaio to understand what he created and what problem it helps solve. The project helps lower the bar for using Rust libraries for NIFs in Elixir making it possible to see more libraries using Rustler in the future. He explains what prompted the work initially and how projects can benefit from it. We discuss what it means for internal company projects and especially for libraries. He explains how the project addresses the many architecture and platform combinations too. We end with learning about his sample CI project that shows us how to set up our own CI systems to use it.
Show Notes online - http://podcast.thinkingelixir.com/95
Elixir Community News
https://github.com/phoenixframework/phoenix/pull/4742 – Phoenix presence client
https://twitter.com/elixirphoenix/status/1511393478873427982 – Twitter thread discussing the Phoenix presence client
https://hexdocs.pm/phoenix_live_view/changelog.html#0-17-8-2022-04-06 – LiveView 0.17.8 released. Includes the HEEx template formatter
https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.HTMLFormatter.html – Docs on how to set it up
Issues discussing VS Code problems
https://github.com/elixir-lsp/vscode-elixir-ls/issues/242
https://github.com/elixir-lsp/vscode-elixir-ls/issues/241
https://github.com/DockYard/flame_on – flame_on library updated
https://dockyard.com/blog/2022/02/22/profiling-elixir-applications-with-flame-graphs-and-flame-on – Original flame_on announcement post for more info
https://twitter.com/sorentwo/status/1513630468490645509 – Oban adds “inline mode” to make testing more straightforward
https://www.mitchellhanberg.com/how-eex-turns-your-template-into-html/ – Mitchell Hanberg wrote an article about how EEx works
https://podcast.thinkingelixir.com/92 – Previous interview with Mitchell Hanberg
https://exercism.org/tracks/elixir/exercises/take-a-number-deluxe – Exercism.io GenServer learning exercise was added.
https://twitter.com/atyborska93/status/1513807461043552256 – Angelika shares about the Exercism.io update
https://twitter.com/whatyouhide/status/1512100896653590535 – Andrea Leopardi is working at Apple now on their Environment team.
https://www.apple.com/environment/ – More about the Apple Environment team
https://www.youtube.com/watch?v=R7t7zca8SyM – “Elixir in 100 seconds” video
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://dashbit.co/blog/rustler-precompiled
https://twitter.com/philipsampaio/status/1503809314489831441
https://github.com/philss/rustler_precompiled
https://github.com/philss/rustler_precompilation_example
https://github.com/philss/floki
https://github.com/rusterlium/rustler
https://github.com/servo/html5ever
https://github.com/elixir-nx/nx
https://hex.pm/packages?search=depends%3Ahexpm%3Arustler&sort=total_downloads – Current Hex packages using rustler
https://github.com/elixir-nx/nx/tree/main/nx#readme
https://elixir-nx.github.io/explorer/Explorer.DataFrame.html
https://www.pola.rs/
https://github.com/discord/sorted_set_nif
https://ziglang.org/
https://github.com/ityonemo/zigler
https://github.com/philss/rustler_precompiled/blob/main/PRECOMPILATION_GUIDE.md
https://github.com/philss/rustler_precompilation_example
Guest Information
https://twitter.com/philipsampaio – on Twitter
https://github.com/philss/ – on Github
https://dashbit.co/blog – Dashbit blog where he writes
https://phils.dev – Personal blog
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Apr 12, 2022 • 1h
94: Benchee and OpenSource with Tobias Pfeiffer
We talk with Tobias Pfeiffer about his popular performance benchmarking tool Benchee. We learn about why he created it, what's special about it, and the big features in the latest release. It was 2 years between this release and the previous one. Tobi talks openly about the technical challenges that compounded with personal challenges, feelings of obligation, anxiety, and the drive for perfection. As developers, many of us struggle with these same issues and it helps just hearing that we're not alone.
Show Notes online - http://podcast.thinkingelixir.com/94
Elixir Community News
https://www.devsforukraine.io/ – Devs for Ukraine online conference, April 25-26
https://github.com/sorentwo/oban/pull/677 – Oban library putting effort into documentation guides. Testing is the first out.
https://medium.com/membraneframework/introducing-auto-demands-release-of-membrane-v0-9-0-c0213d8efa51 – Membrane Framework release v0.9.0 was announced
https://podcast.thinkingelixir.com/43 – Previous show covering more about Membrane
https://supabase.com/blog/2022/03/30/supabase-enterprise#elixir-livebooks – Supabase announced Livebooks for Supabase
https://github.com/supabase/livebooks
https://podcast.thinkingelixir.com/73 – Previous show with Paul Copplestone about Supabase
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://github.com/bencheeorg/benchee
https://pragtob.wordpress.com/2022/03/08/benchee-1-1-0-released-why-did-it-take-so-long/
http://www.pragtob.info/
https://github.com/PragTob?tab=repositories – List of current github repositories
https://remote.com/
https://nextjs.org/ – NextJS is react
https://spawnfest.org/
https://github.com/github/scientist – Scientist ruby gem
https://github.com/cwbriones/scientist – Elixir port of the library
[Application Performance Monitoring (APM)](Application Performance Monitoring (APM))
https://en.wikipedia.org/wiki/Garbage_collection_(computer_science)
https://www.youtube.com/watch?v=aqLujfzvUgM – Devon Estes - Digging through the garbage
https://github.com/OvermindDL1
https://github.com/whatyouhide/stream_data
https://www.rug-b.de/
https://github.com/bencheeorg/benchee/issues/313 – Benchee Mac issue
https://www.shopify.com/
https://rubygems.org/gems/simplecov
https://github.com/alco/benchfella
https://rubygems.org/gems/benchmark-ips
https://github.com/bencheeorg/benchee#hooks-setup-teardown-etc
Guest Information
https://twitter.com/PragTob – on Twitter
https://github.com/PragTob/ – on Github
http://www.pragtob.info/ – Blog
https://pragtob.wordpress.com/ – Blog
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Apr 5, 2022 • 53min
93: Preventing Service Abuse with Michael Lubas
We talk with Michael Lubas about steps we can take to protect our Phoenix applications from common automated bot attacks. We cover API abuse to send email spam, carding attacks, and credential stuffing. We learn how Michael started paraxial.io which aims to specifically serve the Elixir community and more!
Show Notes online - http://podcast.thinkingelixir.com/93
Elixir Community News
https://erlef.org/blog/eef/election-2022-results – Erlang Ecosystem Foundation board election voting results
https://erlef.org/blog/eef/election-2022 – Previous election notice and explanations
https://hexdocs.pm/ex_doc/changelog.html – ExDoc v0.28.3 was released
https://twitter.com/josevalim/status/1508528099973120004 – Call to help move ExDoc away from webpack to esbuild
https://twitter.com/dominicletz/status/1506675402059792388 – iOS app store now has an Elixir application deployed in it!
https://podcast.thinkingelixir.com/69 – Previous interview with Dominic Letz about doing Elixir on the desktop and mobile.
https://www.erlang.org/news/155 – Erlang 25.0 rc-2 was released and requesting feedback
https://twitter.com/josevalim/status/1507443537851392007 – Jose Valim's experience compiling Elixir from scratch on Apple's new MacStudio M1 Max
Conference reminders
https://www.empex.co/mtn – Empex MTN in Salt Lake City on May 6
https://codesync.global/conferences/code-beam-sto-2022/ – CodeBEAM in Stockholm on May 19-20
https://www.elixirconf.eu/ – ElixirConf EU in London on June 9-10
https://elixirconf.com/events – ElixirConf US in Colorado on August 30-Sep2
https://github.com/lucasvegi/Elixir-Code-Smells – Elixir Code Smells - public project
https://fly.io/phoenix-files/safe-ecto-migrations/ – Safe Ecto Migrations
https://twitter.com/TylerAYoung/status/1508413319178297352 – Today I Learned about doctests and importing
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://www.paraxial.io/blog/throttle-requests
https://github.com/michalmuskala/plug_attack
https://owasp.org/Top10/
https://github.com/magento/magento2/issues/28614 – What is a carding attack?
https://owasp.org/www-project-automated-threats-to-web-applications/
http://paraxial.io/
https://frame.io/
https://news.adobe.com/news/news-details/2021/Adobe-Completes-Acquisition-of-Frame.io/default.aspx
https://www.metasploit.com/
https://www.crunchbase.com/
https://owasp.org/www-community/attacks/Credential_stuffing
https://en.wikipedia.org/wiki/Web_application_firewall
Guest Information
https://twitter.com/paraxialio – on Twitter
https://github.com/paraxialio/ – on Github
https://paraxial.io/ – Website
sales@paraxial.io
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Mar 29, 2022 • 48min
92: Temple with Mitchell Hanberg
We talk with Mitchell Hanberg and learn about why he created the alternate Phoenix templating language called “Temple”. He explains how Temple works, some of its unique benefits and where he's going with it in the future. Mitchell also took over maintenance of the testing project Wallaby from Chris Keathley. We revisit what Wallaby is and the special place it can have when building automated full system tests for our projects.
Show Notes online - http://podcast.thinkingelixir.com/92
Elixir Community News
https://twitter.com/josevalim/status/1506248906979659782 – José shared his personal definition of a reduction as "energy".
https://twitter.com/thibaut_barrere/status/1501909747854942212 – PSA for people whose app fails to start on port 5000 when running on the new macOS.
https://dashbit.co/blog/rustler-precompiled – Rustler Precompiled project was announced on the Dashbit blog by Philip Sampaio
https://twitter.com/nervesproject/status/1504821571524964357 – Lots of update Nerves releases on Hex
https://snyk.io/blog/peacenotwar-malicious-npm-node-ipc-package-vulnerability/ – A popular NPM package was maliciously updated by the maintainer as an act of protest. Impacted Vue.js projects.
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://github.com/mhanberg/temple
https://github.com/mhanberg/tableau
https://github.com/mhanberg/blog/tree/mh/tableau
https://github.com/elixir-wallaby/wallaby
https://twitter.com/elixir_wallaby
https://www.selenium.dev/documentation/webdriver/
https://github.com/markaby/markaby
https://crystal-lang.org/
https://luckyframework.org/
https://laravel.com/
https://laravel.com/docs/9.x/blade
https://github.com/elixir-lsp/elixir_sense
https://surface-ui.org/template_syntax
https://surface-ui.org/
https://teamcapybara.github.io/capybara/
https://hexdocs.pm/hound/readme.html
https://www.selenium.dev/
https://keathley.io/blog/concurrent-feature-testing-with-wallaby.html
https://github.com/elixir-wallaby/wallaby/discussions
https://github.com/puppeteer/puppeteer
Guest Information
https://twitter.com/mitchhanberg – on Twitter
https://github.com/mhanberg/ – on Github
https://www.mitchellhanberg.com – Blog
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Mar 22, 2022 • 59min
91: Reviewing Elixir with José Valim - Part 3
José Valim returns to continue with part 3 of our 5 part series as we count down to the 10 year anniversary of the Elixir project we know and love. In Part 3, we talk through the Elixir releases of 1.7, 1.8, and 1.9. We talk about the unification efforts between Elixir and Erlang. These came through changes to error stacktraces, how documentation is stored, a unified logger, and more. We learn how features like Mix.target made a big difference for the Nerves project. We also hear the call for contributors to help bring a few remaining date/time features to Elixir. The big feature in Elixir 1.9 was the addition of deployment releases and the early efforts at managing config for releases. We thought this would be a short episode but found there was a lot to talk about and learn!
Show Notes online - http://podcast.thinkingelixir.com/91
Elixir Community News
https://github.com/bencheeorg/benchee – Benchee 1.1.0 release
https://pragtob.wordpress.com/2022/03/08/benchee-1-1-0-released-why-did-it-take-so-long/ – Blog post on Benchee release and why the release took so long
https://twitter.com/josevalim/status/1501482561511510018 – ExDoc gets a new minor feature that lets us syntax highlight HEEx templates
https://elixirpatterns.dev/ – “Elixir Patterns” book is being pre-launched by the authors, Alex Koutmos and Hugo Baraúna.
https://davelucia.com/blog/avro-2.0 – AvroEx 2.0 released
https://www.functionalconf.com/ – Functional Conference 2022 - Asia's Premier Functional Programming Conference
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://podcast.thinkingelixir.com/82 – Part 1
https://podcast.thinkingelixir.com/87 – Part 2
https://github.com/elixir-lang/elixir/blob/v1.7/CHANGELOG.md – Elixir changelog for v1.7
https://www.erlang.org/eeps/eep-0048 – EEP 48
https://hexdocs.pm/nx/Nx.html
https://github.com/elixir-lang/elixir/blob/v1.8/CHANGELOG.md – Elixir changelog for v1.8
https://hexdocs.pm/elixir/Kernel.html#guards – Elixir docs on guards
“dunder“ = a Double Underscore
https://hexdocs.pm/elixir/Protocol.html#derive/3 – Protocol derive
https://hexdocs.pm/elixir/Inspect.html#module-deriving – Deriving for inspect
https://github.com/elixir-lang/elixir/blob/v1.9/CHANGELOG.md – Elixir changelog for v1.9
https://hexdocs.pm/ecto/Ecto.Schema.html#field/3-options
https://hex.pm/packages/date_time_parser
https://github.com/bitwalker/distillery – Mix package used for releases before it was built into Elixir.
Guest Information
https://twitter.com/josevalim – on Twitter
https://github.com/josevalim – on Github
https://dashbit.co/ – Dashbit website and blog
https://erlef.org/news/ – The Erlang Ecosystem Foundation news
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Mar 15, 2022 • 42min
90: Elixir Cards with Tetiana Dushenkivska
We talk with Tetiana Dushenkivska, the creator of Elixir Cards, a series of Elixir flashcards with multiple ways to use them. We talk about why she created the cards, how they helped her, and how others have used them. We talk about learning models and the importance of repetition for memorizing things. Tetiana shares how LiveView is used in the creation of the cards and more! David shares how he used the cards for fun drills at meetups and Tetiana fondly recalls a tournament held at a previous Elixir conf. She also shares what she's working on now for a future online learning system.
Show Notes online - http://podcast.thinkingelixir.com/90
Elixir Community News
https://lu.ma/elixir-social – Elixir lunch is now Elixir social
https://twitter.com/josevalim/status/1499132873114361872 – The Phoenix HEEX template formatter now merged in to LiveView
https://twitter.com/nivenhuh/status/1483895710932078593 – Apple was hiring for an Elixir developer to join their Environment team. Position is closed, but an insight to Elixir usage at the company.
https://www.apple.com/environment/ – Apple environment initiative
https://twitter.com/emjii/status/1500574395936485384 – Performance work continues for Apple's M1 chips and Elixir. This tweet is about slow package unpacking during mix deps.get
https://github.com/akoutmos/prom_ex/pull/122 – Alex Koutmos shared that PromEx now allows you to bundle Grafana's Agent so you can push metrics to Prometheus.
https://fly.io/blog/intro-to-accessibility/ – An intro to Accessibility on the web. LiveBeats will continue to get enhancements so we can see an example.
https://twitter.com/fhunleth/status/1500521232965451776 – Frank Hunleth tuning Nerves for the new Grisp 2 board. Can get pre-built binaries to play with.
https://www.grisp.org/ – Grisp 2 is a hardware device built with Elixir and Erlang in mind
https://github.com/erlang/otp/pull/4750#issuecomment-823816722 – Correction about constant time and :crypto.hash_equals
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://twitter.com/elixircards – Elixir Cards Twitter account
https://twitter.com/gitcards – Git Cards Twitter account
https://www.elixircards.co.uk/ – Website for sales/marketing of Elixir Cards
https://gitflashcards.com/ – Git cards website
https://pragprog.com/titles/elixir16/programming-elixir-1-6/
https://hexdocs.pm/elixir/Enum.html
https://www.eng.auburn.edu/current-students/documents/forgetting-curve.pdf
https://kapeli.com/dash – Dash tool on MacOS for combined documentation searching
https://zealdocs.org/ – Zeal is a Dash-like tool that is OpenSource and cross platform for Linux and Windows.
https://xkcd.com/1168/ – Comic about remembering Tar commands
sales@cleverbunny.io
Guest Information
https://twitter.com/Tetiana12345678 – on Twitter
https://github.com/tetiana12345678 – on Github
sales@cleverbunny.io
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Mar 8, 2022 • 49min
89: Reducing the Friction in Your Flow
We talk about how designing applications with lower friction points is a valuable goal. LiveView plays a powerful role in that mission. Mark pitches why he thinks it's time to take another look at LiveView if you haven't lately. We talk over some of the business benefits, efficiencies gained and we address some common reasons given for "why it can't work." We also cover some remaining areas of improvement for LiveView. Then we talk about how moving your servers closer to users removes additional friction both for deployment and application design. Mark shares how the fly_postgres library works and how it enables people to build "normal" Phoenix applications using Postgres read-replicas across multiple regions. A fun discussion!
Show Notes online - http://podcast.thinkingelixir.com/89
Elixir Community News
https://erlef.org/blog/eef/election-2022 – Erlang Ecosystem Foundation is holding elections soon. You can get involved!
https://gleam.run/news/gleam-v0.20-released/ – Gleam 0.20 released
https://twitter.com/louispilfold/status/1496108145185337344 – Gleam source code is recognized as a language on GitHub and gets syntax highlighting
https://twitter.com/louispilfold/status/1497320401461993473 – Work has begun on a Gleam Language Server
https://github.com/DockYard/flame_on – New performance analyzing library released by Dockyard called "flame_on"
https://dockyard.com/blog/2022/02/22/profiling-elixir-applications-with-flame-graphs-and-flame-on – Post explains more about the flame_on library
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://www.youtube.com/watch?v=IqnZnFpxLjI – Mark's 2021 Elixir Conf talk
https://github.com/readme/featured/server-side-languages-for-front-end – GitHub article "Move over JavaScript - Back-end languages are coming to the front-end"
https://utils.zest.dev/gendiff – David's Phoenix version diffing tool
https://github.com/superfly/fly_rpc_elixir
https://github.com/superfly/fly_postgres_elixir
https://fly.io/docs/getting-started/elixir/
https://fly.io/docs/reference/regions/
https://podcast.thinkingelixir.com/20 – Caleb Porzio interview
https://plausible.io/
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Mar 1, 2022 • 53min
88: Phoenix Debug Toolbar and LiveView Forms with Michael Crumm
We talk with Michael Crumm, the primary author of the Phoenix Live Dashboard, about a new project of his. He is working on a development toolbar that is rendered on your pages and helps profile performance, expose route info, show crash info and more. It’s called PhoenixProfiler and it ties into Telemetry events for data. While still early, it can be a great tool for teams. We also talk about another goal of his, to improve working with forms in LiveView!
Show Notes online - http://podcast.thinkingelixir.com/88
Elixir Community News
https://github.com/J3RN/tree-sitter-gleam – Gleam gets tree-sitter support
https://www.erlang.org/news/153 – Erlang/OTP 25.0-rc1, (Release Candidate 1)
https://twitter.com/stfnlptk/status/1494329717259837443 – Speed improvements for compiling on M1 chips
New ETS table option {write_concurrency, auto}
https://github.com/erlang/otp/pull/4719 – erlang:float_to_binary/2 has new short option
https://www.erlang.org/eeps/eep-0049 – Improved the JIT’s support for tools perf and gdb
https://hexdocs.pm/ex_doc/readme.html#admonition-blocks – New "Admonition Blocks" feature added to ExDoc
https://twitter.com/brooklinjmyers/status/1494813972750483457 – Brooklin Myers working on a Livebook "carousel" feature
Ability to create custom Livebook controls using Kino.JS.Live and Kino.JS
https://github.com/cocoa-xu/otter – Otter project - "Call C functions in a shared library without writing a NIF"
https://podcast.thinkingelixir.com/85 – Interview with Cocoa
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://github.com/mcrumm/phoenix_profiler – Phoenix debug toolbar profiler
https://github.com/phoenixframework/phoenix_live_dashboard – Live Dashboard project
https://www.cargosense.com/
https://www.manning.com/books/the-little-elixir-and-otp-guidebook
https://hexdocs.pm/iex/IEx.Pry.html
https://symfony.com/
https://symfony.com/doc/current/profiler.html
https://github.com/jazzband/django-debug-toolbar
https://github.com/MiniProfiler/rack-mini-profiler
https://github.com/dejan/rails_panel
Guest Information
Michael Allen Crumm Jr.
https://twitter.com/mcrumm – on Twitter
https://github.com/mcrumm/ – on Github
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Feb 22, 2022 • 1h 6min
87: Reviewing Elixir with José Valim - Part 2
José Valim returns to continue with part 2 of our 5 part series as we count down to the 10 year anniversary of the Elixir project we know and love. In Part 2, we talk through the Elixir releases of 1.4, 1.5, and 1.6. We still manage to sneak in discussions about some new things in Elixir 1.13 and the upcoming release. We go deeper on GenStage, Registry, and growing up through production releases. We also learn about the history with unicode while touching on the recent unicode security issues that hit everywhere. We get some behind the scenes insights about the Elixir formatter and the complex logic required to bring ExUnit's pretty diff features, and much more!
Show Notes online - http://podcast.thinkingelixir.com/87
Elixir Community News
https://twitter.com/importantshock/status/1491835261705199620 – GitHub code search based navigation now works with Elixir
https://twitter.com/josevalim/status/1491833991401463809 – José Valim credits the work and says the 10th language to get this feature.
https://github.com/github/roadmap/issues/445 – GitHub public roadmap item - Advisory Database, Elixir/mix support
https://github.com/dependabot/elixir-security-advisories – Dependabot Elixir security advisories
https://github.com/readme/featured/server-side-languages-for-front-end – GitHub published an article feature Elixir and LiveView
https://anchor.fm/helloerlang – New Erlang focused podcast called “Hello Erlang!”
https://twitter.com/josevalim/status/1492464780480856069 – New versions of makeup, flow, nimble_parsec, nimble_pool, and plug were released.
https://github.com/elixir-makeup/makeup – Makeup is a "generic syntax highlighter" used in ExDoc
https://github.com/dashbitco/nimble_parsec
https://github.com/dashbitco/flow
https://github.com/elixir-plug/plug
Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com
Discussion Resources
https://podcast.thinkingelixir.com/82 – Part 1 - Episode 82
https://github.com/elixir-lang/elixir/blob/v1.4/CHANGELOG.md – CHANGELOG v1.4
https://elixirforum.com/
https://en.wikipedia.org/wiki/Embarrassingly_parallel
https://hexdocs.pm/flow/Flow.html
https://hexdocs.pm/elixir/Task.html#async_stream/3
https://hexdocs.pm/elixir/Registry.html
https://github.com/bitwalker/distillery
https://github.com/elixir-lang/elixir/blob/v1.5/CHANGELOG.md – CHANGELOG v1.5
https://github.com/phoenixframework/phoenix/blob/v1.3/CHANGELOG.md – Phoenix 1.3 released
https://trojansource.codes/
https://hexdocs.pm/iex/IEx.Pry.html
https://www.youtube.com/watch?v=p4uE-jTB_Uk – The Feature That No One Knew About in Elixir 1.5 - José Valim
https://github.com/rrrene/credo
https://github.com/elixir-lang/elixir/blob/v1.6/CHANGELOG.md – CHANGELOG v1.6
https://medium.com/@JakeBeckerCode/introducing-elixirls-the-elixir-language-server-d449bbbdfc01
mix test --slowest 3
CMD+\ or CTRL+\
Guest Information
https://twitter.com/josevalim – on Twitter
https://github.com/josevalim – on Github
https://dashbit.co/ – Dashbit website and blog
https://erlef.org/news/ – The Erlang Ecosystem Foundation news
Find us online
Message the show - @ThinkingElixir
Email the show - show@thinkingelixir.com
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward
Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!