DevOps
What to Do in the First Ten Minutes of an Incident
The instinct is to start investigating. The first ten minutes are better spent on four other things, and doing them makes the investigation faster.
Method rather than tooling: forming a hypothesis, choosing the cheapest experiment that falsifies it, and finding the wrong assumption underneath a bug.
DevOps
The instinct is to start investigating. The first ten minutes are better spent on four other things, and doing them makes the investigation faster.
Debugging
Using a debugger is supposedly the mark of a serious engineer. Print statements are supposedly what beginners do. Both of those claims are wrong.
AI
Green CI, clean review, broken production. The gap is that tests check whether code matches the implementation and production checks whether it matches reality.
AI
After reviewing a lot of agent generated pull requests, the same six failure patterns keep appearing. They share a structure: locally plausible, globally wrong.
AI
Each agent works fine alone. Chain them and quality collapses. The failure is almost always at the boundary between them.
Python
Your async service handles ten requests a second and pegs one core. Somewhere a synchronous call is blocking the event loop.
Shopify
Add to cart stopped working, the layout shifted, or the page throws a console error. A systematic way to find which app did it and what to do about it.
Engineering Culture
They are genuinely useful and every one you leave in place multiplies the number of code paths nobody tests. Here is how to keep the benefit.
Networking
At-least-once delivery means duplicates are normal operation, not an edge case. Here is how to build a handler that survives them.
Databases
Reading from cache is easy. Knowing when to remove something is where the bugs live, and most of them are races.
Shopify
Most Shopify performance advice is a list of tips in no particular order. Here is how to measure first, find the actual cause, and fix things in the order…
JavaScript
Your editor takes four seconds to show a type error and tsc takes two minutes. There is a profiler for this and almost nobody uses it.