You can hardly get online these days without hearing some AI booster talk about how AI coding is going to replace human programmers. AI code is absolutely up to production quality! Also, you’re all…
Have you used AI to code? You don't say "hey, write this file" and then commit it as "AI Bot 123 aibot@company.com".
You start writing a method and get auto-completes that are sometimes helpful. Or you ask the bot to write out an algorithm. Or to copy something and modify it 30 times.
You're not exactly keeping track of everything the bots did.
I'll admit I skimmed most of that train wreak of an article - I think it's pretty generous saying that it had a point. It's mostly recounts of people complaining about AI. But if they hid something in there about it being remarkably useful in cases but not writing entire applications or features then I guess I'm on board?
This is the point that the "AI will do it all" crowd is missing. Current AI doesn't innovate. Full stop. It copies.
The need for new code written by folks who understand what they're writing isn't gone, and won't go away.
Whether those folks can be AI is an open question.
Whether we can ever create an AI that can actually innovate is an interesting open question, with little meaningful evidence in either direction, today.
It’s not good because it has no context on what is correct or not. It’s constantly making up functions that don’t exist or attributing functions to packages that don’t exist. It’s often sloppy in its responses because the source code it parrots is some amalgamation of good coding and terrible coding. If you are using this for your production projects, you will likely not be knowledgeable when it breaks, it’ll likely have security flaws, and will likely have errors in it.
And I'll keep saying this: you can't teach a neural network to understand context without creating a generalised context engine, another word for which is AGI.
The average coder is a junior, due to the explosive growth of the field (similar as in some fast-growing nations the average age is very young). Thus what is average is far below what good code is.
On top of that, good code cannot be automatically identified by algorithms. Some very good codebases might look like bad at a superficial level. For example the code base of LMDB is very diffetent from what common style guidelines suggest, but it is actually a masterpiece which is widely used. And vice versa, it is not difficult to make crappy code look pretty.
"Good code" is not well defined and your example shows this perfectly. LMDBs codebase is absolutely horrendous when your quality criterias for good code are Readability and Maintainability. But it's a perfect masterpiece if your quality criteria are Performance and Efficiency.
Most modern Software should be written with the first two in mind, but for a DBMS, the latter are way more important.
AI is at its most useful in the early stages of a project. Imagine coming to the fucking ssh project with AI slop thinking it has anything of value to add 😂
The early stages of a project is exactly where you should really think hard and long about what exactly you do want to achieve, what qualities you want the software to have, what are the detailed requirements, how you test them, and how the UI should look like. And from that, you derive the architecture.
AI is fucking useless at all of that.
In all complex planned activities, laying the right groundwork and foundations is essential for success. Software engineering is no different. You won't order a bricklayer apprentice to draw the plan for a new house.
And if your difficulty is in lacking detailed knowledge of a programming language, it might be - depending on the case ! - the best approach to write a first prototype in a language you know well, so that your head is free to think about the concerns listed in paragraph 1.
I am not a programmer and I think it's silly to think that AI will replace developers.
But I was working through a math problem in Moscow Puzzles with my kiddo.
We had solved it, but I wasn't sure he got it at a deep level. So I figured I'd do something in Excel or maybe just do cut outs. But I figured I'd try to find a web app that would do this better. Nothing really came up that was a good match. But then thought, let's see how bad AI programming can be. I'd fought with it over some excel functions and it's been mainly useful in pointing me in the right direction, but only occasionally getting me over the finish line.
After about 6 to 8 hours of work, a little debugging, havinf teach and quiz me occasionally, and some real frustration of pointing out that the feature previously changed and re-emeged, I eventually had something that worked.
The Shooting Range Simulator is a web-based application designed to help users solve a logic puzzle involving scoring points by placing blocks on vertical number lines.
A buddy developer friend of mine said: "I took a quick scroll through the code. Looks pretty clean, but I didn't dive in enough to really understand it. Definitely all that css BS would take me ages to do without AI."
I don't take credit for this and don't pretend that this was my work, but I know my kiddo is excited to try the tool. I hope he learns from it and we bond over a math problem.
I know that everyone is worried about this tool, but moments like those are not nothing. Personally, I'm a Luddite and think the new tools should be deployed by the people's livelihood it will effect and not the business owners.
Yes, despite the irrational phobia amongst the Lemmings, AI is massively useful across a wide range of examples like you've just given as it reduces barriers to building something.
As a CS grad, the problem isn't it replacing all programmers, at least not immediately. It's that a senior software engineer can manage a bunch of AI agents, meaning there's less demand for developers overall.
Same way tools like Wix, Facebook, etc came in and killed the need for a bunch of web developers that operated in the range for small businesses.
As a CS grad, the problem isn’t it replacing all programmers, at least not immediately. It’s that a senior software engineer can manage a bunch of AI agents, meaning there’s less demand for developers overall.
Yes! You get it. That right there proves that you'll make it through just fine. So many in this thread denying that Ai is gonna take jobs. But you gave a great scenario.
FTA:
The user considered it was the unpaid volunteer coders’ “job” to take his AI submissions seriously. He even filed a code of conduct complaint with the project against the developers. This was not upheld. So he proclaimed the project corrupt. [GitHub; Seylaw, archive]
This is an actual comment that this user left on another project: [GitLab]
As a non-programmer, I have zero understanding of the code and the analysis and fully rely on AI and even reviewed that AI analysis with a different AI to get the best possible solution (which was not good enough in this case).
who makes a contribution made by aibot514. noone. people use ai for open source contributions, but more in a 'fix this bug' way not in a fully automated contribution under the name ai123 way
Counter-argument: If AI code was good, the owners would create official accounts to create contributions to open source, because they would be openly demonstrating how well it does. Instead all we have is Microsoft employees being forced to use and fight with Copilot on GitHub, publicly demonstrating how terrible AI is at writing code unsupervised.
Microsoft has set up copilot to make contributions for the dotnet runtime https://github.com/dotnet/runtime/pull/115762
I'm sure maintainers spends more time to review and interact with copilot than it would have to write it themselves
My theory is not a lot of people like this AI crap. They just lean into it for the fear of being left behind. Now you all think it's just gonna fail and it's gonna go bankrupt. But a lot of ideas in America are subsidized. And they don't work well, but they still go forward. It'll be you, the taxpayer, that will be funding these stupid ideas that don't work, that are hostile to our very well-being.
Creator of curl just made a rant about users submitting AI slop vulnerability reports. It has gotten so bad they will reject any report they deem AI slop.
As a dumb question from someone who doesn't code, what if closed source organizations have different needs than open source projects?
Open source projects seem to hinge a lot more on incremental improvements and change only for the benefit of users. In contrast, closed source organizations seem to use code more to quickly develop a new product or change that justifies money. Maybe closed source organizations are more willing to accept slop code that is bad but can barely work versus open source which won't?
Baldur Bjarnason (who hates AI slop) has posited precisely this:
My current theory is that the main difference between open source and closed source when it comes to the adoption of “AI” tools is that open source projects generally have to ship working code, whereas closed source only needs to ship code that runs.
Maybe closed source organizations are more willing to accept slop code that is bad but can barely work versus open source which won’t?
Because most software is internal to the organisation (therefore closed by definition) and never gets compared or used outside that organisation: Yes, I think that when that software barely works, it is taken as good enough and there's no incentive to put more effort to improve it.
My past year (and more) of programming business-internal applications have been characterised by upper management imperatives to “use Generative AI, and we expect that to make you nerd faster” without any effort spent to figure out whether there is any net improvement in the result.
Certainly there's no effort spent to determine whether it's a net drain on our time and on the quality of the result. Which everyone on our teams can see is the case. But we are pressured to continue using it anyway.
When did you last time decide to buy a car that barely drives?
And another thing, there are some tech companies that operate very short-term, like typical social media start-ups of which about 95% go bust within two years. But a lot of computing is very long term with code bases that are developed over many years.
The world only needs so many shopping list apps - and there exist enough of them that writing one is not profitable.
And another thing, there are some tech companies that operate very short-term, like typical social media start-ups of which about 95% go bust within two years.
This is a very generous sentence you have made, haha.
My observation is that vast majority of tech companies seem to operate unprofitably (the programming division is pure cost, no measurable financial befit) and with churning bug riddled code that never really works correctly.
Netflix was briefly hugely newsworthy in the technology circles because they... Regularly did disaster recovery tests.
Edit: Netflix made news headlines because someone decided that Kevin in IT having a bad day shouldn't stop every customer from streaming. This made the news.
Our technology "leadership" are, on average, so incredibly bad at computer stuff.
I'd argue the two aren't as different as you make them out to be. Both types of projects want a functional codebase, both have limited developer resources (communities need volunteers, business have a budget limit), and both can benefit greatly from the development process being sped up. Many development practices that are industry standard today started in the open source world (style guides and version control strategy to name two heavy hitters) and there's been some bleed through from the other direction as well (tool juggernauts like Atlassian having new open source alternatives made directly in response)
No project is immune to bad code, there's even a lot of bad code out there that was believed to be good at the time, it mostly worked, in retrospect we learn how bad it is, but no one wanted to fix it.
The end goals and proposes are for sure different between community passion projects and corporate financial driven projects. But the way you get there is more or less the same, and that's the crux of the articles argument: Historically open source and closed source have done the same thing, so why is this one tool usage so wildly different?
AI is just the lack of privacy, Authoritarian Dragnet, remote control over others computers, web scraping, The complete destruction of America's art scene, The stupidfication of America and copyright infringement with a sprinkling of baby death.
Don't forget subscriptions. We were freed by Linux, GCC, and all the open source tools that replaced $1000 proprietary crap. They now have that money again through AI monthly plans.
A lot of people on HackerNews have a $200 monthly subscription to have the privilege to work. It's crazy.
I'll admit I did used AI for code before, but here's the thing. I already coded for years, and I usually try everything before last resort things. And I find that approach works well. I rarely needed to go to the AI route. I used it like for .11% of my coding work, and I verified it through stress testing.
Empty readme and no comments in the code. Its useless to anyone who would want to change or fix it. It's junior's code and unacceptable in a professional environment.
To be honest, so many of the comments in this thread are just cope.
It's true that ai isn't a replacement for good coders ..YET.
But it will be. You all can be as mad as you want, publish as many articles about how much ai sucks as you want. but it won't stop anything from happening.
I say this as someone who has just started to learn to code myself.
The reason you all are mad is because you suddenly feel unsafe and unappreciated. And you're right.
Ai is still gonna happen though. It will take away a lot of your jobs (especially starting with jr coders just getting into the market). It will lower your pay. You can yell about it, or you can adapt. Sucks, but it is what it is.
Think of it this way: what do you think the market is gonna be like in 5 years? Then 10? Brah, start preparing now. Right fucking now. Cuz it ain't gonna get easier for you. I promise.
It happened with blue-collar factory works in the midwest regions of the US because of automation and offshoring. People bitched and tried to stop it. Lots of snooty white-color workers yelled, "learn to code!" But none of that saved their jobs.
And you guys won't stop it happening with your jobs either. I don't like the idea of AI taking over everything either. But it will. Adapt or die.
I've just started to learn to code. I am enjoying it. But in no way, shape, or form am I thinking it's going to lead to a job for me.
EDIT: To copy what some else said, much better than me:
The idea that AI will some day be good at coding isn’t the issue. The issue is that some people in management think it’s already well on the way to being a good substitute, and they’re trying to do more with fewer coders to everyone’s detriment.
To be honest, you sound like you're only just starting to learn to code.
Will coding forever belong to humans? No. Is the current generative-AI technology going to replace coders? Also no.
The reaction you see is frustration because it's obvious to anyone with decent skill that AI isn't up to the challenge, but it's not obvious to people who don't have that skill and so we now spend a lot of time telling bosses "no, that's not actually correct".
Someone else referenced Microsoft's public work with Copilot. Here's Copilot making 13 PRs over 5 days and only 4 ever get merged you might think "30% success is pretty good!" But compare that with human-generated PRs and you can see that 30% fucking sucks. And that's not even looking inside the PR where the bot wastes everyone's time making tons of mistakes. It's just a terrible coworker and instead of getting fired they're getting an award for top performer.
And it's fostered by an massive amount of spam and astroturfing coming from "AI" companies, lying that LLMs are good at this or that. Sure, algorithms like neural networks can recognize patterns. Algorithms like backtracking can play chess or solve or transform algebraic equations. But these are not LLMs and LLMs will not and can not replace software engineering.
Sure, companies want to pay less for programming. But they don't pay for software developers to generate some gibberish in source code syntax, they need working code. And this is why software engineers and good programmers will not only remain scarce but will become even shorter in supply.
And companies that don't pay six-figure salaries to developers will find that experienced developers will flat out refuse to work on AI-generated codebases, because they are unmaintainable and lead to burnout and brain rot.
To be honest, you sound like you’re only just starting to learn to code.
I definitely am. But I have no doubts that ai is going to take a lot of entry-level type jobs soon, and eventually higher end jobs.
We'll always need good, smart coders. Just not as many as we have now.
but it’s not obvious to people who don’t have that skill and so we now spend a lot of time telling bosses “no, that’s not actually correct”.
I get it. But those clueless people are gonna be the people in charge of hiring, and they'll decide to hire less, and expect current staff to do more. I've seen in hundreds of time in industries, and it's already happening now in yours.
For context, I'm old. So I've seen your arguments in many different industries.
And to your point, they'll have ai replacing good people, long before ai is good enough to. But you're approaching the issue with logic. Corporate lacks a lot of logic.
I'm already seeing it in your industry. Plenty of reddit/Lemmy posts talking about how coders have been laid off, and having a much much more difficult time getting another job than at any point in their careers.
Again, I'm saying AI is a good solution. I'm saying management will think that. Just like they did when they offshored jobs to much less skilled, yet way more inexpensive workers.
To copy what someone else in this thread said:
The idea that AI will some day be good at coding isn’t the issue. The issue is that some people in management think it’s already well on the way to being a good substitute, and they’re trying to do more with fewer coders to everyone’s detriment.
I think the biggest difference between this and blue-collars workers losing their jobs, though, is that the same people losing their jobs are also placed very to benefit from the technology. Blue collared workers losing manufacturing jobs couldn't, because they were priced out of obtaining that mafacturing hardware themselves, but programmers can use AI on an individual basis to augment their production. Not sure what the industry will look like in 10 years, but I feel like there will be plenty of opportunities for people who build digital things.
That being said, people who were looking to be junior developers exactly right now.... uhhh.... that's some extrememly unlucky timing. I wish you luck.
Well I'm old, so not looking for a job, I am just learning programming because i want to. But to your point, I am seeing LOTS of developers who have been laid off and finding another job is proving more challenging than ever before. It's rough out there and I feel for them.
To copy what someone else in this thread said:
The idea that AI will some day be good at coding isn’t the issue. The issue is that some people in management think it’s already well on the way to being a good substitute, and they’re trying to do more with fewer coders to everyone’s detriment.
Do you think there's any reason to believe that these tools are going to continue their breakneck progress? It seems like we've reached a point where throwing more GPUs and text at these things is not yielding more results, and they still don't have the problem solving skills to work out tasks outside of their training set. It's closer to a StackOverflow that magically has the answers to most questions you ask than a replacement for proper software engineering. I know you never know if a breakthrough is around the corner, but it feels like we've hit a plateau for the foreseeable future.
Do you think there’s any reason to believe that these tools are going to continue their breakneck progress?
I do.
And as I mentioned in another comment, it's not so much that I think AI will do a better job, it's that I think MANAGEMENT will think AI does a cheaper job. Already many tech people who have been laid off are saying it's the worst job market they've ever seen.
AI sucks. But management is about dollars NOW. The are shortsided, fall into fads, and they will see the cost savings now as outweight the long term problems. I don't agree with them, I am saying they will do that tho. Even if we don't agree.
To copy what someone else in this thread said:
The idea that AI will some day be good at coding isn’t the issue. The issue is that some people in management think it’s already well on the way to being a good substitute, and they’re trying to do more with fewer coders to everyone’s detriment.