Practical write-ups on system design, databases, distributed systems and DevOps, organized like documentation so you can read a topic from the first chapter to the last.
Convert between JSON and structs, control output with tags, stream with Encoder and Decoder, and avoid the common encoding/json pitfalls.
A JSON product API with Go 1.22 routing, path parameters, middleware, thread-safe state, timeouts, tests and graceful shutdown.
Call APIs with net/http the production way: timeouts, closing bodies, status codes, contexts, streaming and JSON decoding.
Producer/consumer with goroutines and channels: read a CSV, render templates and send emails with bounded concurrency and proper error handling.
See a data race produce 20 different answers, detect it with -race, and fix it with sync.Mutex, RWMutex or sync/atomic.
Communicate between goroutines with channels, build a concurrent health checker, and implement timeouts with select and context.