Principles of Program Design Induced from Experience with Small Public Programs
Douglas E. Comer · IEEE Transactions on Software Engineering · 1981
The art of programming is taught, learned, and often practiced as if programs are disposable, personal objects owned, solely by the programmer. This paper uses examples to illustrate why real software is neither personal nor disposable; it shows how even simple programs are shared by others. From the examples, the paper extracts four principles for program development. Finally, it draws conclusions about programming practices and the education of programmers.