logoalt Hacker News

Coding expertise is going to collapse from AI reliance

342 pointsby larsfayetoday at 3:52 PM365 commentsview on HN

Comments

ryandvmtoday at 4:17 PM

100%

We're already seeing this at the enterprise level. Companies have dictates from leadership that "if you're writing code manually, you're doing it wrong."

Okay, that kind of works for a while. We are indeed producing a shit-ton of code, but the reality is that engineers are pumping out code faster than the humans can understand and (honestly) review it. That sounds great until you realize that "hey Claude, read this Jira ticket and implement the feature in this code base" isn't really worth $200K/year.

This is all complicated by the fact that we're also losing our grasp on reality from the other direction because we have leadership air dropping AI generated manifestos on the product owners and product owners having to use AI to transmute all that shit into 1,500 word Jira tickets that are 10% necessary feature work and 90% LLM boilerplate.

So now you have software engineers whose job has changed radically to the point that the hardest part about being a software engineer is just filtering through AI generated artifacts from all directions just to try to get a feature out the door.

show 14 replies
konaradditoday at 9:02 PM

Great read that brings some rigor (or at least cites rigor) to what has otherwise been anecdotal.

> then what is the path for one to become an expert so they can effectively use these tools?

The article briefly mentions guard rails and I think on the same note we need the AI agents we use for coding to encourage learning and comprehension in its users. Right now it’s completely voluntary and on the onus of engineers to put in the effort to learn since, as the article states, the friction that led to some degree of required learning is gone.

xyzelementtoday at 4:24 PM

// The need for ongoing friction in long-term skill formation.

The subtitle of the story tells it all.

There are some people who seek out friction. Think about an athlete or a hardcore nerd.

The best engineers are ones who were fascinated with computers and learning as kids and persued it at every opportunity. Found their own friction in other words.

For those kinds of people, friction-seeking is the constant and what LLMs did is moved the point of where the friction occurs.

For example - the best engineers I've worked with didn't necessarily have lots of experience coding in assembly because that kind of friction was no longer necessary. But they could solve hard problems (and if a problem really required assembly they could go learn it)

What I think will be hit much harder by AI is the low tier engineer. Someone who was never truly curious and committed to it, for whom it was just a job. For example a typical offshore ticket pusher kind of person. That kind of person never went out to find friction and that's the kind of thing that's never going to fly again - if I want mediocre or average, the LLMs are sufficient

show 4 replies
rektomatictoday at 9:02 PM

Forcing friction the way this post describes won't work because the genie is out of the bottle.

A much easier way to force friction is to expect everyone to read the code they are producing. Yes read all of it and understand what it's doing.

A lofty bar sadly.

LandoCalrissiantoday at 4:19 PM

The snake eating it's own tail for llm software development has really been met with a shoulder shrug whenever it gets brought up. At best you might have a small cohort of developers that don't cook their brains with AI and their reward for that appears to be having to review terrible AI code written by people who have cooked their brains.

Completely unsustainable.

show 1 reply
aledevvtoday at 4:29 PM

I strongly agree with the concept that cognitive friction is the engine of learning.

First and foremost, it's an issue of "dependency": if you stop training the "muscle" of logic and reasoning, it gradually atrophies, just like unused physical muscles. You become dependent on external tools that replace a capability you once had yourself.

A historical example that brought about a similar shift is this: when the production process moved from the craftsman's mind and hands to the Fordist factory (and the assembly line), the skill of building things shifted from human craftsmanship to anonymous, structured processes.

Bit by bit, traditional artisans lost their knowledge and "know-how." Today, having a piece of furniture in our home depends on a massive production and supply chain; the "average" person no longer has the ability to build it themselves.

The exact same thing is happening to software.

We are the (now "former") software craftsmen.

show 5 replies
oscillonoscopetoday at 7:06 PM

