Thinking Elixir Podcast

ThinkingElixir.com
undefined
Mar 16, 2021 • 38min

39: Mix Install and ExDocs for Erlang with Wojtek Mach

Wojtek Mach returns and talks about the new Mix.install/2 feature coming in Elixir 1.12. We learn about some other features coming that will help script authors. We talk about OTP 24 and when we can expect 1.12 to be released, ExDocs support for Erlang libraries, and more! Show Notes online - http://podcast.thinkingelixir.com/39 Elixir Community News https://twitter.com/elixirbookclub – New Elixir Book Club [Discord Elixir Book Club](Discord Elixir Book Club) – https://discord.gg/veN54bAmVa https://github.com/elixir-lang/elixir/commit/4d2be245c0707698df22e9f659120e3daaa82186 – PR that makes doctests 4x faster https://twitter.com/sorentwo/status/1366547813128110083 – Global concurrency limits and global rate limiting in Oban Pro release https://thinkingelixir.com/podcast-episodes/029-running-jobs-using-oban-with-parker-selbert/ – Previous interview with Parker Selbert about Oban and Oban Pro https://elixirforum.com/t/surface-a-component-based-library-for-phoenix-liveview/27671/95 – Surface 0.3.0 release https://twitter.com/josevalim/status/1367759827905245185 – Nx library gets early binding support for LibTorch (from PyTorch) as a custom backend https://dashbit.co/blog/goth-redesign – Wojtek Mach's blog post about Goth library redesign 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/pull/10674 – PR adding Mix.install support https://groups.google.com/g/elixir-lang-core/c/q0k2dX992HU – Mix.install feature proposal discussion https://hexdocs.pm/hex_core/readme.html – Erlang doc example https://github.com/elixir-lang/elixir/blob/master/CHANGELOG.md https://www.erlang.org/news/144 https://github.com/elixir-makeup/makeup https://github.com/peburrows/goth Guest Information https://twitter.com/wojtekmach – on Twitter https://github.com/wojtekmach/ – on Github https://dashbit.co/ – Blog posts on Dashbit Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward
undefined
Mar 9, 2021 • 1h 13min

38: Maintainable Elixir with Saša Jurić

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 Elixir Community News 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 – 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/ – A new Phoenix LiveView book is coming out and is currently in a beta release 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 – The company https://aeternity.com released a project called "Erlscripten" https://seanmoriarity.com/ – Follow Sean Moriarity's blog for his "Nx Tip of the Week" series https://www.erlang.org/news/144 – OTP 24 will release candidates have started https://hex.pm/packages/finch – Finch HTTP library 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 – Ecto.Multi.inspect/2,3 support being added to Ecto 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 – Discord announced why they were moving away from Go to Rust Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://www.manning.com/books/elixir-in-action-second-edition – Elixir in Action 2nd Edition book 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-core-and-the-interface-c267f0da43 https://en.wikipedia.org/wiki/Code_Complete https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670 https://github.com/rrrene/credo https://github.com/rrrene/credo/blob/master/lib/credo/check/readability/strict_module_layout.ex https://github.com/sasa1977/boundary https://github.com/sasa1977/ci https://elixirforum.com/ Guest Information https://twitter.com/sasajuric – on Twitter https://github.com/sasa1977/ – on Github https://www.theerlangelist.com/ – Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward
undefined
Mar 2, 2021 • 51min

37: The Lambda Days Conference and Elixir

