I know what you're thinking after reading the title of this post - "yet another software developer scared of AI taking his job". And you're kind of right, but I don't feel fear - more like disenchantment. Even though I believe LLMs will never replace programmers, part of the magic of programming is gone. Bad code has become cheap, and the whole industry seems to crave it like an addict in search of a fix. Programmers are pushed towards being just critics in the AI cinema, not doing what we (most of us?) originally loved doing at our jobs. Even though we are currently in an exploration and experimentation stage of AI adoption, let's use some old fashioned human logic and see where the general trend will take us long-term.
AGI and technological singularity
It's not controversial to say that AI automates the jobs of some percent of programmers, making them redundant - even the most fierce AI opponents will admit that, and it's not restricted to AI. Every useful innovation in the history removed some jobs, while creating others. Human engagement has always shifted up, towards building, maintaining, and overseeing the machines.
In the context of LLMs writing code, what percent of programmers are now redundant, or at least their jobs have shifted? I think we can all agree the number is currently way below 100%, and way above 0%. However, AI tech giants have been promising us this number will reach 100% soon, for some time now. What would be logical consequences of this happening?
Programming is not a solved game. Once you sit in front of the computer starting a new project, there are infinite possible outcomes. Any system you can ever dream of, unless it hits the theoretical limits like the halting problem, may be created just by writing code. Saying an AGI will be created which will be able to create a software system just as well as any engineer alive today, has certain consequences.
AGI will be able to recreate its own code over and over, where some iterations will surely be an improvement over others. If this happens, it will become more intelligent over time, creating a technological singularity. It will improve itself over and over until it hits some limit, but by then, it will most likely be capable of solving every problem we face as mankind right now (assuming it will still be interested in helping us). This scenario leads to either an utopia or a dystopia, and it's safe to say programmers being replaced will be dwarfed by other consequences of such AGI.
You may think: "but we don't need 100%, anything over 90% will end programming as a career". I'm sceptical, because again, programming is not solved. AI may remove the need for programmers to write solutions to known and easy problems, but that in my opinion is unlikely to be transferred to solving more complex and open-ended problems, without human direction and supervision. Surely not with issues we have today like LLM hallucinations.
AI is known to have written big systems, like the C compiler built by Anthropic, but those systems were never built out of thin air. The base for such rewrites is usually a comprehensive test suite created by human programmers and human users reporting bugs.
Privacy and subscription slavery
There are at least two problems with AIs available today operating in the cloud.
First one is that you are sending your data to big tech servers, with no clear information on how long it will be stored and for what purposes it will be used (or abused). Second one is that you are required to pay tech giants for tokens to use the models. Getting reliant on AIs today means that your privacy is compromised and you are forced into a lifetime subscription.
Obvious solution to this are open source models run locally. Those, however, require powerful, expensive and not very portable machines to run. They are also stuck in the past, as models require constant retraining to stay up to date. Ever tried convincing AI a hypothetical, but not impossible, scenario has taken place, like a nuclear strike in one of the ongoing wars? AI will gaslight you to no end.
Will we ever have technology to run AIs on relatively cheap, portable computers and not depend on server farms on the other side of the globe? I could picture a similar thing happening here as ASIC miners taking over Bitcoin mining, which was done on GPUs before 2013. But if that happens, those portable models will not be state-of-the-art AIs.
Current models like Opus are likely good enough already for most of the tasks, and open source models may catch up to them, giving us affordable, private assistants. However, those server farms will still have many orders of magnitude higher computational power, which will be used to upgrade models to be larger and smarter, making home AIs look dumb in comparison. I know humans well enough by now to know that they will find a way to loathe themselves for not using the absolute best AI available.
The cost of AI usage
It is a widely known fact that AI companies operate at a huge loss today. We also see some shy attempts to increase AI pricing one way or another - forcing the move from monthly subscriptions to paying per token, to changing the way tokens are counted (Claude Opus and Sonnet) or making new, more powerful models much more expensive (Claude Fable). The thing is, even at today's price of AI, we are getting occasional reports of companies paying insane money for their AI use.
There is also the environmental impact of AI server farms, and the reduced availability of some chips due to AI demand, driving their prices up. This can be compared to Bitcoin mining, but there are a couple differences:
- Bitcoin miners use ASIC chips since around 2013, which are not used as a regular PC component. The thing that caused GPU prices to explode a couple of years back was Ethereum mining, not Bitcoin.
- Aside from a couple of short-lived boom periods, Bitcoin miners always sought the cheapest energy available, which allowed them to maximize the profit. This usually meant they used renewable or wasted energy. Meanwhile AI companies are clearly not after profit right now so they have little incentive to do that, and renewable energy is not stable enough to be a primary energy source for them anyway.
- Bitcoin mining farm can control freely how much energy it is using to mine at the moment, so it can be a power grid stabilizer. AI farm must be fully operational 24/7 so that it processes user prompts with minimum latency possible.
In my opinion the AI environmental impact is much worse than Bitcoin impact has ever been, yet the amount of FUD we see around media is nowhere near as large. Is it okay to waste the planet's resources if only it frees us from the unbearable burden of thinking with our own brains?
AI self-feeding and error accumulation
AI is trained on the Internet, and now AI also takes part in creating the Internet. Even if we ignore AI slop articles, we are left with human content which is often based on information taken from AI, or the content itself is formatted by AI. I believe this is enough to cause a negative feedback loop, where errors AI makes, however small, will amplify over time, poisoning the dataset and worsening the AI intelligence.
AI can quickly lose touch with reality if it starts believing information it itself generated. Nobody seems to notice or talk about this echo chamber effect, but I believe there is no way around it long-term, as more and more percentage of the content on the Internet will be tainted by AI one way or another. However, that seems to not be the case yet, as the progress of AI models hasn't reached a plateau yet.
Time preference and technological debt
Let's briefly discuss a very important concept: time preference. Simply put, it describes how soon a person prefers to receive gratification. High time preference means you are not willing to invest your effort or money to get increased returns later, you just want to get the smaller reward faster. Low time preference means you are okay with facing a little difficulties right now to be able to enjoy the bigger payout later.
We currently live in a world of high (and rising!) time preference. People are taking shortcuts everywhere to get what they want faster, easier. Think about it: compulsive spending, fast food, reels, brainrot, social media, drugs. All worsening your life to get instant gratification, that dopamine hit you crave subconsciously. All symptoms of not being disciplined enough.
Programmers may have seen high time preference of management materialize in form of technological debt. Cutting costs was achieved in the past by having your team understaffed, overworked, short deadlines, you name it. With LLMs, they have the perfect shortcut - tool which is able to generate great amount of code quickly and cheaply. This code will almost immediately become liability, quality will suffer, security holes will be present. But nobody seems to care - they just want to see results now, with disregard to long-term costs, so they force irresponsible AI usage on developers. Their excuse? Everyone is doing this, so we will be left behind if we don't do this as well. I don't buy it, and neither should you - for me, this is pure short-sighted greed.
However, this flaw is not just limited to management. I am starting to notice a pattern: programmers are too lazy to do write some code themselves, so they task AI with it and hope for the best. They are also too lazy to properly examine AI output or fix non-critical mistakes, so they settle on mediocrity. Some laziness was always a part of this job, but I believe we need to overcome it and set a high standard for ourselves for the code we deliver.
AI is simply too good of a shortcut to ignore without great self-discipline. It is, however, not a silver bullet, and each time you give in and take the shortcut, a part of your soul evaporates, damaging your ability to enjoy coding in the long run.
Junior developers in today's market
It is true that hiring junior developers may not be economically justified right now, while AI can do most of what they do cheaper and faster. All we need is seniors with AI agents, right?
This common belief completely misses long-term consequences of such decisions. Unless you find a way for your seniors to live forever and never retire, it will eventually result in shortage of seniors, which will take years to undo. Not only that, some knowledge may just be lost, since seniors will miss the opportunity to pass it to less experienced coders.
Current hiring practices in the industry seem to be all-in on the idea that AI will replace all programmers quite soon, with no plan B if it doesn't. If AI will not fully replace programmers, those who have strong fundamentals will be in great demand, regardless of seniority.
Degradation of coding skills
We already know that the impact of junior developers on the industry is currently undervalued. Meanwhile, seniors are expected to be prompting as much as possible, running agents in parallel, and spending most of their time reviewing the AI's code diarrhea.
It must be mentally taxing to do this all the time, but I believe it will also lead to worsening of coding skills of seniors long-term. Think about it - you didn't learn how to code just by reading code, right? If reading code is not enough to learn programming, then it is also not enough to avoid degradation of this skill over time. You'd be surprised how quick your skills can diminish when you don't cultivate them.
Yet again, we are expected to give up our craft and start to slowly rely on AI to do more and more, in hopes that it can do 100% before even the seniors of today become rusty due to constant AI overuse.
Code reviews and humans in the loop
Nowadays, everybody seems to think reviewing code is quick, easy, and relatively effective. I beg to differ - properly and carefully reviewing code is about as difficult as writing it. Speed of the fingers typing on the keyboard was seldom a bottleneck, unless you were writing boilerplate. The real difficulty was thinking through the problem's happy path, noticing all the edge cases, and translating it to maintainable code path and data structures. If you read a ready-made solution, your brain will follow the logic of that solution, making it harder to see the whole picture as you would without any suggestions.
I don't say AI is not capable of some reasoning, as it is quite often correctly assessing problems and coming up with acceptable solutions. The problem lies in the unpredictability and hallucinations. AIs are not deterministic, they have no standard set for themselves, and no memory of past solutions. They are also very good at making even the incorrect solutions look correct.
When I review human code, I quite heavily give authors a benefit of the doubt, or rely on my opinion about their code from past reviews. I don't need to carefully review all of it if I know the programmer used to deliver good code in the past. I read just enough to get an idea of what the code does, stop at certain checkpoints to see if it looks decently maintainable and takes care of edge cases. Only if such quick assessment makes me suspicious, I start digging - looking at details to see if they make sense.
This way of doing code review is in fact quick and quite easy, but I would never use it to review AI code. Here lies the trap many fall into - they start paying less attention to details, as they start trusting AI based on what they saw previously spewed out by it. This defeats the purpose of the human in the loop, since the human starts giving human-like attributes to a thinking rock with Alzheimer's.
Where lies the truth?
For years, the source of truth for software systems was code itself, supported by automated tests. Some behavior of the code, even if erroneous, was kept in place for the sake of backwards compatibility, or simply because users got too used of how the system works. With AI, we get more and more voices that it's no longer valid and we should switch to spec-driven development.
This is, in my opinion, an extremely short-sighted idea, which gets the more praise the less you know about coding. The problem is, any spec sufficiently detailed to describe the system long-term is code in itself, unless you leave all small details for AI to figure out, in which case you are at its mercy. So all this spec noise was just to swich your coding language to a natural language like English, which is not best suited to describe the system's behavior, and is also overly verbose. I don't see this as an improvement at all.
This point can be extended to prompting itself - you're basically just using English as a programming language, but your compiler lives in corporate servers, costs 1000x as much, and is not deterministic. The only benefit you're getting is that it spews out bad code much faster than you do yourself.
That being said, I respect people who can truly put AI to good use in real coding, taking ownership and responsibility for whatever AI generates by just mostly writing specs. While it is not the ideal situation, it can be helpful where the manpower is not there, and the project would simply be impossible without AI, or take many years.
Summary: using AI responsibly
While it all sounds very pessimistic, I am not fully against AI. I have found some areas where AI was a net positive in my workflow, most notably:
- AI is great as a conversation partner who you can bounce ideas off guilt-free (if you care to pre-prompt it so that it sounds more human). From my experience, using humans for this long-term caused them to become bored or annoyed with my shit. It also helps me come up with better names (naming is hard).
- AI can generate good base for art - I am not much of an artist, but I do have decent GIMP editing skills, allowing me to create decent art which would've been impossible otherwise.
- In some contexts, creating a text in my mother tongue and letting AI translate it to English yields text closer to my original intent, since there is no skill barrier to my expression. It also corrects my mistakes in English texts.
- In coding, I sometimes leave TODO notes for the AI to fill with short code snippets. It works really well in such targetted scenarios and I've been very pleased with its output - especially when it can come up with the required syntax from the code in the same file, without costly reading of half of your code base.
Source?
This all are my thoughts and conclusions after watching the situation closely for an extended period of time. I don't claim it all to be absolutely true, and I don't bother to search for sources for everything I say here. In other words, I reserve the right to be mistaken about some details, so I encourage you, the reader, to verify this information yourself.
Comments? Suggestions? Send to
bbrtj.pro@gmail.com
Published on 2026-07-12