For me, I grabbed a short section of the story and tried to make it into a demo. The structure was pretty simple at first, there were the basic input system and skill tree, and that's all. Then I started to work on the aesthetic for a bit, and then I go back to programming again. Just like that, block by block.
My first project was too ambitious, I made a lot of systems first, but some of them are actually not so useful, so time waster (or not, lesson was learned :P)