|
|
|
|
|
by dazamarquez
179 days ago
|
|
I use AI to write specific types of unit tests, that would be extremely tedious to write by hand, but are easy to verify for correctness. That aside, it's pretty much useless. Context windows are never big enough to encompass anything that isn't a toy project, and/or the costs build up fast, and/or the project is legacy with many obscure concurrently moving parts which the AI isn't able to correctly understand, and/or overall it takes significantly more time to get the AI to generate something passable and double check it than just doing it myself from the get go. Rarely, I'm able to get the AI to generate function implementations for somewhat complex but self-contained tasks that I then copy-paste into the code base. |
|
For greenfield side projects and self contained tasks LLMs deeply impress me. But my day job is maintaining messy legacy code which breaks because of weird interactions across a large codebase. LLMs are worse than useless for this. It takes a mental model of how different parts of the codebase interact to work successfully and they just don't do that.
People talk about automating code review but the bugs I worry about can't be understood by an LLM. I don't need more comments based on surface level patter recognition, I need someone who deeply understands the threading model of the app to point out the subtle race condition in my code.
Tests, however, are self-contained and lower stakes, so it can certainly save time there.