While this approach seems to work for a lot of people, personally I'm in the crowd that has a really hard time with that.
I'm just not a creative person. I consider myself a good developer when it comes to diving into an existing code base and figuring it out, fixing things and adding new features. But I simple cannot come up with stuff on my own. I've been trying ever since I was a kid and started programming, and now it's been 20+ years of drawing blanks when I try to "think of a project."
Hopefully I'm not alone in this :P