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.
Niklaus WirthExperience shows that the success of a programming course critically depends on the choice of these examples.
Niklaus Wirth