# teaching machines

## Rule #37 for Teaching Computer Science

Never use placeholders. For example, never tell students to change directories with a command like this:
cd /home/USERNAME
Students will report back that the directory /home/USERNAME did not exist, and they were therefore not able to do their homework. Do not describe an image file format to students like this:
P1
WIDTH HEIGHT
...
Students will output literally the text “WIDTH” and “HEIGHT” and not understand why their images will not open. Do not depict an example user interaction with a program like this:
What's your guess? 17
Too high. What's your guess? 8
Too low. What's your guess? 13
You got it!
They will hardcode exactly four print statements and eliminate user input entirely. If not placeholders, then what can you use to describe a pattern? Nothing. You are out of luck. Young people only speak concrete. You can’t preempt this misunderstanding. Let it happen, and then give them a very concrete 0. Sadly, older people—who have the prefrontal cortex to know better—are not helping when they pull stunts like these: