Illustration of four stick figures standing on podium style boxes that go from short on the left to inreasing to tall on the right

Know your AI team


I’ve been vibe coding with AI a fair bit recently as an accelerated way of understanding strengths and weaknesses. Since I started, things have come a long way—not just with the AI itself. AI coders are increasingly focusing on development practices, with Claude Code handling numerous behind-the-scenes tasks, RooCode offering multiple coding mode profiles, and various task planning strategies like Task Master emerging.

I realized that AI coders operate in a very unusual position. Each time we ask one to perform an operation, it develops a narrow window of understanding about a codebase and then acts on it. If it reads only one file, that becomes its entire understanding of the codebase and context. That’s why thinking modes paired with environmental planning capabilities are becoming so critical.

The foundational models and their thinking modes are still important. I’ve mentioned before that Anthropic’s Claude is like a Principal Engineer — very skilled but also very expensive — compared to Gemini Pro, which is still capable but far more affordable for everyday work. I continue to stand by this assessment. My recent vibe coding experience shows Gemini can rapidly get through huge amounts of work very affordably, though with the occasional infinite loop on an issue. The ability to flip to Claude in these moments, set RooCode to Architect mode, and ask what bigger issue is keeping us spinning our wheels has been really great for attacking root causes, unblocking progress, and then allowing a toggle back to cheaper development.

It feels very true to real-world development to know your team, recognize their strengths, and know when to pull them in. For all the affordability of Gemini, going down an incorrect rabbit hole not only spends money and takes time, but can also start to damage the project as its focus shifts away from building something good and instead becomes about desperately trying to avoid errors.