Guides
Longer explanations of the problems behind the tools — written to be read once and remembered, not to be skimmed for a button.
Every tool on this site answers a narrow question quickly. These guides are for the moment after that, when the answer was not what you expected and the tool cannot tell you why. Each one takes a single problem — a parser that rejects valid-looking input, a hash that turns out to be the wrong kind, a schedule that fires at the wrong hour — and works through the handful of causes that account for almost every case.
They are written to be read in one sitting rather than skimmed. Most run to about a thousand words, open with the mistake people actually make, and end with the tool that lets you check your own case. None of them assume more than working familiarity with the topic; if a term is load-bearing, it is defined where it first appears.
If you are not sure where to start: the JSON guide is the one most people need first, because a broken payload is the most common reason anyone arrives here. The encoding guide pairs with it, since half of "broken JSON" is really a Base64 or percent-encoding mix-up upstream. The hash, regex and cron guides each stand alone. The image and compound-interest guides are for readers outside development entirely, and are written that way.
How to read and fix broken JSON
Almost every JSON parse error comes from one of five mistakes. Here is how to find which one, from the error message alone.
Read this when a parser rejects a payload that looks fine to you, or when the error points at line 1 because the whole file is one line.
Read the guide →MD5, SHA-1 or SHA-256: choosing a hash function
MD5 is broken and still useful. SHA-256 is the default and still not a password hash. The distinction is what the hash is protecting against.
Read this before picking a hash for something new, or when you find MD5 in existing code and need to decide whether it actually matters here.
Read the guide →Sizing and compressing images for the web
Most slow pages are slow because of one image. Fixing it is two decisions — dimensions, then format — taken in that order.
Read this when a page is slow and the network panel blames a single image, or before exporting assets for a new design.
Read the guide →Cron expressions that run when you expect
Cron is five numbers and a pile of assumptions. Almost every schedule that misfires breaks on one of four of them.
Read this when a job fired at the wrong hour, ran twice, or never ran at all, and the expression still looks correct to you.
Read the guide →Regular expressions that do not surprise you
A pattern that works on your three test strings and fails in production usually fails for one of six reasons.
Read this when a pattern passes every test string you thought of and then misses or over-matches on real input.
Read the guide →Base64, percent-encoding and which one you need
Base64 makes binary survive a text channel. Percent-encoding makes text survive a URL. Swapping them corrupts data quietly.
Read this when data comes back mangled after a trip through a URL, a header or a JSON field, and you cannot tell which layer encoded it.
Read the guide →Compound interest and what the number actually means
A compound interest projection is arithmetic, not a forecast. Reading it correctly is mostly about knowing what it left out.
Read this before acting on a projected figure, or when two calculators disagree about the same inputs.
Read the guide →