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.
Feel the same way!
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.
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
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
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.
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.
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…
I truly don’t understand the tendency of people to hate these kinds of tools. Honestly seems like an ego thing to me.
Carbon footprint. Techbro arrogance. Not sure what’s hard to understand about it.
Removed by mod
Of course you know me better than myself.
I guess you wanted an answer but decided upfront you weren’t gonna like it no matter what? Not much I can do about that.
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.
Whether or not I’ve used Copilot is entirely irrelevant to the points I was making. Please remain on topic.
deleted by creator
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.
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…
If it didn’t significantly contribute to the cooking of all lifeforms on planet Earth, most of us would not mind. We would still deride it because of its untrustworthiness. However, it’s not just useless: it’s also harmful. That’s the core of the beef I (and a lot of other folks) have against the tech.
cooking of all lifeforms on planet Earth
the core of the beef
yum lifeform beef stew
Oh for sure. How we regulate AI (including how we power it) is really important, definitely.
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?
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?
We can’t do that, nobody’s saying we can. But this is an important reminder that the tech savior bros aren’t very different from the oil execs.
And constant activism might hopefully achieve the goal of pushing the tech out of the mainstream, with its friend crypto, along other things not to be taken seriously anymore like flying cars and the Hyperloop.
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?
I’m talking about people criticizing LLMs. I’m not a politician. But I’ve seen a few debates about LLMs on this platform, enough to know about the common complaints against ShitGPT. I’ve never seen anyone on this platform seriously arguing for a ban. We all know it’s stupid and that it will be ineffective, just like crackdowns on VPNs in authoritarian countries.
The reminder is the tech itself. It’s yet another tech pushed by techbros to save the world that fails to deliver and is costing the rest of the planet dearly in the form of ludicrous energy consumption.
And by activism, I mean stuff happening on Lemmy as well as outside (coworkers, friends, technical people at conferences/meetups). Like it or not, the consensus among techies in my big canadian city is that, while the tech sure is interesting, it’s regarded with a lot of mistrust.
You can take LLMs seriously if you’d like. But the proofs that the tech is unsound for software engineering keep piling up. I’m fine with your skepticism. But I think the future will look bleaker and bleaker as times goes by. Not a week goes by without its lot of AI fuckups being reported in the press. This article is one of many examples.
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.
Nobody talked about banning them, once again. I don’t want to do that. I want it to leave the mainstream, for environmental reasons first and foremost.
The fuckup is, IDK, the false impression of productivity, and the 41% more bugs? That seems like a huge deal to me, even though I’d like to see this study being reproduced to draw real conclusions.
This, with strawberrries, Air Canada’s chatbots, the 3 Miles Island stuff, the delaying of Google’s carbon neutrality efforts, the cursed Google results telling you to add glue to your pizza, the distrust of the general public about anything with an AI label on it, to mention just a few examples… It’s starting to become a lot.
Even if you omit the ethical aspects of cooking the planet for a toy, the technology is wildly unsound. You seem to think it can get better, and I can respect that. But I’m very skeptical, and there’s a lot of people with the same opinion, even in tech.
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)
Who are those guys they keep asking this question over and over ? And how are they not able to use such a simple tool to increase their productivity ?
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.