After covering the news, we share a live recording of the show from the Lambda Days conference. It was a lot of fun! We covered topics like learning and teaching Elixir, functional programming, strengths of Elixir over Erlang, the developer tooling, why Elixir is awesome even when not building distributed systems, and much more! Show Notes online - http://podcast.thinkingelixir.com/37 Elixir Community News https://dashbit.co/blog/nx-numerical-elixir-is-now-publicly-available – Project Nx has finally gone public! https://github.com/elixir-nx/nx – Project source on Github https://groups.google.com/g/elixir-lang-core/c/Q4ZnK-R59-4/m/Uc2xOJKlAwAJ – Proposal to add before_suite to ExUnit https://github.com/nerves-project/nerves_examples/tree/main/hello_zig – Zig Lang is now available for use on Nerves official platforms https://gleam.run/news/gleam-v0.14-released/ – Gleam Lang 0.14 was released https://hex.pm/packages/prom_ex – PromEx library leaves beta and releases v1.0 https://www.beamrad.io/ – New BeamRad.io Elixir and BEAM focused podcast https://github.com/erlang-ls/erlang_ls/releases/tag/0.10.0 – ElixirLS v0.10.0 released https://github.com/erlang/otp/pull/2960 – OTP 24 get faster float to string algorithm Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://www.lambdadays.org/lambdadays2021 https://codesync.global/conferences/code-beam-v-america-2021/ – Code Beam V America 2021 Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward
undefined
Feb 23, 2021 • 42min

36: Using LiveView and Hooks with Alex Minette

Alexandre Minette shares his adventures with LiveView as he builds a personal finance tracking application. We cover his use of hooks to integrate Javascript libraries that give him the UX he wants. He shares some tips and resources for finding Javascript libraries that work well with LiveView. Alex pushes browser locale data up to the server to customize rendering dates and times for a fun and different approach. We also get his perspective on using Flutter for Mobile development and where he thinks it fits with web technologies like LiveView. Show Notes online - http://podcast.thinkingelixir.com/36 Elixir Community News https://www.tiobe.com/tiobe-index/ – Elixir is number 48 in the TIOBE index https://twitter.com/MarlusSaraiva/status/1360254701808324615 – Surface Catalogue in the works. Similar to a "React Storybook" but for LiveView Surface components. https://twitter.com/wbruce/status/1359299409196896259 – Bruce Williams, co-founder of the Absinthe library announced he's stepping away from being an active core contributor. https://dashbit.co/blog/building-a-custom-broadway-producer-for-the-twitter-stream-api – Dashbit new blog post on using Broadway to consume a Twitter Stream API https://github.com/erlang/otp/issues – Erlang OTP has moved the project to Github for issue management. https://stillstatic.io/ – New static site generator called Still https://dalgona.github.io/Serum/ – Alternative Elixir static site generator https://hexdocs.pm/nerves_system_rpi0/changelog.html#v1-14-0 – New release for Nerves, v1.40. Bring native Apple M1 support and more. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://alex-min.fr/phoenix-live-view-very-large-list-hook/ https://alex-min.fr/live-view-browser-timezone/ https://github.com/fulmicoton/fattable/ - Fattable JS library https://www.npmjs.com/package/moment https://plaid.com/ http://microjs.com http://cldr.unicode.org/ https://github.com/kipcole9 https://github.com/elixir-cldr/cldr https://www.youtube.com/watch?v=MZvmYaFkNJI - Chris McCord's 15 minute Twitter video https://flutter.dev/ Guest Information https://github.com/alex-min – on Github https://alex-min.fr/ – Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward
undefined
Feb 16, 2021 • 41min

35: X-Plane's Elixir MMO with Tyler Young

