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.

Similar Podcasts

Elixir Outlaws

Elixir Outlaws
Elixir Outlaws is an informal discussion about interesting things happening in Elixir. Our goal is to capture the spirit of a conference hallway discussion in a podcast.

The Cynical Developer

The Cynical Developer
A UK based Technology and Software Developer Podcast that helps you to improve your development knowledge and career, through explaining the latest and greatest in development technology and providing you with what you need to succeed as a developer.

Linux For Everyone

Linux For Everyone
A show about the thrilling world of desktop Linux, open-source software, and the community creating it. For beginners and veterans alike! Hosted by Jason Evangelho, Jerry Morrison and Schykle.

109: Digital Signal Processing with NxSignal

July 26, 2022 35:27 25.83 MB Downloads: 0

A new library in the Nx ecosystem under active development is called NxSignal by Paulo Valente. We talk with Paulo to learn what a DSP (Digital Signal Processor) is, how it works, and we touch on the kinds of problems it can solve. We learn about his involvement in Nx, where the library is going, and some unusual ways he's applied it. He also shares how he's using Nx Explorer in production to clean up and process financial data returned in a JSON API and much more! Show Notes online - http://podcast.thinkingelixir.com/109 (http://podcast.thinkingelixir.com/109) Elixir Community News - https://asciinema.org/a/FYnQFc358WaL5uBfwZPoK5IRm (https://asciinema.org/a/FYnQFc358WaL5uBfwZPoK5IRm) – José Valim showed off a new Elixir.1.14 feature of line-by-line breakpoints demonstrated in IEx. - https://github.com/elixir-lang/elixir/pull/11974 (https://github.com/elixir-lang/elixir/pull/11974) – PR for initial Kernel.dbg/2 work - https://twitter.com/josevalim/status/1547154092019122176 (https://twitter.com/josevalim/status/1547154092019122176) - https://github.com/erlang/otp/pull/6144 (https://github.com/erlang/otp/pull/6144) – Implement new Erlang shell - https://blog.rabbitmq.com/posts/2022/07/rabbitmq-3-11-feature-preview-super-streams/ (https://blog.rabbitmq.com/posts/2022/07/rabbitmq-3-11-feature-preview-super-streams/) – RabbitMQ gets a new feature called “Super Streams” - https://github.com/elixir-grpc/grpc (https://github.com/elixir-grpc/grpc) – Paulo Valente became the new maintainer of the Elixir gRPC library - https://twitter.com/josevalim/status/1549091140246331399 (https://twitter.com/josevalim/status/1549091140246331399) – Livebook announcement. Cloud host or new Desktop option. - http://livebook.dev (http://livebook.dev) – Livebook Desktop was launched Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://github.com/polvalente/nx-signal (https://github.com/polvalente/nx-signal) – NxSignal project - https://twitter.com/polvalente/status/1533954854946848771 (https://twitter.com/polvalente/status/1533954854946848771) - https://www.stone.co/ (https://www.stone.co/) – Where Paulo Valente works - https://www.premierguitar.com/gear/gibsons-self-tuning-guitar (https://www.premierguitar.com/gear/gibsons-self-tuning-guitar) – Example of self tuning guitar with built-in DSP - https://en.wikipedia.org/wiki/ListofSuperNESenhancement_chips#DSP (https://en.wikipedia.org/wiki/List_of_Super_NES_enhancement_chips#DSP) – SNES DSP enhancement chips - https://github.com/polvalente/grpclassify (https://github.com/polvalente/grpclassify) – His academic project for transcribing musical notes - http://www.repositorio.poli.ufrj.br/monografias/monopoli10029831.pdf (http://www.repositorio.poli.ufrj.br/monografias/monopoli10029831.pdf) – The final project for his engineering degree that led him to get involved with Nx. - https://grpc.io/ (https://grpc.io/) – gRPC project - https://github.com/elixir-grpc/grpc (https://github.com/elixir-grpc/grpc) – An Elixir implementation of gRPC - https://prometheus.io/docs/introduction/overview/ (https://prometheus.io/docs/introduction/overview/) Guest Information - https://twitter.com/polvalente (https://twitter.com/polvalente) – on Twitter - https://github.com/polvalente/ (https://github.com/polvalente/) – on Github Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

108: Stack Overflow Survey Results 2022

July 19, 2022 39:50 28.89 MB Downloads: 0

We were surprised to see how well Elixir and Phoenix performed in the Stack Overflow survey results for 2022! Elixir came in as the #2 most loved language and Phoenix as the #1 most loved framework! And this was their first year appearing as official choices in the survey! We discuss what it means, what we can learn from it, how it compares to other languages and frameworks and what it may indicate for the future. We also discuss ideas to help support and grow the community. Show Notes online - http://podcast.thinkingelixir.com/108 (http://podcast.thinkingelixir.com/108) Elixir Community News - https://twitter.com/josevalim/status/1544350119759212550 (https://twitter.com/josevalim/status/1544350119759212550) – José Valim's ElixirConf EU keynote is available online. - https://www.youtube.com/playlist?list=PLvL2NEhYV4ZuuF39ADAh6IwIuh8K6gd (https://www.youtube.com/playlist?list=PLvL2NEhYV4ZuuF39_A_DAh6IwIuh8K6gd) – Playlist of other talks. As of this recording there are only 3 available. - José promoted the 5-part series we did with him covering many of the Elixir releases over the past 10 years. - https://podcast.thinkingelixir.com/82 (https://podcast.thinkingelixir.com/82) – Part 1 - https://podcast.thinkingelixir.com/87 (https://podcast.thinkingelixir.com/87) – Part 2 - https://podcast.thinkingelixir.com/91 (https://podcast.thinkingelixir.com/91) – Part 3 - https://podcast.thinkingelixir.com/96 (https://podcast.thinkingelixir.com/96) – Part 4 - https://podcast.thinkingelixir.com/100 (https://podcast.thinkingelixir.com/100) – Part 5 - https://twitter.com/samaaron/status/1544985753964482560 (https://twitter.com/samaaron/status/1544985753964482560) – The "Jab Ready" v4 of Sonic Pi was released. - https://podcast.thinkingelixir.com/106 (https://podcast.thinkingelixir.com/106) – Our recent interview with Sam Aaron on the Sonic Pi project. - https://github.com/sonic-pi-net/sonic-pi/releases/tag/v4.0.0 (https://github.com/sonic-pi-net/sonic-pi/releases/tag/v4.0.0) – v4 of the Sonic Pi - https://twitter.com/yoooodaaaa/status/1544434779327811585 (https://twitter.com/yoooodaaaa/status/1544434779327811585) – Steve Bussey created a Chrome browser extension using LiveView - https://twitter.com/josevalim/status/1545160415042314241 (https://twitter.com/josevalim/status/1545160415042314241) – Livebook Pro idea is dropped. Pursuing an idea called Livebook Hub - https://livebook.dev/ (https://livebook.dev/) – Livebook site, register to be notified about Livebook Hub - https://github.com/fuelen/ecto_erd (https://github.com/fuelen/ecto_erd) – Ecto ERD docs updated. Works fine on umbrella projects. - https://elixirforum.com/t/nerves-1-8-released/48887 (https://elixirforum.com/t/nerves-1-8-released/48887) – Nerves v1.8 released - https://github.com/elixir-lsp/elixir-ls/blob/v0.10.0/CHANGELOG.md#v0100-10-june-2022 (https://github.com/elixir-lsp/elixir-ls/blob/v0.10.0/CHANGELOG.md#v0100-10-june-2022) – ElixirLS v0.10.0 has been released - https://blog.rustprooflabs.com/2022/07/postgres-15-unique-improvement-with-null (https://blog.rustprooflabs.com/2022/07/postgres-15-unique-improvement-with-null) – Postgres 15 adds a new UNIQUE NULLS NOT DISTINCT option - https://twitter.com/AshFramework/status/1545501181308551168 (https://twitter.com/AshFramework/status/1545501181308551168) – Ash Framework coming out of beta with revamped docs - https://podcast.thinkingelixir.com/27 (https://podcast.thinkingelixir.com/27) – Interview with Zach Daniel about Ash Framework - https://2022.elixirconf.com/registration (https://2022.elixirconf.com/registration) – ElixirConf 2022 - hybrid conference. Aug 30+31 are training days - Sept 1+2 are conference days Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - http://example.com/ (http://example.com/) - http://example.com/with-note/ (http://example.com/with-note/) – This has a note - Only a note - https://survey.stackoverflow.co/2022/ (https://survey.stackoverflow.co/2022/) – The Stack Overflow survey results for 2022 - https://twitter.com/josevalim/status/1540252711626706944 (https://twitter.com/josevalim/status/1540252711626706944) – José Valim's thoughts on what the results meant - https://twitter.com/brainlid/status/1542470805149319170 (https://twitter.com/brainlid/status/1542470805149319170) – Asking what others thought it meant. Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

107: Catching Up with Alex Koutmos

July 12, 2022 56:56 41.21 MB Downloads: 0

