Using Scratch to Teach Coding in South African Schools

Why Scratch Works for South African Classrooms

Scratch is a free, visual programming platform developed by MIT that is widely used in South African schools for the CAPS Coding and Robotics curriculum. Learners create programmes by dragging and connecting code blocks rather than typing code, making it accessible from the Intermediate Phase onwards.

Scratch runs in a web browser (scratch.mit.edu) and can also be downloaded for offline use, which is important for schools with unreliable internet access.

What Learners Can Do with Scratch

  • Create animations – Characters (sprites) move, speak, and interact based on coded instructions
  • Build games – Learners programme game mechanics like scoring, levels, and player controls
  • Tell interactive stories – Characters respond to user input, creating branching narratives
  • Simulate concepts – Model scientific processes, mathematical relationships, or historical events
  • Make music and art – Use code to generate sounds, patterns, and visual designs

CAPS Coding Concepts Covered in Scratch

CAPS Concept Scratch Feature
Sequencing Stacking code blocks in order
Loops (repetition) Repeat and Forever blocks
Conditionals (selection) If/Then and If/Then/Else blocks
Variables Creating and using variables for scores, counters
Events When Green Flag Clicked, When Key Pressed blocks
Input and output Ask block (input), Say/Think blocks (output)
Debugging Testing and fixing programmes that don’t work as expected

Getting Started: A Simple First Project

  1. Open Scratch and explore the interface: stage, sprite area, and code blocks
  2. Choose or draw a sprite (character)
  3. Use Motion blocks to make the sprite move across the stage
  4. Add a Looks block so the sprite says something
  5. Use a Control block (Repeat) to make the sprite move in a pattern
  6. Add an Event block (When Green Flag Clicked) to start the programme

This simple project introduces sequencing, events, and loops in one lesson.

Teaching Tips

  • Demonstrate first – Show a completed project, then break down how it was built step by step
  • Use pair programming – Two learners per computer. One “drives” (controls the mouse), the other “navigates” (suggests what to do next). Swap roles regularly
  • Encourage remixing – Scratch’s community allows learners to view and remix others’ projects. This is a legitimate learning strategy, not copying
  • Set design challenges – Rather than following instructions step by step, give learners a goal and let them figure out how to achieve it
  • Save and share – Learners can save projects to their Scratch accounts and share them with classmates and family

Scratch Without Internet

Download the Scratch Desktop app from scratch.mit.edu/download. It works on Windows, macOS, and ChromeOS. Projects can be saved locally and loaded later. This is essential for South African schools where internet access is intermittent or unavailable during lessons.