GoAdvancedabout 9 hours16 lessons
Recommended first: Cairn Depot
Run the data desk for a line of six weather buoys. You start by summarising one batch at a time and finish with a pipeline that fans readings out to a worker pool, merges them back, survives a buoy that goes silent, cancels work it no longer needs and shuts down without losing a single reading. Along the way you replay a race condition in slow motion, guard shared tallies with a mutex, hand ownership to a single goroutine instead, and measure a worker pool in logical ticks instead of a stopwatch. The harbour board shows readings flowing through stages, workers busy and idle, queue depths, cancelled work and the race itself.
Each lesson adds one working part to your build.
Chapter 1
Start goroutines, hand readings over channels, queue them in buffers and wait on several things with select.
Chapter 2
Watch a race condition happen in slow motion, then fix it three ways: a mutex, a once-and-atomic pair, and a single owner.
Chapter 3
Chain stages into a pipeline, hire a worker pool, fan work out and merge it back, then measure it all in logical ticks.
Chapter 4
Cancel work nobody needs, give up on a silent buoy, collect errors from many goroutines and shut a whole pipeline down without losing a reading.