Coding in primary mathematics
By: Steven Floyd and Lisa Anne Floyd
The Ontario Mathematics Curriculum for grades 1-8 includes one overall and two specific expectations related to coding, for each grade. In this article, the expectations from grades 1-3 are explored, in order to provide primary educators with potential insight and direction for implementation in their classroom.
The overall expectation, and specific expectations, are listed below:
C3. solve problems and create computational representations of mathematical situations using coding concepts and skills | ||
Specific Expectations for Grade 1 C3.1 solve problems and create computational representations of mathematical situations by writing and executing code, including code that involves sequential events C3.2 read and alter existing code, including code that involves sequential events, and describe how changes to the code affect the outcomes | Specific Expectations for Grade 2 C3.1 solve problems and create computational representations of mathematical situations by writing and executing code, including code that involves sequential and concurrent events C3.2 read and alter existing code, including code that involves sequential and concurrent events, and describe how changes to the code affect the outcomes | Specific Expectations for Grade 3 C3.1 solve problems and create computational representations of mathematical situations by writing and executing code, including code that involves sequential, concurrent, and repeating events C3.2 read and alter existing code, including code that involves sequential, concurrent, and repeating events, and describe how changes to the code affect the outcomes |
All expectations can be found in Strand C-Algebra of The Ontario Curriculum, Grades 1-8: Mathematics curriculum.
What – What will students be doing?
The terms used in the curriculum expectations highlight the fact that students won’t simply be learning about coding, instead; students will be coding. This means that students will go beyond defining terms such as algorithm or variable, to the point where they are engaged in active learning through computing activities (Resnick & Rusk, 2020).
Expectation 3.2 indicates that students can read and alter code from existing programs, and then make predictions about how the changes to the code will affect the program output. In Expectation 3.1 students will write and execute their own programs. This emphasis on doing, rather than on learning about doing, provides students with the following three affordances:
- opportunities to make abstraction and other concepts tangible through code;
- opportunities to create their own dynamic models of mathematical concepts; and
- opportunities for student agency (Gadanidis, Brodie, Minniti & Silver, 2015).
How – How will students be doing it?
The curriculum expectations include the terms sequential, concurrent, and repeating, which can be thought of as ways that the code controls the events in a program (sometimes called control structures). In grade 1, students will work with code that includes sequential steps, one after another, and will get to experiment with altering the steps to alter the outcomes. In grade 2, students can develop code that controls concurrent events, or two or more things happening simultaneously, and in relation to each other. In grade 3 students can use repeats, or loops, in order to further automate long processes or to condense processes that involve patterns and repeating steps.
**We’d suggest that it will be up to the teacher to interpret and decide which control structures will be used by students in each grade. Personal experience shows that grade 1 students are often eager to program with loops (repetition) when using the ScratchJr coding app, and other coding languages and environments. We’d suggest that the power of coding may be best experienced by not limiting students to simply sequential steps in grade 1 and concurrent steps in grade 2.**
Mathematical Context:– What will they be learning as they do it?
The overarching theme of the curriculum expectations is for students to solve mathematical problems and create computational representations of mathematical situations. In this way, the context for the programs that students write can be selected from across any of the strands of the curriculum. This is highlighted in the curriculum context document, where it states: “Coding can be incorporated across all strands and provides students with opportunities to apply and extend their math thinking, reasoning, and communicating.”
Within the primary grades, teachers may find value in investigating the Geometric Reasoning and Location and Movement areas of Strand E – Spatial Sense for valuable coding contexts. The curriculum expectations in these areas lend themselves well to solving problems and creating computational representations with code as students can work with shapes in code, and can give and follow multi-step instructions involving movement and using positional language.
Potential expectation contexts for coding, from Strand E – Spatial Sense:
C3. solve problems and create computational representations of mathematical situations using coding concepts and skills | ||
Specific Expectations for Grade 1 E1.2 construct three-dimensional objects, and identify two-dimensional shapes contained within structures and objects E1.4 describe the relative locations of objects or people, using positional language E1.5 give and follow directions for moving from one location to another | Specific Expectations for Grade 2 E1.2 compose and decompose two-dimensional shapes, and show that the area of a shape remains constant regardless of how its parts are rearranged E1.4 create and interpret simple maps of familiar places E1.5 describe the relative positions of several objects and the movements needed to get from one object to another | Specific Expectations for Grade 3 E1.2 compose and decompose various structures, and identify the two-dimensional shapes and three-dimensional objects that these structures contain E1.4 give and follow multi-step instructions involving movement from one location to another, including distances and half- and quarter-turn |
References:
Gadanidis, G., Brodie, I., Minniti, L., & Silver, B. (2017). Computer Coding in the K-8 Mathematics Curriculum. What Works: Research Into Practice.
Resnick, M., & Rusk, N. (2020). Coding at a crossroads. Communications of the ACM, 63(11), 120-127.