I increasingly feel that the reason vibe coding specifically prohibits reading the generated code is that it's impossible to forget the horror that lurks in these python files.
The code will do what you asked for in a broad sense but wherever choices arise on how to accomplish the goal it'll have made those choices incoherently.
There'll be strange validations applied inconsistently to some user inputs but not others. Data will be repeatedly sorted or converted to lower case for no reason at 3 stages. The column labels are all hard coded strings even though they are the first row of the input CSV. It'll create global functions taking data classes half the time and classes the other half.
If you look, and if you think you might one day need to update and maintain the code manually, then it's very hard to resist fixing this sort of thing, but fixing this sort of thing cancels a lot of the time saving out.
The term vibe coding actually originated from a tweet from Andrej Karpathy and so there is actually a sort of definition of the term. He said vibe coding is where you "forget the code exists":
The code will do what you asked for in a broad sense but wherever choices arise on how to accomplish the goal it'll have made those choices incoherently.
There'll be strange validations applied inconsistently to some user inputs but not others. Data will be repeatedly sorted or converted to lower case for no reason at 3 stages. The column labels are all hard coded strings even though they are the first row of the input CSV. It'll create global functions taking data classes half the time and classes the other half.
If you look, and if you think you might one day need to update and maintain the code manually, then it's very hard to resist fixing this sort of thing, but fixing this sort of thing cancels a lot of the time saving out.