I’ve been using Claude Code as my primary development tool for approx 9 months, and the workflow I’ve settled into is radically different from what most people do with AI coding tools. Most developers type a prompt, sometimes use plan mode, fix the errors, repeat. The more terminally online are stitching together ralph loops, mcps, gas towns (remember those?), etc. The results in both cases are a mess that completely falls apart for anything non-trivial.
The workflow I’m going to describe has one core principle: never let Claude write code until you’ve reviewed and approved a written plan. This separation of planning and execution is the single most important thing I do. It prevents wasted effort, keeps me in control of architecture decisions, and produces significantly better results with minimal token usage than jumping straight to code. — Read More
Tag Archives: DevOps
The Mythical Agent-Month
… Among my inner circle of engineering and data science friends, there is a lot of discussion about how long our competitive edge as humans will last. Will having good ideas (and lots of them) still matter as the agents begin having better ideas themselves? The human-expert-in-the-loop feels essential now to get good results from the agents, but how long will that last until our wildest ideas can be turned into working, tasteful software while we sleep? Will it be a gentle obsolescence where we happily hand off the reins or something else?
For now, I feel needed. I don’t describe the way I work now as “vibe coding” as this sounds like a pejorative “prompt and chill” way of building AI slop software projects. I’ve been building tools like roborev to bring rigor and continuous supervision to my parallel agent sessions, and to heavily scrutinize the work that my agents are doing. With this radical new way of working it is hard not to be contemplative about the future of software engineering.
Probably the book I’ve referenced the most in my career is The Mythical Man-Month by Fred Brooks, whose now-famous Brooks’s Law argues that “adding manpower to a late software project makes it later”. Lately I find myself asking whether the lessons from this book are applicable in this new era of agentic development. Will a talented developer orchestrating a swarm of AI agents be able to build complex software faster and better, and will the short term productivity gains lead to long term project success? Or will we run into the same bottlenecks – scope creep, architectural drift, and coordination overhead – that have plagued software teams for decades? – Read More
AI Tried to Replace Software Engineers — Here’s What Actually Happened
Every few months, we hear the same prediction:
“Software engineers will be obsolete in 6 to 12 months.”
This time, the warning came with a bold experiment.
The Cursor team — backed by billions in venture capital — decided to prove that AI agents could replace engineers. Instead of just talking about it, they launched a real test:
Hundreds of AI agents working nonstop for a week to build a web browser from scratch.
Building a browser is one of the hardest engineering challenges in modern software. Even Microsoft struggled with it for years. So if AI could pull this off, it would be a huge milestone.
But what happened next tells a very different story. Read More
A Guide to Which AI to Use in the Agentic Era
I have written eight of these guides since ChatGPT came out, but this version represents a very large break with the past, because what it means to “use AI” has changed dramatically. Until a few months ago, for the vast majority of people, “using AI” meant talking to a chatbot in a back-and-forth conversation. But over the past few months, it has become practical to use AI as an agent: you can assign them to a task and they do them, using tools as appropriate. Because of this change, you have to consider three things when deciding what AI to use: Models, Apps, and Harnesses. Models are the underlying AI brains; Apps are the products you actually use to talk to a model, and Harnesses are what let the power of AI models do real work. Until recently, you didn’t have to know this.
It means that the question “which AI should I use?” has gotten harder to answer, because the answer now depends on what you’re trying to do with it. So let me walk through the landscape. — Read More
The Concept Every AI Coder Learns Too Late
Have you ever spent hours debugging code that Claude had written 30 minutes before?
Exact same model, same chat, and same prompting. For some reason, Claude starts ignoring previous decisions you made together or ignores mentioned markdown files, only to then present blatantly incorrect suggestions.
You aren’t at fault here. Instead, you’re experiencing context rot. — Read More.
Python or C++ for AI? Here’s the Honest Answer After Years of Using Both
Forget the hype. This is what really happens when you build AI systems in Python and C++, and why the “one language” debate misses the point.
On the surface, it sounds like a simple “this or that” question. But if you’ve actually built stuff — broken stuff, fixed stuff at midnight, and argued with teammates over which language is better — you know it’s not that simple. The short version? You probably need both. The long version? Well, that’s what this post is about. — Read More
My AI Adoption Journey
Mitchell Hashimoto, a HashiCorp co-founder, shares his approach to AI adoption.
My experience adopting any meaningful tool is that I’ve necessarily gone through three phases: (1) a period of inefficiency (2) a period of adequacy, then finally (3) a period of workflow and life-altering discovery.
In most cases, I have to force myself through phase 1 and 2 because I usually have a workflow I’m already happy and comfortable with. Adopting a tool feels like work, and I do not want to put in the effort, but I usually do in an effort to be a well-rounded person of my craft.
This is my journey of how I found value in AI tooling and what I’m trying next with it. In an ocean of overly dramatic, hyped takes, I hope this represents a more nuanced, measured approach to my views on AI and how they’ve changed over time. — Read More
Ads Candidate Generation using Behavioral Sequence Modeling
At Pinterest, ads are more than just advertisements; they are a vital part of the content ecosystem, designed to inspire users and connect them with products and ideas they love. Our goal is to surface the right ads at the right time, ensuring they seamlessly integrate into a user’s shopping journey and provide genuine value. To achieve this, understanding user behavior is paramount.
Delivering highly relevant ads in a dynamic environment like Pinterest presents unique challenges. Users’ interests and shopping intents evolve rapidly, making it crucial for our ad systems to adapt and anticipate their needs. Traditional ad targeting methods often rely on broad demographic data or static interest categories, which can fall short in capturing the nuanced and evolving nature of user behavior. — Read More
The 80% Problem in Agentic Coding
… Some time ago I wrote about “the 70% problem” – where AI coding took you to 70% completion, then leave the final 30% last mile for humans. That framing may now be evolving. The percentage may shift to 80% or higher for certain kinds of projects, but the nature of the problem changed more dramatically than the numbers suggest.
Armin Ronacher’s poll of 5,000 developers compliments this story: 44% now write less than 10% of their code manually. Another 26% are in the 10-50% range. We’ve crossed a threshold. But here’s what the triumphalist narrative misses: the problems didn’t disappear, they shifted. And some got worse. — Read More
Why We’ve Tried to Replace Developers Every Decade Since 1969
Every decade brings new promises: this time, we’ll finally make software development simple enough that we won’t need so many developers. From COBOL to AI, the pattern repeats. Business leaders grow frustrated with slow delivery and high costs. Developers feel misunderstood and undervalued. Understanding why this cycle persists for fifty years reveals what both sides need to know about the nature of software work. — Read More