Why I'm Giving up on AI
10 min read
This article specifically is about using AI to write code, one of the only usecases that AI tools actually have merit for (in my opinion). AI generated writing, music, art, and video have always been slop, and human creations in these domains are superior.
My Experience
Before I begin, I will share a quick note on my history using AI tools. I was an early adopter of ChatGPT when it first launched, around 3 years ago. Ever since then I’ve used AI integrations first in the browser, then in VS Code and CLIs to plan and write huge amounts of code for projects I’ve built both personally, and for work (10s of thousands of lines of code).
I’ve done things the “correct” way, using custom markdown instruction files (downloaded and custom-written “skills”) to constrain and guide the AI output to a specific style/syntax, keeping up with breaking news, trying new frontier models as they launch, the list goes on (it’s been exhausting to keep up with the pace of new releases, but it’s been fun as well).
Speaking humbly, I am not an AI/ML expert or engineer, however, I have become very experienced and skillful at using AI tools to write pretty good code. For instance, large portions of this website were built with AI. I designed the architecture, the AI wrote the code, and it did a pretty good job.
The Frustrations
There are 3 key areas that AI frustrates me.
- Bandwidth limitations / performance degradations
- Inherent LLM limitations
- The marketing hype (“AI will take all of the jobs”)
Bandwidth Limitations
For the last year I’ve been exclusively using Claude and Claude Code, the Opus 4.5 and 4.6 models. For the last year, Claude has been great. The output has been consistently high quality, it’s been remarkably affordable, and it has legitimately felt like magic.
However, over the last ~3 months Claude has seen a huge surge in popularity, rising to the top of the App Store, and it has gone viral on Twitter and social media as more companies and engineers have started using it.
In order to scale to meet this demand, the performance of the models has been throttled with no warning to users; you now need to use workarounds such as typing “/effort max” to match what was previously the default performance. And this degradation has been noticeable in my workflow. The model is slower to respond, the output is significantly worse and more inconsistent, and Claude has become “lazier” (instead of doing a task, it will debate you on the task instead).
If I was able to self-host a 100% repeatable and consistent version of Claude Opus 4.6 and get the same output every day, I would probably feel a lot more favorably towards it. However, self-hosting a frontier LLM is still well out of budget for 99.99% of people on the planet (myself included).
Relying on an LLM that someone else hosts (and offloading your own thinking and creativity to it) comes at a cost. As soon as the model becomes unreliable, you are essentially screwed (if you are working in a codebase that is 90%+ AI generated, good luck understanding it yourself when you need to).
Also, there are reports that AI companies have been heavily subsidizing the cost of their models. A $200 plan might actually be something like $5,000 worth of compute at API cost. This is obviously unsustainable. So the question is, if you get “hooked” using a $200 per month plan which lets you access an AI model nearly 24/7, when the price inevitably rises in the future, what will you do?
Inherent LLM Limitations
Lots of engineers a lot more qualified than me have discussed the inherent flaws of the LLM architecture. There are 2 key flaws:
- LLMs do not scale infinitely, the math points to us running into a wall very soon.
- LLMs lie and hallucinate, something like 30% of their output is likely either completely false, hallucinated, or incorrect.
The scaling problem is very real, and it’s something frontier labs are battling at the moment. That’s why you see trillions of dollars exchanging hands to build new data centers (which also pollute the water, and produce extremely loud noise pollution for nearby communities - yikes).
The hallucination problem is a lot bigger. I read an article recently that said if AI models only replied when they had full confidence, something like 30% of the chat would be “I don’t know.” Imagine if these companies actually did this, if 30% of the time you asked the AI a question and it replied honestly, the popularity would decline overnight. The lying, hallucinations, and false bravado are a big part of why people have become so hooked on using these chatbots. There is a monetary incentive to keep you chatting and bolster your ego, not to tell you the truth.
The Marketing Hype
It really irritates me when I see a new snippet of an interview from the CEO of an AI company when they say “in 6 months we will replace all {insert industry here} jobs with AI!”
They wonder why AI has become so unpopular among the general population, yet they continue making these absurd claims about completely automating industries overnight - with no plan whatsoever for what to do when everyone loses their jobs. The idea, to me, seems to be: “Just build the superintelligent AI, we’ll play it by ear after that.”
These frontier AI labs are playing with fire, and playing it fast and loose with little regard to safety (despite how safe they claim to be in their marketing). The reality is, these companies are dangerous, and foolish.
There is a massive difference between intelligence and wisdom. The people running these AI companies (and the people working there) are obviously extremely intelligent, some of the smartest people on the planet. And there is good that has come from their work, these AI models do have amazing potential to help the world, and to automate stuff that “we don’t want to do” and to present novel cures and solutions to problems. However, there is a serious lack of wisdom among them. Just because you can do something, does not mean you should. Oftentimes, it is better to go slow and proceed with caution, instead of running forward blindly. Especially when you are building technology that has been compared, many times, in terms of potential for global/societal harm to the atomic bomb.
Despite Best Practices, AI Written Codebases Deviate Towards Chaos
Returning to a more grounded discussion, using AI to build apps, websites, and write code has some valid usecases, but I think a lot of people are using it wrong (myself included, for a while). I will discuss what I think it’s good at, and when it’s quicker/better to do things yourself.
First of all, what AI is good at: Extremely narrow, well defined tasks, that have a clear “success” metric.
What AI is bad at: Doing your thinking for you, producing unique and novel solutions to problems, designing something that is beyond just “average.”
If you want to just “slop” out a quick tech demo, AI is really good at this. It writes code that compiles, has a decent looking UI, a few algorithms and features, and the end result will “work” in some capacity. Where AI falls apart (and this why I’ve decided to go back to doing things myself) is when you really need to go deep into a problem. And in reality, the vast majority of quality software that’s actually worth using requires you to “go deep” and build a system that’s edge-case resilient, stable/performant, and highly specific to whatever problem it’s trying to solve.
If you want to build a to-do list app then AI can one-shot it in 30 minutes, but if you want to build something “real”, something that’s never been seen before, I still think human-written, “craft” workmanship is far superior.
This website is a perfect example of where AI tools actually work well. This site is purely a static front-end, it’s not very many different files or systems, and it’s overall a pretty simple project. AI excels in codebases like this, I can add a new button, screen, or blog post in ~5 minutes using AI, it can one shot it, and do a pretty good job.
An example of where AI tools fall apart is a codebase like the app I am working on right now that combines: a local database, dark/light mode support, homescreen widgets, push notifications, cloud integration/networking, integration with Apple Health database, background processing, an Apple Watch app, etc.
Despite my best efforts to define (and stick to) clearly laid out architecture patterns, modularity/separation of classes with no tight coupling, race-condition resistance to ensure you aren’t modifying the same variable on different threads, etc. - Once you reach a certain level of complexity in a codebase, using AI becomes a game of whack-a-mole. You fix/build one feature over here, and it’s broken something over there…
Yes, humans writing code can have the same problem, and maybe there’s a good argument that the average AI outperforms the average human in this capacity. But I am n=1, and in my experience (writing code for years before AI came around) when I was working on apps/large codebases, I was far more effective at injecting code with minimal downstream effects vs. AI, which has a tendency to quickly go off the rails, and refactor huge swaths of your code without asking, or leaving dead/duplicated code that ends up causing unforeseen problems down the road.
What I’m Learning
Going back to how I opened this article (that AI created music, art, and video are slop). What I’ve come to realize is that my assumption that AI written code was the only thing it was good at, is mostly false. AI produces sloppy code.
You can try to debate with it, build guardrails around it, guide it, but still, the output it produces deviates towards a sloppy, chaotic mess.
These AI tools hook you at first, you can move faster than ever before, with a few sentences you can turn the idea in your head into a real app or project. But when you’re 6 months into a project, with 100,000 lines of AI written code that you could never hope to fully understand the context of, you will realize you’ve coded yourself into a box.
Once you’re “all in” and your project is fully AI written, it becomes impossible to really go in and do anything yourself. You’ve become fully reliant on the AI tool to get any work done in the codebase.
And then when the companies providing the models have downtime/stability issues, or they degrade the performance of the model, or the price increases… you are at their mercy.
The Solution
The solution to this problem of AI output deviating towards chaos and slop is to slow down, review the output in detail, and guide the AI to ensure it follows your architecture/syntax/style guide, and to ensure that it doesn’t duplicate code (it does this a LOT) and doesn’t leave dead/unused code files (it does this a lot as well).
And this in turn drives my core argument and thinking that I’ve come to realize: If I need to spend so many hours, and so much effort reading the AI’s code and refactoring it/re-prompting it, wouldn’t it be faster to simply do it myself in the first place?
I don’t have a good answer for this yet, but I’ve become frustrated enough that going forward I am going to switch back to writing code myself, at least for a while, so I can compare if I’m either having more fun, or getting a better end-product again. This is the experiment I am going to run, to see if I feel like I am going back in time (in a bad way) or if I am going back to a time of stability, confidence, and balance.
While I do plan on reducing my AI usage by around 90%, I am not going to give it up entirely; going forward I will use AI (in the browser mostly) when I have high-level questions about architecture best practices, or when I get stuck debugging a super complex problem, or when I need help building a highly custom UI and don’t know where to start. AI still has merit, and is useful. However, I’ve decided that I need to place far less trust in it, and use it less, especially in more complex domains.
I think if you want to build something truly unique, something that is really “you” (your own creativity and vision), there’s no true shortcut other than to do it yourself.
Ultimately it comes down to finding the best tool for the job. For some industries or types of engineering, using AI works better than others. It’s far better at web development than mobile development, in my experience, and for hardware engineering it might be totally useless (I don’t know, just an example). This article is my findings based on my experience. Your usecase may vary. Also, the time-constraints of industry that requires shipping fast, is a good argument for using AI, vs. an indie dev that focuses on craft workmanship is a good argument for doing everything by hand. At the end of the day, find the workflow that works for your needs (whether that includes AI or not), and keep shipping!
Citations
- Maxwell Zeff, TechCrunch — OpenAI’s new reasoning AI models hallucinate more (April 18, 2025)
- Lasse Biørnstad, Science Norway — Why does AI keep making things up that aren’t true? (November 2, 2025)
- CNBC — Anthropic CEO warns AI may cause “unusually painful” disruption to jobs (January 27, 2026)
- Fortune — Sam Altman says not even the CEO’s job is safe from AI (February 19, 2026)