Hi all I’d like to share a bunch of live coding sessions I’ve streamed on Twitch.
The idea is to explore Crystal’s concurrency, with emphasis on Channels, Fibers and the CSP model, by means of building a simple terminal-based app.
Here is the table of content so far.
- Initialising a Crystal app
- Making HTTP calls
- Reading from config files
- Concurrently checking URLs with Channels and Fibers
- Type-safe config handling
- Sensible monkey patching
- Logging across Fibers
- Signals, timers and select statement
- Fibers owning Channels
- Terminating groups of Fibers
- Propagating Channel closure throughout a pipeline
- Waiting for a pipeline to be done
I recommend watching the videos at 1.5x the regular speed for better enjoyment
I’ll add new ones as they come, in the comment section.
EDIT (Feb 2020): I collected all the videos from the series, plus some comments and errata into a handy blog post.