I’ve been trying to replace myself with AI since chat-based AI tools first started coming out. When ChatGpt came onto the scene, I was so excited! Sam Altman and every LLM model company CEO told us that AI would replace all jobs and that our productivity would skyrocket.
I loved it. Finally I could replace myself with AI and sit around collecting money, I thought. Spoiler alert! It couldn’t do it (yet). So you can understand my disappointment.
LLMs have come a loong way since they first hit the market, so I decided to test their capabilities by attempting to rebuild my portfolio/blog with AI. Cause if it can help millions of students complete their complex assignments, it should be able to do my Website too.
I decided to use a CMS since I wanted the ability to edit articles from my phone as well. This choice I made would later cause many problems and extra work. The CMS I chose was Headless WordPress with GraphQL.
I started with Microsoft Copilot integrated into VS Code. I can pick and choose the model that I want Copilot to use. Having seen LM Arena Benchmarks and the latest Google I/O event, I knew Google’s Gemini 2.5 Pro Preview was the model for me. .. 3 prompts later, I erased all the code made by Gemini and switched over to Claude. Claude is considered status quo for a reason, I suppose. Claude Sonnet 4 was doing so well; it did almost exactly what it had been told to do and was a great aid in coding my blog. It even does kinda alright at CSS styling now.
I was able to get so much more done and so much more quickly that I found myself giving more and more control over to Copilot. Eventually, when a new bug surfaced, I didn’t even bother using my brain, it went straight to Copilot. Three days of copilot use later, I felt markedly stupider. I could feel my competence dwindling with every task I attempted to outsource to Copilot. Soon, I predict I will be able to swap out my brain for an API/MCP layer to Claude or Gemini or something. Yay!
However, it kept making much more code than was necessary and kept adding CSS rules in all the wrong places. The more I used AI code gen, the more messy my code base seemed to get. But the work was getting done, though the pace seemed to be slowing down bit by bit.
Copilot now would add CSS everywhere and make quite a mess. It was creating new style tags within the HTML file and adding some rules there, sometimes it would do inline styling, sometimes it would add within the right CSS styles file, and sometimes it would create a brand new .css file and add some rules there (and it would often fail to import that new file). Eventually, Copilot reached a point where it could no longer figure out the mess it had created. Copilot faired a decent bit better with Javascript code, though it still needed significant oversight from the developer.
All of this was making quite a mess, but since the priority was speed and not quality, I continued to ignore these issues. I thought I could just clean up once the project functionality was completed.
Eventually though.. copilot became a net negative in my project, where not using Copilot and just doing the task myself would have saved me hours, and would have left me feeling a teenie bit smarter. I found myself having to utilize my brain again, what a buzzkill.
Then I found a problem, that I should have found at the very start of the project. Since my data was coming from a CMS and not simply hard coded into the repository, routing and generation of static pages would be annoying and difficult to code. I could either do all that work or switch over to NextJs and save me a lot of time in the future.. . I made the difficult decision to switch over to NextJs.
For the conversion of my code base to NextJs code I decided to try out the famous/ infamous Cursor AI, an AI coding platform that has been all the rage recently. Code the “Agentic” way! Okaay!
I was only trying it out because ThePrimeagen, prominent youtube influencer personality and coding “Guru” was also trying it out and he did not hate it, interesting.
So I load up Cursor AI Pro and ask it to convert my repository to NextJs, it suggests a couple of huuge changes, I reject all of its suggestions and start a fresh repository, and now AI works great. Incredible even!
Right off the bat, Cursor was doing waay better than Copilot. I would ask it to do something and it would go way beyond that and fill in parts that I had forgot to mention as well. Over and over again Cursor surprised me by building fully functioning feature, and doing them better than I had envisioned. I loved how Cursor would make code completions and display them like a PR; this gave me exceptional control over what was going to get committed and what was going to get rejected.
Y Combinator execs were saying that these days, people prompt to get whole modules written, and then if it didn’t work for some reason, instead of fixing the minor bug or two, they delete all that code and prompt again. I could now understand what they meant, it was possibly faster to do so in many cases.
With NextJs and AI governing my every move, the project now had decent small components and okaay structure. And I managed to complete the bulk of the work in mere hours instead of the multiple days it would usually have taken me.
As happy as I was with the speed with which AI was enabling me to push forward in my project, there was also a fear growing in me of being replaced by this AI. Only days ago had I regained confidence in not being replaced, after Copilot had shown me how much of a let down it was and a waste of time it could be. And now a much more competent competitor had arrived, Cursor AI. It had done better and faster in so many scenarios that it scared me a bit.
But..
As the codebase grew, Cursor started to struggle, even with simple tasks. For example, I needed to add category filters before rendering the review scores. It was a straightforward feature, the kind of thing any competent dev tool should handle easily. But this is where Cursor began to fall short. Each attempt it made got me about 90% of the way there, but always with small bugs or logical missteps. I’d fix those bugs, test the code, and then run into a different issue. This cycle repeated for over a day. Eventually, I gave up on the AI and did it myself. It took me maybe 30 minutes.
That was quite a let down.
I began to resent Cursor a little. It had started off so strong, shockingly strong, and now it felt like it was wasting my time. Still, I had to remind myself: it was incredibly useful for the boilerplate, repetitive stuff. I just hadn’t found the right balance yet.
So no, AI isn’t replacing web developers just yet. Especially not the ones building non-trivial applications. But it is changing how we work, and fast.
Pros of AI Coding tools:
You’re stuck on bugs for much shorter spans of time. This makes AI tools a great tool for acquiring new skills.
Starting a new project in an unfamiliar programming language or framework is now easier than ever.
“Agentic” isn’t simply a buzzword, it does make a significant difference.
Cons of AI Coding tools:
These tools work best with small context windows, though this should get much better over time.
These tools are still bad at generating novel code, the likes of which it hasn’t seen before.
The job market is gonna get even worse.
Introducing a small deviation from the norm, a WordPress CMS made many things much harder to work with
Summary
For those wanting to build something cool of their own, it is now easier than ever and it will likely get easier still. For those attempting to break into the development job market, perhaps the ladder has been pulled up away from under your feet. With learning programming having become so much easier, there would be a lot more people trying their hand at it now. And there is a whole generation of programmers coming, who are still in the pipeline, since they are too young to enter the work force. The market for programming jobs is brutal right now, and it could get a lot worse soon.