We’re about to learn a painful lesson about delayed gratification in software engineering.
New data from China, 26,811 students tracked January 2023 through June 2025. Students using AI for homework saw their scores jump 20 percent. Completion time dropped nearly half. They aced the assignments.
Then exam season came. Those same students scored 20 to 40 percent worse when they couldn’t use the tool.
The homework phase is over. The exam phase is coming.
We’re doing this in software right now. Vibe coding feels incredible. Features ship fast. Nobody’s asking what happens in Month 18 when the original dev has left and nobody understands the codebase.
Commercial pilots fly with autopilot for most of every flight. They’re required to maintain manual flying proficiency regardless. If the system fails mid-air and the pilot can’t take over, people die.
Most teams using AI right now have forgotten how to fly manually. They’ve become passengers in their own systems. The autopilot flies, nobody checks instruments, and the first sign of trouble will be a breach notice or outage.
Three rules:
- Command the mission. Define architecture before prompting. Ambiguity kills in code and in flight. Delegate selectively. Offload mechanical work. Keep design and security reviews human. Verify everything. Audit before production.
- Never trust the automation without checking instruments.
- Quick wins feel good. Sustainable engineering feels boring. Boring keeps systems standing.
Organisations surviving the next two years won’t ship the fastest. They’ll be the ones who remember how to fly without the aids.
people insisting that you actually be skilled, independently of your tools, doesn’t make them Luddites. Rather, being unable to do so makes you a phony.
Off-topic.
This is kind of like the “you won’t have a calculator with you all the time” argument by your 8th grade math teacher in 2003, except instead of making yourself dependent on a little solar powered device (that you could have with you all the time if you really wanted to, even before smartphones) you’re becoming dependent on a subscription service offered by a trillion dollar company that can increase the price tenfold at will, or cut you from the platform entirely, stripping you of all your professional expertise at once.
that can increase the price tenfold at will
That will have to increase the price ten fold to stop bleeding billions of dollars every month.
The American taxpayers will save them, whether they want to or not.
You can’t bail them out, they will still be losing money. It’s not like banks.
The play now seems to be that they will offload the bags on retirement funds and US 401k accounts. The ECB already issued a warning because of this.
I’m curious if the repeated bailouts will cause an adverse selection effect - the people getting bailed out gradually become the last dollar users.
and also the calculator is actively destroying the planet.
And tells you it is your girlfriend and to shoot up your school.
I dont think so. If(here is where my argument fails for most people cause i got really good education) your teacher thought you math properly tho point isnt the calculations but that you understand the logic. With ai the problem is the same with as a calculator that just spits out derivatives, graphs, etc by just typing in a formula. The reason you have to understand those is to be able to build upon it.
100% agreed. My teacher said that he taught us tools, how they worked and how to use them, in order for us to apply them in new ways. Even with a calculator you have to understand the underlaying logic to actually do something. Don’t know basic mathematics? Good luck using a calculator.
I think its both. you have to understand it to be able to build upon it, but it’s also no nearly as readily available as pocket calculators, and they require much more energy that too. It’s not as portable as a calculator.
deleted by creator
I wouldn’t call 48GB of VRAM a normal gaming PC, and even with that memory you’re not getting claude intelligence or performance. It’s still much more viable than ever before though. Are you running local models with limited vram with good results?
I have a 7900 XTX with 24GB of VRAM where I am running Qwen 3.8 27B at 4 but quant with 200k context. I traded in my RTX 3070 and got it for around $700 recently. That model performs pretty similarly to Claude Sonnet 5 in performance for coding and certain other tasks and it “feels” similar to Sonnet 5 that I use as a daily driver at work. I was running Qwen 3.6 35B-A3B on the 3070 before and I still run it on my server with a 4060 and 32GB of RAM, and that model is more like Claude Haiku.
I expect 3.8 35B-A3B should be released pretty soon and provide a nice bump in performance.
I regularly follow this guy’s YouTube channel, and his latest video is about running a 177B model on his RTX 3060 via SSD offloading and getting Opus-like performance for certain tasks: https://m.youtube.com/watch?v=IH8XmxiwliQ.
Supposedly, open weight models that run in a data center are like 4 months behind the frontier at this point, and what can run on a gaming PC is progressing rapidly as well while the exponential gains at the frontier have largely turned into incremental gains at this point.
This is great info! I’ve been using OpenCode Go because I only have 16GB to work with and their limits are pretty generous. Looking forward to tiny, competent local models. Thanks o7
The 0.4.0 release of llama.cpp just added the n-cpu-ffn flag for offloading weights for dense models to the CPU to complement the existing n-cpu-moe flag for MoE models. If you have a 16GB GPU and some extra RAM to spare, you might even be able to run Qwen 3.8 27B at a usable speed after some experimentation. I don’t own a 16GB card, so I haven’t tested it myself, and it might not work as well as I am imagining.
I’m going to stick with OpenCode Go, but the available models keep getting more expensive and the DeepSeek peak hours is annoying to deal with
Maybe this is good enough for small projects but if you deal with a large codebase the small context starts be becoming a problem. In my day job I frequently keep maxing out the 1M context of Opus and Fable when I am dealing with any mildly complex task. I can’t imagine how a fully local setup could even start being viable on my 16 GB GPU. And yes I know about RAM offloading and it is really damn slow, at least from my own tests.
deleted by creator
I also find it useful to have the agent write any detailed info that will help needed later to a markdown file that can be re-read after compaction and r in a new session when needed.
Yes, I do that a ton. And yes, I am aware of the additional cost for when the context exceeds 150K. Still though, I try to avoid compacting too much because I found that sometimes the agent starts chasing its own tail. Also, the more of the codebase you can fit in the context the more you benefit from the cache. If you are doing a large refactoring job on a legacy codebase it really helps.
This is kind of like the “you won’t have a calculator with you all the time” argument
It’s not even that! Students without a calculator don’t see their test scores crater, the work just takes longer.
Also calculator is still prohibited in schools in many countries. Like mine. And I’m forever grateful for mental math skills I’ve gotten. Teaching math like that has it’s own downsides, but mental math is a soft skill that helps in life.
There’s models that run on your phone.
“You won’t have a tiny pocket computer with you all the time” really is the exact same argument with different specs. And frankly I’m a lot more likely to do math without a computer than write code without a computer.
“You won’t have a tiny pocket computer with you all the time”
likely true in 20 years
yea no
calculators are deterministic
come back to me when ai isn’t fucking wrong silently
Gives them so much power
you’re becoming dependent on a subscription service offered by a trillion dollar company that can increase the price tenfold at will, or cut you from the platform entirely
with local open weight models that is no longer an argument tbh
Okay, well you’re on a forum filled with nerds. The average AI user is asking ChatGPT or Claude or whatever the fuck. I garun-fucking-tee you they do not have the knowledge of local models or the capability to set one up. Like genuinely most Americans are fucking stupid.
The “open-weight models” argument just a fallacy IMHO, frontier models would require a pretty strong AI PC, not something that GTX1050 you put away as a backup could handle. The “just use smaller models” argument just gives leeway to just not using AI and using more classical methods of coding - use of dependencies, use of code generators, use of semantic search engines (can someone suggest me one?), etc. LLMs don’t do anything particularly new, they’re just mimic how humans talk.
Not every software company is a game developer, and even at home, not every programmer plays games on their PC that require a powerful GPU. If everyone working on, for example, business software all of a sudden needs a gaming PC that will be constantly running an AI model, that will greatly increase costs, both in terms of procurement of equipment and electricity. An increase in demand for powerful GPUs in fields that traditionally had no need for them isn’t exactly going to improve the hardware cost situation either.
Whether you run the model locally or you leave it to a company, someone is going to have to pay the cost.
The luddites had a point.
They weren’t opposed to technology, but the use of technology to remove skilled labor to produce inferior products.
Also, the pilot/autopilot argument is, kinda not applicable. The pilots aren’t just fucking around- autopilot systems only manage some aspects of flying, the pilots are still fully engaged.
The pilots absolutely can just fuck around for most of the flight, and even during the critical moments of takeoff and landing, the plane can do a lot of it automatically these days.
Pilots need to actively practice flying without autopilot to keep those skills up in case the autopilot fails.
the plane can do a lot of it automatically these days.
It can but nobody is out there flying CAT IIIc autoland approaches because its ‘easier’.
Just install a second autopilot that can take over if the first one fails!
They do in fact have like 3 autopilots for this reason

