For quite a long time I have tried to find an explanation for why I am doing all the core work and for some time I had a suspicion, and now I am fairly confident I know. This article helps understanding the Psychology of Programming and it mentions the reason: flow. Let's see what makes me reach flow by checking most of the items Wikipedia lists.
As I am defining my own goals they are surely clearly defined for myself. If I find the right patch to work on, it provides a balance between ability level and challenge -- best is when I am able to do but narrowly. I need to think hard on how to do it right and when it "clicks" I can only say I feel elated.
As I am alone without fixed hours of work this one hand lets me concentrate and focus on the problem. Also, as there is no boss for these kind of patches, I have total control of this activity. Finally, there is direct and immediate feedback -- it either works or not :). I definitely find it intrinsically rewarding -- in other words "yes this is done right" gives me great joy.
Once you found flow in some activity, you want to have it again, it's like some sort of strong drug. Actually, it seems this drug is something your own body produces: dopamine. So, to really simplify things: I code core to be high without resorting to harmful drugs :)
Commenting on this Story is closed.