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.
The best fertilizer is the farmer's shadow on the field.
The most important single aspect of software development is to be clear about what you are trying to build.