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 32
Every Choice Changes Everything: The Show
About 3 weeks ago, Leo Laporte and I recorded the first episode of what will be a new monthly show on the TWiT network. Naming things is hard, and we almost voted on the name, like we did for Stack Ov
QUIC is more than a replacement for TCP
Most of the literature about QUIC RFC 9000 describes it as a replacement for TCP + TLS, with the traditional use case of communication over IP in mind. It's true,
Prism: An Impure Functional Language With Typed Effects
Prism: An Impure Functional Language With Typed Effects This is going to be a very nerdy post so bear with me. Here is a function. Read it the way you would read any other function, and then tell me i
MLIR Part 13 - Running GPT-2
Running GPT-2 We now have a Python tensor language, an MLIR builder, a transformation pipeline and a native execution boundary. The remaining task is to connect those pieces to the pretrained model an
Hashing at 130 GB/s with XXH3, Rust and AVX-512 acceleration on AMD Zen 5
I just ran a quick benchmark comparing the different xxHash hashing functions on an AMD Zen 5 EPYC processor (in pure Rust, from https://github.com/rust-stdx/stdx), and Ho My G..., XXH3 is
How I'm Solving Local Inference
How I bridged my MacBook Air and Framework 13 using LM Studio's LM Link to run powerful local models, avoid token costs, and gain portability.
Meet Alice. Alice is impatient.
Meet Alice. Alice is impatient. What do you mean? Meet Alice. Alice uses your web service. Alice, like most humans, measures her time in seconds and minutes. Alice says your service is slow. You tel
Dodecahedron with stars
I saw this dodecahedron with an Islamic-inspired pattern designed by Taj Ragoo. As soon as I saw it, I knew I had to make one. I studied the pattern, wrote some Python, and made myself a PDF. I cut it
How many internet commentators does it take to change a lightbulb?
Fifty. One to change it and forty-nine to argue about whether it should’ve been changed, whether LEDs are elitist, who deserves the credit, and why it’s probably the worst thing
I hate compilers
You'd think that given the same bytes of input you'd get the same bytes of output. lol. lmao. No, you don't. It's complicated.