It believe the most likely consequence of AI is to promote generalists: people who have a domain expertise, can work cross discipline, and has enough programming knowledge to keep the LLMs on track. I don't think 'pure' software engineers will end up being as highly valued as the last decade though I also think that will be true for other disciplines as well. Just as an example, in signal processing, it's not uncommon to have a person designing the general algorithm and another person dedicated to implementing the algorithm in the embedded system. With the quality of coding agents, it's not really necessary to have both of those people anymore. A person who is moderately experienced in both can do the job now.

TonyAlicea10today at 5:28 PM

As a tech educator I 100% agree. LLMs are not going to become a "new compiler" where we don't have to worry about the code any more. There's a reason we trust deterministic systems.

I've been worried about this a lot, I even created an agent skill called do-i-understand that's designed for novice devs (and experienced too, because atrophy) where the LLM asks you questions about the PR you're about to submit. I've found it helps a lot: https://github.com/AnthonyPAlicea/skills/blob/main/skills/do...

One way or another, there will be a skill reckoning.

show 3 replies
xtractotoday at 6:58 PM

Yes, and it doesn't matter.

Writing code in programming languages is a skill/necessity created by us to instruct computers what we want them to do

Initially in the 60s, this was done by connecting circuits one way or another (think ENIAC). Then we devised "programmable" computers and devised a bunch of codes (computer code instructions) that abstracted away those cables.

The we created Programming Languages to further abstract away the hardware complexity, and to be able to write down our wishes in a way that is more transferable between us humans, but that is still computable by machines.

But with LLMs and neural networks, at some point these abstractions wont be necessary.

The computers will still be making computations, but the way we tell them what we want is going to evolve.

It's fascinating.

show 2 replies
rglovertoday at 8:51 PM

Not just coding expertise. Wrote this a little over a year ago [1] on this exact topic.

[1] https://web.archive.org/web/20250623100834/https://ryanglove... (sorry for archive link, have a backlog to migrate old posts to my new setup).

simonbarker87today at 8:48 PM

I just wrapped up a side project that was 50% in my wheel house and 50% outside it but I knew what I needed.

I had codex build the 50% outside my wheel house with lots of back and forth so I could learn.

Then the 50% in my wheel house I wrote by hand and used a ChatGPT thread for bug fixing only. Basically like a fancy google search.

For the first couple of hours it felt weird to code by hand again. After that it felt totally normal again, and it felt to nice to actually write code again, I could feel parts of my brain coming back online and it happened much quicker than I thought it would.

vaintoday at 7:18 PM

This seems sadly very true. Just yesterday I was implementing some slightly tricky javascript (not my main language) on hover show n neighbours to each side, and if a deficit on either side, expand to the other side. After about 20 minutes of struggling to get the offsets just right, I succumbed to just asking an agent to do it.

I'm sure I'd still be able to do it, but was saddened that I didn't get it as quickly as I think I used to be able to. Atrophy might already be in play.

01100011today at 4:32 PM

TBH it was already pretty bad. There is a stark difference between the best and the average in my experience. The top, say, ten percent of coders are vastly better than anyone else when it comes to anything but boilerplate glue code(which is still needed and is better done by average coders anyway).

This is speaking from my experience as a systems/c/c++ guy. If you are a js web frontend guy, python, or whatever I have no idea if this applies to you.

show 1 reply
adamddev1today at 7:08 PM

We are spending sooo much for our intellectual time and energy on discussions about alchemy-like experiments with different models, agents, harnesses, orchestrations.

And there are huge amounts of time, energy, and writing sunk into arguing about AI or trying to convince people of the danger or problems.

Sadly all of this is taking time away that could be spent on real progress and learning about coding/FP/PL/algorithms/type theory/etc.

chris_money202today at 4:40 PM

Most computer science programs don't teach "coding" though. There is pretty heavy emphasis on datastructures, algorithms, and system design. I don't think AI atrophies those skills / knowledge as much as the coding language and I think in many cases actually improves them, especially if you are reading the code that is produced and at least understanding the flow of it.

