The Humble Programmer (1972)(cs.utexas.edu)
cs.utexas.edu
The Humble Programmer (1972)
https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.html
12 comments
> the effective exploitation of [their] powers of abstraction must be regarded as one of the most vital activities of a competent programmer... the purpose of abstracting is not to be vague, but to create a new semantic level in which one can be absolutely precise.
> The competent programmer is fully aware of the strictly limited size of his own skull; therefore he approaches the programming task in full humility, and among other things he avoids clever tricks like the plague.
> We must not forget that it is not our business to make programs, it is our business to design classes of computations that will display a desired behaviour.
> all abstractions needed to cope conceptually with the complexity of what we are designing
> ...the tools we are trying to use and the language or notation we are using to express or record our thoughts, are the major factors determining what we can think or express at all!