TIL the different behaviors of time.After and time.Sleep in Go
While working on a simple monitoring library, I came across an issue of wanting to cancel a goroutine when it's context is cancelled, but the way I was using time.Sleep in my code meant that it would wait until the next tick of the interval to respect the context