The best book on programming for the layman is 'Alice in Wonderland'; but that's because it's the best book on anything for the layman.
One man's constant is another man's variable.
I think it is inevitable that people program poorly. Training will not substantially help matters. We have to learn to live with it.
It is easier to change the specification to fit the program than vice versa.
A programming language is low level when its programs require attention to the irrelevant.
LISP programmers know the value of everything and the cost of nothing.