Once again, I still feel basically the same way about AI coding. It may be useful in the future but it doesn’t change my basic approach.
To me, the technology doesn’t require any immediate action on my part. It is still in its exploratory phase. One thing that keeps getting repeated is that if you don’t adopt it now you will be left behind. But if that’s truly the case there is no more room for new developers.
The biggest point of failure that I have seen is confirming that the results are correct. If an AI can produce easy to read unit tests and clean code that is easy to follow, it’s something that I can confirm is correct provided I am still willing to do some reading into the libraries in use. That is pretty much the same thing I do with human developers. AI is more prone to make mistakes that are unique to it and not humans. One thing is the creation of environment variables that sound probable but don’t actually exist. Another that can happen for human / generative AI is mistakingly using documentation on a different version of the library than the one you are actually on. This can happen in both but feels like it may be more common with AI. If you are starting fresh, you want to avoid using deprecated features but I feel like AI is very prone to ignore that entirely.
These are all criticisms that I consider to be pretty mild and probably aren’t impossible problems to solve, but I don’t feel like the hype around it is governed by reason and is instead a kind of technologic determinism that I don’t subscribe to. I’d actually be more willing to work with it if I felt I could be honest about what I felt the limitations were. I would first of all, have the AI agent as a separate user with very limited permissions. I’m not giving some AI access to my machine if it might delete files outside of specific repo directories. If it comments on PRs or Jira tickets it should also be it’s own user. If it commits, that should be its own user as well. I want to track how close it got to the final result without my help. I would want it to fully record the basic model it is on, any initial config and the prompts it was given.
Leave a Reply