>> Just a question: don't you risk to get stuck in a perpetual refactoring/rewrite cycle?
Yes, definitely, it’s actually all I’ve been doing on one of these projects for the past two years. Guess I just like refactoring a lot it seems ;-)
Joking aside, refactoring is a broad term. Most of the time spent ‘refactoring’ this project was to incorporate interesting new ideas, increasing the capabilities of the game engine etc. Not just the typical technical debt cleanup. But even some of that was actually very educational, for example I found out that the whole idea to use object-oriented programming techniques to model the game was a bad idea, and have slowly refactored the whole thing to a hybrid between OOP and an entity-component system. Just the act of incrementally applying such a fundamental paradigm shift while keeping the engine mostly working was quite an interesting challenge!
Yes, definitely, it’s actually all I’ve been doing on one of these projects for the past two years. Guess I just like refactoring a lot it seems ;-)
Joking aside, refactoring is a broad term. Most of the time spent ‘refactoring’ this project was to incorporate interesting new ideas, increasing the capabilities of the game engine etc. Not just the typical technical debt cleanup. But even some of that was actually very educational, for example I found out that the whole idea to use object-oriented programming techniques to model the game was a bad idea, and have slowly refactored the whole thing to a hybrid between OOP and an entity-component system. Just the act of incrementally applying such a fundamental paradigm shift while keeping the engine mostly working was quite an interesting challenge!