The Imagery of “The Joys of Craft”
Brooks writes, “Why is programming fun? ... 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. I think this delight shown in the distinctness and newness of each leaf and snowflake. Second is the pleasure of making things that are useful to other people. Deep within, we want others to use our work and to find it helpful. In this respect the programming system is not essentially different from the child’s first clay pencil holder “for Daddy’s office.” Engineers derive pleasure from the art of constructing things from scratch. Moreover, the utility which users derive from the engineers’ creation arouses the engineers to keep developing new things. Engineers are stimulated by creativity and novelty.
The Imagery of a Surgeon
Brooks elucidates, “Mills calls him a chief programmer. He personally defines the functional and performance specifications, designs the program, codes it, tests it, and writes its documentation. He writes in a structured programming language such as PL/I, and has effective access to a computing system which not only runs his tests but also stores the various versions of his programs, allows easy file updating, and provides text editing for his documentation.” The chief program requires in depth programing expertise for him/ her to develop a functional program. Responsibilities completed by the chief programmer are similar to those performed by a medical surgeon. The chief program oversees the formation of a programing from the inception to the final stages.