PRIMM is a framework for structuring computer programming lessons that emphasize reading code before writing it. Each component of PRIMM (Predict, Run, Investigate, Modify, and Make) represents a stage in a lesson or series of lessons. This strategy scaffolds instruction and emphasizes discussion and collaboration to increase understanding and reduce cognitive load. As students progress through the five stages, they gradually assume more ownership of programming, ultimately writing a program of their own. PRIMM enables teachers to differentiate instruction and set an appropriate pace for students to work through each stage successfully.
As a learning strategy, use PRIMM when you want students to:
As an instructional strategy, use PRIMM when you want to:
Advance Prep
Implementation
Teachers play a critical role in implementing PRIMM, as students’ progress should inform the progression and activities through each stage. Teachers should also help to facilitate understanding and discussion to ensure that students understand the concepts and develop the appropriate skills before moving on to the final stage.
PRIMM lends itself to culturally responsive teaching because of its explicit sociocultural approach. PRIMM emphasizes discussion and collaboration as key components of developing understanding. This allows diverse learners to access the content in a way that makes sense to them before developing programming vocabulary and a deeper understanding of programming language and skills. PRIMM promotes differentiated instruction and opportunities to make programming lessons culturally relevant. This strategy builds an understanding of programming that enable students to write their own code, fostering ownership and agency over their learning
Facilitates the structure of lessons in a purposeful way.
Enhance rigorous evaluation, an approach to teaching programming that can be directly implemented in the secondary classroom by teachers, experienced or otherwise.
5.3 Data & analysis, 5.4 Algorithms & programming