Even if you deeply into tinkering, 1 can be an insanely exciting and rewarding step: for example "how could an abstraction look like in which 2-4 become trivial special cases for many classes of programming problems?".
In my opinion the difference between "entrepreneur type" and "programmer type" (and yes: it can happen that both of these types work in the reciprocal job) is rather:
- People of the programmer type see solving problems as their primary goal. Satisfying customers just serves the purpose that these people pay money so that they can continue working on solving problems.
- People of the entrepreneur see satisfying customers as their primary goal. Programming is just a means to an end.
If the answer is "no" you are probably more entrepreneurial than tinkerer. But it's a spectrum.
This helps differentiate between coding as an end and coding as a means to socializing.