In The Mythical Man Month Frederick Brook describes the five rewards that the craft of software development provides to its practitioners.
- The sheer joy of making things
- The pleasure of making things that are useful to other people
- The fascination of fashioning complex puzzle-like objects of interlocking moving parts
- The joy of always learning
- The delight of working in such a tractable medium
I agree 100%. Every day, despite the setbacks and annoyances, I am so grateful that I work in this field.