Programming Pearls tips
1. Careful analysis of a small problem can sometimes yield tremendous practical benefits. see <Software Requirements & Specifications>
2. What primitives will we use to solve the problem? see <aha! insight>
3. Don't write a big program whe a little one will do. see <How to Solve It>
4. The problem is important and requires careful code, the development of the program is important and and requires careful code, the development of program is guided by verification ideas, and the anaylysis of correctness employs general tools.
5. effort at a little problem: Scaffolding->pseudocode