Skip to content

Outcomes

  • Reach a visible first Python/Turtle run
  • Predict and trace movement before execution
  • Connect one variable change to output
  • Use a NameError to form and test a hypothesis
  • Create and revise a bounded personal drawing

Timing and materials

  • 60 minutes only when Python/Turtle and files are preflighted; timed 35-minute alternative
  • One working computer per learner or pair; printed reasoning sheets for waiting learners
  • Python 3/IDLE, supplied files, learner sheets and pens
  • Projector optional

60-minute delivery sequence

Preflight required: Python 3, IDLE, Turtle and both supplied files must work before the session. If they do not, extend the session or use the shared-device/print contingency below.

  1. 0·10 min. Open the supplied starter and reach the blue 80-pixel line. Confirm the prepared setup; do not attempt individual installations during this segment.
  2. 10·20 min. Learners trace and commit the L-shape prediction before execution. Run once and compare without grading the prediction.
  3. 20·30 min. Change only distance to 120. Ask which output changed, which stayed fixed and which line caused each.
  4. 30·42 min. Run the broken file. Require the last error line, failing line and one hypothesis before revealing the spelling comparison.
  5. 42·58 min. Learners build one bounded personal drawing in milestones, running after the first three moves and revising one observed result.
  6. 58·60 min. Debrief one cause-and-effect change and one debugging decision.

35-minute timed alternative

0-5 baseline; 5-10 predict/observe; 10-15 modify; 15-23 repair NameError; 23-32 three-move creation; 32-35 causal reflection. It omits installation troubleshooting, extended discussion, colour polish, a second creation revision and the full debrief.

Pair programming

  • Driver types and runs; navigator predicts, traces, reads errors and proposes one test
  • Swap after the baseline, debugging repair and first creation run
  • Driver explains the navigator's proposal before typing, so one learner cannot take over

Shared-device continuity

  • Pair learners on working devices; waiting learners become navigator or test lead with the print sheet
  • Rotate at the baseline, debugging and creation milestones
  • Treat administrator-blocked machines as unavailable, not learner error
  • Pause everyone only for a fault affecting many machines

Listen for

  • The first line is controlled by distance; the second reads distance // 2
  • The 90-degree turn is controlled independently
  • NameError means Python could not find a name
  • A useful fix makes definition and use agree
  • Creation explanation names one changed cause and visible effect

Compact troubleshooting

SymptomFirst check
Python not foundTry `py` on Windows; confirm Python 3 and reopen terminal
Wrong output/fileSave and verify the editor title before Run Module
Syntax/indentation errorRead line number; compare punctuation and leading spaces
No Turtle windowUse desktop Python/IDLE; keep turtle.done() last
Window seems frozenClose the previous Turtle window before rerunning
Copied symbols failRetype quotes and minus signs in the editor
Administrator blocks installationStop repair attempts; use a prepared/shared device and print reasoning sheet

Debrief and boundaries

  • An incorrect prediction is useful if the learner compares and revises.
  • Do not type the fix for a learner before they identify the failing line and hypothesis.
  • The local activity record is participation evidence, not proof that code ran or competence was verified.

Ask

  • Which line made the second segment half as long?
  • What did NameError let you rule out?
  • What did you improve only after seeing the first version?

Found something unclear, outdated or improvable? Suggest an improvement