| I believe you're both saying the same thing. LLMs write "re-usable code" at the meta level. The code itself is not clean and reusable across implementations, but you don't even need that clean packaged library. You just have an LLM regenerate the same code for every project you need it in. The LLM itself, combined with your prompts, is effectively the reusable code. Now, this generates a lot of slop, so we also need better AI tools to help humans interpret the code, and better tools to autotest the code to make sure it's working. I've definitely replaced instances where I'd reach for a utility library, instead just generating the code with AI. I think we also have an opportunity to merge the old and the new. We can have AI that can find and integrate existing packages, or it could generate code, and after it's tested enough, help extract and package it up as a battle tested library. |