3 / 10

Why is(  )fun? What delights may its practitioner expect as his reward? First is the sheer joy of making things. As the child delights in his mud pie, so the adult enjoys building things, especially things of his own design. Second is the pleasure of making things that are useful to other people. Third is 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.  Fourth is the joy of always learning, which springs from the(  )nature of the task.  In one way or another the problem is ever new, and its solver learns something: sometimes(  ), sometimes theoretical, and sometimes both. Finally, there is the delight of working in such a tractable medium. The(  ), like the poet, works only slightly removed from pure thought-stuff. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures.

    Yet the program(  ),unlike the poet's words, is real in the sense that it moves and works, producing visible outputs separate from the construct itself.  It prints results, draws pictures, produces sounds, moves arms.  Programming then is fun because it gratifies creative longings built deep within us and delights sensibilities we have in common with all men.