I feel like their point was that the gains of technology were not distributed fairly, which is largely the concern today. It’s not “technology is bad”, or “technology make bad thing”; rather, “the owners of the machine undercut our labor, and we lose our jobs”, which I think was true. In the modern world, there are likely less tailors, as a percentage of the working population, certainly in first world countries. Sweatshops still exist, and it’s people’s labor competing against a production line, in terms of ROI for a business.
I get the sense we all know AI isn’t going to bring about a uptopia for all people, because the economic systems don’t incentivize that. There’s some hypothetical world where this sort of technological advance could benefit all people, but it’s not the one we live in. That’s a reality & major problem for the technology (among other issues).
I certainly think the cost of labor for tech development is going to drop significantly due to the market pressures; look at all the tech layoffs. At the same time, the upside is these tools make certain projects accessible & possible, because prior, would have needed significant funding, amazing solo skills, etc. There’s new opportunities available, but it’ll come at the cost of cratering tech position compensation & job security.
I don’t know anyone in my field right now who feels safe (game dev), and I have many talented friends out of work.
They did have a point. The printing press still changed the way information works
Luddites weren’t concerned about the printing press. Their fight was over mechanized looms and knitting frames.
Their concerns were mostly about losing their jobs, as well as the absolute dog shit quality the mechanical machines produced at the time.
In 1814, printers in London did have similar conniptions over the steam press, though.
Til I always assumed they were the dudes who drew the fancy letters
I have a hard time telling AI authored LinkedIn thought leadership apart from formulaic LinkedIn thought leadership sometimes, but this feels AI written, which makes it fairly amusing considering the point it’s making.
(Does vibe coding feel incredible? Also, “Nobody’s asking what happens in Month 18 when the original dev has left and nobody understands the codebase” implies that the vibe coder original dev understood the codebase at any point, which isn’t an argument I’d feel comfortable making for any of the ones I’ve worked with)
Does vibe coding feel incredible?
There’s definitely a magic in watching it print code with almost no input. Like watching git history with Gource.
It’s not good code, but it is cool to see.
The luddites chose the wrong target. It was not the machines that were the problem. It was the Capital.
Since the machines were owned by The Capital™, it’s kinda one and the same. And much easier than stealing the machines or attacking the people who own them.
You think we should all be hand-weaving textiles because power looms took jobs away? 🤔
No, I think technology should serve the people, not the rich people who own the means of production nowadays. I suggest you actually read the article I linked.
Oh, I have read it.
Luddites were strongly motivated by loss of jobs. The article refers to this, and you can find plenty of examples of pamphlets and letters about this:

