Hash, Encode, Escape: Security Basics for the Web
Mixing up hashing, encoding and escaping is how passwords end up in base64: the three problems, the right tool for each, and the rules that prevent XSS.
Mixing up hashing, encoding and escaping is how passwords end up in base64: the three problems, the right tool for each, and the rules that prevent XSS.
Cron fits on an index card: the field order, the special characters, the expressions you will actually use, and the traps that page people at 3 AM.
Developers paste sensitive material into strange websites daily; here is the client-side toolbox and the network-tab audit that proves the claim.
The dangerous changes are the invisible ones: how diffs work, why identical-looking lines flag as changed, and preparing texts so the answer is honest.
755 is three tiny sums side by side: the permission grid, the digit math, the directory wrinkle, and the diagnosis 777 lets you skip.
Photos carry device, settings, timestamps and sometimes your address: the GPS risk, the platforms that strip, and the keep-on-originals policy.
Why %20 exists, when + means space and when it does not, how %2520 happens, and the step-by-step repair of a mangled link.
JSON is stricter than the JavaScript it resembles: the four classic errors, the silent big-ID corruption past 2^53, and the conversion toolbox.
Listen becomes silent via a sorting trick, 89 needs 24 steps to mirror, and 196 has defeated billions of computations: wordplay with mechanics.
Case conversion has rulebooks and two real traps: it destroys information one way, and it is language-dependent in ways ASCII rules corrupt.
A character is not one thing: the limits that matter, the emoji that counts four ways, the SMS trap that halves your message, and the workflow.
Dedupe is one click and three decisions: matching options, survivor choice, and the sleeper mode that shows only the duplicates.