It often helps to have somebody dictate what to work on on any given day, but what do you do if you’re a solo dev? For me, that someone is a D20:

I call it my producer. Look how much this poor thing has been through, working tirelessly to help determine tasks to work on and also the fate of my D&D characters (RIP Jeremy Silvertongue).
Before my development streams, I roll my producer. If I roll a 4, for example, I would would go to the 4th line in my TODO text file and work on that:

As you can see, I’ve spared no expense on my project management software. I had to buy an entire operating system to get notepad.exe!
I used to just focus on one task, but recently, I’ve started a system where I roll until I have 3 different tasks and try to spend a couple hours on each. The reason you only see 2 starred here is because I already worked on the first task, and now I’m working on the second one and updating the website. If I complete a task, I move it to the done list. If I don’t complete it, I try to get to a good stopping point, then I move the task to the end of the TODO list if it’s not critical. If it is critical, I move it down 10-20 lines so I’ll work on it more frequently.
I find it’s important to work on a large variety of tasks rather than focusing on specific tasks and trying to complete them. Games have a lot of inter-dependencies, so different aspects influence the development of others. That’s why I’ve moved to a system where I’m trying to do multiple tasks per day just to iterate on as many things as possible and address the most critical aspects of each. Randomly selecting items to work on helps force me to work on things I might otherwise neglect, and they often have a large impact on other systems.
For example, I had a level with hazards that turned on and off at a certain interval, and when I went to add music to the level, I realized it was very difficult to time the movement through the hazards when the tempo of the music did not match the interval the hazards cycled at. That meant I had to change the music tempo, the rate of the hazards, or both. Everything needs to work together in a cohesive manner to make a good game, and if I were to neglect working on the music until the end of the project, I might not be aware of some issues and how to design around them. It’s important to iterate on many things so they all work together!
I don’t use the producer to select tasks every day, though. I keep Friday as my do-what-I-want day. I think it’s important to have some time where you just work on the things you, personally, find important. It’s also a time where I try to finish/polish areas to use for a #ScreenshotSaturday post on Twitter.