One of my goals for 0.2 was to take some time to clean up and improve the codebase, get rid of all that sloppy mess that I’ve been leaving behind. Refactoring, optimizing, getting rid of copy-pasting, etc. You know, the kind of things boring nerdy programmers care about.
Which is all good, but as I’ve realized, it’s also a very dangerous trap. It requires a lot of restraint, because once you start cleaning up code, you never stop. There’s always something that can be improved. Something that could be done slightly better. You’ll get stuck in an endless loop always trying to think up of better ways to do everything, because it’s never perfect. Who knows how many more precious frames you could gain! Then it becomes contagious and all the other programmer contributors start chiming in on all the wonderful new ways you could be doing things. Before you know it you’re ignoring gameplay bugs for programming issues, completely lose track of your goal and only put out a new version years later with no visible changes. And guess what?
Nobody gives a shit!
This is a game! The whole point is to give people things to play! I shouldn’t forget that! So starting now I’m gonna stop wasting time and losing sleep over clean code and going back to implementing actual features. The reason I’m posting this publicly is not only to remind myself of this fact, but to everyone else involved in the project or other similar projects that tend to fall into this trap without noticing. Hope you find it helpful.