Shards
Short-form observations, book notes, links, and commentary.
Notes on Go's accepted goroutine leak profile and how it reuses the GC to find them.
Notes on Go's newly accepted uuid proposal and the tradeoffs behind the API.
Key takeaways from Amazon's 2007 Dynamo paper.
Why logging at every layer of a service produces noise, and how to log only at the handler level while propagating context from below.
Switch, map of functions, and interface registry for dispatching in Go.
Why & backgrounds execution but doesn't stop output from flooding your terminal.
Adding transaction support to a repository interface without leaking storage details.
Why the middleware-to-handler boundary is a special case for context values.
A simple litmus test for when to use context values in Go.
Decoupling business logic from storage with a small interface in Go.
Why the etcd codebase is my go-to reference for building gRPC services in Go.