- cross-posted to:
- programming@programming.dev
- planetdyne@fed.dyne.org
- cross-posted to:
- programming@programming.dev
- planetdyne@fed.dyne.org
For me, it is a glorified auto-complete function. Could definitely live without it.
Same for me, but that glorified auto complete helps a lot.
Hell yea. Our unit test coverage went way up because you can blow through test creation in second. I had a large complicated migration from one data set to another with specific mutations based on weird rules and GPT got me 80% of the way there and with a little nudging basically got it perfect. Code that would’ve taken a few hours took about 6 prompts. If I’m curious about a new library I can get a working example right away to see how everything fits together. When these articles say there’s no benefit I feel people aren’t using these tools or don’t know how to use them effectively.
Yeah, it’s useful, you just gotta keep it on a short leash, which is difficult when you don’t know what you’re doing
Basically, it’s a useful tool for experienced developers that know what to look out for
From the combined comments it looks like if you are a beginner or a pro then it’s great; if you only have just enough knowledge to be dangerous (in german that’s proverbial “gefährliches Halbwissen”) you should probably stay away from it :-)
We always have to ask what language is it auto-completing for? If it is a strictly typed language, then existing tooling is already doing everything possible and I see no need for additional improvement. If it is non-strictly typed language, then I can see how it can get a little more helpful, but without knowledge of actual context I am not sure if it can get a lot more accurate.
Good devs gain little.
I gain a lot.
Its basically a template generator, which is really helpful when you’re generating boilerplate. It doesn’t save me much if any time to refactor/fill in that template, but it does save some mental fatigue that I can then spend on much more interesting problems.
It’s a niche tool, but occasionally quite handy. Without leaps forward technically though, it’s never going to become more than that.
Just beware, sometimes the AI suggestions are scary good, some times they’re batshit crazy.
Just because AI suggests it, doesn’t mean it’s something you should use or learn from.
Generative AI is great for loads of programming tasks like helping create regular expressions or syntax conversions between languages. The main issue I’ve seen in codebases that rely heavily on generative AI is that the “solutions” often fix today’s bug while making future debugging more difficult. Generative AI makes it easy to go fast in the wrong direction. Used right it’s a useful tool.
While I am not fond of AI, we do have access to it at work and I must admit that it saves some time in some cases. I’m not a developer with decades of experience in a single language, so something I am using AI to is asking “Is it possible to do a one-liner in language X where it does Y?” It works very well and the code is rarely unusable, but it is still up to my judgement whether the AI came up with a clever use of functions that I didn’t know about or whether it crammed stuff into a single unreadable line.
It introduced me to the basics of C# in a way that traditional googling at my previous level of knowledge would’ve made difficult.
I knew what I wanted to do and I didn’t know what was possible or how to ask without my question being closed as a duplicate with a link to an unhelpful post.
In that regard, it’s very helpful. If I had already known the language well enough, I can see it being less helpful.
Great for Coding 101 in a language I’m rusty with or otherwise unfamiliar.
Absolutely useless when it comes time to optimize a complex series of functions or upgrade to a new version of the .NET library. All the “AI” you need is typically baked into Intellisense or some equivalent anyway. We’ve had code-assist/advice features for over a decade and its always been mid. All that’s changed is the branding.
This is what I’ve used it for and it’s helped me learn, especially because it makes mistakes and I have to get them to work. In my case it was with Terraform and Ansible.
Haha, yeah. It really loves to refactor my code to “fix” bracket list initialization (e.g.
List<string> stringList = [];
) because it keeps not remembering that the syntax has been valid for a while.It’s newest favorite hangup is to incessantly suggest null checks without asking if it’s a nullable property that it’s checking first. I think I’m almost at the point where it’s becoming less useful to me.
What about just reading the documentation?
Even with amazing documentation, it can be hard to find the thing you’re looking for if you don’t know the right phrasing or terminology yet. It’s easily the most usable thing I’ve seen come out of “AI”, which makes sense. Using a Language Model to parse language is a very literal application.
The person I replied to was talking about learning the basics of a language… This isn’t about searching for something specific, this is about reading the very basic introduction to a language before trying to Google your way through it. Avoiding the basic documentation is always a bad idea. Replacing it with the LLMed version of the original documentation probably even more so.
I learned bash thanks to AI!
For years, all I did was copy and paste bash commands. And I didn’t understand arguments, how to chain things, or how it connects.
You do realize that a very thorough manual is but a
man bash
away? Perhaps it’s not the most accessible source available, but it makes up for that in completeness.I believe accessibility is the part that makes LLMs helpful, when they are given an easy enough task to verify. Being able to ask a thing that resembles a human what you need instead of reading through possibly a textbook worth of documentation to figure out what is available and making it fit what you need is fairly powerful.
If it were actually capable of reasoning, I’d compare it to asking a linguist the origin of a word vs looking it up in a dictionary. I don’t think anyone disagrees that the dictionary would be more likely to be fully accurate, and also I personally would just prefer to ask the person who seemingly knows and, if I have reason to doubt, then go back and double-check.
Here’s the manpage for bash’s statistics from wordcounter.net:
Perhaps LLMs can be used to gain some working vocabulary in a subject you aren’t familiar with. I’d say anything more than that is a gamble, since there’s no guarantee that hallucinations have not taken place. Remember, that to spot incorrect info, you need to already be well acquainted with the matter at hand, which is at the polar opposite of just starting to learn the basics.
I do try to keep the “unknown unknowns” problem in mind when I use it, and I’ve been using it far less as I latched on to how OOP actually works and built up the lexicon and my own preferences. I try to only ask it for high-level stuff that I can then use to search the wider (hopefully more human) internet more traditionally with. I fully appreciate that it’s nothing more than a very incredibly fancy auto-completion engine and the basic task of auto-complete just so happens to appear intelligent as it gets better and more complex but continues to lack any form of real logical thoughts.
Everyone keeps talking about autocomplete but I’ve used it successfully for comments and documentation.
You can use vs code extensions to generate and update readme and changelog files.
Then if you follow documentation as code you can update your Confluence/whatever by copy pasting.
I also use it a lot for unit tests. It helps a lot when you have to write multiple edge cases, and even find new one at times. Like putting a random int in an enum field (enumField = (myEnum)1000), I didn’t knew you could do that…
Yeah. I’ve found new logic by asking GPT for improvements on my code or suggestions.
I cut the size of a function in half once using a suggested recursive loop and it blew my mind.
Feels like having a peer to do a code review on hand at all times.
Yeah, I also find it super helpful with unit tests, saves a lot of time.
I’m a penetration tester and it increases my productivity a lot
Penetration tester, huh? Sounds like a fun and reproductive job.
But it can be very HARD sometimes
I mainly use AI for learning new things. It’s amazing at trivial tasks.
so it’s a vector of attack?
as a dental assistant I can also confirm that AI has increased my productivity, checks notes, by a lot.
My main use is skipping the blank page problem when writing a new suite of tests—which after about 10 mins of refactoring are often a good starting point
I truly don’t understand the tendency of people to hate these kinds of tools. Honestly seems like an ego thing to me.
Removed by mod
Removed by mod
Removed by mod
Removed by mod
Removed by mod
Removed by mod
Wow, this was somehow considered offensive enough for a mod to remove, but we’re also allowing obvious paid trolls on the platform. Lemmy is not what we want it to be.
Removed by mod
Removed by mod
I sent a PR back to a Dev five times before I gave the work to someone else.
they used AI to generate everything.
surprise, there were so many problems it broke the whole stack.
this is a routine thing this one dev does too. every PR has to be tossed back at least once. not expecting perfection, but I do expect it to not break the whole app.
Like I told another person ITT, hiring terrible devs isn’t something you can blame on software.
that depends on your definition of what a “terrible dev” is.
of the three devs that I know have used AI, all we’re moderately acceptable devs before they relied on AI. this formed my opinion that AI code and the devs that use it are terrible.
two of those three I no longer work with because they were let go for quality and productivity issues.
so you can clearly see why my opinion of AI code is so low.
I 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.
my argument is that lazy devs use the tool because that’s what it was designed for.
just calling a hammer a hammer.
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”.
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.
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.
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.
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.
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.
Having to deal with pull requests defecated by “developers” who blindly copy code from chatgpt is a particularly annoying and depressing waste of time.
At least back when they blindly copied code from stack overflow they had to read through the answers and comments and try to figure out which one fit their use case better and why, and maybe learn something… now they just assume the LLM is right (despite the fact that they asked the wrong question and even if they had asked the right one it’d’ve given the wrong answer) and call it a day; no brain activity or learning whatsoever.
That is not a problem with the ai software, that’s a problem with hiring morons who have zero experience.
No. LLMs are very good at scamming people into believing they’re giving correct answers. It’s practically the only thing they’re any good at.
Don’t blame the victims, blame the scammers selling LLMs as anything other than fancy but useless toys.
Removed by mod
Did you get scammed by the LLM? If not, what’s the difference between you and the dev you mentioned?
I was lucky enough to not have access to LLMs when I was learning to code.
Plus, over the years I’ve developed a good thick protective shell (or callus) of cynicism, spite, distrust, and absolute seething hatred towards anything involving computers, which younger developers yet lack.
Sorry, you misunderstood my comment, which was very badly worded.
I meant to imply that you, an experienced developer, didn’t get “scammed” by the LLM, and that the difference between you and the dev you mentioned is that you know how to program.
I was trying to make the point that the issue is not the LLM but the developer using it.
And I’m saying that I could have been that developer if I were twenty years younger.
They’re not bad developers, they just haven’t yet been hurt enough to develop protective mechanisms against scams like these.
They are not the problem. The scammers selling the LLM’s as something they’re not are.
Typical lack of nuance on the Internet, sadly. Everything has to be Bad or Good. Black or White. AI is either The best thing ever™ or The worst thing ever™. No room for anything in between. Considering negative news generates more clicks, you can see why the media tend to take the latter approach.
I also think much of the hate is just people jumping on the AI = bad band-wagon. Does it have issues? Absolutely. Is it perfect? Far from it. But the constant negativity has gotten tired. There’s a lot of fascinating discussion to be had around AI, especially in the art world, but God forbid you suggest it’s anything but responsible for the total collapse of civilisation as we know it…
Removed by mod
Oh for sure. How we regulate AI (including how we power it) is really important, definitely.
cooking of all lifeforms on planet Earth
the core of the beef
yum lifeform beef stew
I think you nailed it with everything you just said.
Also, when a tool increases your productivity but your salary and paid time off don’t increase, it’s a tool that only benefits the overlords and as such deserves to be hated.
Oh, so do you use a 13 year old PC because a newer one increases your productivity without increasing your salary and paid time off?
Personally… I do
I could request a new one, but why? This one works, it’s just slow as all hell.
I could request a new one, but why?
Gives excellent argument for requesting a new one:
slow as all hell.
I’m paid by the hour, I don’t care
I mean, you’re clearly using them because they still work, not because of a hatred for increasing productivity for the overlords. Your choice was based on reasonable logic, unlike the other guy.
I use a 13 year old PC because a newer one will be infected with Windows 11. (The company refuses to migrate to Linux because some of the software they use isn’t compatible.)
Removed by mod
Removed by mod
Removed by mod
Removed by mod
Removed by mod
Removed by mod
Removed by mod
Its really weird.
I want to believe people arent this dumb but i also dont want to be crazy for suggesting such nonsensical sentiment is manufactured. Such is life in the disinformation age.
Like what are we going to do, tell all Countries and fraudsters to stop using ai because it turns out its too much of a hassle?
Removed by mod
You are speaking for everyone so right away i dont see this as an actual conversion, but a decree of fact by someone i know nothing about.
What are you saying is an important reminder? This article?
By constant activism, do you mean anything that occurs outside of lemmy comments?
Why would we not take LLMs seriously?
Removed by mod
Theres no particular fuck up mentioned by this article.
The company that conducted the study which this article speculates on said these tools are getting rapidly better and that they arent suggesting to ban ai development assistants.
Also as quoted in the article, the use of these coding assistance is a process in and of itself. If you arent using ai carefully and iteratively then you wont get good results with current models. How we interact with models is as important as the model’s capability. The article quotes that if models are used well, a coder can be faster by 2x or 3x. Not sure about that personally… seems optimistic depending on whats being developed.
It seems like a good discussion with no obvious conclusion given the infancy of the tech. Yet the article headline and accompanying image suggest its wreaking havoc.
Reduction of complexity in this topic serves nobody. We should have the patience and impartiality to watch it develop and form opinions independently from commeter and headline sentiment. Groupthink has been paricularly dumb on this topic from what ive seen.
Removed by mod
And yet, higher ups continue to lay off more devs because AI “is the future”.
In my experience, most of the tech layoffs have been non-devs. PMs and Designers have been the hardest hit and often their roles are being eliminated.
I mean, I’m a dev who got laid off almost a year ago and still can’t find anything. I know tons of others who are in similar positions. So…
No shit. Senior devs have been saying this the whole time. AI, in its current form, for developers, is like handing a spatula to a gourmet chef. Yes it is useful to an extremely small degree, but that’s it…for now.
A convoluted spatula that sometimes accidentally cuts what your cooking im half instead of flipping it and consumes as much power as the entirety of Japan.
The writer has a clear bias and a lack of a technical background (writing for Techies.com doesn’t count) .
You don’t have to look hard to find devs saving time and learning something with AI coding assistants. There are plenty of them in this thread. This is just an opinion piece by someone who read a single study.
This opinion is a breath of fresh air compared to the rest of tech journalism screaming “AI software engineer” after each new model release.
Places GPT-based “AI” next to flying cars
Flying cars exist, they’re just not cost effective. AFAICT there’s no GPT that is proficient at coding yet.
It’s a lot easier to access ChatGPT than it is to access a flying car
The more people using chatgpt to generate low quality code they don’t understand, the more job safety and greater salary I get.
As far as I know, right now the main problem with flying cars is that they are nowhere near as idiot-proof as a normal car, and don’t really solve any transportation problem since most countries’ air regulations agencies would require them to exclusively take off and land in airports… Where you can usually find tons of planes that can go much further (and are much more cost effective, as you pointed out)
lol Uplevel’s “”“full report”“” saying devs using Copilot create 41% more bugs has 2 pages and reads like a promotional material.
you can download it with a 10 minute email if you really want to see for yourself.
just some meaningless numbers.
Every now and then, GitHub Copilot saves me a few seconds suggesting some very basic solution that I am usually in the midst of creating. Is it worth the investment? No, at least not yet. It hasn’t once “beaten” me or offered an improved solution. It (more frequently than not) requires the developer to understand and modify what it proposes for its suggestions to be useful. Is is a useful tool? Sure, just not worth the price yet, and obviously not perfect. But, where I’m working is testing it out, so I’ll keep utilizing it.