Writing

This blog is my attempt to more regularly publish some writing. It's very informal. Sometimes long stories or cases; sometimes it's what I'd send you if you were to ask me what's on my mind this week in an email - and obviously too long for a tweet.

Spec-Driven Development, but the Specs Are a Graph

Spec-Driven Development, but the Specs Are a Graph

A 12-lesson course that rebuilds the DeepLearning.AI spec-driven development tutorial on Rust + sphinx-needs — and the AgentClinic domain you build to learn it.

The 6x Tax You're Paying Without Knowing It

The 6x Tax You're Paying Without Knowing It

Why unstructured AI coding burns your budget and still delivers incomplete results — and what a queryable traceability graph changes about that.

Adsify: Why I Put a REST API in Front of TwinCAT ADS

Adsify: Why I Put a REST API in Front of TwinCAT ADS

Every team that needs PLC data writes its own bridge. Adsify is the one I got tired of rewriting.

Company as Code: You Don't Need a New DSL

Company as Code: You Don't Need a New DSL

Sphinx-needs already provides the primitives for encoding company structure, policies, and compliance as code. You just haven't pointed it at that domain yet.

iceoryx2 C# vs .NET IPC: The Numbers

iceoryx2 C# vs .NET IPC: The Numbers

Benchmarking zero-copy IPC against Channels and Named Pipes

The Myth of the Full-Stack Product Engineer

The Myth of the Full-Stack Product Engineer

A Necessary Evolution or a Recipe for Disaster?

Germany to decriminalize Ethical Hacking - Concerns Remain

Germany to decriminalize Ethical Hacking - Concerns Remain

A long-awaited reform of Germany's "hacker paragraph" is finally underway. The Federal Ministry of Justice has released a draft law aimed at decriminalizing security research conducted in the public interest. This comes as welcome news to many of my friends and the cybersecurity community as a whole. We have long argued that the current laws are overly broad and criminalize legitimate security research.