Day: November 2, 2025
10 posts
AI writes pretty good code these days and it doesn’t really matter
AI Baseline Given that it is impossible to escape conversations about AI, I thought I might as well…
Preventing Breaking Changes in Event-Driven Systems with Contracts and Validation
Event-driven systems are powerful, but they can also be fragile. A small schema change in one service can…
Java’s Agentic Framework Boom is a Code Smell
Originally published here Last week, I published a post arguing that you don’t need an agentic framework to…
Deep Dive into Scala 3 Macros: Building a Custom String Interpolator
This blog post explores the powerful macro system in Scala 3 through a practical example: a custom string…
Migrating from New Relic Drop Rules to Pipeline Cloud Rules: A Terraform Guide
The Deprecation Notice If you’re using New Relic’s newrelic_nrql_drop_rule resource in Terraform, you’ve likely seen the deprecation warning…
Playwright Show Report
I’d like to ask everyone, when opening the report, there is always no content. What could be the…
No Laying Up Podcast: How an Apparrel Business Gets Built | Trap Draw, Ep 366
How an Apparel Business Gets Built | Trap Draw, Ep 366 On this road-trip edition of Trap Draw,…
Gloss, Haze, and the Hidden Variables: A Guide to Understanding Surface Appearance
A customer’s first impression of a product depends largely on its appearance. Issues in formulation or processing can…
The 7 Paid Subscriptions I Use in 2025 as a Freelance Software Developer
(And Why I Don’t Regret Paying for a Single One) Freelancing in tech is exciting—but it’s also chaotic.…
Brainstorming: The Ultimate Risk Management Tool
Risk management has taken center stage in quality management, particularly with recent ISO updates. Organizations must recognize that…