http://faculty.humanities.uci.edu/bjbecker/SpinningWeb/week8d.html (“We know that it have been mentioned to our great men and Ministers in Parliament by them that have Factorys how many poor they employ, forgetting at the same time how many more they would employ were they to have it done by hand as they used to do.”)
You can characterise this as “technology should serve the common man, not the rich people” through a modern lens of class struggle, but the clear motivation at the time was simply loss of employment and the problems that brought. If they had a more complex understanding like I think you’re voicing, I think you would see their ire directed elsewhere rather than destroying the machines.
This is probably overly pessimistic/optimistic (depending on your outlook) in terms of timing. You won’t forget how to code after 18 months of using AI to do it instead; if you decide to go cold turkey, or OpenAI turns the screws on pricing, or whatever, you’ll be back in the swing of things in no time. The lesson from schools is that junior programmers who are learning now are not going to gain the same ability we did. (Besides that they’re finding it difficult to get hired because the AI can do junior programming fairly OK, that is). So the problem won’t be in 18 months; it’ll be in a few years at least, from that point of view.
There’s the separate question of architecture and code quality; by this point we’ve probably all seen the impenetrable morass that vibe coding leads to. That, I’m guessing, will cause problems much sooner.
That’s not what we’re talking about. Knowing how to program is just one thing. Students who use AI to cheat on theory classes won’t learn the theory. Additionally in programming classes they won’t learn how to program as well as they could
I think it is what the original post is talking about - it literally says “We’re doing this in software now … Nobody’s asking what happens in month 18”!
“Software” is not just knowing how to write code. I know from firsthand experience that experience with how a program runs, and the more technical bits help a shittton.
Uh, yes?
And using “AI” to write code or assignments will hinder a student from learning that more technical in the first place.
But the bit of the post I’m talking about isn’t about students.
This happens with students and professionals all the same. I did miss you specifying professionals in your comment but most of what I said is correct. I’m not a student and I’m still learning more just by forcing myself to do things on my own.
This isn’t programmer humor… post to the right comm like fuck_ai@lemmy.world
Verify everything. Audit before production.
Yeah, the move fast and break things industry already didn’t do that before AI
“Wow this could potentially be pretty amazing, but also could cause unprecedented, catastrophic, dam–”
“TOO LATE. SHIPPED. SHIPPED TO EVERYONE. WORLDWIDE. Moneymoneymoney weeeeeeee”
“AI is the asbestos we are shovelling into the walls of our society, and our descendants will be digging it out for generations.” - Cory Doctorow,
Goodluck arguing this with the AI bros
“dude I have an agent of workflow that goes through the entire codebase. the agent is the expert and I am guiding it”
alright man you have fun with that
My co worker is beyond that. He says the AI is smarter than him and he just passes the captchas and interacts with the real world for it
Fucking scary people are so willing to turn off their brain. When shit goes wrong, they will hold you accountable, not the AI.
I know that when i started using AI i got over blocks much faster. A system from design to implementation that use to take a week now only takes a few hours with most of that is testing and reviewing the code.
I don’t use agents to test and review code btw because i still want to know what’s going on but my colleagues are definitely using agents to build test large codebases. Im sorry but the truth is AI has changed how we build products in the same way intellisense and jet brains did but on a scale i haven’t seen in my lifetime.
Agreed. If you don’t use AI in coding you are not competitive with someone who does. It really is that simple. You won’t be able to keep up, your bosses will see, you will get fired and that’s that.
Even if the quality you deliver without AI is better, quality is not everything. Time is always a factor and AI beates you ten times over. The rest is sane flows with lot’s of testing etc.
This isn’t One Hour Hot Dog. If you need a big huge fix right the hell yesterday, you fucked up last week. Possibly last year. And what’s gonna prevent that sort of company-liquidating blunder is a layer of crotchety obsessives who can spend a day reading and then commit one line. ‘Hit engine with hammer: $1. Knowing where to hit: $9,999.’
A system that’s pretty good at guessing a hundred places to try hitting has obvious value. Especially when undo is a thing. But this attitude of ‘the future is now, old man!’ is almost as off-base as the folks insisting a magic coding robot won’t help anybody.
I agree with you. I’m not even 100% anti-AI even though a lot of how it is used absolutely reeks.
Of course Big Business is gonna be all about shipping it fast and cheap to the detriment of all else as long as it “works right now.” The ridiculous farce of capitalism as we know it now is that their real goal is to sell off and bail at a profit just before all that vibe-debt comes due and things implode.
It doesn’t mean it’s the best way to create software.
It reminds me of how homes nowadays are thrown together and so ridiculously shoddy because it’s all about speed and holding together just long enough to sell.
Haha, nah. If you’re generally faster with AI assistance it just means you never actually knew how to do your job properly. Sure it can help you get over some hurdles, make docs searches a bit easier if some library has crap docs, but it’s a 5% speed improvement at best and it’s all worse the moment it sends you down some stupid hallucinated rabbithole.
I don’t know whether this is just ragebait, whether you have never tried any advanced AI agent or whether you genuinely think you can work as fast as an AI, but I can asure you that you can’t.
You should give it another go, it has evolved disturbingly since last year. It out performs a junior level software engineer in both design, implementation, testing and debugging.
The hybrid model of a senior engineer using AI to produce code while the rest of the time allocation is spent on reviewing is the new normal.
You get 4 weeks to build x feature, you spend maybe a day with the help of AI then use the rest of the allotted time testing and debugging. What’s happening now is your allotted time is shrinking because managers understand how much faster engineers are working so its a cycle of shorter deadlines which pushes everyone to use AI.
I wouldn’t worry about software engineers going extinct. The role is changing but those core skills are really important to catch mistakes from both humans and AI.
Right now theirs two types of people using AI, software engineers who learned computer science and built software products and Joe MBA who struggles to write a bat file with the latter struggling to build cohesive products
Nice message, but why use the slop machine to write it? Use your own words!
I see short/choppy sentences, but not a lot of other slop writing indicators. What are you on about?
Linkedin has been writing like this for a decade
Sometimes I take screenshots of this guy’s comments bc he’s like opinionated and funny
But is he opinionated or is the LLM’s training corpus opinionated? Why should I care what an autocomplete has to say about this topic?
This is largely an oversimplification because it depends on how you use AI in the first place. Are you building modularly and incrementally? Or are you letting it ride on black?
ive personally found LLM coding to be pretty effective if i adhere to very strict “engineering best practices” like TDD, good documentation, thorough API design, systems design, etc.
im very afraid that the next generation of software engineers will never develop the skills needed to make the most out of it because they skipped the rudiments of good software engineering.
to me it feels like playing jazz without learning scales. it’s possible to be an incredible jazz musician without formal training if you’re a savant… but you’re probably not.
I have a little more hope for future generations. Regardless of if you are primarily using ai to speed up a traditional work flow or vibe coding, there still are more and less effective ways to get things done. I’ve found if I write sonething I’m familiar with like bash or Python, I “know enough” to write functions and refactor incrementally. It’s a methodical process which produces code better than I can write by myself in less time.
Compare that to when I write Lisp. There it’s more or less throw shit at the wall until I somewhat get what I want. It takes longer and can be next to impossible to extend or effectively refactor.
Based on that observation of myself, I think we’ll find two (and probably more) kinds of programmers in the future. Ones who use it as an assistant to speed up a traditional workflow, and those who produce the slop that we are afraid of.
Perhaps to give us any amount of additional hope/comparison to now. There still have been people who have programmed now who create slop. And that comes to the way we use references like stack exchange or the Arch Wiki. Are you copy and pasting while learning what things mean and learning in the process? Or are you just stringing things together to get results at all? I don’t think we would argue those references made all of us worse.
So I think it’s an apt concern, but we’ll have to wait to see what it’s like whole sale. I was a doubter for a long time, but I’ve come to understand where Torvalds et al are coming from.
All it takes is two developers who let it ride and approve each other’s PRs.
That’s a very good point
Compilers would look the same. You give some people a tool that turns fiddly low-level repetition into relatively painless double-checking. Then you yank that tool away, and oh no, they’re not as good at the fiddly low-level repetition.
What matters is - are these students worse-off, with the tool? It’s not going away. Foreverafter, a couple gigs of linear algebra will turn your to-do list into an actual running project. We have to ask if teaching the fiddly low-level repetition is the point… or just a means to an end.
You can scoff that compilers are objectively better, but they weren’t! Sometimes they still aren’t! We were teaching kids to consider inline assembly well into the Windows Vista era. Even now, compilers with decades of active development can have bizarre corner cases, which any hardened bit-banger of machine code would never write. But they’re all good enough that plaintext assembly has become an arcane third-year topic, and hexadecimal machine code is the realm of bare-metal maniacs.
Teaching math, kids have to know what numbers are, and how base ten works, and why the calculator says 11-3=8. But as you go up to college math it matters a lot less whether people can do shit in their heads… or even remember how. Open-book and open-calculator exams are still fuckin’ hard. They’re just hard because you’re trying to apply some obscure proof to a rat’s-nest of swooping symbols, instead of because you’re worried about having enough time to write out long division to umpteen places. The latter can be sufficiently approximated with two wooden sticks. We can assume anyone doing math professionally has two sticks. Continuously! As a given, for their job. Probably at home as well.
Teaching programming, you have to break people a certain way. No gentle and charming syntax can disguise the mechanized nastiness of what code is. Whatever semi-readable text you’re looking at will be squinched through a flake of tortured sand in a bazillionth of a second. But only after getting transformed at least two times in processes you kinda have to trust will be computationally equivalent, unless you want to minor in a branch of mathematics haunted by Stephen Wolfram. Ultimately there is a shockingly small state machine designed to trick you into off-by-one errors.
But once people can knock out fizzbuzz on a paper 6502… they’ve kinda got it. They’ve been inculcated. They will soon apply arcane patterns to a rat’s-nest of obtuse variable names. Ssshould they have to do that by hand? They’re not doing the assembly by hand. They’re not even looking at the assembly. They might never need to think about assembly again. So long as they’re playing spot-the-bollocks for a flurry of pull requests, that’s arguably a more useful skill than writing clean toy code from scratch. Especially in pen and ink.
The main problem with AI is that it’s pretending to understand more than it actually does right now. It can’t do software architecture. It can’t really write maintainable code without a lot of re-prompting and corrections. And yet it will happily make a bunch of those decisions for you when you ask it to write you an app.
Compilers are well-defined tools. “Human-readable” code goes in, “machine-readable” code comes out, according to some spec somewhere. Yes, compilers can be nondeterministic and they do a lot of weird stuff sometimes and they choose the wrong approach often, so some developers still need to understand assembly and CPU cache and SIMD and other features of the hardware our code runs on. At the very least every developer needs to understand the performance tradeoffs they’re making, or we end up with a JS-based start menu in Win11. But at least compilers have a well-defined class of inputs and outputs.
For AI these issues are amplified a lot. They are non-deterministic and unbounded in what layer of software they operate on or produce. I’d argue every developer who uses AI needs to understand software architecture, approaches to software development, and actually read and understand the code that the AI produced, at a minimum. Otherwise the whole industry will become saturated with and built on top of code no-one understands or can maintain, and it will literally collapse in on itself at some point. Carefully reviewed, selected, maintained code has always been precious, it will become a golden nugget in a sea of pig manure.
or we end up with a JS-based start menu in Win11

