Designing for AI-Assisted Development

January 5, 2026 · observation

Follow-up to my December note about how AI changed my workflow. I've been thinking about what kind of code is easy for AI to generate well vs. poorly.


What AI Generates Well

What AI Generates Poorly


How This Changes Architecture

I'm now instinctively structuring code so that most of it falls into the "generates well" category:

The code I write by hand is the hard part — the 10% that requires deep context, domain knowledge, or subtle reasoning. Everything else, I describe and let the AI implement.


The Irony

The practices that make code AI-friendly are the same practices we've preached for decades: separation of concerns, clear interfaces, small functions, explicit dependencies. AI doesn't reward new patterns — it rewards good engineering that we were already supposed to be doing.

The difference is that now there's an immediate, tangible reward for doing it right. Clean architecture isn't just "nice for the next developer" — it's "the AI can actually work with this."


← back to blog