Rust is a popular lower level language and the community has created a number of libraries to solve different problems. We talk with Jason Stiebs, a Phoenix Core Team member, about how Elixir and Rust can play well together. Jason wrote an article about how he leveraged an image processing library available in Rust by using the Elixir Rustler package. We talk about how Rustler works through NIFs, and we learn how easy using Rustler has become. It's great to understand that we have a powerful escape hatch like Rustler for those times we need it. We also get Jason’s insights into the Phoenix project and talk about the importance of improving the developer experience when a LiveView crashes and more!
Show Notes online - http://podcast.thinkingelixir.com/152 (http://podcast.thinkingelixir.com/152)
Elixir Community News
- https://www.erlang.org/news/164 (https://www.erlang.org/news/164?utm_source=thinkingelixir&utm_medium=shownotes) – Erlang OTP 26 Final was released
- https://www.erlang.org/blog/otp-26-highlights/ (https://www.erlang.org/blog/otp-26-highlights/?utm_source=thinkingelixir&utm_medium=shownotes)
- https://www.erlang.org/blog/otp-26-highlights/#improvements-of-maps (https://www.erlang.org/blog/otp-26-highlights/#improvements-of-maps?utm_source=thinkingelixir&utm_medium=shownotes) – Improvements to Maps
- https://github.com/elixir-lang/elixir/releases/tag/v1.14.4 (https://github.com/elixir-lang/elixir/releases/tag/v1.14.4?utm_source=thinkingelixir&utm_medium=shownotes) – When Elixir 1.14.4 was released, it included the ability to request sorted map keys when inspecting.
- https://www.erlang.org/blog/otp-26-highlights/#incremental-mode-for-dialyzer (https://www.erlang.org/blog/otp-26-highlights/#incremental-mode-for-dialyzer?utm_source=thinkingelixir&utm_medium=shownotes) – Incremental mode for Dialyzer
- https://erlangforums.com/t/in-erlang-otp-27-0-0-will-no-longer-be-exactly-equal-to-0-0/2586 (https://erlangforums.com/t/in-erlang-otp-27-0-0-will-no-longer-be-exactly-equal-to-0-0/2586?utm_source=thinkingelixir&utm_medium=shownotes) – Erlang OTP 27 where +0.0 will no longer be exactly equal to -0.0.
- https://felt.com/blog/startup-and-shutdown-for-phoenix-applications (https://felt.com/blog/startup-and-shutdown-for-phoenix-applications?utm_source=thinkingelixir&utm_medium=shownotes) – Jason Axelson wrote an article about doing a “Graceful Startup and Shutdown for Phoenix Applications” over on the Felt blog.
- https://smartlogic.io/podcast/elixir-wizards/s10-e08-jose-valim-future-elixir-ecosystem/ (https://smartlogic.io/podcast/elixir-wizards/s10-e08-jose-valim-future-elixir-ecosystem/?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim was on the Elixir Wizards podcast talking about the future development of Elixir
- https://twitter.com/josevalim/status/1658160088354369546 (https://twitter.com/josevalim/status/1658160088354369546?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim was asking for feedback on the "Optional Syntax Sheet" documentation.
- https://elixir-lang.org/getting-started/optional-syntax.html (https://elixir-lang.org/getting-started/optional-syntax.html?utm_source=thinkingelixir&utm_medium=shownotes) – Optional syntax sheet in the Elixir Getting Started docs
- https://twitter.com/sean_moriarity/status/1648466250828484609 (https://twitter.com/sean_moriarity/status/1648466250828484609?utm_source=thinkingelixir&utm_medium=shownotes) – LLaMa support added to Nx and Bumblebee by Sean Moriarity
- https://twitter.com/FrerichRaabe/status/1648696436266004480 (https://twitter.com/FrerichRaabe/status/1648696436266004480?utm_source=thinkingelixir&utm_medium=shownotes) – Nicely summarizing Tweet that frames the LLaMa work
- https://www.youtube.com/watch?v=e2fDjl2hoAk (https://www.youtube.com/watch?v=e2fDjl2hoAk?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirConf EU keynote video titled “Using Elixir & Phoenix To Build A City Software Infrastructure”
- https://www.empex.co/new-york (https://www.empex.co/new-york?utm_source=thinkingelixir&utm_medium=shownotes) – Empex NYC - use code THINKING to get $100 of your ticket
- https://www.lambdadays.org/lambdadays2023 (https://www.lambdadays.org/lambdadays2023?utm_source=thinkingelixir&utm_medium=shownotes) – LambdaDays functional programming conference on 5-6 June 2023 in Kraków Poland
- https://twitter.com/josevalim/status/1658159252773453824 (https://twitter.com/josevalim/status/1658159252773453824?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim will speak about meta-programmable functional notebooks with Livebook
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://fly.io/phoenix-files/elixir-and-rust-is-a-good-mix/ (https://fly.io/phoenix-files/elixir-and-rust-is-a-good-mix/?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir and Rust Is a Good Mix
- https://youtu.be/FADQAnq0RpA?t=3636 (https://youtu.be/FADQAnq0RpA?t=3636?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord specifically calling out Jason for advocating for a better DX around LiveView errors.
- https://github.com/rusterlium/rustler (https://github.com/rusterlium/rustler?utm_source=thinkingelixir&utm_medium=shownotes)
- https://discord.com/blog/using-rust-to-scale-elixir-for-11-million-concurrent-users (https://discord.com/blog/using-rust-to-scale-elixir-for-11-million-concurrent-users?utm_source=thinkingelixir&utm_medium=shownotes)
- https://news.livebook.dev/label/45764 (https://news.livebook.dev/label/45764?utm_source=thinkingelixir&utm_medium=shownotes)
- https://fly.io/phoenix-files/tensors-and-nx-are-not-just-for-machine-learning/ (https://fly.io/phoenix-files/tensors-and-nx-are-not-just-for-machine-learning/?utm_source=thinkingelixir&utm_medium=shownotes)
Guest Information
- https://twitter.com/peregrine (https://twitter.com/peregrine?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter
- https://github.com/jeregrine/ (https://github.com/jeregrine/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github
- https://merveilles.town/@peregrine (https://merveilles.town/@peregrine?utm_source=thinkingelixir&utm_medium=shownotes) – on Fediverse
- mailto:[email protected] (mailto:[email protected]?utm_source=thinkingelixir&utm_medium=shownotes) – Email
Find us online
- Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir)
- Message the show on Fediverse - @[email protected] (https://genserver.social/ThinkingElixir)
- Email the show - [email protected] (mailto:[email protected])
- Mark Ericksen - @brainlid (https://twitter.com/brainlid)
- Mark Ericksen on Fediverse - @[email protected] (https://genserver.social/brainlid)
- David Bernheisel - @bernheisel (https://twitter.com/bernheisel)
- David Bernheisel on Fediverse - @[email protected] (https://genserver.social/dbern)
- Cade Ward - @cadebward (https://twitter.com/cadebward)
- Cade Ward on Fediverse - @[email protected] (https://genserver.social/cadebward)

Rust is a popular lower level language and the community has created a number of libraries to solve different problems. We talk with Jason Stiebs, a Phoenix Core Team member, about how Elixir and Rust can play well together. Jason wrote an article about how he leveraged an image processing library available in Rust by using the Elixir Rustler package. We talk about how Rustler works through NIFs, and we learn how easy using Rustler has become. It's great to understand that we have a powerful escape hatch like Rustler for those times we need it. We also get Jason’s insights into the Phoenix project and talk about the importance of improving the developer experience when a LiveView crashes and more!

Show Notes online - http://podcast.thinkingelixir.com/152

Elixir Community News

https://www.erlang.org/news/164 – Erlang OTP 26 Final was released
https://www.erlang.org/blog/otp-26-highlights/
https://www.erlang.org/blog/otp-26-highlights/#improvements-of-maps – Improvements to Maps
https://github.com/elixir-lang/elixir/releases/tag/v1.14.4 – When Elixir 1.14.4 was released, it included the ability to request sorted map keys when inspecting.
https://www.erlang.org/blog/otp-26-highlights/#incremental-mode-for-dialyzer – Incremental mode for Dialyzer
https://erlangforums.com/t/in-erlang-otp-27-0-0-will-no-longer-be-exactly-equal-to-0-0/2586 – Erlang OTP 27 where +0.0 will no longer be exactly equal to -0.0.
https://felt.com/blog/startup-and-shutdown-for-phoenix-applications – Jason Axelson wrote an article about doing a “Graceful Startup and Shutdown for Phoenix Applications” over on the Felt blog.
https://smartlogic.io/podcast/elixir-wizards/s10-e08-jose-valim-future-elixir-ecosystem/ – José Valim was on the Elixir Wizards podcast talking about the future development of Elixir
https://twitter.com/josevalim/status/1658160088354369546 – José Valim was asking for feedback on the "Optional Syntax Sheet" documentation.
https://elixir-lang.org/getting-started/optional-syntax.html – Optional syntax sheet in the Elixir Getting Started docs
https://twitter.com/sean_moriarity/status/1648466250828484609 – LLaMa support added to Nx and Bumblebee by Sean Moriarity
https://twitter.com/FrerichRaabe/status/1648696436266004480 – Nicely summarizing Tweet that frames the LLaMa work
https://www.youtube.com/watch?v=e2fDjl2hoAk – ElixirConf EU keynote video titled “Using Elixir & Phoenix To Build A City Software Infrastructure”
https://www.empex.co/new-york – Empex NYC - use code THINKING to get $100 of your ticket
https://www.lambdadays.org/lambdadays2023 – LambdaDays functional programming conference on 5-6 June 2023 in Kraków Poland
https://twitter.com/josevalim/status/1658159252773453824 – José Valim will speak about meta-programmable functional notebooks with Livebook

Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected]

Discussion Resources

https://fly.io/phoenix-files/elixir-and-rust-is-a-good-mix/ – Elixir and Rust Is a Good Mix
https://youtu.be/FADQAnq0RpA?t=3636 – Chris McCord specifically calling out Jason for advocating for a better DX around LiveView errors.
https://github.com/rusterlium/rustler
https://discord.com/blog/using-rust-to-scale-elixir-for-11-million-concurrent-users
https://news.livebook.dev/label/45764
https://fly.io/phoenix-files/tensors-and-nx-are-not-just-for-machine-learning/

Guest Information

https://twitter.com/peregrine – on Twitter
https://github.com/jeregrine/ – on Github
https://merveilles.town/@peregrine – on Fediverse
mailto:[email protected] – Email

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]

Sponsored By:

Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Twitter Mentions