The other day I inherited a repo from someone that left the company. The first one to be almost fully vibe coded.
It's horrible. It's over engineered in every way. It follows a completely different pattern than the other repos. It adds 10 CLI options that don't have any use (why does Claude add --threads to everything). It's impossible to follow the flow of the code.
Of course, days after I inherited it, it broke so good luck to me fixing it I guess
Ironically, my first thought was how quickly this might be able to be re-written, in a sane way, …with the help of an LLM.
I find that if you pay a lot of human-in-the-loop attention to the design phase, LLMs can produce perfectly decent stuff.
They’re also good at writing tests. Lock in the (non-broken) behavior of the old app with tests. Then use those tests to re-create the app, except with a talented engineer (you) guiding the design this time.
gonzalohm · · focus · HN ↗
It's horrible. It's over engineered in every way. It follows a completely different pattern than the other repos. It adds 10 CLI options that don't have any use (why does Claude add --threads to everything). It's impossible to follow the flow of the code. Of course, days after I inherited it, it broke so good luck to me fixing it I guess
JohnBooty · · focus · HN ↗
I find that if you pay a lot of human-in-the-loop attention to the design phase, LLMs can produce perfectly decent stuff.
They’re also good at writing tests. Lock in the (non-broken) behavior of the old app with tests. Then use those tests to re-create the app, except with a talented engineer (you) guiding the design this time.