I agree that AI reliance is hurting engineer's language understanding, but I don't know how much we should care.

show 3 replies
oldsklgdfthtoday at 8:53 PM

when the tool becomes a crutch you end up with a limp.

at work, i can tell that people are not thinking and losing the ability to thinking hard.

I keep coming back to what LLMs "really" are. Recursive autocomplete, it keeps choosing the best fit for the next token. This really demystifies it for me. It also reinforces that is not "reasoning", so there's no hidden mental model.

show 1 reply
doctoboggantoday at 5:13 PM

I often think back to the early GPT days before agents as maybe the last time I will deeply learn a technical subject. I think that was when I actually learned the most as I had to stay completely in the loop. I had recently started a new job and had to work with k8s for the first time. Using GPT to help me implement new services and help me diagnose and fix issues with kubectl taught me so much.

Now with agents I don't have any insights into what its doing with kubectl and would have no reason to learn how it works (other than my own curiosity).

I agree that the human no longer gains expertise, but I am not sure that will matter in the long run.

show 2 replies
tygontoday at 8:34 PM

I wonder if we will eventually see the same drop in general knowledge we saw with manual driving (in some parts of the world), cursive handwriting, clothing repair, etc. Of course, coding was never as prevalent as these practices in the general population, so it might be harder to measure, but I feel we will definitely see it taught less in schools, harder to find resources, etc. in the coming decades, becoming more of an underground hobby.

show 1 reply
chojeentoday at 4:15 PM

I'm looking forward to having the same experience as COBOL engineers did after retirement: companies backing up the brinks truck to anyone with the skills to keep the lights on.

show 4 replies
markus_zhangtoday at 8:27 PM

I’m still resisting the AI flood. I use it but I do read code without its help. I also make sure I have the muscle memory of stuffs that will be tested in interviews — somehow big techs have forgotten that maybe they shouldn’t test people on coding problems.

So basically I’m still doing things manually for everything that preserves my edge for interviews and as a technical person. But I use AI to generate diagrams and documentation, as well as operation scripts that no one is supposed to memorize.

jp57today at 5:47 PM

I fall into the category of senior engineers who benefit from LLMs for all the reasons mentioned in this post. I find it's possible to agree completely with sentiments like this and still feel as if this is all written in the sand below the high tide line, and ten years from now nobody will care about this.

Horsemanship and sailing were both specialized skills of high value to society, and now they're not. But in each case there was probably a liminal period, when being an accomplished horseman or sailor was still valuable, even as motors were taking over. Eventually that period ended, as the new generations without those skills found ways to get by with cars and motorboats.

show 2 replies
causaltoday at 4:19 PM

So far I think I have learned far more from LLMs than I've lost to them. I forget some syntax, definitely. But I now reach for a much wider range of tools that I have become familiar with because of LLMs.

So, partly agree, partly disagree.

show 2 replies
xenadu02today at 7:02 PM

There have always been opportunities for those who seek out the less traveled paths.

If all your peers are only accepting what LLMs tell them then you should do the opposite. Spend some of your time writing code by hand, especially when working at a new layer of the system or on new things you've never looked at before.

While the agents churn out more CRUD crap in the background spend your attention learning how everything works.

