Daily Digest
Why TDD and AI coding tools exploit the same psychological flaws
Drew DeVault draws a provocative parallel between Test-Driven Development cults and GenAI adoption, arguing both exploit developers' psychological need to feel competent while potentially undermining actual code quality.
- TDD's hidden influence on architecture: While ensuring test coverage, TDD shapes codebases to be "testable" rather than well-designed, and provides no guarantee that passing tests verify the right behavior for actual user needs.
- The dopamine trap of development metrics: Both TDD's green test suites and AI's rapid output create addictive feedback loops through coverage percentages, CI badges, and productivity metrics that make developers feel competent regardless of actual code quality.
- AI coding agents as the new performance theater: GenAI tools let mediocre programmers experience the rush of 10x developer productivity, building "cathedrals" quickly that have beautiful test coverage but rotten foundations underneath.
- The psychological cost of shortcuts: Developers chase these tools despite knowing the externalities (environmental costs, job displacement) because the feeling of finally being "great" at programming overrides long-term concerns.
Latest Articles - Page 37
Async Rust: deep dive into cooperative scheduling and Tokio's architecture
Threads were designed to parallelize compute-intensive tasks. However, these days, a lot of applications (such as a network scanner) are I/O (Input / Output) intensive. Thus, threads have two signific
Franklin’s parents grave
There are many historical artifacts and monuments in Boston. This is one of my favorites: It’s in the center of the Granary Burying Ground, the third-oldest cemetery in Boston. Casual tourists wil
Fragments: June 2
Greg Wilson has noticed that lots of folks are using dodgy metrics to figure out if AI tools are worth their costs. Would you measure lines of code generated, or tickets closed? Or would you send out
Vim Classic 8.3.0 released
Following up on my earlier announcement that I was forking Vim, I’m happy to announce the first release of my fork today: Vim Classic 8.3.0. I have written a release announcement for vim-classic.org,
XML and JSON in 2026
The best thing about long-lived incumbent technologies like JSON and XML is that nobody really has to think about them much any more. Except for, I do occasionally, because while I’m of eithe
The software industry: annealing, but wrong
In recent months I've heard of several teams with an interesting policy: each pull request should be no more than a few files, and no more than a certain number of lines (say 500). And do just one thi
The Minimum Viable Unit of Saleable Software
Last week I wrote about leaving Stainless and my intention to work on building my side project River into a small, sustainable business. When I sent that letter, a few people asked about my thought pr