Scratch: Drag and drop pre-made blocks of code
EduBlocks: Drag and drop pre-made blocks but also edit Python script code.
Python or Spreadsheet: Coding is done entirely in a scripted language.
Begin by using a pre-made block of code or spreadsheet and having students enter different parameters.
Begin by using a pre-made section of code or spreadsheet and allow students to construct their own final project from it.
Have students create their own code or spreadsheet from start to finish.
The Coding expectation specifies that students "apply coding skills to represent mathematical concepts and relationships dynamically, and to solve problems, in algebra and across the other strands."
Specifically, students are to
C2.1 use coding to demonstrate an understanding of algebraic concepts including variables, parameters, equations, and inequalities
C2.2 create code by decomposing situations into computational steps in order to represent mathematical concepts and relationships, and to solve problems
C2.3 read code to predict its outcome, and alter code to adjust constraints, parameters, and outcomes to represent a similar or new mathematical situation
We have interpreted these expectations to mean that coding should be used and taught in service of learning about other mathematical concepts, including algebra.
Alter an existing program to perform different operations and test its accuracy in performing calculations with input values, using conditional statements.
Making a Simple Addition Program (TLDSB)
Note: This page has examples in Scratch, which we can use in WRDSB. The links to Python examples are done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Alter an existing program to make comparisons between unit rates of items - increase the number of items being compared or change the terms of the situation.
Comparing Unit Rates Program (TLDSB)
Note: This page has examples in Scratch, which we can use in WRDSB. The links to Python examples are done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Analyze and test code to simplify fractions. Alter code to accomplish more variations.
Create a program that takes two algebraic expressions and tests them to see if they are equivalent. Students will need to understanding like terms, unlike terms and operations between them.
Create a program that will solve an algebraic equation with changing coefficients. Students think through inverse operations as they design the program.
Consider combining this task with measurement problems (e.g., solving for the height of a cone, given its volume).
Example: Best Value for Pizza EduBlocks Code
Example: Best Value for Pizza Scratch
Example: Best Value for Pizza Python Code
Students alter code to generate the equation of a line given input valuses, in Scratch.
Slope and Y-Intercept (TLDSB)
Note: This page has examples in Scratch, which we can use in WRDSB. The links to Python examples are done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Students take provided data (or collected data) and use an appropriate tool to model the situation.
Consider this example of modelling basketball data from intermediate grades.
Consider this thinking about Mathematical Modelling.
Students design programs to determine measures (mean, median, mode, range, etc.) for a given (or changing) set of a data and analyze how changing one or more values affects these measures. It is ideal if this data is real-life or conextual.
Consider using a spreadsheet tool.
Consider this example of Coding and Data where Scratch is used.
Example Python Code for Mean and Median
Note: This page is done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Set parameters for students to create a budget for a hypothetical situation (perhaps a school initiative / event). Students can use a spreadsheet to program fields so that making modifications show immediate effects.
Creating a Budget Resources (TLDSB)
Note: This page has examples in Scratch, which we can use in WRDSB. The links to Python examples are done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
EduBlocks Example Code for Compound Interest
Specify a set of requirements (i.e., geomtric properties) to be met by the geometric design. Students use a program like Scratch to create a design that meets these requirements.
Example: We have 90 m of fencing, find the 4 sided shape that optimizes area.
Consider specifying requirements like a Menu Math task.
Consider some of these Coding Challenges for inspiration.
What happens to the volume (or surface area) of a figure when I change one, two or three dimensions? What patterns do you notice? Students could use a spreadsheet and learn how to use formulas to explore how changing the parameters may change these measurements.
Scratch Example Right Angled Triangle
EduBlocks Example Volume and SA of a Cube
EduBlocks Example Perimeter and Area Maximization
Note: This page has examples in Scratch, which we can use in WRDSB. The links to Python examples are done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Analyze and alter code to test if three numbers will create a right triangle.
Checking for Pythagorean Triples (WRDSB)
Coding Challenge: a growing list of challenges for teachers to try (examples are in Scratch) (Dave Lanovaz)
LearnX: resources and sample lessons for both Scratch and Python
TechThings.ca: YouTube Channel with video tutorials for creating programs in Scratch
Example Scratch Task: Plotting Points in Scratch
Allows you to code with blocks. Then look under the hood at the Python script driving the code.
Example Python Code: Creating a Table of Values for a Linear Relation
Example Python Task: Plotting a line
Note: This example was done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Note: This example was done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Note: This example was done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Note: This example was done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
OAME Coding Supports: a growing set of resources including sample tasks designed by Ontario educators
TLDSB Grade 9 Coding: full lessons and resources connected to MTH1W curriculum
Note: This page has examples in Sheets and Scratch, which we can use in WRDSB. The links to Python examples are done in Colab, which we do not have access to in WRDSB. We suggest using replit.com for Python coding. (Disclaimer: students have to make accounts and their work gets published to the web. Replit does have good privacy protocols. WRDSB teachers are encouraged to review apps using the Third Party App policy).
Computer Coding in the K–8 Mathematics Curriculum?: Ontario Ministry of Education resource
TVO Digital Learning Outreach: Coding in the Classroom (includes examples of tasks for intermediate grades that could be adapted for Grade 9 Mathematics)
Learning to Teach Coding: Ontario Tech Education (includes resources for K-12)