Mine doesn't really stem from the need to code or anything like that. I'm an engineer by education, and i've had engineering roots my whole life, through family and experiences.
I tend not to learn too many frameworks, just because they're basically all the same apart from some small nuances and lots of annoyances.
My biggest factor is solving problems, being presented with a problem and creating a solution in my head, then going through the motions and selecting the best languages, frameworks, processes and finally, of course, building it.
I'm actually trying to start a blog about solving problems. Basically selecting any problem, computer based or otherwise, and presenting a solution. I have quite the analytical and creative mind, so solving the problem is more fun for me than actually building/implementing it. Not to mention I have too little time and resources to build all the solutions I have in mind anyway haha.