Discover this podcast and so much more

Podcasts are free to enjoy without a subscription. We also offer ebooks, audiobooks, and so much more for just $11.99/month.

99: Slipstream and Tree-Sitter with Michael Davis

99: Slipstream and Tree-Sitter with Michael Davis

FromThinking Elixir Podcast


99: Slipstream and Tree-Sitter with Michael Davis

FromThinking Elixir Podcast

ratings:
Length:
44 minutes
Released:
May 17, 2022
Format:
Podcast episode

Description

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. Slipstr
Released:
May 17, 2022
Format:
Podcast episode

Titles in the series (100)

The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community. Whether you are already experienced with Elixir or just exploring the language, this show is created with you in mind. We discuss community news, Functional Programming, transitioning from OOP, coding conventions, and more. Guests visit the show to help challenge our assumptions, learn about new developments and grow in the process. Subscribe to join us on this journey!