Plain-English explainers on how the internet actually breaks — DNS, HTTP, SSL, redirect chains, and how services die.
The Google killing field: a decade of buried services and what they teach us
Reader, Wave, Buzz, Inbox, Allo, Stadia, Domains, Jamboard. Google has shipped — and quietly killed — a staggering number of consumer products. Looking at the pattern reveals which signals to read before you invest in any cloud-only tool.
Internet Graveyard
3 partsclientHold, redemptionPeriod, pendingDelete: every state your domain can be in, decoded
Domains do not simply go from 'active' to 'gone'. They pass through a precisely-defined sequence of states — most invisible to the owner until something breaks. Here is the full lifecycle, the EPP codes that mark each step, and exactly how long you have to react at every point.
When a service shuts down, what actually happens to your data?
Pocket, Skype, Stadia, and Google Reader followed wildly different playbooks. Some refunded everything. Some preserved data for years in an archive. Some closed the export window before users noticed. The patterns are surprisingly consistent — and predict what to do *before* the announcement.
Permanently shut down or just down right now? A 10-minute diagnosis
A site won't load. Is it a five-minute hiccup, an outage that ends today, or has the service quietly been dead for two years? The diagnostic isn't intuition — it's six concrete signals, in priority order. Here is the workflow we run.
More from the notebook
Keyboard speed tests, decoded: what WPM, CPS, and key latency actually measure
Three numbers — words per minute, clicks per second, and key latency — get blurred together by most online tests. They are not the same skill, and only one of them is a measurement of your hardware. Here's what each one is really telling you, where the numbers come from, and how to read your own result honestly.
What to do before reporting an app outage
The five-minute checklist that turns a frustrated 'X is broken' into a useful report. Five steps before you open a support ticket — most of them resolve the issue, and the rest give you the evidence the support team actually needs.
How CDN, DNS, and cloud outages affect apps you use every day
Apps you use daily share fewer pieces of infrastructure than you'd think. When one of those pieces fails — a single CDN, a single DNS provider, a single AWS region — half the internet seems to break at once. Here's why, with the canonical examples and what you can do about it.
How to build a simple dependency status dashboard for your team
Every team eventually needs an internal page that shows which of their third-party dependencies are healthy right now. Here's the minimum viable version — what to monitor, what to skip, and where the simple approach breaks down.
DNS vs SSL vs HTTP errors: what actually broke?
A broken page can fail at any of four layers — DNS, TCP, TLS, or HTTP. The error message you see almost never names the layer, but the layer is the entire answer. Here's how to tell them apart in under a minute.
How to check if ChatGPT, Discord, GitHub, or Cloudflare is down
Each of the big four has a status page, but each one tells a different story. The trick is knowing which signal is fast, which is slow, and which is hiding the actual incident. A field guide for each.
Why a website can be down in one country but working everywhere else
The same URL can return 200 OK in Frankfurt and time out in Mumbai. Four mechanisms explain almost every regional outage — GeoDNS, CDN POP failures, BGP routing problems, and government-level filtering. Here's how to tell which one is in play.
Cloudflare error codes: 520, 521, 522, 524, 1015, 1020 decoded
Cloudflare error pages own their own numeric range — 5xx for upstream problems, 1xxx for client-side policy hits. Each code points at a specific failure in a specific place. Here's the field guide.
Connection refused vs connection reset vs connection timed out — which one means what
Three error phrases that look similar but point at completely different failures. One means the server doesn't exist; one means it killed your conversation mid-sentence; one means it ghosted you. Here's how to tell them apart and what each tells you to do.
Why your status page shows green when the service is broken
You're staring at error 503s. You open the vendor's status page. All systems operational. You aren't crazy and the page isn't lying — it's lagging, and the lag is structural. Here's the anatomy of the gap, and what to look at instead.
Status page indicators decoded: what 'minor', 'major', and 'maintenance' actually mean
Every public status page reports the same five-state vocabulary: operational, minor, major, critical, maintenance. Vendors use them differently. Here's what each label is actually trying to tell you — and the edge cases where the label lies.
What `429 Too Many Requests` actually means, and how rate limits really work
Most rate-limit explanations stop at 'you went too fast.' That's true but not useful. Real rate limiters work in five different ways — token bucket, leaky bucket, fixed window, sliding window, concurrency cap — and the headers tell you which one you're hitting, when to retry, and how much budget you have left.
Why your DNS change isn't propagating: the five timers that actually govern it
'DNS propagation' has nothing to do with how long it takes. There is no single timer. There are five separate caches between your registrar and your visitors' resolvers — and you need to understand all of them to predict the answer to 'when will the new record be live?'
Reading SSL certificate errors: the four most common ones, decoded
ERR_CERT_AUTHORITY_INVALID. NET::ERR_CERT_DATE_INVALID. ERR_CERT_COMMON_NAME_INVALID. ERR_SSL_VERSION_OR_CIPHER_MISMATCH. The browser tells you almost exactly what's wrong if you know how to read it. Here is what each one means, why it happens, and what to do.
The 5xx family: 500 / 502 / 503 / 504 / 520 and what each one is actually telling you
Every 5xx code is a server's way of saying 'something went wrong on our end.' But they are not interchangeable. 502 means upstream; 504 means upstream-but-slow; 503 means deliberately unavailable; 520 means Cloudflare-doesn't-know. Knowing which one you got cuts the bug-hunt by more than half.
DNS propagation isn't a thing — here's what's actually happening
The phrase 'DNS propagation' is misleading. There's no synchronous global update. What you're actually waiting for is a million independent caches to expire — and that timing depends on choices made by you, your registrar, and every resolver in between.
Is it down for everyone, or just you? A five-minute diagnostic
Most people skip the diagnostic step and jump straight to restarting their router. A clean three-way split — third-party probe, official status page, network isolation — resolves almost every 'is it down' question in five minutes.
Reading an HTTP redirect chain — the underrated debugging skill
When 'is the site down' turns out to be 'the site is fine, but the redirect chain is sending users somewhere unexpected,' the only useful diagnostic is the full hop-by-hop trail. Here's what each step tells you, and the patterns that crop up most often.
What HTTP 403, 404, 429, 500, 502, and 503 errors actually mean
Six HTTP status codes do most of the diagnostic work on a broken-website page. The class digit tells you whose fault it is; the second and third digits tell you which part broke. Here's what each one is really saying — and what to do about it.