So here’s how I see it: There is a big difference between “AI generated” code and “AI assisted” code. Or just anything.
To put it in terms most people can more understand let’s say you were writing a book. If you have an LLM generate the book its gonna suck and be slop. But if you write the rough draft, then paste it into an LLM and say, “Look through this and find typos and other mistakes and point them out to me”. Then you go and check the things it finds and fix them yourself, that is fine. It’s just a really good spellcheck at that point. Even if you say “suggest a fix” it’s fine. For coding you could even tell it like “Take this line of code and suggest 5 different ways to do the same thing that might work better” then test them all out and see which one you like best.
I have personally used an LLM to help clean up my dotfiles for example. I don’t want to read through all that shit and find the old junk I need to remove or change. So I just throw them at an LLM and have it point things out to me. Or say you know you have a file but don’t know the exact filename. Go into the folder its in and dump the output of ls into an LLM. Tell it what file you need vaguely. Have it read them and give you the correct filename. Then check it yourself.
The problem comes from people who just generate stuff and don’t do the work of double checking it themselves.
So here’s how I see it: There is a big difference between “AI generated” code and “AI assisted” code. Or just anything.
To put it in terms most people can more understand let’s say you were writing a book. If you have an LLM generate the book its gonna suck and be slop. But if you write the rough draft, then paste it into an LLM and say, “Look through this and find typos and other mistakes and point them out to me”. Then you go and check the things it finds and fix them yourself, that is fine. It’s just a really good spellcheck at that point. Even if you say “suggest a fix” it’s fine. For coding you could even tell it like “Take this line of code and suggest 5 different ways to do the same thing that might work better” then test them all out and see which one you like best.
I have personally used an LLM to help clean up my dotfiles for example. I don’t want to read through all that shit and find the old junk I need to remove or change. So I just throw them at an LLM and have it point things out to me. Or say you know you have a file but don’t know the exact filename. Go into the folder its in and dump the output of ls into an LLM. Tell it what file you need vaguely. Have it read them and give you the correct filename. Then check it yourself.
The problem comes from people who just generate stuff and don’t do the work of double checking it themselves.