My being a teacher had a decisive influence on making language and systems as simple as possible so that in my teaching, I could concentrate on the essential issues of programming rather than on details of language and notation.
Indeed, the woes of Software Engineering are not due to lack of tools, or proper management, but largely due to lack of sufficient technical competence.
During the process of stepwise refinement, a notation which is natural to the problem in hand should be used as long as possible.
Go To statement considered harmful.
Clearly, programming courses should teach methods of design and construction, and the selected examples should be such that a gradual development can be nicely demonstrated.
It is evidently necessary to generate and test candidates for solutions in some systematic manner.
Software gets slower faster than hardware gets faster.
Reliable and transparent programs are usually not in the interest of the designer.
The idea that one might derive satisfaction from his or her successful work, because that work is ingenious, beautiful, or just pleasing, has become ridiculed.
Software development is technical activity conducted by human beings.
I am convinced that there is a need for high quality software, and the time will come when it will be recognized that it is worth investing effort in its development and in using a careful, structured approach based on safe, structured languages.
Program construction consists of a sequence of refinement steps.
The possible solutions to a given problem emerge as the leaves of a tree, each node representing a point of deliberation and decision.
Follow AzQuotes on Facebook, Twitter and Google+. Every day we present the best quotes! Improve yourself, find your inspiration, share with friends