One of the common uses I’ve heard is for generating boiler plate code. I have two thoughts on this. First, you actually have to understand what the boiler plate code is doing for it to be of any value. Second, there are already solutions for this that work just as well or better. Most of the major IDE’s either support code templates or have extensions for that. You just have to be willing to take the time to create templates. I use Resharper with Visual Studio for this all the time.
I tried copilot free for a month and was not that impressed.
A colleague once “showed off” how impressive Copilot supposedly was. I was like:
- Please don’t let AI write unit tests. That’s the one spot where I really don’t need bugs done by automation.
- Don’t you guys use snippets? I do that shit faster with snippets, macros and knowing my way around neovim.
I don’t have snippets set up for languages I’ve never touched before.
But copilot sucks. ChatGPT went super downhill. Claude is alright. If I know the language then it’s not that helpful. But if I don’t, or I don’t know the algorithm, then yeah, it’s super helpful.
My LSP has some neat built-in snippets. ¯\_(ツ)_/¯
I’d rather just write it out. I’ve never used snippets or macros per say, but I do make liberal use of regex replace and multiline cursors lol. Writing out a bunch of getters and setters? Regex!
I did try LLM tab auto complete and while sure, it did suggest some stuff that was useful (after refactoring it), the amount of time I spent WTF’ing some suggestions it made wasn’t worth it.
I find more benefit from asking an LLM about something I’m undecided or confused about, and while it’s never given me a good enough answer, it has stirred enough creative juices in my brain to help me along lol.
Edit: sorry for the dupes. When Eternity said it failed the send I took that at face value.
deleted by creator
deleted by creator
deleted by creator
Brother, I am inherently lazy, I am not going to do any setup required for templates or add-ons. For simple stuff, ai generated boilerplate is good enough and it does not need maintenance as templates do.
Personally I think it’s useful for pretty much anything you already understand
If you only use it to generate code to do things you already understand it saves you a lot of time and mental stamina by only having to proofread rather than write from scratch
Absolutely has been my experience. It’s actually slowed me down because of the slop it tends to throw in there as part of the hallucinations.
I found it sometimes useful when I first started using it, but seems like it’s getting worse. It’s also annoyingly inconsistent, sometimes generates the right thing, then you go to another file to make a similar change and it does something completely useless…
I used replit for education. At some point they added ai assistance. It was like pair programming with someone who is over eager and doesn’t know why you’re dying things.
When I’m teaching code, I don’t need ai to finish my circle calculation program before I’ve explained the first line to students.
I, on the other hand, am very happy that AI can autocomplete the n-th similar filter function I need to write.
In line completion of repetitive stuff is fine, even though it does often introduce bugs, meaning I still need to read every single char it writes. Now scale that up to entire functions, project that onto people that don’t know the language/library well, and don’t understand the function itself. That’s just chaos.
Last year, for the first time, a large majority of my students used chatGPT.
This correlated with their skills at the start of the year: the more they lacked (or were lazy), the more they used it. And at the end of the year, they were the ones who had learned the least.
I’m not playing the old fart who thinks young people are getting dumber and dumber. There are beginning to be studies on this, and my little experience is consistent with their results.
Honestly, it’s GREAT for replying to bull shit business emails.
Bullshit countering bullshit. Finally, an actual use for LLMs.
More than you think, because outputting vast amounts of pseudo-accurate bullshit is EXACTLY what spammers and scammers do.
Probably better be careful to proofread it. If you’re about to be fired for something you let ChatGPT tell an important client, I wouldn’t think “it was ChatGPT’s fault” is going to make much difference in your favor.
Oh yeah. It’s always my mail. Not ChatGPT’s mail.
It just helps me pump up the word count to a point where the suits think it’s acceptable.
I prompt it with two sentences and I get two full paragraphs.
Weed too. Programmers on weed think they’re more productive but just introduce more bugs than sober programmers. Similar ratios as LLMs too IIRC
This is clearly wrong. They never even finished the damn project at all! Lol
You’re not doing it right if you’re just straight up using whatever ChatGPT gives you. Use it to get the bulk of the code, edit it to work and follow project standards, then use it. CoPilot has certainly improved my productivity. There is a cost though. I am nowhere near as good as writing code from scratch as I was a year ago, because I haven’t done it in around that long.
Exactly, it’s so rare to actually see anyone using it who knows how to use it as a tool rather than a magic do everything machine
I guess programmers are just idiots on average then huh.
Not in my experience. Quite the opposite, actually.
So why are they not on average experiencing an efficiency increase by using AI?
I don’t know. Probably because it’s a new tool, and they haven’t learned its limitations yet.
If people aren’t getting anything out of llms they’re using them wrong.
If you blindly copy paste code you don’t understand from chatgpt there’s obviously a problem
Get it to generate single functions at a time with the requirements clearly defined and then actually read over the code and it’s an amazing tool
I like built-in AI autocomplete more than an actual AI chat. It’s amazing at filling in code that is really obvious so I don’t have to type it myself. Anything even remotely complex will be subtly wrong though, so it’s only good for reducing tedium.
Exactly. It’s good at generating anything you know well enough that you’ll instantly spot the errors, but it shouldn’t be used for anything you aren’t fully comfortable with doing by hand
It helps me as autocomplete, but that’s about it. The increase in productivity is negligible. The problem I have is suddenly feeling dependent on it. It’s like with navigation software. We rely on it so much, suddenly we can’t navigate our way out of a paper bag when it’s not around. There’s something unsettling about having the floor pulled out from under you like that.
If I was simply someone trying to get a job done and drone through the day, sure, it’s probably fine. But I’m someone that needs to know and understand everything I put into my commits, and I actually enjoy coding.
It doesn’t do anything for me. It’s good for simple code that I could’ve written myself in the time it takes me to make sure that what it generates is what I needed.
I mean, if you’re already competent in what you’re doing, it probably won’t help, but I’ve found they are very helpful when learning a new system.
Like it might turn 10 searches about how a language works into 1 or 2.
So I don’t have to look up type conversions, or proper loop syntax or if have to pipe in a a blank object into this function or I can just leave it null etc. And can just look up hoe to fix that 1 error it gave me instead.
It’s pretty much the exact same cost-benifit as stealing code off of stack overflow.
I don’t know, I use GH copilot every day. Not to generate whole blocks of code but as autocomplete. It more often than not can finish my sentence for me. It’s makes wrong assumptions some times but it most definitely saves me time. I was just using an IDE today not set up for copilot and it made me realize how much I miss it when its gone.
At the end of the day, it’s a bit like a good editor setup. Sure, your crazy neovim skills might save you a minute or two here and there. But I’ve met excellent programmers that can code in anything, and be just as efficient as the Neovim nerds.
Programming is not just about writing code, you spend a lot of time thinking about it, which is a huge part of the work.
I think things like helix and neovim are more about the dopamine hit from hitting the exact right sequence of buttons to make the change you want
Definitely feel faster using helix than vscode though, even just stuff like m+i+" (select all within quotes, brackets etc)
Oh sweet irony… I remember butting heads with techbros on this very platform about their misguided intuition that people criticizing LLMs were going to be left out (assuming I or others had never tried them).
Yeah, I write enough bugs on my own, I’ll pass on the 41% more, thank you very much.
Sure, I know this study needs to be replicated and should not be considered to be a holy truth… But the issues with the tech do pile up, and they’re not just ethical concerns about resource usage. There’s a new study like this one every week.
I got used to using Copilot for a project that had it be accessible for very junior programmers (thus: lots of explanation in comments). It worked great, creating a chunk of boilerplate for each described function.
It’s absolutely useless in the real world. Code is 5+ years old, crosses over various coding conventions and does not use the stuff seen as default on StackOverflow.
Copilot couldn’t figure out what I wanted. Intellij’s long list of internal If-statements does the job though, and saves on a few households of power consumption.
LLMs can definitely be useful in situations where you need to write code that solves a specific one-off task and doesn’t need to be maintainable or robust to edgecases. Some prompts where LLMs saved me 15 minutes or so of work:
- “Write a web app in any language and using any library that creates a textbox that’s synced across all clients that have the web app open.”
- “Write a python PIL program that iterates over the pixels in an image… Now make it a command line tool with argparse that takes the image path as input”
As a hobbyist with no production-environment or critical coding projects, Google Gemini has been great for generating a starting point for Arduino projects if I otherwise don’t know how to get going.