We caught up with Alex Koutmos, a co-host on an Elixir podcast, book author, and OpenSource library creator. We talk about some of his well known libraries like PromEx, but then go into some of his potentially lesser known ones like Doctor, Replug, Unplug, and MJML EEx. I'm happy to learn more about MJML EEx, an email formatting library for improved cross-mail client readers! We talk about the Nerves Weather Station book, and his new book project Elixir Patterns that makes heavy use of Livebook. Come enjoy a deeper visit with an Elixir community contributor! Show Notes online - http://podcast.thinkingelixir.com/107 (http://podcast.thinkingelixir.com/107) Elixir Community News - https://hex.pm/packages/kino (https://hex.pm/packages/kino) – Kino 0.6.2 was released. This includes Alex Koutmos recent work that makes it easy to render a supervision tree in Livebook. - https://twitter.com/akoutmos/status/1542324451425107968 (https://twitter.com/akoutmos/status/1542324451425107968) - https://github.com/livebook-dev/kino/blob/main/CHANGELOG.md (https://github.com/livebook-dev/kino/blob/main/CHANGELOG.md) - https://twitter.com/akoutmos/status/1542710874586112001 (https://twitter.com/akoutmos/status/1542710874586112001) – Another crazy Livebook improvement that Alex teased is a process tracing viewer. - https://twitter.com/owenbickford/status/1543369745306632192 (https://twitter.com/owenbickford/status/1543369745306632192) – Elixir-LS got an update - “Suggest an appropriate module name with the 'defmodule' snippet” - https://github.com/elixir-lsp/elixir-ls/pull/684 (https://github.com/elixir-lsp/elixir-ls/pull/684) – PR with demonstration video. - https://github.com/fuelen/ecto_erd/ (https://github.com/fuelen/ecto_erd/) – Ecto.ERD library generates ERD diagram from your Ecto schemas - https://twitter.com/josevalim/status/1542165462599057408 (https://twitter.com/josevalim/status/1542165462599057408) – Combined June Elixir announcements - https://pragprog.com/titles/puphoe/building-table-views-with-phoenix-liveview/ (https://pragprog.com/titles/puphoe/building-table-views-with-phoenix-liveview/) – New book titled “Building Table Views with Phoenix LiveView” by Peter Ullrich. - https://twitter.com/sasajuric/status/1542859420740239361 (https://twitter.com/sasajuric/status/1542859420740239361) – Saša Jurić announced he’s working on Elixir in Action 3rd Edition. - https://github.com/peburrows/goth/blob/v1.3.0/CHANGELOG.md (https://github.com/peburrows/goth/blob/v1.3.0/CHANGELOG.md) – Goth library released v1.3. - https://twitter.com/adamwathan/status/1539752930349293569 (https://twitter.com/adamwathan/status/1539752930349293569) – Self-project management tip - "Everything goes smoother when you focus on getting 10% of a project 100% done instead of getting 100% of a project 10% done." Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://hex.pm/users/akoutmos (https://hex.pm/users/akoutmos) – Published packages that Alex maintains - https://pragprog.com/titles/passweather/build-a-weather-station-with-elixir-and-nerves/ (https://pragprog.com/titles/passweather/build-a-weather-station-with-elixir-and-nerves/) – Nerves weather Station book - https://elixirpatterns.dev/ (https://elixirpatterns.dev/) – Elixir Patterns book that I am currently working on with Hugo - https://eaglemms.com/ (https://eaglemms.com/) – Bootstrapping a business with Elixir and LiveView - https://akoutmos.com/post/plug-runtime-config (https://akoutmos.com/post/plug-runtime-config) – Post about Unplug and Replug - https://hex.pm/packages/replug (https://hex.pm/packages/replug) - https://hex.pm/packages/unplug (https://hex.pm/packages/unplug) - https://twitter.com/akoutmos/status/1541078170383835136 (https://twitter.com/akoutmos/status/1541078170383835136) – Tweet about rendering supervision trees using Kino and Mermaid in Livebook. - https://www.whoosh.io/ (https://www.whoosh.io/) - https://www.beamrad.io/ (https://www.beamrad.io/) – Beam Radio podcast where Alex co-hosts. - https://prometheus.io/docs/prometheus/latest/getting_started/ (https://prometheus.io/docs/prometheus/latest/getting_started/) - https://prometheus.io/ (https://prometheus.io/) - https://github.com/beam-telemetry (https://github.com/beam-telemetry) - https://www.timescale.com/ (https://www.timescale.com/) - https://en.wikipedia.org/wiki/TimescaleDB (https://en.wikipedia.org/wiki/TimescaleDB) - https://elixir-radar.com/ (https://elixir-radar.com/) - https://github.com/livebook-dev/kino (https://github.com/livebook-dev/kino) - https://github.com/akoutmos/doctor (https://github.com/akoutmos/doctor) – Doctor library for checking documentation coverage - https://podcast.thinkingelixir.com/101 (https://podcast.thinkingelixir.com/101) – Interview with Ben Johnson about Litestream - https://github.com/akoutmos/litestream (https://github.com/akoutmos/litestream) – Alex's litestream project - https://github.com/akoutmos/sqlite_scale (https://github.com/akoutmos/sqlite_scale) – Experiment with Ecto Dynamic Repos and SQLite - https://hex.pm/packages/mjml_eex (https://hex.pm/packages/mjml_eex) – MjmlEEx allows you to easily create beautiful looking responsive Emails using the MJML template language, with the ergonomics and safety of a Phoenix template. - https://github.com/adoptoposs/mjml_nif (https://github.com/adoptoposs/mjml_nif) - https://mjml.io/ (https://mjml.io/) – The MJML website with documentation about email formatting features. - https://github.com/jdrouet/mrml (https://github.com/jdrouet/mrml) - https://hex.pm/packages/prom_ex (https://hex.pm/packages/prom_ex) – PromEx library - https://www.youtube.com/watch?v=0SkVsUdUutE (https://www.youtube.com/watch?v=0SkVsUdUutE) – Alex's Code BEAM talk from last spring if people want to learn more BEAM + Prometheus + Grafana = Observability Heaven Guest Information - https://twitter.com/akoutmos (https://twitter.com/akoutmos) – on Twitter - https://github.com/akoutmos/ (https://github.com/akoutmos/) – on Github - https://akoutmos.com/ (https://akoutmos.com/) – Blog - https://elixirpatterns.dev/ (https://elixirpatterns.dev/) – Elixir Patterns book Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

106: Coding Music Live in SonicPi with Sam Aaron

July 05, 2022 1:08:10 49.29 MB Downloads: 0

The SonicPi project has been letting people live code musical performances for years. Sam Aaron joins us to talk about the project and how Elixir is playing an increased role. The project uses multiple languages and frameworks, in fact, Joe Armstrong created the Erlang portion for handling the concurrent IO needs. We talk about where the project is, what's new in the upcoming release, and more about the future of Elixir with the project. LiveView as a UI for jamming with your friends in a distributed musical performance tool? Cool! We also talk about SonicPi being used in the education space and introducing kids to coding and much more! Show Notes online - http://podcast.thinkingelixir.com/106 (http://podcast.thinkingelixir.com/106) Elixir Community News - https://github.blog/2022-06-27-github-advisory-database-now-supports-erlang-and-elixir-packages/ (https://github.blog/2022-06-27-github-advisory-database-now-supports-erlang-and-elixir-packages/) – GitHub launched support for Hex in tracking and reporting security advisories for projects - https://survey.stackoverflow.co/2022/ (https://survey.stackoverflow.co/2022/) – StackOverflow released their Developer Survey results - Elixir is no.2 most loved language - Phoenix is no.1 most loved web framework - https://twitter.com/josevalim/status/1540252711626706944 (https://twitter.com/josevalim/status/1540252711626706944) – José Valim's thoughts on the results - https://elixirpatterns.dev (https://elixirpatterns.dev) – Elixir Patterns book is a project by Alex Koutmos and Hugo Baraúna - https://twitter.com/akoutmos/status/1541078170383835136 (https://twitter.com/akoutmos/status/1541078170383835136) – Alex created Kino PR for rendering supervision tree in Livebook - https://hex.pm/packages/nervessystemmangopimqpro (https://hex.pm/packages/nerves_system_mangopi_mq_pro) – Frank Hunleth announced that Nerves now has support for the RISC-V MangoPi - https://twitter.com/fhunleth/status/1541116329553428480 (https://twitter.com/fhunleth/status/1541116329553428480) – Frank's announcement - https://mangopi.cc/ (https://mangopi.cc/) – MangoPi site - https://lpil.uk/blog/deploying-gleam-on-fly-io/ (https://lpil.uk/blog/deploying-gleam-on-fly-io/) – Louis Pilfold use new v0.22 Gleam deployment feature for deploying to Fly.io - https://twitter.com/cigrainger/status/1539538577344045057 (https://twitter.com/cigrainger/status/1539538577344045057) – Explorer v0.2.0 was released - https://podcast.thinkingelixir.com/104 (https://podcast.thinkingelixir.com/104) – Recently interview with Chris Grainger in episode 104 about Explorer. - https://github.com/erlang/rebar3/releases/tag/3.19.0 (https://github.com/erlang/rebar3/releases/tag/3.19.0) – Rebar 3.19.0 - http://pesquisecomelixir.com.br (http://pesquisecomelixir.com.br) – José Valim announced a new initiative called "Research with Elixir" - https://twitter.com/josevalim/status/1541775306767450114 (https://twitter.com/josevalim/status/1541775306767450114) – Announcement post from José that includes more information Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://sonic-pi.net/ (https://sonic-pi.net/) - https://github.com/sonic-pi-net/sonic-pi (https://github.com/sonic-pi-net/sonic-pi) - https://github.com/samaaron (https://github.com/samaaron) - https://twitter.com/josevalim/status/1519377962063249409 (https://twitter.com/josevalim/status/1519377962063249409) - https://twitter.com/matschaffer/status/1520914785625280512 (https://twitter.com/matschaffer/status/1520914785625280512) - https://supercollider.github.io/ (https://supercollider.github.io/) - https://en.wikipedia.org/wiki/Kintsugi (https://en.wikipedia.org/wiki/Kintsugi) – Fixing broken pottery with gold - https://www.patreon.com/samaaron (https://www.patreon.com/samaaron) Guest Information - https://twitter.com/samaaron (https://twitter.com/samaaron) – Sam Aaron on Twitter - https://twitter.com/Sonic_Pi (https://twitter.com/Sonic_Pi) – Sonic Pi on Twitter - https://github.com/samaaron (https://github.com/samaaron) – on Github - https://www.instagram.com/samaaron/ (https://www.instagram.com/samaaron/) – Instagram - https://www.linkedin.com/in/samaaron/ (https://www.linkedin.com/in/samaaron/) – LinkedIn - https://www.patreon.com/samaaron (https://www.patreon.com/samaaron) – Patreon Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

