Introduce a new concept by having students modify existing, well-defined programs before writing programs from scratch.
- Students should be led to the point where they can design a program on their own given only the specifications, an initially daunting task.