Tyler Young from X-Plane talks with us about how he added a new MMO feature to the popular flight simulator using Elixir. He shares some behind the scenes information on how it was created and how it’s been working in production. We learn about the single modest server that supports all the mobile users right now. I loved hearing how Tyler found working with Elixir to be super productive. He took on a major new feature that he expected to take over a year but was able to deliver it in less than half the time. He did all the Elixir work himself and was new to it! Show Notes online - http://podcast.thinkingelixir.com/35 Elixir Community News https://elixir-lang.org/blog/2021/02/03/social-messaging-with-elixir/ – New Elixir Case study covers Community.com https://github.com/erlang/otp/pull/3022 – Update to OTP master means 5x faster Phoenix template compilation https://twitter.com/germsvel/status/1357690618621919232 – Bamboo update decouples it from Phoenix https://pragprog.com/titles/sgdpelixir/concurrent-data-processing-in-elixir/ – New beta book "Concurrent Data Processing in Elixir" from PragProg https://twitter.com/wojtekmach/status/1357857784205869056 – Proof of Concept - Erlang docs in ExDocs Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://twitter.com/tylerayoung/status/1349423099410833409 – RakNet implemented in Elixir https://twitter.com/tylerayoung/status/1351578137231056898 https://www.youtube.com/watch?v=JvBT4XBdoUE – The Soul of Erlang and Elixir - Saša Jurić https://developer.x-plane.com/2021/01/have-you-heard-the-good-news-about-elixir/ https://appsignal.com/ https://github.com/X-Plane/elixir-raknet Guest Information https://twitter.com/TylerAYoung – on Twitter https://github.com/s3cur3 – on Github https://www.x-plane.com – X-Plane Github https://tylerayoung.com – Personal Blog https://developer.x-plane.com/blog/ – Developer Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward
undefined
Feb 9, 2021 • 1h 16min

34: José Valim reveals Project Nx

José Valim visits and finally publicly reveals what Project Nx is! He and others have been working on it for 3 months and he's finally ready to unveil it. José will speak more about it at the LambdaDays conference, demonstrating it with code and announcing the release and availability of the OpenSource code. Nx stands for "Numerical Elixir". The Nx project brings a unique numerical mode to Elixir along with GPU support. This important work lays the foundation for a powerful new era with data science in Elixir! Listen in as Jose discusses the details of how this works, how it came about, the goals of the project, what this means for the community, and what comes next. Show Notes online - http://podcast.thinkingelixir.com/34 Elixir Community News https://elixirforum.com/t/introducing-elixirls-the-elixir-language-server/5857/122 – ElixirLS version 0.6.3 released https://github.com/elixir-lsp/elixir-ls/blob/master/CHANGELOG.md – ElixirLS Changelog https://codesync.global/conferences/code-beam-v-america-2021/ – CodeBEAM American conference dates March 10-12 https://hexdocs.pm/oban/changelog.html#2-4-0-2021-01-26 – Oban 2.4.0 released https://twitter.com/sorentwo/status/1354099475191652352 – Oban performance improvement charts https://github.com/wintermeyer/phx_tailwind_generators – Phoenix TailwindCSS generator https://github.com/phoenixframework/phoenix/pull/4191 – Phoenix JavaScript gets more modern with Phoenix ES modules https://fullstackphoenix.com/boilerplates/new – Feedback! We learned about the site FullStackPhoenix which helps you start new projects already setup with several options for how to configure it. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources Nx stands for "Numerical Elixir" https://elixirforum.com/t/anyone-who-wants-to-speculate-about-this-tweet-from-jose/35772/68 – A great text summary of the announcement found on ElixirForum. https://twitter.com/josevalim/status/1356880707474370560 – José Valim released the new Nx logo during our recording. The cute animal is a Numbat! https://en.wikipedia.org/wiki/Numbat https://github.com/erlang/otp/pull/2890 – José's pull request to add 16-bit floats in bitstrings to OTP https://numpy.org/ https://en.wikipedia.org/wiki/Softmax_function https://pragprog.com/titles/smgaelixir/genetic-algorithms-in-elixir/ https://elixirforum.com/t/pelemay-formerly-hastega-challenge-for-gpgpu-on-elixir/22986 https://erlang.org/doc/man/erl_nif.html#dirty_nifs – Information on Dirty NIFs https://twitter.com/bcardarella https://www.tensorflow.org/xla https://tvm.apache.org/ https://mlir.llvm.org/ https://github.com/google/jax https://julialang.org/ https://www.lambdadays.org/lambdadays2021/jose-valim – LambdaDays speaker page https://www.lambdadays.org/lambdadays2021#programme – José speaks on day 2 Promo code for 15% off LambdaDays tickets! Just use "thinkingelixir15" https://twitter.com/josevalim https://twitter.com/sean_moriarity https://twitter.com/elixirlang Guest Information https://twitter.com/josevalim – on Twitter https://github.com/josevalim – on Github https://dashbit.co/ – Dashbit website and blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward
undefined
Feb 2, 2021 • 45min