105: Plausible Analytics, Elixir, and Privacy with Uku Taht

June 28, 2022 55:08 39.9 MB Downloads: 0

We learn about Plausible Analytics, a privacy respecting alternative to Google Analytics that is cloud or self-hostable, OpenSource and written in Elixir! Uku Taht shares how he founded the company, the mission he is on, and what he prioritizes. The company practices a “transparent by default” approach. This means they share a lot about what’s going on, this includes how they recently reached $1m ARR, some of their growing pains, and dealing with the weight of being “the one who has to fix things.” We end with a candid discussion about wellness in our profession and how when we are too close to the problems, we become blind to our own successes. A great, transparent conversation with Uku! Show Notes online - http://podcast.thinkingelixir.com/105 (http://podcast.thinkingelixir.com/105) Elixir Community News - https://2022.elixirconf.com/ (https://2022.elixirconf.com/) – ElixirConf 2022 - Aug 30 - Sep 2 in Denver, CO. Call for proposals due July 2nd - https://2022.elixirconf.com/registration (https://2022.elixirconf.com/registration) – Early bird tickets are on sale - https://twitter.com/CodeBEAMio/status/1537502784790085634 (https://twitter.com/CodeBEAMio/status/1537502784790085634) – CodeBEAM America (November) is accepting training ideas for their upcoming conference. - https://hexdocs.pm/req/changelog.html#v0-3-0 (https://hexdocs.pm/req/changelog.html#v0-3-0) – Req v0.3 released with a new API - https://hexdocs.pm/req/changelog.html#plugins (https://hexdocs.pm/req/changelog.html#plugins) – List of available Req plugins - reqeasyhtml, reqs3, reqhex, reqgithub_oauth - https://twitter.com/sean_moriarity/status/1537405584710029313 (https://twitter.com/sean_moriarity/status/1537405584710029313) – Sean Moriarity shared a major milestone! The public release of Axon and AxonONNX. - https://podcast.thinkingelixir.com/102 (https://podcast.thinkingelixir.com/102) – Recent interview with Sean Moriarity about this work. - https://twitter.com/elixirweekly/status/1538082201212006400 (https://twitter.com/elixirweekly/status/1538082201212006400) – IntelliJ IDE gets updated Elixir plugin, v13.1.0 - https://twitter.com/whatyouhide/status/1538908870743101440 (https://twitter.com/whatyouhide/status/1538908870743101440) – NimbleLZ4, for performing LZ4 lossless compression, released with the help of Rustler Precompiled Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://github.com/plausible/analytics (https://github.com/plausible/analytics) - https://twitter.com/PlausibleHQ/status/1532265765042376704 (https://twitter.com/PlausibleHQ/status/1532265765042376704) - https://plausible.io/about (https://plausible.io/about) - http://elixirkoans.io/ (http://elixirkoans.io/) - https://www.youtube.com/watch?v=6U7cLUygMeI (https://www.youtube.com/watch?v=6U7cLUygMeI) - https://en.wikipedia.org/wiki/Facebook%E2%80%93CambridgeAnalyticadata_scandal (https://en.wikipedia.org/wiki/Facebook%E2%80%93Cambridge_Analytica_data_scandal) - https://clickhouse.com/ (https://clickhouse.com/) - https://en.wikipedia.org/wiki/Onlineanalyticalprocessing (https://en.wikipedia.org/wiki/Online_analytical_processing) - https://github.com/plausible/clickhouse_ecto (https://github.com/plausible/clickhouse_ecto) - https://plausible.io/blog/you-probably-dont-need-a-single-page-app (https://plausible.io/blog/you-probably-dont-need-a-single-page-app) - https://twitter.com/PlausibleHQ/status/1532265765042376704 (https://twitter.com/PlausibleHQ/status/1532265765042376704) – Announced they reached a revenue milestone Guest Information - https://twitter.com/ukutaht (https://twitter.com/ukutaht) – Uku on Twitter - https://twitter.com/PlausibleHQ (https://twitter.com/PlausibleHQ) – Plausible HQ on Twitter - https://fosstodon.org/@plausible (https://fosstodon.org/@plausible) – Mastodon - https://github.com/ukutaht/ (https://github.com/ukutaht/) – Uku on Github - https://github.com/plausible (https://github.com/plausible) – Plausible on Github - https://plausible.io/blog (https://plausible.io/blog) – Plausible Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

104: Exploring Our Data with Chris Grainger

June 21, 2022 48:54 35.42 MB Downloads: 0

Chris Grainger explains Explorer, Nx's recent addition. It's a “Data Frame” library which sounds far more nebulous than it is. It lets us explore and manipulate two-dimensional data like we already do with DB tables, spreadsheets, CSV files, etc. Only this works in memory, is faster, and has predefined functions that make it very powerful. Explorer fills an important slot in the overall pie for data science and ML in Elixir. However, Explorer is also one of the tools that “regular” Elixir devs can take advantage of today! Show Notes online - http://podcast.thinkingelixir.com/104 (http://podcast.thinkingelixir.com/104) Elixir Community News - https://twitter.com/josevalim/status/1535008937640181760 (https://twitter.com/josevalim/status/1535008937640181760) – At ElixirConf EU, José Valim announced there is an ongoing PhD scholarship for researching and developing a type system for Elixir that is powered by set-theoretic types. - https://www.irif.fr/~gc/ (https://www.irif.fr/~gc/) – Giuseppe Castagna's Home Page. Senior Research Scientist - https://arxiv.org/abs/2111.03354 (https://arxiv.org/abs/2111.03354) – Programming with union, intersection, and negation types - https://twitter.com/fhunleth/status/1534826558774464512 (https://twitter.com/fhunleth/status/1534826558774464512) - https://podcast.thinkingelixir.com/72 (https://podcast.thinkingelixir.com/72) – Typecheck interview - https://github.com/ergo-services/ergo (https://github.com/ergo-services/ergo) – We learned of a Golang library called “ergo” that is an “actor based Framework for creating microservices using technologies and design patterns of Erlang/OTP in Golang” - https://twitter.com/erlangforums/status/1534822378722713601 (https://twitter.com/erlangforums/status/1534822378722713601) – Patch Package OTP 25.0.1 Released - https://erlangforums.com/t/patch-package-otp-25-0-1-released/1526 (https://erlangforums.com/t/patch-package-otp-25-0-1-released/1526) – Minor bug fixes. Zlib updated - https://flowbite.com/docs/getting-started/introduction/ (https://flowbite.com/docs/getting-started/introduction/) – More free alternative to TailwindUI - https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.2 (https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.2) – tailwindcss CLI v3.1.2 released which includes postcss-import into the CLI bundle - https://twitter.com/adamwathan/status/1535989815778463746 (https://twitter.com/adamwathan/status/1535989815778463746) – Adam Wathan, the Tailwind CSS guy, had a fun quote that we liked. - “Open source is “right to repair” for software — nothing more, nothing less. Maintain that attitude and any frustration or entitlement you feel will be replaced with gratitude. Better for maintainers, and better for you.” Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://github.com/elixir-nx/explorer (https://github.com/elixir-nx/explorer) - https://hexdocs.pm/explorer/Explorer.html (https://hexdocs.pm/explorer/Explorer.html) - https://hexdocs.pm/explorer/Explorer.DataFrame.html (https://hexdocs.pm/explorer/Explorer.DataFrame.html) - https://hexdocs.pm/explorer/Explorer.Series.html (https://hexdocs.pm/explorer/Explorer.Series.html) - https://twitter.com/cigrainger/status/1518896955921154048 (https://twitter.com/cigrainger/status/1518896955921154048) – Tweet about using Rustler and Rustler Precompiled - https://hexdocs.pm/explorer/exploring_explorer.html (https://hexdocs.pm/explorer/exploring_explorer.html) – Includes a “Ten Minutes to Explorer” Livebook guide in the docs to walk you through setup to getting started with a good overview. - https://www.cigrainger.com/posts/introducing-explorer/ (https://www.cigrainger.com/posts/introducing-explorer/) - https://databricks.com/glossary/what-are-dataframes (https://databricks.com/glossary/what-are-dataframes) - https://pandas.pydata.org/docs/user_guide/dsintro.html (https://pandas.pydata.org/docs/user_guide/dsintro.html) - https://dataframes.juliadata.org/stable/ (https://dataframes.juliadata.org/stable/) - https://cran.r-project.org/web/packages/tidyr/vignettes/tidy-data.html (https://cran.r-project.org/web/packages/tidyr/vignettes/tidy-data.html) - https://github.com/dashbitco/table (https://github.com/dashbitco/table) - https://huggingface.co/ (https://huggingface.co/) - https://www.amplified.ai/ (https://www.amplified.ai/) – Chris' company - https://pandas.pydata.org/ (https://pandas.pydata.org/) - https://en.wikipedia.org/wiki/Extract%2Ctransform%2Cload (https://en.wikipedia.org/wiki/Extract%2C_transform%2C_load) - https://github.com/tyrchen/ex_polars (https://github.com/tyrchen/ex_polars) – Library that got him started with Rust, Rustler and working with polars - https://hexdocs.pm/rustler_precompiled/RustlerPrecompiled.html (https://hexdocs.pm/rustler_precompiled/RustlerPrecompiled.html) - https://github.com/philss/rustler_precompiled (https://github.com/philss/rustler_precompiled) - https://huggingface.co/docs/transformers/main_classes/tokenizer (https://huggingface.co/docs/transformers/main_classes/tokenizer) - https://github.com/elixir-nx/tokenizers (https://github.com/elixir-nx/tokenizers) - https://docs.rs/crate/polars/0.22.0 (https://docs.rs/crate/polars/0.22.0) - https://github.com/pola-rs/polars (https://github.com/pola-rs/polars) - https://parquet.apache.org/ (https://parquet.apache.org/) - https://avro.apache.org/ (https://avro.apache.org/) - https://arrow.apache.org/overview/ (https://arrow.apache.org/overview/) - https://vega.github.io/vega-lite/ (https://vega.github.io/vega-lite/) - https://www.rdocumentation.org/packages/dplyr/ (https://www.rdocumentation.org/packages/dplyr/) Guest Information - https://twitter.com/cigrainger (https://twitter.com/cigrainger) – on Twitter - https://github.com/cigrainger/ (https://github.com/cigrainger/) – on Github - https://cigrainger.com (https://cigrainger.com) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

