For me, it is a glorified auto-complete function. Could definitely live without it.
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
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.
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.
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:
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.