As someone who isn’t a professional developer, I decided to put the current generation of AI to the ultimate test. My company website, GetzAI.com, needed a refresh, and I had a vision: could an AI build the entire thing in a week? I’m not talking about just spitting out a few HTML files. I wanted a complete, functional web application with a Next.js frontend, a Supabase backend, a full admin area, and blog functionality.
I liken it to working with a 160 IQ 5 year old.
Why Claude? The Promise of a Real Workflow
I specifically chose Claude for this project because, on paper, it had the most promising workflow for a web developer. It connects well with GitHub, which is essential for my deployment pipeline through Netlify. I’m not a fan of ChatGPT’s older Codex model, and other platforms like Gemini don’t yet offer a native framework for connecting to Git repositories. Claude seemed like the logical choice.
My hope was for a seamless development loop. In my ideal world, the AI would be able to pull the latest code, create new branches for features, and push its changes directly to my repository. The terminal-based version of Claude can save files locally, which is a step in the right direction, but I wanted a fully integrated experience. However, as this experiment would prove, giving the current version of Claude direct push access to my codebase would have been an unmitigated disaster.
My goal was to see if the hype was real. Could I, a project manager with an idea, truly partner with an AI to build something substantial? The answer, I found, was a resounding "yes" with some frustrations. The experience was a rollercoaster oscillating between moments of sheer brilliance and baffling incompetence. It wasn't always the "Vibe Coding" I'd heard about. And at times it was more Angry Coding.
The Honeymoon Phase: My AI as a Savant
I have to be clear: at times, working with Claude was magical. There were moments I would provide a few existing files, describe a complex new feature, and it would just get it on the first try. Zero-shot. It felt like I had a senior developer on staff, one who could anticipate my needs and execute flawlessly.
The biggest win was the backend. Setting up a Supabase environment with database tables, user roles, row-level security, and authentication can be tedious and complex. Claude was phenomenal here. I’d take screenshots of my Supabase dashboard, and it would check my work, find issues I’d missed, and guide me on where to click and what to configure. It gave me the confidence that things were being done correctly and dramatically sped up the process. It handled the logic for creating and editing blog posts, managing users in the admin panel, and setting up the permissions for the entire site. It was a true partnership, and in those moments, the vision of AI-assisted development felt incredibly real and powerful. It even coded a sleek dark/light mode toggle—a nice, polished touch that I was thrilled to have.
The site was coming together beautifully. It was nearly done, polished, and functional. I was in the home stretch, needing just a few final tweaks. And that’s when my savant partner revealed its other personality: the saboteur.
The Crash: One Small Tweak, One Massive Disaster
The request was simple. I needed to adjust the layout of the Admin page. It was a minor UI style update. But Claude didn't make a minor change. It went into the globals.css file—the central stylesheet for the entire website—and rewrote far more than it should have. Because I was focused on the Admin page, I didn’t immediately notice the site-wide carnage. The public-facing site, which had been working perfectly, was now a broken mess of misaligned elements and busted layouts.
To be fair, part of the anger was directed at myself. I didn't have a recent backup. The impact was huge, and the process of recovering was a soul-crushing waste of time and tokens. This became a recurring nightmare. I’d ask for a targeted change, and Claude would make unrelated edits that I wouldn’t catch until later. The trust was broken. I eventually had to force Claude to use inline styles for the Admin page, a poor practice I was forced to adopt just to segregate its work and prevent it from breaking the rest of the site.
The AI's Blind Spots and Frustrating Loops
The big disaster was a turning point, but the day-to-day reality was a grind of smaller, equally maddening frustrations that highlighted the AI's fundamental limitations.
While debugging the dark mode feature, the body of my blog posts wasn't rendering correctly. I asked Claude to fix it. It couldn't. It was stuck. I finally had to open the browser's developer tools myself, and I immediately saw the problem: an inline style on a <div> was overriding the page’s theme. It was a simple fix, but a glaring example of the AI's blindness. It couldn't "see" the rendered output or inspect its own work, a critical failure for any developer, human or not.
This experience directly validated the principles I had already outlined in my LLM First Principles document. My theories about the shortcomings of current AI were playing out in real-time, with my project as the unfortunate case study.
- The Amnesia Problem: Claude would constantly get stuck on issues we had already fixed. It would lose context and revisit old problems instead of focusing on the current task. This is with me starting a new chat for every new page or feature. This frustrating loop was a perfect illustration of why Context Refactoring is essential—a system that can intelligently summarize and prune a conversation to maintain focus.
- The Holistic Blindness: When a build failed on our host, Netlify, Claude would look at the error message and immediately try to create new files or change unrelated configurations. It lacked the ability to reflect and reason that, "I just changed this one file, so the error is most likely in my recent work." This lack of self-awareness is why LLMs need Training in Contrarianism—an embedded sense of risk analysis to question their own output before committing to it.
- The Lack of Structure: The entire chaotic process, from breaking unrelated code to losing context, highlighted the desperate need for a universal Projects framework. An AI that truly manages the project would track tasks, files, and dependencies automatically, preventing the kind of cascading failures I experienced.
- Burning Tokens: Why Claude needs to rewrite every code page for simple changes is beyond me. It is in a canvas, why not just change what needs to be changed.
- Best Practices: Claude consistently built code that wasn't best practice or flexible or future proof. This painted us into corners several times. Most recent example: 'Fixed! The issue was that individual event listeners were getting lost when React re-rendered. I changed it to use event delegation instead:'. So why didn't it make it as robust as possible the first time? A contrarian or risk mitigation would have served well here. The AI is supposed to be the intelligent one- right? This came up again when I tried to paste formatted data and I asked Claude why it wasn't formatting properly. Oh, we should do this then. Again, why didn't Claude do that in the first place? Pasting into web forms is nothing new.
- What we have is perceived by measurement a high level of intelligence, however, when it comes to actual deliverables, we are far from the promised intelligence.
- I would estimate that 30-40% of all code Claude generates is to fix what it broke.
The Future: From Angry Coding to Vibe Coding
My week-long journey with Claude was a paradox. It was both a glimpse of an incredible future and a showcase of the deep-seated flaws in today's AI. The potential is undeniably there—the Supabase work proved that. But for AI to become a reliable partner for the millions of people who have ideas but not code, it has to evolve.
It needs to be more than a brilliant but erratic tool. It needs the discipline, structure, and self-awareness I outlined in my paper. We need AI that doesn't just write code, but manages projects, understands context, and anticipates risk.
Only then can we move from the frustration of "Angry Coding" to the seamless, creative partnership of true "Vibe Coding." The technology is almost there, but it needs to be built with the user's experience working backward, not the technology working forward.
Would I use Claude again to code? 100% absolutely! Although the road was frustrating at times, the end result is quite amazing- an AI can code a complete site from frontend to backend to database is quite astonishing.
The Technology Stack
Before diving into the experience, here's what we built with:
- Next.js 14 with App Router
- React 18
- Tailwind CSS for styling
- Lucide React for icons
- Supabase for database
- Netlify for hosting and deployment
- Quill for text editing features.
Good Reasoning


Bad Reasoning






writes random files

start new chat

Claude was fooled