103: Vaxine.io and CRDT DBs with James Arthur

June 14, 2022 54:27 39.42 MB Downloads: 0

James Arthur shares his project Vaxine.io, an Elixir layer built on top of a CRDT based distributed Erlang database called Antidote DB. We cover what CRDTs are and introduce how they work. We learn more about Antidote DB, the CURE protocol and especially the Vaxine.io project that adds Ecto types and makes it more approachable to Elixir applications. As applications become more global, the need for strongly consistent distributed writes becomes much more important. Show Notes online - http://podcast.thinkingelixir.com/103 (http://podcast.thinkingelixir.com/103) Elixir Community News - https://www.elixirconf.eu/talks/typecheck-effortless-runtime-type-checking/ (https://www.elixirconf.eu/talks/typecheck-effortless-runtime-type-checking/) – Marten shared an update on the TypeCheck project from ElixirConf.EU (June 9-10) - https://podcast.thinkingelixir.com/72 (https://podcast.thinkingelixir.com/72) – Episode with Martin about TypeCheck - https://twitter.com/elixirphoenix/status/1532707770415325185 (https://twitter.com/elixirphoenix/status/1532707770415325185) - https://twitter.com/wojtekmach/status/1532662628077785088 (https://twitter.com/wojtekmach/status/1532662628077785088) – Screenshot showing the single-file LiveView page - https://github.com/wojtekmach/mixinstallexamples/blob/main/phoenixliveview.exs (https://github.com/wojtekmach/mix_install_examples/blob/main/phoenix_live_view.exs) - Mix Install Examples - Phoenix LiveView app in ~70 LOC (Mix Install Examples - Phoenix LiveView app in ~70 LOC) - https://twitter.com/polvalente/status/1532439823964946432 (https://twitter.com/polvalente/status/1532439823964946432) – New Nx library called nx-signal was shared by the author, Paulo Valente - https://github.com/polvalente/nx-signal (https://github.com/polvalente/nx-signal) - https://twitter.com/josevalim/status/1533136904736198656 (https://twitter.com/josevalim/status/1533136904736198656) – José's cryptic tweet about Torchvision, ONNX, and a LiveView app - https://pytorch.org/vision/stable/index.html (https://pytorch.org/vision/stable/index.html) – Torchvision docs - https://onnx.ai/ (https://onnx.ai/) – ONNX a format for transporting trained machine learning models - https://github.com/thehaigo/live_onnx (https://github.com/thehaigo/live_onnx) – LiveOnnx project that combines the previous things with Axon and LiveView - https://github.com/oestrich/aino (https://github.com/oestrich/aino) – Aino released 0.5 - https://twitter.com/ericoestrich/status/1533995968793919488 (https://twitter.com/ericoestrich/status/1533995968793919488) – Eric explained v0.5 Aino changes - https://twitter.com/josevalim/status/1533907809942880261 (https://twitter.com/josevalim/status/1533907809942880261) – José Valim tweeted a new graphic, teasing something new in Nx land. - https://twitter.com/josevalim/status/1534120503182602240 (https://twitter.com/josevalim/status/1534120503182602240) – José mentioned that there are 3 major announcements this month starting at ElixirConfEU. Stay tuned! Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://vaxine.io (https://vaxine.io) – Vaxine.io website - https://antidotedb.eu (https://antidotedb.eu) – Antidote DB website - https://crdt.tech (https://crdt.tech) – CRDT information website - https://vaxine.io/tech/how-it-works (https://vaxine.io/tech/how-it-works) - https://github.com/vaxine-io (https://github.com/vaxine-io) - https://github.com/AntidoteDB/antidote (https://github.com/AntidoteDB/antidote) – Erlang project by a different group "A planet scale, highly available, transactional database built on CRDT technology" - https://www.antidotedb.eu/ (https://www.antidotedb.eu/) - https://github.com/vaxine-io/vaxine (https://github.com/vaxine-io/vaxine) - https://github.com/vaxine-io/vax (https://github.com/vaxine-io/vax) – Data access library and Ecto integration - https://github.com/vaxine-io/examples (https://github.com/vaxine-io/examples) – Example and demo apps - https://www.foundationdb.org/ (https://www.foundationdb.org/) - https://riak.com/index.html (https://riak.com/index.html) - https://www.cockroachlabs.com/ (https://www.cockroachlabs.com/) - https://en.wikipedia.org/wiki/CockroachDB (https://en.wikipedia.org/wiki/CockroachDB) - https://supabase.com/ (https://supabase.com/) - https://lunar.vc/ (https://lunar.vc/) Guest Information - https://twitter.com/VaxineIO (https://twitter.com/VaxineIO) – Vaxine.io on Twitter - https://github.com/vaxine-io/ (https://github.com/vaxine-io/) – Vaxine Github Organization - https://vaxine.io (https://vaxine.io) – Vaxine.io website - https://vaxine.io/blog (https://vaxine.io/blog) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

102: Machine Learning in Elixir with Sean Moriarity

June 07, 2022 42:12 30.59 MB Downloads: 0

Sean Moriarity, the author of Genetic Algorithms in Elixir, lays out Machine Learning in the Elixir space. We talk about where it is today and where it's going in the future. Sean talks more about his book, how that led to working with José Valim which then led to the creation of Nx. He fills us in on recent ML events with Google and Facebook and shows us how Elixir fits into the bigger picture. It's a fast developing area and Sean helps us follow the important points even if we aren't doing ML ourselves… because our teams may still need it. Show Notes online - http://podcast.thinkingelixir.com/102 (http://podcast.thinkingelixir.com/102) Elixir Community News - https://github.com/phoenixframework/phoenixliveview/blob/v0.17.10/CHANGELOG.md (https://github.com/phoenixframework/phoenix_live_view/blob/v0.17.10/CHANGELOG.md) – Phoenix LiveView gets a minor release v0.17.10 with formatting improvements - https://www.rakeroutes.com/2022/05/18/let-s-write-an-elixir-livebook-smart-cell (https://www.rakeroutes.com/2022/05/18/let-s-write-an-elixir-livebook-smart-cell) – Creating custom Livebook Smart Cells - https://twitter.com/evadne/status/1527651328188723209 (https://twitter.com/evadne/status/1527651328188723209) – Etso was updated to work with the latest Ecto - https://github.com/evadne/etso (https://github.com/evadne/etso) – Etso library Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://pragprog.com/titles/smgaelixir/genetic-algorithms-in-elixir/ (https://pragprog.com/titles/smgaelixir/genetic-algorithms-in-elixir/) – Genetic Algorithms in Elixir - https://github.com/elixir-nx/nx (https://github.com/elixir-nx/nx) – Numerical Elixir (Nx) - https://github.com/elixir-nx/axon (https://github.com/elixir-nx/axon) – Nx-powered Neural Networks for Elixir. - https://pragprog.com/titles/smgaelixir/genetic-algorithms-in-elixir/ (https://pragprog.com/titles/smgaelixir/genetic-algorithms-in-elixir/) – Book - Genetic Algorithms in Elixir - https://scala-lang.org/ (https://scala-lang.org/) - https://www.quora.com/ (https://www.quora.com/) - https://pragprog.com/titles/elixir16/programming-elixir-1-6/ (https://pragprog.com/titles/elixir16/programming-elixir-1-6/) - https://pragprog.com/titles/phoenix14/programming-phoenix-1-4/ (https://pragprog.com/titles/phoenix14/programming-phoenix-1-4/) - https://www.linkedin.com/in/briancardarella/ (https://www.linkedin.com/in/briancardarella/) - https://dockyard.com/ (https://dockyard.com/) - https://dockyard.com/blog/authors/sean-moriarity (https://dockyard.com/blog/authors/sean-moriarity) – Sean's blog posts on Dockyard blog - https://numpy.org/ (https://numpy.org/) - https://llvm.org/ (https://llvm.org/) - https://en.wikipedia.org/wiki/Softmax_function (https://en.wikipedia.org/wiki/Softmax_function) - https://en.wikipedia.org/wiki/Naturallanguageprocessing (https://en.wikipedia.org/wiki/Natural_language_processing) - https://xkcd.com/1897/ (https://xkcd.com/1897/) – XKCD comic - https://www.image-net.org/ (https://www.image-net.org/) - https://www.deeplearningbook.org/ (https://www.deeplearningbook.org/) - https://ai.googleblog.com/2022/04/pathways-language-model-palm-scaling-to.html (https://ai.googleblog.com/2022/04/pathways-language-model-palm-scaling-to.html) - https://erlef.org/wg/machine-learning (https://erlef.org/wg/machine-learning) – Erlang Eco-system foundation machine working group Guest Information - https://twitter.com/sean_moriarity (https://twitter.com/sean_moriarity) – on Twitter - https://github.com/seanmor5/ (https://github.com/seanmor5/) – on Github - https://seanmoriarity.com (https://seanmoriarity.com) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

