This is the true Hacker method of thinking. Problem solving, puzzles are what makes us happy.<p>We built tens of products, website and apps. The fun is always when you hack something new. When you manage to get the math right for an AR system for the first time, when you add zoom capabilities to your canvas with just two lines of code, or have the ability to embed youtube videos into your Android app before everyone else. When you create things out of nothing, when you share your creations and move to the next puzzle.<p>And once the hacking stops, although the product is pretty much finished and all that's left is the launch (which is a very important part, but not for the hacker in us), the fun is almost completely over. That is when fun ends, and the work starts for the hacker.<p>Hacking keeps us sane. And if you ever get to that point when you're stuck in a high position of your successful startup, look for role models that got the recipe right. pg always comes to mind.
One of the most valuable coding tools that I learned to appreciate relatively late in my coding career is the Thesaurus. Not only because I'm not native English. Finding the right identifiers is often surprisingly hard, and seeing synonyms and antonyms of the concept you try to express, all of which have some different connotations and slightly different meanings can actually help you to sort out your own thinking quite a bit.
And if you try to have your variable names describe what you are doing as best as possible, and you find you run out of names, or the same name can mean very different things in your code, then you probably have some big conceptual problems.
Nothing about this experience is unique to programming. People derive similar pleasure & creative outlets from a variety of activities.<p>My partner spends most of her waking hours honing her craft, pushing boundaries, and experiencing new heights of joy. She's a musician. Most of our muso friends would gush similarly about their craft.<p>Lately I have been getting a lot of rush from golf. It's extremely rewarding and frustrating at the same time.
What leads to stress and frustration is not the craving for the solution but rather the pressure to find the solution. Most of the time this kind of thing happens in day jobs because there is less emphasis on learning and more on getting things done.