I finally started doing feature branches and tracking issues in Github for my personal project, a video game I'm working on.
Before I just did my best to keep everything in my head (or with inline TODOs) and just work on whatever I felt like, checking in to the develop branch whenever I felt like, and periodically merging to main. It's just me on the project so I didn't think it mattered much, and wanted the freedom of working on whatever I felt like that day.
But eventually I was like "why am I doing this so different from the way I do this at work? Just sit down and write down everything and put it into milestones so you don't have to keep juggling it all in your head", and now I've been doing that for a few months and it definitely feels superior.
There's more documentation on what is in the changes besides just the comment of a single commit, and the commits are grouped together more, and I seem to be making things a bit more complete before moving on now, instead of just bouncing around as much (there's still some of that, there's a couple open branches I haven't touched in a while I have to return to at some point).
Also got better about writing some unit tests for some of the gameplay logic in the game I wanted to make sure accommodated for as many edge cases as possible, to ensure its correctness. In the process of doing that I spotted and fixed a few longstanding bugs and bugs I didn't even realize were in there (like the A.I. was making a few calculations wrong and I didn't realize it because it was still a halfway decent opponent regardless), so I'm trying to do that a bit more now. I still think it's a waste of time for UI, which my game is mostly UI, but for core game logic I think it makes sense.
Next year I need to step up my marketing game, and start getting back into streaming more (one of the features of the game is Twitch audience support, assuming I get its authentication working properly with Monogame at least, so I kind of need to anyway).