Comment on Devs gaining little (if anything) from AI coding assistants
TrickDacy@lemmy.world 1 month agoI would argue that it’s obvious if someone doesn’t know how to use a tool to do their job, they aren’t great at their job to begin with.
Your argument is to blame the tool and excuse the person who is awful with the tool.
GreenKnight23@lemmy.world 1 month ago
my argument is that lazy devs use the tool because that’s what it was designed for.
just calling a hammer a hammer.
aesthelete@lemmy.world 1 month ago
Some tools deserve blame. In the case of this, you’re supposed to use it to automate away certain things but that automation isn’t really reliable. If it has to be babysat to the extent that I certainly would argue that it does, then it deserves some blame for being a crappy tool.
If, for instance, getter and setter generating or refactor tools in IDEs routinely screwed up in the same ways, people would say that the tools were broken and that people shouldn’t use them. I don’t get how this is different just because of “AI”.
TrickDacy@lemmy.world 1 month ago
Okay, so if the tool seems counterproductive for you, it’s very assuming to generalize that and assume it’s the same for everyone else too. I definitely do not have that experience.
aesthelete@lemmy.world 1 month ago
It’s not about it being counterproductive. It’s about correctness. If a tool produces a million lines of pure compilable gibberish unrelated to what you’re trying to do, from a pure lines of code perspective, that’d be a productive tool. But software development is more complicated than writing the most lines.
Now, I’m not saying that AI tools produce pure compilable gibberish, but they don’t reliably produce correct code either. So, they fall somewhere in the middle, and similarly to “driver assistance” technologies that half automate things but require constant supervision, it’s possible that the middle is the worst category for a tool to fall into.
Everywhere around AI tools there are asterisks about it not always producing correct results. The developer using the tool is ultimately responsible for the output of their own commits, but the tool itself shares in the blame because of its unreliable nature.
FlorianSimon@sh.itjust.works 1 month ago
Have you read the article? It’s a shared experience multiple people report, and the article even provide statistics.
TrickDacy@lemmy.world 1 month ago
Using a tool to speed up your work is not lazy. Using a tool stupidly is stupid. Anyone who thinks these tools are meant to replace humans using logic is misunderstanding them entirely.
You remind me of some of my coworkers who would rather do the same mind numbing task for hours every day rather than write a script that handles it. I judge them for thinking working smarter is “lazy” and I think it’s a fair judgement. I see them as the lazy ones. They’d rather not think more deeply about the scripting aspect because it’s hard. They rather zone out and mindlessly click, copy/paste, etc. I’d rather analyze and break down the problem so I can solve it once and then move onto something more interesting to solve.
GreenKnight23@lemmy.world 1 month ago
sometimes working smarter is actually putting the work in so you don’t have to waste time and stress about if it’s going to work or not.
I get Dreamweaver vibes from AI generated code. Sure, the website works. looks exactly the way it should. works exactly how it should. that HTML source though… fucking aweful.
I can agree, AI is an augment to the tools you can use. however, it’s being marketed as a replacement and a large variety of devs are using it as such.
shitty devs are enabled by shitty tools.
aesthelete@lemmy.world 1 month ago
Same. AI seems like yet another attempt at RAD just like MS Access, Visual Basic, Dreamweaver, and even to some extent Salesforce, or ServiceNow. There are so many technologies that champion this…RoR, Django, Spring Boot…the list is basically forever.
To an extent, it’s more general purpose than those because it can be used with multiple languages or toolkits, but I find it not at all surprising that the first usage of gen AI in my company was to push out “POCs” (the vast majority of which never amounted to anything).
The same gravity applies to this to tool as everything else in software…which is that prototyping is easy…integration is hard (especially if the organization is not well structured, which, well, almost none of them are), and software executives tend to confuse a POC with production code and want to push it out immediately, only to find out that it’s a Potemkin village underneath as they sometimes (or even often) were told the entire time.
So much of the software industry is “JUST GET THIS DONE FASTER DAMMIT!” from middle managers who still seem (despite decades of screaming this) to have developed no widespread means of determining either what they want to get done, or what it would take get it done faster.
What we have been dealing with the entire time is people that hate to be dependent upon coders or other “nerds”, but need them in order to create products to accomplish their business objectives.
Middle managers still think creating software is algorithmic nerd shit that could be automated…solving the same problems over and over again. It’s largely been my experience that despite even Computer Science programs giving it that image, that the reality is modern coding is more akin to being a machinist or someone that designs and builds factory machines. The algorithmic nerd shit is to a large extent settled code that you import, and your job is to either build the actual machine that produces the outcomes that are desired, or spot the spotty welding between the components that is making the machine fail.
TrickDacy@lemmy.world 1 month ago
No, shitty devs are enabled by piss-poor hiring practices. I’m currently working with two devs that submit mind bogglingly bad PRs all of the time, and it’s 100% because we hired them in a hasty manner and overlooking issues they displayed during interviews.
Neither of these bad devs use AI to my knowledge. On the other hand I use copilot constantly and the only difference I see in my work is that it takes me less time to complete a given task. It shaves 1-2 minutes off of writing a block/function several times an hour, and that is a good thing.
aesthelete@lemmy.world 1 month ago
From what I’ve seen of AI code in my time using it, it often is an advanced form of copying and pasting. It frequently takes problems that could be better solved more efficiently with fewer lines of code or by generalizing the problem and does the (IMO evil) work of making the solution that used to require the most drudgery easy.
TrickDacy@lemmy.world 1 month ago