Some students are struggling with the current set of assignments, and that may be because they’ve forgotten that we’re trying to develop an ability to break down a problem into small, ordered steps. Our course isn’t about Turing (as great as it is!), but about “problem decomposition.”
Whenever students encounter a programming roadblock, I recommend as follows:
Write out, in English, the instructions you would give to the Lunatic (see Don’t drown the Lunatic!, 25 November 2010) to accomplish the task. Now, follow those instructions with paper and pencil.
Did you get the desired result? If not, your instructions are incomplete, vague, out of order—or all three. Rewrite the instructions and test them again with paper and pencil. Keep going until you get the desired results. Then, translate your English instructions into Turing.
You don’t have to be a Lunatic to be a programmer, but it helps to know one!
No comments:
Post a Comment