Part II. How computers run programs

For reviewers

This part of the course has several goals.

First, explain that computers are machines that perform simple instructions. Help students avoid what Pea (1986) calls the "superbug": that computers know the intentions of programmers.

Second, help students understand the mechanism behind individual statements, like assignment. Sorva (2012) writes that jumping into programming w/o understanding the mechanisms confuses some students (actually, he may have been quoting a different human – I don't remember).

Third, help students understand that you put simple instructions together to get programs. Programmers implement their intention by sequencing instructions so as to get the job done. Programmers simulate the computer in their heads, so that the simulation performs the required task.

Pea, R. D. (1986). Language-Independent Conceptual ’Bugs’ in Novice Programming. Journal of Educational Computing Research, 2(1), 25–36.

Sorva, J. (2012). Visual program simulation in introductory programming education (doctoral dissertation), Aalto University.

Before you can write programs, you need to know how computers run the code you write. This part of the course looks at how computers run programs.