33: Postgres PubSub and Elixir with Allen Wyma

We talk with Allen Wyma about a Postgres PubSub feature and how it plays nice with Elixir. We dispel the idea that you should always use Phoenix PubSub just because it's there and we cover the value of learning what's built-in to tools like the postgrex library. Allen shares how Postgres PubSub elegantly solved a problem for him and he gives tips for using it. We also talk about teaching Elixir through Allen's YouTube videos and teaching in person with his Teach Me Code efforts. Show Notes online - http://podcast.thinkingelixir.com/33 Elixir Community News https://twitter.com/josevalim/status/1353634780018069506 – Jose Valim will reveal what project Nx is on ThinkingElixir! https://www.lambdadays.org/lambdadays2021/thinking-elixir – 15% discount on LambdaDays tickets, use coupon code "thinkingelixir15" https://www.testingliveview.com/ – German Velasco's Testing LiveView book now has a early-access course https://github.com/elixir-circuits/circuits_quickstart/releases/tag/v0.4.2 – Nerves Circuits Quickstart image was updated with WiFi improvement https://github.com/erlef/setup-elixir – The Erlang Ecosystem Foundation is now the proud owner of the github action "setup-elixir". Providing an "official" Github Actions Elixir CI pipeline. https://github.com/elixir-lang/elixir/pull/10674 – Mix.install landed making it easier to do system scripting with Elixir https://twitter.com/louispilfold/status/1353058992751140867 – Gleam Lang project now generates Erlang typespecs for better integrations https://thinkingelixir.com/podcast-episodes/023-gleam-and-static-types-with-louis-pilfold/ – Previous interview with Louis Pilfold about Gleam https://elixirstatus.com/p/Vmxb2-intellij-elixir-v1192 – Lots of bug fixes for Elixir support in the IntelliJ Elixir plugin https://github.com/hexpm/hexpm/commit/f2e7e946ccf4a402aa26594a6fa412332a7f7c5f – Using custom Hex.pm registries is supported in mix.exs files https://twitter.com/fhunleth/status/1352364417846026240 – mix hex.outdated updated to include a link that shows the diffs https://hex.pm/blog/introducing-hex-preview – Todd Resudek announced preview.hex.pm to see exactly what gets installed with a package https://developer.x-plane.com/2021/01/have-you-heard-the-good-news-about-elixir/ – X-Plane is using Elixir for their new MMO feature 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=i30D_zTVJsc https://www.essentialsql.com/introduction-common-table-expressions-ctes/ https://hexdocs.pm/postgrex/Postgrex.Notifications.html http://www.plangora.com http://www.teachmecode.hk Guest Information https://twitter.com/allenwyma – Allen on Twitter https://twitter.com/Plangora – Plangora on Twitter https://www.github.com/plangora – on Github http://www.plangora.com – Blog http://www.teachmecode.hk – Teach Me Code website Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward
undefined
Jan 26, 2021 • 44min

32: Circuit Breaker and Elixir Patterns with Allan MacGregor