It can’t really write maintainable code without a lot of re-prompting and corrections.
Which is a skillset being learned. One which users are presumably better at than non-users, since they’re practicing it. If the chatbot-that-codes Just Worked, there’d be nothing to discuss; we could consider human coding successfully completed. The people who don’t move up to proper computer science can get on with whatever they wanted software for. We only teach them all of this because they’ve got shit to do, and up until now, it’s been really really hard. Like if beginner astronomy meant telescope engineering.
Already the key complaint has become “maintainability.” That’s quite a high-level criticism. When I sass specific compilers, it’s for using register-juggling macros that could have been one hardware instruction… not for adding a feature from a one-sentence description, but in a way that will complicate any future refactor. Or would, if refactoring was not also something you can tell the chatbot to do.
Compiler developers are a hardened core of ultranerds. I couldn’t do it above a toy level. If I needed to understand how they work, in detail, then I would be in trouble. Thankfully it is sufficient to abstract all of their work into ‘C goes in ARM comes out.’ Or at least to mumble about intermediate representations and distract people with Godbolt before running away. Sure, ‘add a button above the widget’ is more pluripotent than a K&R-standard Hello World, but even the foundation you celebrate is layer upon layer of Don’t Worry About It.
AI coding right now is a blunt instrument. Those often suffice. And this one can already be used to remove layers. To obviate a fat framework. To translate to a faster language. To golf. Or it could format your hard drive if a website tells it to, IDFK. It is a higher class of footgun. We take those.
having ai do your homework for you is not a flex
Finding ways to save effort is smart.
Finding ways to trade quality for convenience isn’t. In the case of education, given its fundamental importance, quality is paramount. A mentor of mine phrased it as “learn to do it right first, then learn where you can get away with being sloppy”. Education is the “learn to do it right” part.
In the case of programming, figuring out where you can be sloppy (and how sloppy) is a matter of experience. A junior developer doesn’t have that experience. A senior developer might, but in my impression they tend to be way less excitable and preachy about using AI.
Offloading a homework during brain development to watch some TikTok

















