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.
Programming
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities [email protected]
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?
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.
most software isn't public-facing at all (neither open source nor closed source), it's business-internal software (which runs a specific business and implements its business logic), so most of the people who are talking about coding with AI are also talking mainly about this kind of business-internal software.
There are commercial open source stuff too
If humans are so good at coding, how come there are 8100000000 people and only 1500 are able to contribute to the Linux kernel?
I hypothesize that AI has average human coding skills.
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.
Have you used AI to code? You don't say "hey, write this file" and then commit it as "AI Bot 123 [email protected]".
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.
yeah, that's... one of the points in the article
Mostly closed source, because open source rarely accepts them as they are often just slop. Just assuming stuff here, I have no data.
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.
So there’s some data.
To be fair if a competent dev used an ai "auto complete" tool to write their code, I'm not sure it'd be possible to detect those parts as an ai code.
I generally dislike those corporate AI tools but gave a try for copilot when writing some terraform script and it actually had good suggestions as much as bad ones. However if I didn't know that well the language and the resources I was deploying, it'd probably have led me to deep hole trying to fix the mess after blindly accepting every suggestion
People seem to think that the development speed of any larger and more complex software depends on the speed the wizards vsn type in code.
Spoiler: This is not the case. Even if a project is a mere 50000 lines long, one is the solo developer, and one has a pretty good or even expert domain knowledge, one spends the mayor part of the time thinking, perhaps looking up documentation, or talking with people, and the key on the keyboard which is most used doesn't need a Dvorak layout, bevause it is the "delete" key. In fact, you don't need yo know touch-typing to be a good programmer, what you need is to think clearly and logically and be able to weight many different options by a variety of complex goals.
Which LLMs can't.
I don't think it makes writing code faster, just may reduce the number of key presses required
They do more than just autocomplete, even in autocomplete mode. These Ai tools suggest entire code blocks and logic and fill in multiple lines, compared to a standard autocomplete. And to use it as a standard autocomplete tool, no Ai is needed. Using it like that wouldn't be bad anyway, so I have nothing against it.
The problems arise when the Ai takes away the thinking and brain functionality of the actual programmer. Plus you as a user get used to it and basically "addicted". Independent thinking and programming without Ai will become harder and harder, if you use it for everything.
And when they contribute to existing projects, their code quality is so bad, they get banned from creating more PRs.