101: Replicating SQLite using Litestream with Ben Johnson

May 31, 2022 1:02:15 45.03 MB Downloads: 0

Ben Johnson explains his project Litestream.io, an OpenSource tool that replicates SQLite databases to remote servers and to backup locations like S3 for durability. We talk about how moving data out to the user creates true edge applications. We discuss what types of problems this helps solve, the architectures that become possible, and how a globally distributed Phoenix application could use this. He shares how Fly.io acquired the project and brought him on full-time to continue his work on it. Fascinating discussion that challenges many of the assumptions about how we've been building “web” systems for years. Show Notes online - http://podcast.thinkingelixir.com/101 (http://podcast.thinkingelixir.com/101) Elixir Community News - https://www.erlang.org/blog/my-otp-25-highlights/ (https://www.erlang.org/blog/my-otp-25-highlights/) – OTP 25 was officially released - https://www.erlang.org/eeps/eep-0049 (https://www.erlang.org/eeps/eep-0049) – EEP document discussing the “maybe” expression - https://www.erlang.org/doc/reference_manual/expressions.html#maybe (https://www.erlang.org/doc/reference_manual/expressions.html#maybe) – Official docs for “maybe” feature - https://www.erlang.org/blog/faster-rand/ (https://www.erlang.org/blog/faster-rand/) – A new fast Pseudo Random Generator - https://jobs.ericsson.com/job/Stockholm-Open-SourceErlang-Developer-Stoc/746811902/ (https://jobs.ericsson.com/job/Stockholm-Open-SourceErlang-Developer-Stoc/746811902/) – Ericsson, the company behind Erlang, is hiring for an OpenSource developer to join the Erlang team. - https://www.bbc.com/news/business-61562651 (https://www.bbc.com/news/business-61562651) – Klarna layoffs - https://hexdocs.pm/elixir/main/PartitionSupervisor.html (https://hexdocs.pm/elixir/main/PartitionSupervisor.html) – PartitionManager feature coming in Elixir v1.14 has docs online so you can learn about it early. - https://twitter.com/DNAutics/status/1528434291872505856 (https://twitter.com/DNAutics/status/1528434291872505856) – Isaac Yonemoto made the JavaScript engine in Zig accessible through Zigler and therefore Elixir - https://podcast.thinkingelixir.com/98 (https://podcast.thinkingelixir.com/98) – Follow-up from episode 98 with Dominic Letz about writing an Elixir application that runs on mobile devices and can be installed from the iOS AppStore. - https://ionicframework.com/ (https://ionicframework.com/) - https://twitter.com/ElixirConf/status/1526654041626923008 (https://twitter.com/ElixirConf/status/1526654041626923008) – ElixirConf 2022 in Colorado - CFP is open - https://2022.elixirconf.com/speaker-cfp (https://2022.elixirconf.com/speaker-cfp) – Where to submit your talk proposal - https://www.elixirconf.eu/ (https://www.elixirconf.eu/) – ElixirConf EU in London on June 9-10 - https://elixirconf.com/events (https://elixirconf.com/events) – ElixirConf US in Colorado on August 30-Sep2 Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://litestream.io/ (https://litestream.io/) - https://fly.io/blog/all-in-on-sqlite-litestream/ (https://fly.io/blog/all-in-on-sqlite-litestream/) - https://github.com/benbjohnson/litestream (https://github.com/benbjohnson/litestream) – Project on Github - https://sqlite.org/index.html (https://sqlite.org/index.html) - https://sqlite.org/whentouse.html (https://sqlite.org/whentouse.html) – SQLite guide on "when to use" it - https://github.com/elixir-sqlite/ecto_sqlite3 (https://github.com/elixir-sqlite/ecto_sqlite3) - https://github.com/boltdb/bolt (https://github.com/boltdb/bolt) - https://en.wikipedia.org/wiki/Write-ahead_logging (https://en.wikipedia.org/wiki/Write-ahead_logging) - https://raft.github.io/ (https://raft.github.io/) - https://en.wikipedia.org/wiki/Conflict-freereplicateddata_type (https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type) - https://litestream.io/tips/ (https://litestream.io/tips/) – Page covers tips - https://www.kernel.org/doc/html/latest/filesystems/fuse.html (https://www.kernel.org/doc/html/latest/filesystems/fuse.html) – Understanding what a FUSE filesystem is Guest Information - https://twitter.com/benbjohnson (https://twitter.com/benbjohnson) – on Twitter - https://github.com/benbjohnson/ (https://github.com/benbjohnson/) – on Github - https://github.com/benbjohnson/litestream (https://github.com/benbjohnson/litestream) – Project on Github Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

100: 10 Years of Elixir with José Valim

May 24, 2022 1:31:51 66.35 MB Downloads: 0

Our 100th episode is spent with José Valim celebrating 10 years of Elixir. We close out our 5-part series talking about the recent 1.13 release, the upcoming 1.14 release and looking into the future and v2.0. We learn that many features were created with Nx in mind but are still broadly helpful to Elixir developers. José gives a 1-minute explanation of how ex_unit works, explains what usually makes it into a point release, and how adding stepped ranges meant changes to many Enum functions and so much more! In addition to Elixir, we talk about his journey with Dashbit and we end up learning how the song "The Final Countdown" by Europe might actually be teaching functional programming and recursion?? A super packed episode! Show Notes online - http://podcast.thinkingelixir.com/100 (http://podcast.thinkingelixir.com/100) Elixir Community News - https://news.livebook.dev/v0.6-automate-and-learn-with-smart-cells-mxJJe (https://news.livebook.dev/v0.6-automate-and-learn-with-smart-cells-mxJJe) – Livebook v0.6 released with new "Smart Cells" - https://twitter.com/josevalim/status/1524761086880276482 (https://twitter.com/josevalim/status/1524761086880276482) – Livebook Twitter thread - https://www.youtube.com/watch?v=4hVIxyHxwK8 (https://www.youtube.com/watch?v=4hVIxyHxwK8) – Livebook announcement and demonstration video - https://youtu.be/4hVIxyHxwK8?t=409 (https://youtu.be/4hVIxyHxwK8?t=409) – Time signature for talking about making custom Smart Cells - https://github.com/livebook-dev/nerves_livebook (https://github.com/livebook-dev/nerves_livebook) – Nerves Livebook v0.6 was also released - https://stackoverflow.blog/2022/05/11/stack-overflow-2022-developer-survey-is-open/ (https://stackoverflow.blog/2022/05/11/stack-overflow-2022-developer-survey-is-open/) – Stack Overflow - 2022 Developer Survey is open until June 1st. - https://meta.stackoverflow.com/questions/417991/take-the-2022-developer-survey (https://meta.stackoverflow.com/questions/417991/take-the-2022-developer-survey) – More information about the survey - https://twitter.com/DNAutics/status/1526358294016794624 (https://twitter.com/DNAutics/status/1526358294016794624) – Zig adds the ability to execute Javascript from Zig - https://github.com/wojtekmach/req (https://github.com/wojtekmach/req) – Wojtek Mach is working on Req and is adding some pretty cool features - https://github.com/wojtekmach/req_easyhtml (https://github.com/wojtekmach/req_easyhtml) - https://github.com/wojtekmach/req_hex (https://github.com/wojtekmach/req_hex) - https://twitter.com/wojtekmach/status/1525226000283467776 (https://twitter.com/wojtekmach/status/1525226000283467776) – Wojtek teasing a new Req feature - https://twitter.com/wojtekmach/status/1525972732680232960 (https://twitter.com/wojtekmach/status/1525972732680232960) – Wojtek teasing another new Req feature - https://www.youtube.com/playlist?list=PLyO-58-sOapwMYqvLRtvV8AGPdREu5Wg7 (https://www.youtube.com/playlist?list=PLyO-58-sOapwMYqvLRtvV8AGPdREu5Wg7) – Empex MTN presentation videos are up! - https://www.elixirconf.eu/ (https://www.elixirconf.eu/) – ElixirConf EU in London on June 9-10 - https://elixirconf.com/events (https://elixirconf.com/events) – ElixirConf US in Colorado on August 30 - Sep 2 Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://podcast.thinkingelixir.com/82 (https://podcast.thinkingelixir.com/82) – Reviewing Elixir with José Valim - Part 1 - https://podcast.thinkingelixir.com/87 (https://podcast.thinkingelixir.com/87) – Reviewing Elixir with José Valim - Part 2 - https://podcast.thinkingelixir.com/91 (https://podcast.thinkingelixir.com/91) – Reviewing Elixir with José Valim - Part 3 - https://podcast.thinkingelixir.com/96 (https://podcast.thinkingelixir.com/96) – Reviewing Elixir with José Valim - Part 4 - https://github.com/elixir-lang/elixir/blob/v1.13/CHANGELOG.md (https://github.com/elixir-lang/elixir/blob/v1.13/CHANGELOG.md) – v1.13 - https://podcast.thinkingelixir.com/60 (https://podcast.thinkingelixir.com/60) – 60 - Compile Faster with Marc-André Lafortune - mix xref trace FILE - https://podcast.thinkingelixir.com/54 (https://podcast.thinkingelixir.com/54) – AST Parsing using Sourceror with Lucas San Román - New power operator "**" - mix test supports --profile-require=time - https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md (https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md) – v1.14 - Dashbit as a company and growth over time. - Elixir v2.0? - https://podcast.thinkingelixir.com/54 (https://podcast.thinkingelixir.com/54) – AST Parsing using Sourceror with Lucas San Román - https://talonvoice.com/ (https://talonvoice.com/) - https://www.erlang.org/eeps/eep-0054.html (https://www.erlang.org/eeps/eep-0054.html) - https://www.elixirconf.eu/ (https://www.elixirconf.eu/) – ElixirConf EU - hybrid conference 9-10 June 2022 - https://livebook.dev/ (https://livebook.dev/) - https://github.com/elixir-nx/explorer (https://github.com/elixir-nx/explorer) - https://github.com/elixir-nx/scholar (https://github.com/elixir-nx/scholar) - https://github.com/elixir-nx/axon/ (https://github.com/elixir-nx/axon/) - https://podcast.thinkingelixir.com/95 (https://podcast.thinkingelixir.com/95) – Rustler Precompiled with Philip Sampaio - https://github.com/lukaszsamson (https://github.com/lukaszsamson) - https://github.com/elixir-lsp/elixir-ls (https://github.com/elixir-lsp/elixir-ls) - https://github.com/elixir-lang/elixir/issues?q=is%3Aopen+is%3Aissue+milestone%3Av2.0 (https://github.com/elixir-lang/elixir/issues?q=is%3Aopen+is%3Aissue+milestone%3Av2.0) - https://www.youtube.com/watch?v=9jK-NcRmVcw (https://www.youtube.com/watch?v=9jK-NcRmVcw) – Europe - The Final Countdown Guest Information - https://twitter.com/josevalim (https://twitter.com/josevalim) – on Twitter - https://github.com/josevalim (https://github.com/josevalim) – on Github - https://dashbit.co/ (https://dashbit.co/) – Dashbit website and blog - https://erlef.org/news/ (https://erlef.org/news/) – The Erlang Ecosystem Foundation news Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

