- Social Cognitive Theory (Bandura) demonstrates that people learn extremely well by observing models. http://en.wikipedia.org/wiki/Social_cognitive_theory#Modeling
- The best way teach using models is to gradually remove the support of the model (Bandura). For example:
- First, model writing a program by telling students what you’re doing as they watch you writing the program. Use a projector or whiteboard so everyone can watch.
- Cognitive Modeling
- Second, have students write a program while you tell them what to do.
- Overt Guidance
- Third, have students write a program while they explicitly tell themselves what to do.
- Overt Self-Guidance
- Finally, students should should be able to write programs by thinking through what to do.
- Covert Self-Instruction
- Also, be sure to model the setup and testing process of programming, such as how often to save and test your program.
- "Live-coding" in front of students allows you to show them common mistakes, such as typos or logic problems, you naturally run into, and how to recover and debug your code.