The Ontario Elementary Math Curriculum provides teacher supports: examples, key concepts, and sample tasks.
When coding, consider connections to Social-Emotional Learning (Strand A), Mathematical Processes and Mathematical Modelling (Strand C)
Differentiation and coding are a great match. As students discover, there are many ways to write code that will accomplish the same task, code can be simple or complex and provides an engaging way to allow for student choice and voice.
Consider:
To help students build their understanding of concepts and vocabulary, start with unplugged activities.
When using block coding, create projects where the blocks have been selected but not attached. Students work on ‘clicking’ them together in the right order to make their code.
In Scratch, students can remix an existing Scratch project. By starting with existing code, students can take time to understand the code and make small changes to watch what happens.
Students come to coding projects with different experience and comfort levels. As they work, encourage students to assist each other. Consider creating collaborative coding groups.
For more of a challenge, ask students to add more functionality to their code, ask them to make their code more efficient (write the code is a shorter, simpler way) or ask them to reverse engineer a project. Reverse engineering involves figuring out how to recreate a project without looking at the original code.
The Ministry of Education provides a guide for Assessment and Evaluation based on Growing Success: Assessment, Evaluation, and Reporting in Ontario Schools (2010).
Copying code to remix or adapt it is common. Assessments should be based on what students know about code, not just on the code they create.
Consider having students:
Explain their code (e.g., create a Screencastify, create a storyboard to describe code)
Solve and explain how to debug or modify a piece of code
Predict what code will do before running it
Share with their peers (1:33)
Reflect on code - Consider a digital journal or printable journal with journal prompts or guiding questions:
What are some different ways you could change your code?
What happens if we change the order of these blocks?
How can you use what you learned today in future projects?
What questions do you have about coding that you could explore next time?
Additional Resources:
Ontario Ministry of Education. (2013). Learning for All: A Guide to Effective Assessment and Instruction for All Students, Kindergarten to Grade 12.
Computational Thinking | Assessing (example rubrics, journals, videos, and other resources)