Im also thinking about this a lot lately. I figured that I do this because Im always searching for the perfect solution. This problem is not only learning new languages or frameworks. It’s also improving the ones you already use.
I often catch myself trying to improve my code or architecture within frameworks I already know. But there is no need. Im just trying to golden what I have.
I think this is also the learners syndrome. The feeling that there might be a more elegant way and that you should find it. Although its already good enough.
I now try to think more agile, more in terms of scrum to make this scenario bareable to me. If I feel the need to improve something, I force myself to finish a first version with the skills I have now.
And after years of rushing through frameworks and languages I pinpointed a set of tools for web and game development for me. No matter if its the best choice. From now on I’ll go with that. In fact 80% of the problems are solveable with any toolset. Feels harsh, but it frees my brain from the question if there might be something better out there…