architecture

  • Lazy loading arrived in the browser

    One attribute replaces an IntersectionObserver and a library — and applying it to everything makes the Largest Contentful Paint worse rather than better.

  • Redis 6 and the shared password that was everywhere

    One password, six services, and FLUSHALL available to all of them. 6.0 landed in April with users — and the keyspace pattern is where the isolation actually is.

  • Redis 6 ACLs, and the user per service

    Redis had one password and no users, so every service that could read the cache could also flush it — and the credential was the same string in…

  • A consumer that is idempotent by construction, not by check

    A deduplication table is a check bolted on afterwards, and some operations are naturally repeatable — which is better, because there is nothing to get wrong. Designing the…

  • A saga is local transactions plus compensations

    A transaction spanning three services does not exist, and the pattern that replaces it is a sequence of local transactions each with an operation that undoes it. Compensations…

  • An HTTP client that is part of the framework

    Four services, four hand-rolled clients, four retry policies. 7.0 wraps Guzzle, and the wrapper is the point rather than the transport.

  • A heartbeat table is the only honest lag measurement

    Seconds_Behind_Master reports how far behind the SQL thread is on the events it has received, which is not the same as how stale the data is. The long-ALTER…

  • Contract tests that live in the repository

    The collection lived in one person’s account, which is not version control. An endpoint changed and the client team found out from an error.

  • Moving a pipeline to a runner you do not own

    The CI server was a pet and the pipeline was a shell script nobody could read. A runner that assumes nothing is the point, and the cache is…

  • A handler must be idempotent, because delivery is at-least-once

    Every broker worth using delivers at least once, so a handler will see the same message twice — on a redelivery after a crash, or when an acknowledgement…