99: Slipstream and Tree-Sitter with Michael Davis

May 17, 2022 43:49 31.76 MB Downloads: 0

Michael Davis explains Slipstream, a Phoenix channels websocket client library that enables Elixir applications to become a client of a Phoenix channel on another server. Out of this work, an underlying websocket library was created built on mint, which has now officially become part of the mint project. We talk about other libraries in the same space and why Slipstream was created. Michael was also involved in the recent Tree-Sitter Elixir work that Github celebrated and he shares some insight into that work as well! Show Notes online - http://podcast.thinkingelixir.com/99 (http://podcast.thinkingelixir.com/99) Elixir Community News - https://twitter.com/remote_ruby/status/1522546728922226691 (https://twitter.com/remote_ruby/status/1522546728922226691) – José Valim was a guest on the Remote Ruby podcast talking about his history as a Rails core contributor and the creation of Elixir. - https://share.transistor.fm/s/7dc8e2e3 (https://share.transistor.fm/s/7dc8e2e3) – Remote Ruby podcast - https://github.com/kipcole9/image (https://github.com/kipcole9/image) – New image-processing library called Image that leverages libvips though NIF bindings. - https://github.com/libvips/libvips (https://github.com/libvips/libvips) - https://github.com/lucasvegi/Elixir-Code-Smells (https://github.com/lucasvegi/Elixir-Code-Smells) – Elixir Code Smells project - https://github.com/lucasvegi/Elixir-Code-Smells/blob/main/code_smells.livemd (https://github.com/lucasvegi/Elixir-Code-Smells/blob/main/code_smells.livemd) – Elixir Code Smells Livebook notebook - https://litestream.io/ (https://litestream.io/) – Litestream project for SQLite replication - https://fly.io/blog/all-in-on-sqlite-litestream/ (https://fly.io/blog/all-in-on-sqlite-litestream/) – Ben Johnson joined Fly.io and will continue work on Litestream - David's wife had a baby girl! Congrats! Now has 2 kids. - Next episode is 100 and will be the final visit José Valim in our series. Also covers future development. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://github.com/NFIBrokerage/slipstream (https://github.com/NFIBrokerage/slipstream) – Slipstream Phoenix channels websocket client library - https://github.com/NFIBrokerage/mintwebsocket (https://github.com/NFIBrokerage/mint_web_socket) – Separate library that uses Mint and supports websockets. - https://github.com/NFIBrokerage/slipstream/blob/main/guides/implementation.md (https://github.com/NFIBrokerage/slipstream/blob/main/guides/implementation.md) - https://github.com/Azolo/websockex (https://github.com/Azolo/websockex) – Pure Elixir websockets implemented as a special OTP process - https://github.com/ninenines/gun (https://github.com/ninenines/gun) – Popular Erlang HTTP/WebSocket client library from the same group of dependencies as cowboy, the underlying HTTP/WebSocket server for Phoenix - https://github.com/jeremyong/websocket_client (https://github.com/jeremyong/websocket_client) – WebSocket client that underlies phoneixclient and phoenixgensocketclient. Appears to be inactive and it no longer compiles on OTP25. - https://hex.pm/packages/phoenixchannelclient (https://hex.pm/packages/phoenix_channel_client) – Retired library by Justin Schneck - https://hex.pm/packages/phoenix_client (https://hex.pm/packages/phoenix_client) – by Justin Schneck “Elixir Phoenix Client for Channels” - https://github.com/J0/phoenixgensocket_client (https://github.com/J0/phoenix_gen_socket_client) – Another Phoenix Channel client - https://elixirforum.com/t/slipstream-a-slick-elixir-websocket-client-for-phoenix-channels/37456 (https://elixirforum.com/t/slipstream-a-slick-elixir-websocket-client-for-phoenix-channels/37456) – ElixirForum post on Slipstream - https://github.com/nerves-hub/nerveshublink (https://github.com/nerves-hub/nerves_hub_link) – A more prominent dependent of Slipstream. Slipstream is used as the default communication system for embedded devices to talk to the nerves hub (which provides firmware updates) - https://twitter.com/whatyouhide/status/1521381183229210624 (https://twitter.com/whatyouhide/status/1521381183229210624) – mintwebsocket was just moved under the elixir-mint organization - https://twitter.com/josevalim/status/1521390714025758720 (https://twitter.com/josevalim/status/1521390714025758720) – Jose Valim recently credited NFIBrokerage for bringing even more contributions to the Elixir community - https://helix-editor.com/ (https://helix-editor.com/) - https://clojure.org/ (https://clojure.org/) - https://github.com/NFIBrokerage (https://github.com/NFIBrokerage) - https://www.eventstore.com/eventstoredb (https://www.eventstore.com/eventstoredb) - https://github.com/elixir-mint/mint (https://github.com/elixir-mint/mint) - https://github.com/elixir-lang/gen_stage (https://github.com/elixir-lang/gen_stage) - https://grpc.io/ (https://grpc.io/) - https://github.com/tree-sitter/tree-sitter (https://github.com/tree-sitter/tree-sitter) - https://github.com/elixir-lang/tree-sitter-elixir (https://github.com/elixir-lang/tree-sitter-elixir) - https://elixir-lang.org/tree-sitter-elixir/ (https://elixir-lang.org/tree-sitter-elixir/) - https://github.com/jonatanklosko (https://github.com/jonatanklosko) – Jonatan Kłosko did the majority of the work on the Elixir Tree-Sitter library - https://github.com/gleam-lang/tree-sitter-gleam/ (https://github.com/gleam-lang/tree-sitter-gleam/) - https://github.com/ninenines/gun (https://github.com/ninenines/gun) - https://github.com/Azolo/websockex (https://github.com/Azolo/websockex) - https://hex.pm/packages/phoenix_client (https://hex.pm/packages/phoenix_client) - https://github.com/nerves-hub/nerveshublink (https://github.com/nerves-hub/nerves_hub_link) - https://en.wikipedia.org/wiki/HTTP/2 (https://en.wikipedia.org/wiki/HTTP/2) - https://github.com/NFIBrokerage/spear (https://github.com/NFIBrokerage/spear) Guest Information - https://github.com/the-mikedavis (https://github.com/the-mikedavis) – on Github - https://github.com/NFIBrokerage (https://github.com/NFIBrokerage) – Work Github organization Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