We talk with Allan MacGregor about implementing the Circuit Breaker pattern in Elixir and compare that to just using a job library. We get into a fun discussion about design patterns in Elixir and designing for failure. Allan is creating a project called Site Guardian using the PETAL stack and shares his experiences with it and much more! Show Notes online - http://podcast.thinkingelixir.com/32 Elixir Community News https://elixir-lang.org/blog/2021/01/13/orchestrating-computer-vision-with-elixir/ – New Elixir case study features the company V7 where they use Elixir for orchestrating computer vision. https://www.phoenixframework.org/blog/improving-testing-and-continuous-integration-in-phoenix – Phoenix is using Earthly for running tests on CI and locally https://github.com/sasa1977/ci – Sasa Juric releases a hex package to run CI https://hexdocs.pm/oban/web-changelog.html#v2-5-0-2021-01-15 – Oban Web v2.5.0 is out with new features https://hex.pm/blog/hex-v0.21-released – Hex 0.21 released. Adds registry self-hosting and more! https://hex.pm/docs/self_hosting – Documentation on self-hosting Hex https://twitter.com/josevalim/status/1350004900973981699 – Jose Valim is requesting written guides or blog posts from people who have used "mix phx.gen.auth" and customized it https://github.com/erlang-ls/erlang_ls/releases/tag/0.8.0 – Erlang-LS - Language server 0.8 was released along with a VS Code extension https://thinkingelixir.com/petal-stack-in-elixir/ – ThinkingElixir post on PETAL stack https://changelog.com/posts/petal-the-end-to-end-web-stack – Lars Wikman post on PETAL stack https://redrapids.medium.com/petal-liveview-and-lamp-eb5e9f81a804 – Bruce Tate post on PETAL stack https://www.lambdadays.org/lambdadays2021/thinking-elixir – ThinkingElixir podcast will record live at LambdaDays 2021 - Feb 16th Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://allanmacgregor.com/posts/circuit-breaker-pattern-in-elixir https://siteguardian.dev https://www.humi.ca/ https://en.wikipedia.org/wiki/Flow-based_programming https://hex.pm/packages/flowex https://www.youtube.com/watch?v=BJVzwaTiOdk https://hex.pm/packages/ok https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/ https://bernheisel.com/blog/nostalgia-programming https://dashbit.co/ebooks/the-little-ecto-cookbook – The Little Ecto Cookbook https://microservices.io/ https://www.youtube.com/watch?v=z4p4e9Uwn6I Guest Information https://twitter.com/allanmacgregor – on Twitter https://github.com/amacgregor – on Github https://allanmacgregor.com – Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward
undefined
Jan 19, 2021 • 51min

31: Crawling the Web using Elixir with Oleg Tarasenko and Tze Yiing

Oleg Tarasenko and Tze Yiing discuss web crawling with Elixir, covering legal concerns, codeless scrapers, and handling login pages. They explain how Elixir is ideal for crawling tasks and showcase the crawly project for efficient crawling tasks.
undefined
Jan 12, 2021 • 59min

30: Mutation Testing using Muzak with Devon Estes

We talk with Devon Estes, the creator of a new Elixir mutation testing library called Muzak. Devon joins us to explain what mutation testing is and how it can help development teams in organizations move faster and with greater confidence. We cover when a project can benefit from it, the challenges of offering a PRO version of a library, where Muzak is going in the future, and more! Show Notes online - http://podcast.thinkingelixir.com/30 Elixir Community News https://github.com/elixir-lang/elixir/releases/tag/v1.11.3 – Elixir 1.11.3 was released with mostly bug fixes https://www.lambdadays.org/lambdadays2021 – Lambda Days 2021. An Online Conference 16-19 February 2021 https://twitter.com/lambdadays/status/1346021063671619584 – Jose Valim plans to announce something he's excited about at the conference https://github.com/phoenixframework/phoenix_html/issues/329 – Phoenix HTML is adding validated HTML https://utils.zest.dev/gendiff – David's Elixir generator diffing service Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://devonestes.com/announcing_muzak https://hexdocs.pm/muzak/muzak.html https://hexdocs.pm/assertions/Assertions.html – Another library Devon created in the area of testing https://github.com/bencheeorg/benchee https://github.com/PragTob https://github.com/danmayer/coverband https://github.com/unused-code/unused https://github.com/sponsors Guest Information https://twitter.com/devoncestes – on Twitter https://github.com/devonestes – on Github https://devonestes.com/ – Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app