When building a product when things don’t quite work as smooth as we want, it’s tempting to throw it all out and start over. Don’t do that.
Starting from scratch lulls us into a false sense of security that we we won’t make the same mistakes that we made last time. While that may be true, we will make different mistakes.
It’s better to refactor. Change one bit of functionality. One screen at a time. This will let you make things right over time and keeps you with a functioning product.
You also don’t have to face an empty project.
This is what we’ve effectively done with our Vue transition in Kwoosh. We’ve rewritten the majority of the code base and things are much cleaner, faster, and maintainable. I don’t know if I could have done it if we had throw it all away.