How do you patch something that was written by another colleague, using an LLM, that you also need an LLM to figure out?
How do you find the subtle bugs? Working with LLMs I noticed, they try to implement things from scratch. I asked it to output the md5 hash of some string in the api response, it went on to implement the md5 algo and then called it. I simply did not have the time to check correctness so asked it to import a library I know. Someone might just have gone with it, shipped to prod and then bugs.
It also introduced slight changes in the intended flow of your program, that if you aren’t fully aware, are unnoticeable until they compound and you’re too deep to go back because now 10 different weird behaviors are in prod, you’re not sure what the cause is or if they were actually intended. You just have no frame of reference because maybe you didn’t build all of it as part of a team. And those are the things you should have had tests for, but when you were writing the code yourself you were coding with intent, so you know when something was off.
Now you build at the speed of thought and no longer know all the intents, only that the end result satisfies loosely written requirements.
You know, I've speculated before that Facebook's video metrics fraud might have disrupted the entire industry, because people copy their "success". It's why autoplaying videos etc
I wonder if MFABT is a similar justification
Does MFABT work? It's possible. But people have complained about Facebook for years as a buggy product. And it doesn't fulfill what it's apparently meant to be used for https://news.ycombinator.com/item?id=14147719
How do you find the subtle bugs? Working with LLMs I noticed, they try to implement things from scratch. I asked it to output the md5 hash of some string in the api response, it went on to implement the md5 algo and then called it. I simply did not have the time to check correctness so asked it to import a library I know. Someone might just have gone with it, shipped to prod and then bugs.
It also introduced slight changes in the intended flow of your program, that if you aren’t fully aware, are unnoticeable until they compound and you’re too deep to go back because now 10 different weird behaviors are in prod, you’re not sure what the cause is or if they were actually intended. You just have no frame of reference because maybe you didn’t build all of it as part of a team. And those are the things you should have had tests for, but when you were writing the code yourself you were coding with intent, so you know when something was off.
Now you build at the speed of thought and no longer know all the intents, only that the end result satisfies loosely written requirements.