Brooks in MMM identifies five reasons people love programming.
“1. The sheer joy of making things.
2. The pleasure of making things that are useful to other people.
3. The fascination of fashioning complex puzzle-like objects of interlocking moving parts, and watching them work in subtle cycles, playing out the consequences of principles built in from the beginning.
4. The joy of always learning, which springs from the nonrepeating nature of the task.
5. The delight of working in such a tractable medium. The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of imagination.”
There’s real pleasure to building software, as long as you stay above drudgery, churn, and/or repetition