#696 – September 27, 2026
working in old codebases with AI agents requires extra care
Brownfield agentic engineering
15 minutes by Addy Osmani
Working in old codebases with AI agents requires extra care. Map your code into zones based on sensitivity and test coverage, letting agents work freely only in well-tested areas. Write down context the code itself cannot show, like business rules and historical decisions. Lock existing behavior with characterization tests before changing anything, finish migrations completely rather than leaving two patterns alive, and only add parallelism once one reliable review process exists.
100+ Search Engines. One Simple API.
sponsored by SerpApi
Build with real-time search data from Google, YouTube, Amazon, and more. SerpApi delivers structured results in JSON and Markdown for AI agents and your next app. Skip scraping headaches. Start building with a simple API.
Saving another 100TB of RAM with math (and Rust)
15 minutes by Kevin Guthrie et al.
Cloudflare found that a load balancing service was using far more memory than needed, traced to how consistent hashing rings were stored and sized. Two fixes helped: shrinking a data structure from 8 to 6 bytes cut memory use by 25%, and reducing the number of hashes per server by 90% had almost no effect on accuracy. Rolling out carefully to avoid cache disruption, these changes freed over 100TB of RAM across Cloudflare's global network.
I don't like passkeys
4 minutes by Ethan Hawksley
Passkeys offer strong protection against phishing and data breaches, making them great for businesses. For everyday users though, Ethan argues the risks outweigh the benefits. Losing a device, getting locked out, or having your Apple or Google account banned can cut you off from all your accounts at once. Until the ecosystem matures, a password manager with randomly generated passwords and an authenticator app is the safer choice for most people.
Grit your teeth and ship it
5 minutes by Sean Goedecke
Building well and shipping often are different skills, and good taste can actually get in the way of shipping. Skilled programmers and writers often hold back because they see every flaw, but waiting for perfection means producing nothing. Publishing frequently beats polishing a few pieces, since there is no reliable way to predict what will connect with an audience. The only solution is to push past discomfort and ship anyway.
Back to coupling and cohesion
10 minutes by Daniil Bastrich
Good software design boils down to two ideas: low coupling and high cohesion. Coupling measures how much a change in one part forces changes elsewhere. Cohesion measures how focused a component is on a single purpose. Popular principles like SOLID, DRY, and KISS are mostly just specific applications of these two ideas. Once you understand coupling and cohesion, you no longer need to memorize design rules.
And the most popular article from the last issue was: