The super-programmer project

J. D. Aron · Yourdon Press eBooks · 1979

In many EDP organizations, structured programming is thought to mean a coding discipline plus a design discipline (topdown design), plus a discipline for reviewing programs for correctness (walkthroughs), plus a method of organizing members of a programming project. Aron's paper deals with last of these issues, completely ignoring other disciplines of structured programming (although, interestingly, paper was presented at same NATO conference at which Dijkstra gave his paper, entitled Structured Programming [Paper 5]). The primary reason for this paper's significance is that it shows beginning of what IBM eventually called Programmer Harlan Mills, first of IBM's chief programmers, was assigned a thirty-man-year project, to be finished in six months - by himself! For a variety of reasons, including fact that he assembled a group of helpers for specific aspects of project, it took six man-years to complete job. Nevertheless, project seemed successful enough such that IBM employed approach again in famous New York Times project [see Papers 7 and 11] and formalized Chief Programmer Team concept for use throughout entire company. Even this first experimental project contained many of basic concepts of formalized Chief Programmer Team. For example, Harlan Mills had not one, but two, people who normally would be called program librarians' One was a secretary, other a trainee programmer. He also used a language lawyer to help deal with intricacies of PL/I programming language. Perhaps most important part of Aron's paper is last paragraph, in which he deals with the question of why we don't use this technique in our many other projects. Aron's explanation is crucial, because it describes precisely why most other EDP organizations have abandoned chief programmer concept after a period of initial fascination: . . . because we cannot depend upon existence of a super-programmer in any given project and, because we must transfer our people around in order to apply right number of resources at right time to a contract, we have found that it is important to build our systems without dependence upon any particularly strong individual.

Read the paper · More papers on PaperTik