98: Elixir in the iOS App Store with Dominic Letz

May 10, 2022 47:26 34.36 MB Downloads: 0

Dominic Letz did something I thought was impossible. He got an Elixir application packaged up, approved, and available through the Apple App Store on iOS devices. The application runs Elixir on the device, creates a web view, and hosts Phoenix LiveView pages. They went further and created a bridge to integrate with more of the platform specific features of the device. Is Android your preferred platform? They have it running there as well and in the Google Play Store. We talk about how it works, challenges overcome, and where it is now. They also created several Github projects that show how to do this yourself to create a cross-platform desktop application and apps for Apple and Android mobile devices. Very cool! They want your help to make it even better. Show Notes online - http://podcast.thinkingelixir.com/98 (http://podcast.thinkingelixir.com/98) Elixir Community News - https://twitter.com/whatyouhide/status/1521381183229210624 (https://twitter.com/whatyouhide/status/1521381183229210624) – Mint now has an official WebSocket client - https://github.com/elixir-mint/mintwebsocket (https://github.com/elixir-mint/mint_web_socket) - https://github.com/NFIBrokerage (https://github.com/NFIBrokerage) - https://github.com/NFIBrokerage/slipstream (https://github.com/NFIBrokerage/slipstream) - https://twitter.com/josevalim/status/1519377962063249409 (https://twitter.com/josevalim/status/1519377962063249409) – José Valim announced Dashbit is sponsoring part-time development of sonic_pi for the next 6 months - https://sonic-pi.net/ (https://sonic-pi.net/) – Sonic Pi website - https://github.com/sonic-pi-net/sonic-pi (https://github.com/sonic-pi-net/sonic-pi) – Sonic Pi project - https://github.blog/2022-04-29-bringing-code-navigation-to-communities/ (https://github.blog/2022-04-29-bringing-code-navigation-to-communities/) – Github gave Elixir another shout-out in a recent blog post “Bringing code navigation to communities”. - https://twitter.com/josevalim/status/1519630932583632897 (https://twitter.com/josevalim/status/1519630932583632897) – The Nx project reaches two major milestones at the same time. - https://github.com/elixir-nx/nx (https://github.com/elixir-nx/nx) - https://hex.pm/packages/exla (https://hex.pm/packages/exla) – EXLA package now on Hex.pm - https://hex.pm/packages/torchx (https://hex.pm/packages/torchx) – Torchx package now on Hex.pm - https://twitter.com/robertoaloi/status/1520395745064542209 (https://twitter.com/robertoaloi/status/1520395745064542209) – WhatsApp's Erlang implementation of the Raft consensus algorithm is now open source - https://github.com/WhatsApp/waraft (https://github.com/WhatsApp/waraft) – WARaft is a Raft library in Erlang by WhatsApp. It provides an Erlang implementation to obtain consensus among replicated state machines. Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://apps.apple.com/us/app/diode-drive/id1605222443 (https://apps.apple.com/us/app/diode-drive/id1605222443) – Diode Drive iOS app - https://play.google.com/store/apps/details?id=io.diode.drive (https://play.google.com/store/apps/details?id=io.diode.drive) – Google Play listing - https://github.com/elixir-desktop/desktop (https://github.com/elixir-desktop/desktop) - https://github.com/elixir-desktop/ios-example-app (https://github.com/elixir-desktop/ios-example-app) – iOS example app - https://github.com/elixir-desktop/android-example-app (https://github.com/elixir-desktop/android-example-app) – Android example app - https://github.com/elixir-desktop/runtimes (https://github.com/elixir-desktop/runtimes) – Prepared runtimes for android and iOS devices. - https://github.com/elixir-desktop/bridge (https://github.com/elixir-desktop/bridge) – Used by “desktop” - does native integrations - https://podcast.thinkingelixir.com/69 (https://podcast.thinkingelixir.com/69) – Previous interview - episode 69 - https://diode.io/diode%20drive/self-custody-for-data-22032/ (https://diode.io/diode%20drive/self-custody-for-data-22032/) – Why you should care about Self-Custody for data now - https://github.com/couchbaselabs/iErl14 (https://github.com/couchbaselabs/iErl14) - https://podcast.thinkingelixir.com/81 (https://podcast.thinkingelixir.com/81) – Elixir in a Burrito with Quinn and Digit - https://www.wxwidgets.org/ (https://www.wxwidgets.org/) Guest Information - https://twitter.com/DominicLetz (https://twitter.com/DominicLetz) – on Twitter - https://github.com/dominicletz/ (https://github.com/dominicletz/) – on Github - https://diode.io/ (https://diode.io/) – Diode.io website - https://github.com/diodechain (https://github.com/diodechain) – Diode Github organization - Elixir Slack's desktop channel Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

97: Avro and Elixir with Dave Lucia

May 03, 2022 48:36 23.54 MB Downloads: 0

Dave Lucia released version 2.0 of AvroEx, an Elixir library for working with Avro protocols and schemas. To understand Avro, we need an overview of the whole Kafka-centric flow! He gives us a taste of the Enterprise soup of JVM tools used for populating data lakes, all for the business benefit of data analysis and machine learning. We may work on Elixir systems that are tasked with hooking into this other Enterprise-y world and getting an overview of the pieces and awareness of the tools available can really help out! Dave also shares his goal of creating a new Markdown parser for Elixir and updates us on the next chapter of his professional journey. Show Notes online - http://podcast.thinkingelixir.com/97 (http://podcast.thinkingelixir.com/97) Elixir Community News - https://twitter.com/wojtekmach/status/1516533938977705990 (https://twitter.com/wojtekmach/status/1516533938977705990) – Wojtek Mach shared some additional reasons for using NIFs to work with Rust or Zig that aren't performance related. - https://twitter.com/atyborska93/status/1516773412848422919 (https://twitter.com/atyborska93/status/1516773412848422919) – Angelika Tyborska shared that the Elixir track on Exercism.io got two new fun practice exercises - http://exercism.org/tracks/elixir/exercises/killer-sudoku-helper (http://exercism.org/tracks/elixir/exercises/killer-sudoku-helper) – Exercism.io Elixir puzzle - Killer Sudoku Helper - https://exercism.org/tracks/elixir/exercises/state-of-tic-tac-toe (https://exercism.org/tracks/elixir/exercises/state-of-tic-tac-toe) – Exercism.io Elixir puzzle - State of Tic Tac Toe - https://gleam.run/news/v0.21-introducing-the-gleam-language-server/ (https://gleam.run/news/v0.21-introducing-the-gleam-language-server/) – Gleam now has a language server - https://twitter.com/cigrainger/status/1518896955921154048 (https://twitter.com/cigrainger/status/1518896955921154048) – Nx Explorer project reaches a new milestone and was released to Hex. - https://hexdocs.pm/explorer/exploring_explorer.html (https://hexdocs.pm/explorer/exploring_explorer.html) – Includes a “Ten Minutes to Explorer” Livebook guide - https://twitter.com/MozillaHubs/status/1516469058849312768 (https://twitter.com/MozillaHubs/status/1516469058849312768) – Mozilla hiring for a Senior Elixir Engineer to help work on their Hubs Team to help build open social spaces for the web. - https://hubs.mozilla.com/ (https://hubs.mozilla.com/) - https://github.com/mozilla/hubs (https://github.com/mozilla/hubs) - https://github.com/mozilla/reticulum (https://github.com/mozilla/reticulum) - https://elixir-lang.org/blog/2021/06/02/social-virtual-spaces-with-elixir-at-mozilla (https://elixir-lang.org/blog/2021/06/02/social-virtual-spaces-with-elixir-at-mozilla) – Elixir blog post from a year ago about the Mozilla Hubs Elixir project. - https://github.com/elixir-makeup/makeup_diff (https://github.com/elixir-makeup/makeup_diff) – Parker Selbert created makeup_diff for displaying diff markup in ExDocs - https://www.erlang.org/blog/type-based-optimizations-in-the-jit/ (https://www.erlang.org/blog/type-based-optimizations-in-the-jit/) – Blog post on the Erlang blog looked interesting. About OTP 25 type optimizations for the JIT compiler. - https://codesync.global/conferences/code-beam-sto-2022/#schedule (https://codesync.global/conferences/code-beam-sto-2022/#schedule) – CodeBeam in Stockholm Sweden speaker lineup and schedule are out. - https://www.empex.co/mtn (https://www.empex.co/mtn) – Empex MTN in Salt Lake City on May 6 - https://www.elixirconf.eu/ (https://www.elixirconf.eu/) – ElixirConf EU in London on June 9-10 - https://elixirconf.com/events (https://elixirconf.com/events) – ElixirConf US in Colorado on August 30-Sep2 Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://davelucia.com/blog/avro-2.0 (https://davelucia.com/blog/avro-2.0) - https://github.com/beam-community/avro_ex (https://github.com/beam-community/avro_ex) - https://avro.apache.org/ (https://avro.apache.org/) - https://kafka.apache.org/ (https://kafka.apache.org/) - https://podcast.thinkingelixir.com/75 (https://podcast.thinkingelixir.com/75) – Previous discussion - https://www.bloomberg.com/professional/solution/bloomberg-terminal/ (https://www.bloomberg.com/professional/solution/bloomberg-terminal/) - https://theoutline.com/ (https://theoutline.com/) - https://elm-lang.org/ (https://elm-lang.org/) - https://developers.google.com/protocol-buffers/ (https://developers.google.com/protocol-buffers/) - https://thrift.apache.org/ (https://thrift.apache.org/) - https://github.com/klarna/erlavro (https://github.com/klarna/erlavro) - https://databricks.com/ (https://databricks.com/) - https://spark.apache.org/ (https://spark.apache.org/) - https://en.wikipedia.org/wiki/Extract,transform,load (https://en.wikipedia.org/wiki/Extract,_transform,_load) - https://databricks.com/glossary/what-is-parquet (https://databricks.com/glossary/what-is-parquet) - https://www.snowflake.com/workloads/data-lake/ (https://www.snowflake.com/workloads/data-lake/) - https://github.com/beam-community (https://github.com/beam-community) - https://github.com/doomspork (https://github.com/doomspork) - https://github.com/surface-ui/surface (https://github.com/surface-ui/surface) - https://github.com/pragdave/earmark (https://github.com/pragdave/earmark) - https://github.com/pragdave (https://github.com/pragdave) - https://github.com/davydog187/marx (https://github.com/davydog187/marx) - https://www.youtube.com/watch?v=dmBdFh5N1g4 (https://www.youtube.com/watch?v=dmBdFh5N1g4) – Migrating from Kafka to RabbitMQ at SimpleBet - Why and How - https://twitter.com/davydog187/status/1512393866653011968 (https://twitter.com/davydog187/status/1512393866653011968) – Announced leaving SimpleBet and co-founding something new. - https://twitter.com/davydog187/status/1512393877575110668 (https://twitter.com/davydog187/status/1512393877575110668) – Co-Founding Bitfo as the CTO. - https://www.bitfo.com/ (https://www.bitfo.com/) - https://ethereumprice.org/ (https://ethereumprice.org/) - https://www.bitcoinprice.com/ (https://www.bitcoinprice.com/) - https://defirate.com/ (https://defirate.com/) Guest Information - https://twitter.com/davydog187 (https://twitter.com/davydog187) – on Twitter - https://github.com/davydog187/ (https://github.com/davydog187/) – on Github - https://davelucia.com (https://davelucia.com) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

