← Back to context

Comment by qsera

6 hours ago

That is quite unreliable. I would bet that your spec will be out of sync with the program behavior in no time.

The only thing that will work is to have non-llm generated tests. But writing those require thinking, which is what we are trying to avoid. Also capturing every little behavior in tests is exhausting. If you don't like programming, you would also hate writing tests. So chances are that a major part of the program behavior does not show up in tests.

So throw it away and rewrite from scratch is a just wishful thinking that the LLM marketing wants you to commit to...

I’ve successfully done exactly what is described. You have to actually implement discipline yes. That’s the key hard part.

However provided you stick to the discipline, it’s robust e2e TDD’d versioned worked through CI and in production

You get out of all these tools what you put in

  • Any non-trivial project done at scale for any realistic duration won't work with this procedure.

    Just consider this for a minute. If re-writes were so trivial, we would be re-writing software all of the time, even before LLMs. It is the fear of losing all the legacy additions that stop us from doing it.

    • Any competent senior engineer has done a major refactor or manual rebase-prune merge so it’s not like its a rare event.

      You just have to have discipline and be prepared to to do the plumbing correctly so that you think ahead of the future dependencies etc… its just doing real engineering

      1 reply →