Anyone ever notice that when you finally get a program "finished", you start figure out ways of thinking of ways to make it better? Back in industry, we called it "Feature Creep," but these games of mine have really been driving that point home.
For example, MineSweeper has been working fine, and I notice that I need a way to "mark" squares for where I think bombs are. So I add that, and then I realize I should add a display of how many bombs are left to mark. That causes me to think about a better display of the clock, which … etc.
Of course, as I tell my students, Feature Creep is something that needs a measure of maturity to fight. Case in point, my VB student who started (!) writing a Galaxian game by figuring out how to turn the mouse pointer off, add sound, save the high scores in the Registry, …
Which all would have been fine, if the game ACTUALLY WORKED! 8^)