What PRIMM stands for

PRIMM stands for Predict, Run, Investigate, Modify, and Make. It is a structured way to teach programming by moving students from understanding existing code toward writing their own.

Instead of asking learners to create everything from scratch immediately, PRIMM gives them a clear route into the code first.

Who developed PRIMM

PRIMM is associated with work led by Professor Sue Sentance and colleagues in Computer Science education. It has become a widely used classroom approach because it gives teachers a practical structure for programming lessons.

Teachers often use PRIMM because it balances explanation, exploration, and independent practice in a way that is easier for many learners to manage.

Useful links

Why teachers use it

  • It slows the lesson down in the right places.
  • Students meet new syntax through worked examples first.
  • It supports mixed-attainment groups well.
  • It gives more structure than jumping straight into open coding.
  • It fits Python teaching especially well.

Benefits and limitations

The main strength of PRIMM is that it builds understanding before independent creation. That makes it especially useful when students are new to a topic or need confidence with reading code.

The limitation is that it still needs careful pacing. If the Predict and Investigate stages are rushed, students can still end up copying without understanding. If the Make task is too large, they may lose the confidence built earlier in the lesson.

PRIMM in Python lessons

Predict

Ask students what they think the program will do before they run it.

Run

Test the code and compare the real result with the prediction.

Investigate

Look closely at variables, conditions, loops, or functions and discuss how the code works.

Modify

Make a small change such as adjusting a condition, changing output text, or adding one new line.

Make

Set a short independent task based on the same idea so students apply what they have just learned.

Useful links

How Paired supports PRIMM

PRIMM works well in a browser-based Python editor because the same environment supports prediction, running, tracing, modifying, and discussion without switching tools.

Paired also makes it easier to move between solo work and shared lesson flow, which suits the way many teachers actually run PRIMM lessons.

Useful links

Related reading

PRIMM Method Guide

Open this next if you want to keep exploring the same topic.

Lessons

Open this next if you want to keep exploring the same topic.

Python Input Validation

Open this next if you want to keep exploring the same topic.

Teach with structure

Try a PRIMM-style Python lesson in Paired

Use lessons, shared coding, and classroom-friendly tools in one browser-based workspace.