I think your analysis is largely correct.
A lot of this is very accurate, and a little depressing since I probably do need a social reward system, or a support network - and I don't see an easy way to create one right now. :/
I do like having more clarity though, and understanding of what actually is the problem here.
As an example, I want to make a computer game. Programming has an advantage of providing a quick feedback, if you are doing it well. I decide to add a new feature, I write it, then I run the game, and I see the feature is there. I get some reward in form of seeing the new feature that works.
(And "doing it well" in this context means developing the program in small steps, where each step gives you some visible outcome. Small iterations. As opposed to doing some complex step that would take a lot of time while providing you no results until it is c...
If it's worth saying, but not worth its own post (even in Discussion), then it goes here.
Previous Open Thread
Notes for future OT posters:
1. Please add the 'open_thread' tag.
2. Check if there is an active Open Thread before posting a new one. (Immediately before; refresh the list-of-threads page before posting.)
3. Open Threads should be posted in Discussion, and not Main.
4. Open Threads should start on Monday, and end on Sunday.