Interesting to see the benefits and drawbacks called out.
I use it mostly as a help menu. Details of the function and parameter settings. Also fixing errors. I don’t use it to generate code for me though.
It’s awesome for debugging for me.
Also helped me a few times with recursive logic.
As with any AI solution it’s “garbage in. Garbage out.”
Write your code normally. Then ask to generate comments? Add logging? Any tips for improvements?
You have to already know how to code so you know what to ignore.
Exactly, ai only speeds up your coding, quality still depends on you
Using it to generate code isn’t inherently bad (outside of copyright concerns). Especially in “stupid amount of boiler plate” languages/etc.
But the problem is that people are lazy. They don’t bother understanding the output, making sure it does what you want it to, etc. It’s not that different than people copy pasting code from reference material. Part of the beauty of software development is that you don’t have to solve every problem someone else has already solved. But you do need to know what your code is doing and why.
Copilot is a shortcut to code that “works” with less requirement to know what’s happening.
In this regard, AI-generated code resembles an itinerant contributor, prone to violate the DRY-ness [don’t repeat yourself] of the repos visited.
So I guess previously people might first look inside their repo’s for examples of code they want to make, if they find and example they might import it instead of copy and pasting.
When using LLM generated code they (and the LLM) won’t be checking their repo for existing code so it ends up being a copy pasta soup.
If you use AI to generate code, that should always be the first draft. You still have to edit it to make sure it’s good.
I totally agree, but I don’t hear any discussion about how to incentivize developers to do it.
If AI makes creating new code disproportionately easy, then I think DRY and refactoring will fall by the wayside.
How do we currently incentivize developers to keep it DRY? Code review still exists.