#676 – May 10, 2026
bad software often shows four warning signs
Symptoms of bad software design
6 minutes by Marcos F. Lobo
Bad software often shows four warning signs. Rigidity means one small change breaks a chain of other things. Fragility means fixing one area mysteriously breaks another. Immobility means useful code is too tangled to reuse elsewhere. Viscosity means doing things the right way takes so long that shortcuts become tempting. Spotting these patterns early is the first step to fixing them.
Stop Accessibility Fire Drills in Development
sponsored by Level Access
Are late-stage accessibility issues creating last-minute rework or putting launch
timelines at risk? Stop scrambling and start staying ahead of issues. Join our upcoming
webinar to learn how developers are moving faster, and avoiding surprises, by building
accessibility into the SDLC.
Writing my own text editor, and daily-driving it
15 minutes by Joshua Barretto
After years of dissatisfaction with existing editors, Joshua spent two years building his own from scratch. The key turning point was forcing himself to use it daily, logging every bug and missing feature to stay focused. Building it required solving real problems around regex performance, syntax highlighting, file search, and terminal emulation. The result fits his exact workflow and reignited a genuine love for programming.
Git's magic files
10 minutes by Andrew Nesbitt
Andrew describes special Git files that control how repositories behave. Files like .gitignore, .gitattributes, .lfsconfig, and .gitmodules are stored in the project and affect tracking, formatting, submodules, and storage rules. They travel with the code and help standardize behavior across developers. Tools built on Git should read and respect them.
Databases were not designed for this
15 minutes by Arpit Bhayani
Arpit explains how traditional database design assumes human-controlled, predictable applications, but agentic AI breaks these assumptions. AI agents generate unpredictable queries, hold connections longer, retry operations, and may write incorrect data without oversight. To adapt, systems need safeguards like strict timeouts, idempotency keys, soft deletes, event logs, role-based permissions, better connection pooling, and improved observability. These practices make databases safer for autonomous AI-driven workloads.
MicroGPT explained interactively
10 minutes by Growing
A 200-line Python script trains a small language model on 32,000 human names using the same core algorithm behind ChatGPT. The model learns to predict the next character from prior context, measuring its errors and nudging its parameters to improve. Tokens become numbers, attention lets positions share information, and gradients flow backward to update every weight. Scale up the data, parameters, and compute, and you get a modern large language model.
And the most popular article from the last issue was: