11 parts · 11 chapters
Elixir and Phoenix
A language built on the Erlang VM, designed for systems that must keep running while parts of them fail. Measured on this course's laptop (Elixir 1.19.5, OTP 29, 12 schedulers): one million processes spawned in 3.8 seconds at about 2.6 KB each, a message round trip took 1.15 µs, and a supervisor replaced a killed worker immediately.
Eleven parts in the shared language-course shape: basics; types and pattern matching; the BEAM; processes, OTP and supervision; idioms; tooling and testing; Phoenix end to end; Phoenix and LiveView internals; performance; what Elixir is paired with in production (libcluster, Oban, Postgres, releases); and the shared capstone, the ledger API in Elixir.
languageImmutable data, pattern matching, the pipe operator.
runtimeThe BEAM: preemptive schedulers, per-process heaps and GC.
OTPGenServer, Supervisor, Application: let it crash, safely.
webPhoenix, Ecto, Channels and LiveView.
productionReleases, clustering, Oban jobs, telemetry.
capstoneThe ledger API with the shared acceptance tests.
00
Basics
First code
1 ch · ~8 min01Types and Pattern Matching
Dispatch by shape
1 ch · ~8 min02The BEAM
A runtime built for uptime
1 ch · ~8 min03Processes, OTP and Supervision
Measured, then structured
1 ch · ~8 min04Idioms
Happy paths and boundaries
1 ch · ~8 min05Tooling and Testing
Tests that run in parallel
1 ch · ~8 min06Phoenix End to End
A transfers endpoint
1 ch · ~8 min07Phoenix and LiveView Internals
Real-time without a SPA
1 ch · ~8 min08Performance
Find the hot mailbox
1 ch · ~8 min09In Production: What Elixir Is Paired With
A Phoenix stack
1 ch · ~8 min10Capstone: The Ledger API in Elixir
Acceptance
1 ch · ~8 minPart of the language trackShares its shape and capstone with the Go, Python, Java, Rust and Rails courses; uses Concurrency for the actor model.