You’ve probably seen tons of breathless articles/posts from “influencers” trying to evangelize AI and catch the AI money train. And when you’re done, you think, “yeah, sounds OK, but how do I use that?”
This is not one of those articles. This is exact, practical instructions on how to write production-quality code using AI. No vague suggestions. No hype. Honest about its limitations.
I’m offering a free, online training course (alpha!) on how switch from the current “AI-driven engineering” to “engineering-driven AI.” By switching your mindset on how AI works, and adapting proven engineering best practices to AI, instead of hoping AI will fix things for us, we fix things for AI. The end result is much higher quality code.
I don’t claim to be a genius. My approach was created over a year or more of research and the end result is, frankly, an accidental discovery.
But rather than my usual long-winded fluff, just enjoy the free training.
Drop me a line if you have questions or want to help improve it.
Side note: this is based on PAAD and PAAD is still under active development, I accept pull requests, and I’ve a number of ideas of further improving. In particular, I want to explore creating my own agentic harness that can drive these processes for you. Turns out that there are a few obstacles there, not the least of which are time and money.
One key obstacle, and one that frustrates me with many of these tools, is that
there is often a clean break between the agentic harness and the agents. For
example, I want an agent to know how much context its used and, if it exceeds a
threshold and isn’t on the cusp of finishing its task, it should be able to
restart itself with guidance, including deterministic invariants, but that’s
mostly not possible. I wrote
/claude-context , a skill that gets
me partway there for Claude Code, but it’s a hack to work around this.
I’ve a long way to go before I can take this where it needs to be.


