Tooling
git bisect run Finds the Commit While You Get Coffee
Manual bisection is careful, slow and error prone. Automated bisection with a script that returns the right exit codes finds the offending commit in log…
How debuggers, profilers and tracers actually work under the hood, and how knowing that makes you faster with them.
Tooling
Manual bisection is careful, slow and error prone. Automated bisection with a script that returns the right exit codes finds the offending commit in log…
Tooling
Grepping a wall of journal output loses the structure the journal already keeps. It is a queryable database of structured fields, and the queries take…
Bug Hunt
The finance team's export was short by a few rows and nobody knew by how many. The client library capped results at a thousand and raised no error, so the…
DevOps
You set the value in three places and the cluster applied a fourth. Helm's precedence rules are short and unforgiving, and the gap between what you edited…
Tooling
Port in use, connection stuck, file handle exhausted. Three of the most common production questions are answered by two old tools that read the kernel's own…
DevOps
A stuck Terraform lock stops every deploy in the company, and the obvious fix, force unlock, is also the dangerous one.
Tooling
A slow request is five possible slow things. One curl flag with a write-out template splits the total into DNS, connect, TLS, time to first byte and…
Opinion
Ingesting everything is not observability. Most platforms give you a fast grep over a huge bill, and the ability to answer a question you did not know to…
Deep Dive
A DNS answer passes through four or five caches before it reaches your code, each with its own TTL and its own opinion.
Tooling
When CPU goes to 100 percent and your metrics show nothing, sampling the kernel's own profiler for thirty seconds will hand you the exact function responsible.
Code Review
Four thousand changed lines, all whitespace, and one moved operator. The reviewer skimmed it as formatting and approved it.
Tooling
You do not need to read packets to get value out of tcpdump. Four flags, three filters and a handful of patterns will settle most arguments about whether…