96: Reviewing Elixir with José Valim - Part 4

April 26, 2022 1:18:03 56.4 MB Downloads: 0

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 (http://podcast.thinkingelixir.com/96) Elixir Community News - https://github.com/livebook-dev/livebook/pull/1115 (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 (https://github.com/livebook-dev/livebook/discussions) – Livebook project announced and opened a Github Discussions section to the project. - https://github.com/phoenixframework/phoenixlivedashboard/pull/367 (https://github.com/phoenixframework/phoenix_live_dashboard/pull/367) – Full screen mode contribution added to Phoenix LiveDashboard project. - https://podcast.thinkingelixir.com/92 (https://podcast.thinkingelixir.com/92) – Mitch Hanberg talked with us previously about Temple - https://github.com/mhanberg/eexcompilervisualizer (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 (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 (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 (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://github.com/elixir-lang/elixir/blob/v1.10/CHANGELOG.md (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 (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 (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 (https://github.com/elixir-lang/elixir/blob/v1.12/CHANGELOG.md) – Elixir 1.12 changelog - https://www.erlang.org/eeps/eep-0054.html (https://www.erlang.org/eeps/eep-0054.html) – EEP 54 - Provide more information about errors - https://github.com/sasa1977/boundary (https://github.com/sasa1977/boundary) - https://hexdocs.pm/elixir/Enum.html#sort/2-sorting-structs (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://hexdocs.pm/elixir/Calendar.html#strftime/3) - https://github.com/elixir-nx/nx (https://github.com/elixir-nx/nx) - https://livebook.dev/ (https://livebook.dev/) - https://hexdocs.pm/mix/Mix.html#install/2 (https://hexdocs.pm/mix/Mix.html#install/2) - CMD+\ or CTRL+\ - https://github.com/doawoo/teex (https://github.com/doawoo/teex) - https://hexdocs.pm/elixir/Kernel.html (https://hexdocs.pm/elixir/Kernel.html) - https://hexdocs.pm/elixir/Kernel.html#then/2 (https://hexdocs.pm/elixir/Kernel.html#then/2) - https://hexdocs.pm/elixir/Kernel.html#tap/2 (https://hexdocs.pm/elixir/Kernel.html#tap/2) - https://hexdocs.pm/elixir/Range.html (https://hexdocs.pm/elixir/Range.html) - https://hexdocs.pm/elixir/Range.html#disjoint?/2 (https://hexdocs.pm/elixir/Range.html#disjoint?/2) - https://github.com/elixir-lang/elixir/blob/a64d42f5d3cb6c32752af9d3312897e8cd5bb7ec/lib/elixir/lib/range.ex#L249-L251 (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 (https://math.stackexchange.com/questions/1656120/formula-to-find-the-first-intersection-of-two-arithmetic-progressions) Guest Information - https://twitter.com/josevalim (https://twitter.com/josevalim) – on Twitter - https://github.com/josevalim (https://github.com/josevalim) – on Github - https://dashbit.co/ (https://dashbit.co/) – Dashbit website and blog - https://erlef.org/news/ (https://erlef.org/news/) – The Erlang Ecosystem Foundation news Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)

95: Rustler Precompiled with Philip Sampaio

April 19, 2022 38:54 28.22 MB Downloads: 0

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 (http://podcast.thinkingelixir.com/95) Elixir Community News - https://github.com/phoenixframework/phoenix/pull/4742 (https://github.com/phoenixframework/phoenix/pull/4742) – Phoenix presence client - https://twitter.com/elixirphoenix/status/1511393478873427982 (https://twitter.com/elixirphoenix/status/1511393478873427982) – Twitter thread discussing the Phoenix presence client - https://hexdocs.pm/phoenixliveview/changelog.html#0-17-8-2022-04-06 (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/phoenixliveview/Phoenix.LiveView.HTMLFormatter.html (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/242) - https://github.com/elixir-lsp/vscode-elixir-ls/issues/241 (https://github.com/elixir-lsp/vscode-elixir-ls/issues/241) - https://github.com/DockYard/flame_on (https://github.com/DockYard/flame_on) – flameon library updated - https://dockyard.com/blog/2022/02/22/profiling-elixir-applications-with-flame-graphs-and-flame-on (https://dockyard.com/blog/2022/02/22/profiling-elixir-applications-with-flame-graphs-and-flame-on) – Original flameon announcement post for more info - https://twitter.com/sorentwo/status/1513630468490645509 (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/ (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 (https://podcast.thinkingelixir.com/92) – Previous interview with Mitchell Hanberg - https://exercism.org/tracks/elixir/exercises/take-a-number-deluxe (https://exercism.org/tracks/elixir/exercises/take-a-number-deluxe) – Exercism.io GenServer learning exercise was added. - https://twitter.com/atyborska93/status/1513807461043552256 (https://twitter.com/atyborska93/status/1513807461043552256) – Angelika shares about the Exercism.io update - https://twitter.com/whatyouhide/status/1512100896653590535 (https://twitter.com/whatyouhide/status/1512100896653590535) – Andrea Leopardi is working at Apple now on their Environment team. - https://www.apple.com/environment/ (https://www.apple.com/environment/) – More about the Apple Environment team - https://www.youtube.com/watch?v=R7t7zca8SyM (https://www.youtube.com/watch?v=R7t7zca8SyM) – “Elixir in 100 seconds” video Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com) Discussion Resources - https://dashbit.co/blog/rustler-precompiled (https://dashbit.co/blog/rustler-precompiled) - https://twitter.com/philipsampaio/status/1503809314489831441 (https://twitter.com/philipsampaio/status/1503809314489831441) - https://github.com/philss/rustler_precompiled (https://github.com/philss/rustler_precompiled) - https://github.com/philss/rustlerprecompilationexample (https://github.com/philss/rustler_precompilation_example) - https://github.com/philss/floki (https://github.com/philss/floki) - https://github.com/rusterlium/rustler (https://github.com/rusterlium/rustler) - https://github.com/servo/html5ever (https://github.com/servo/html5ever) - https://github.com/elixir-nx/nx (https://github.com/elixir-nx/nx) - https://hex.pm/packages?search=depends%3Ahexpm%3Arustler&sort=total_downloads (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://github.com/elixir-nx/nx/tree/main/nx#readme) - https://elixir-nx.github.io/explorer/Explorer.DataFrame.html (https://elixir-nx.github.io/explorer/Explorer.DataFrame.html) - https://www.pola.rs/ (https://www.pola.rs/) - https://github.com/discord/sortedsetnif (https://github.com/discord/sorted_set_nif) - https://ziglang.org/ (https://ziglang.org/) - https://github.com/ityonemo/zigler (https://github.com/ityonemo/zigler) - https://github.com/philss/rustlerprecompiled/blob/main/PRECOMPILATIONGUIDE.md (https://github.com/philss/rustler_precompiled/blob/main/PRECOMPILATION_GUIDE.md) - https://github.com/philss/rustlerprecompilationexample (https://github.com/philss/rustler_precompilation_example) Guest Information - https://twitter.com/philipsampaio (https://twitter.com/philipsampaio) – on Twitter - https://github.com/philss/ (https://github.com/philss/) – on Github - https://dashbit.co/blog (https://dashbit.co/blog) – Dashbit blog where he writes - https://phils.dev (https://phils.dev) – Personal blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - Cade Ward - @cadebward (https://twitter.com/cadebward)