
What Really Happens When a Site Asks to Verify Your Identity
You sign up for a service, everything works, and then one day a screen appears asking you to photograph your ID and confirm your address. For most people the reaction is a mix of…
Category
14 articles

You sign up for a service, everything works, and then one day a screen appears asking you to photograph your ID and confirm your address. For most people the reaction is a mix of…

There is an old joke that there are only two hard problems in computer science: cache invalidation, naming things, and off-by-one errors. The joke endures because the middle item…

Every engineer meets it eventually. A system that ran perfectly for months suddenly misbehaves on a single weekend in spring or autumn — reports off by an hour, scheduled jobs fir…

You have seen the symptoms even if you never knew the cause: a name rendered as a string of garbled symbols, an apostrophe that turned into three nonsensical characters, a form th…

Open a console in almost any programming language and type a calculation as simple as adding a tenth and two tenths. You will very often get back not the clean three tenths you ex…

There is an old joke among engineers that there are only two hard problems in computer science: cache invalidation, naming things, and off-by-one errors. The joke endures because…

Every service that survives contact with the real internet eventually needs rate limiting. It is the quiet mechanism that keeps an API from being drowned by a runaway client, a sc…

In an age of fast connections and powerful devices, it is tempting to assume that web performance has stopped mattering. Surely, the thinking goes, with broadband everywhere and p…

AI coding assistants have moved, in a remarkably short time, from novelty to daily tool. For a great many developers they are now simply part of the workflow, suggesting completio…

Every programmer has written a line of code they were a little too proud of. A dense, elegant expression that does in one breath what lesser mortals would spread across ten lines,…

Modern web applications rarely behave like isolated systems anymore. What once was a simple request-response model between client and server has evolved into distributed ecosystem…

Trust boundaries in web architecture Traditional web applications implicitly assume a trusted backend. The server computes results, and the client consumes them. This model is suf…