I do way more experiments with way more things by taking advantage of LLMS. When I have them do research I use that as a starting point for my own reading (but don't blindly trust them).

I find I am learning more faster.

Change is an opportunity. Use it to your advantage. Let other people while and moan while you get things done.

UncleOxidanttoday at 8:18 PM

Alternate take: How many people have known how to program in assembly for the last 30 years or so? It's been a skill on the decline. Good compilers made that happen.

GPersontoday at 5:14 PM

I don’t think there’s a big societal problem here, except that the agentic programming developers may be out of a job like the rest of us. If AI continues improving it will just keep taking over whatever skills are involved in the current AI coding meta are. If it stops improving then the meta will stabilize and after 10 years everyone will have longevity in it.

I also see no evidence that AI programming is a difficult skill that cannot be learned by any intelligent person in much shorter amounts of time than previous professional skills required.

show 1 reply
kodomantoday at 4:52 PM

I think we now entering this state where code is cheap but good well made programs will be rarer then ever, a lot of crap can be made and a lot of programs made without ever thinking the problem through properly will occur.

It might be like how an archeologist since the invention of plastic can date the period of the soil as post plastic, if one could cut open the software stack of the coming systems that will be built in the near future one would could data that code as post agentic LLM as programs are going to be mostly bloated ad-hoc, poorly thought-out and patched in a way that does not concern it's self with the correctness of the algorithms or data structures chosen.

I am not Anti-AI but I think it's going to be interesting and I am surprised at how bad a program ends up when one tries to "vibe code", though often ends up working, though in isolation and when used with discipline (that the tools themselves psychologically make it harder to do) can produce some very good code and being able to use loops to solve difficult problems or problems that simply would have require banging ones head against the problem many times is very profitable.

show 2 replies
thenoblesunfishtoday at 6:00 PM

I hope that this will expose the true value of education. It's a new scale perhaps, but not a new problem. We sit in classrooms even though books and YouTube videos make available the teachings of far more illustrious teachers than the one in front of us. We watch things written out agonizingly slowly in chalk. We learned to do algebra and calculus even though we had our TI-86s and Mathematica. We learn in Haskell and Scheme even though those are rarely used later. We write toy compilers and write essays and repeat experiments with known outcomes in labs. We do it to learn how to think, how to build. We just have to be even more deliberate about it now.

osigurdsontoday at 6:35 PM

My personal antidote is to write unassisted Zig in my spare time (though C would be fine as well). While I can't back with data I certainly feel sharper.

randusernametoday at 4:15 PM

Does anyone else feel like the web has become so "readable" it is illegible?

I have such a hard time quickly reading pages like TFA. Headings, bullets, line-spacing, width, link hover animations, even the font. Even reader mode defaults aren't great for me.

Compared to, for example, https://www.paulgraham.com/best.html

xdavidliutoday at 6:40 PM

> JetBrains, a major player in developer tools, recently completed a study of junior and novice developers

The article links to this as the study: https://dl.acm.org/doi/epdf/10.1145/3632620.3671116. It doesn't appear to be related to JetBrains in any way?

show 1 reply
phyzix5761today at 4:32 PM

I'm still waiting to see how LLMs have made the world a better place because it honestly feels like its done the opposite.

show 2 replies
hypfertoday at 4:50 PM

> This applied friction is directly what builds "developer intuition" (or "taste"). The Germans have a great word for this: Fingerspitzengefühl (fingertip feeling). It’s the muscle memory that triggers when a developer looks at something and thinks, “yeah...this is probably going to cause problems.”

No, we do not have that word for that.

Yes, we have that word. No, it does not mean that.

Any LLM proofreading could've told the author that, for that matter.

__

What Fingerspitzengefühl actually means could be described as "tact", a precise approach to something and general attention to detail that leads to success. Or.. the lack of all of that leading to blunt failure.

__

I would of course comment with more Fingerspitzengefühl for the emotional needs of the author if the writing wasn't just a sales funnel for their courses and whatever else (+ posted by them themselves.)

1vuio0pswjnm7today at 5:46 PM

Hobbyist programming expertise unaffected

Genuine curiosity in learning how stuff works, not necessarily for financial gain, e.g., from a salary or using web to deliver ads

No real "pressure" for hobbyist to use "AI"

IMO as end user, some of the best software available was originally written by a single unpaid author, not salaried teams

Some of the worst software ever written was produced by overpaid teams

Hobbyists may use relatively old, handwritten code to learn from

That's not necessarily bad. Software quality has declined over time

jamesontoday at 5:26 PM

It appears to be a pattern where I work "expert novice" eventually causes serious incident but is unable to root-cause on their own.

They've become a meat proxy[0] prompting LLM to root cause for them and the ability to fix is capped by LLMs ability, not the engineer's.

I've tried to convince management before this happened and yet here we are.

[0] https://gruhn.me/blog/2026-08-03/

znnajdlatoday at 5:30 PM

This happened before with “real” engineering. Engineers a hundred years ago used to be proficient with slide rules and mental math and 3D assembly by hand. Products designed in that era often lasted a hundred years, like Singer sewing machines and Lada cars and 500 year old churches. Now things aren’t built like they used to be, and few people can rebuild civilization by hand like they did. But the world moves on fine!

show 1 reply
vitalnodotoday at 4:09 PM

Saw a quote comparing pre-LLM code to pre-WWII steel, low-background steel, essentially.

show 1 reply
yipinwongtoday at 5:11 PM

I do understand the sentiment of applying "constraints" over AI usage to certain scopes of our development work.

This has an issue in practice.

As an example, Function Programming (FP) has a high constraint on programming, where some don't even have loops (gotta use recursions all the way), and almost no state mutation (Exlixir I believe have a mutable state? forgot).

FP sounds great with all those constraints. But what about the adoption?

It's hard to switch your mindset, and not as natural, thus long leraning curve, and not as wide adopted <- productivity goes down as all others need to know and use it well. That's why still imperative and OOP languages are ruling the world.

Same for these constraints. The author promoting using AIs only to subsets (no coding? wtf) is something the majority won't follow. Yes, the constraints sound great, but at what cost? By the time one learns everything, and everyone moves along with AI building stuff fast and cheap, they will be left behind.

---

I do not like the author trying to make his points authoritative by using Halo effect using quotes from the industry and could have had been taken out of context (That's where AIs mess up the most, they only get chunks of text and lost context of before and after exerpts).

show 1 reply
LunicLynxtoday at 5:34 PM

In my company the knowledge is starting to be devalued.

People are distrusting whole swaths of concepts because they do not understand how things actually work.

Like going away from zerotrust architecture to holding open a long polling connection.

At least I seem to remember that long polling wasn’t that great, but i start to even doubt myself.

Anyone wondering how the Roman Empire was wiped out? I guess we will find out soon

danielovichdktoday at 7:39 PM

Would you work for less money and use AI ? Or would you step out - professionally - of the industry and program for passion and fun ?

I think that is a question we are all mulling about these years.

Our expertise has been packaged into a 200$ product and the competition has become ourselves.

kaashmoneetoday at 5:29 PM

Substantiveness of this article notwithstanding, I do want to point out that the author also runs (or is planning on running) a programming course which to me may be a slight conflict of interest. I think the author may altogether be well-intentioned, but it IS something that I'm going to keep in the back of my mind as I consume this content.

azakaitoday at 5:19 PM

> LLMs can detect patterns at a scale that no human ever could, but patterns only get you so far.

This is asserted without evidence, and from a scientific standpoint, unjustified.

First, "detect patterns" makes it sound like a classification task, "is this a picture of a cat". But LLMs transform the input.

For example, an LLM can translate text between two languages while properly handling the names of the people described, no matter what those names are. That shows they are representing the text in a somewhat abstract way, that they can perform operations on that representation, and also convert it to useful output.

And, what I just described is the most general form of information processing algorithm. Science is not aware of any limitations in principle on such systems.

I am not saying LLMs have no limits, but "they only recognize patterns, and that is a true limit" is not a good argument.

not_the_fdatoday at 4:45 PM

Writing code was never the job. It was a small part of the job that can now be delegated to AI.

Eliciting the right requirements and user needs. Creating a sound architecture and design. Validating final product meets the requirements. Ensuring there is good test coverage. You know `Engineering`. Mechanical and Electrical engineers didn't go away because of CAD.

show 3 replies
schopra909today at 5:18 PM

I think this is more “gray” than this. I feel like I can rip through ideas more quickly then ever before and as a result get a lot better at designing systems and (for my work) get a lot better at designing data/model experiments.

But I empathize with the author. I think the frustration comes from the fact that other folks in your organization use these tools to “get by” more effectively then before. In the past, a disinterested engineer might ship less under the umbrage of a difficult engineering problem. With the pressure to “ship more” now that there’s AI, the same engineer is using AI to spam PRs to prove they’re working, even the quality of work is low (because quality of thought is low).

svaratoday at 5:44 PM

Yes, but it's also building other skills. There's no friction to learning something new anymore, and that's really quite amazing.

E.g. I've gotten pretty good at git thanks to AI because it forced me into more complex workflows. I still can't remember the commands but I really grok the concepts and terminology on a far deeper level than before, where I made a conscious effort to stay on the happy path lest I get into some odd state I don't understand. Pretty sure those "odd states" would seem quite clear to me now.

_doctor_lovetoday at 8:40 PM

I am not personally worried on this front. It is a near-certainty that something catastrophic will happen in the not-too-distant future because of the issues Lars raises in the essay. Not until that moment occurs will there be a broader industry-wide reckoning. Most likely it will get expressed in breathless language like "you'll never believe the crazy gains we got from adding tests!" (or whatever).

I feel pretty good asserting that, as always, a few smart leaders will recognize early that quality and stability are the new game now that we have speed 'for free.' And then there will be incumbents whose eventual demise will merely be accelerated.

phoghedtoday at 5:40 PM

I've, more than once, gone long spans of time doing purely management and architecture level work, then returned to programming. A little rusty? Sure. But I never forgot how to program or lost the skills that actually matter. Seems mostly like a non-issue for people already in the field.

The real issue will be with people that never learn it in the first place.

And even that isn't so bad, learning programming isn't some insurmountable hurdle. It took me less than 6 months from no knowledge to my first job.

show 1 reply
js8today at 4:59 PM

Fair enough, let's say that happens.

But what we're gonna manage the codebase in, then? What kind of language?

Will it be a natural language, or a formal one?

I feel that "coding" cannot collapse. Coding is just translation from natural to formal language. Somebody needs to write the specs. And writing/maintaining them in natural language brings a lot of fun - shifting interpretation, inconsistency, missing specification, etc.

I don't think it's progress for the field of SW engineering. But at least more "shareholder value" will be created.

linuxhansltoday at 5:22 PM

Yep.

In my experience human design -> agent code -> agent review -> release -> agent observer, does not (at all!) work. One absolutely has to be understand what is going on, how the system works, how the H/W works, etc, to catch agent errors.

The proposition of us losing those skills is terrifying.

Maybe AI will get better and we truly won't need a human in the loop. Then please also have all PRs signed by whatever model wrote them, and do not come to me for trouble-shooting.

dingaling911today at 5:56 PM

It's pretty simple.

You treat the AI like a junior.

You make it write pseudo code in the tickets.

Then you make it write code in the tickets for the tricky stuff.

Have it reference relevant documentation/APIs.

Then there is no lost knowledge.

(Still, sometimes it sneaks in some "helpful" belt and suspenders, but for the most part, I know everything that is going on in the code base with this method.)

Zigurdtoday at 4:13 PM

Coders should be treated as as well as as other software users. Tools like Claude code, Antigravity, and others are applying AI to solving that problem.

I know how to create a multi year P&L projection from scratch. It gives me some insight into how much capital a startup will need to get to breakeven. A good AI tool that creates that same spreadsheet in minutes should also be able to explain why different businesses have different shaped cash flow troughs. I don't think people using tools like that is bad even if they don't gain deep insight.

🔗 View 44 more comments