KC / MAKE / 01
Problem solving for kids
Logic and patterns, for ages 7 to 12.
Open the syllabusCanada · Coding for children · Ages 6 to 12
Most Canadian children meet code at school before a parent goes looking for a class. In Ontario it sits inside Grade 1 math; in British Columbia it appears in the design modules of Grades 6 and 7; Alberta's draft for Grades 7 to 9 brings in computer science. This page starts from what those provincial documents actually say, then shows how we place a child aged 6 to 12 in a live online class, what a ten year old can build with real city data, a set of puzzles to try at the kitchen table, and the contests open to Canadian children this school year.
Teaching live online since 2020 · 10,000+ students · children type and explain their own code
In short
Coding classes for kids in Canada teach children aged 6 to 12 to plan, build and fix their own programs, from blocks to typed Python by about age 10, alongside what Ontario, BC and Alberta schools already ask. Modern Age Coders teaches them live online, in a batch or one to one, in its Coding for Kids course.
Where most children start
One long course that grows with the child, one short Scratch course for a first taste, and the Python course for children ready to type.

KC / 01
Ages 6 to 12, batches grouped by age. Scratch first, then games, apps and a bridge into Python, over ten to twelve months with two live classes a week.
Open the syllabus →
KC / 02
Ages 6 to 12. Three to four months of Scratch from a first block to finished games, on the free Scratch editor.
Open the syllabus →
KC / 03
Ages 9 to 12. Typed Python from the first class: turtle drawings, small games and kid-safe AI projects.
Open the syllabus →What school already asks
Education belongs to each province, so a nine year old in Ottawa and a nine year old in Kamloops are on different plans. These are the lines we could read in each government's own documents on 22 October 2026. Where we could not reach a primary source, we say so rather than guess.
| Province | Where coding sits | What the document says |
|---|---|---|
| Ontario, Grade 1 | Math (2020), strand C, expectation C3.1 | Children solve problems "by writing and executing code, including code that involves sequential events". |
| Ontario, Grade 3 | Math, C3.1 | The code now involves "sequential, concurrent, and repeating events". |
| Ontario, Grade 5 | Math, C3.1 | Code with "conditional statements and other control structures". |
| Ontario, Grade 6 | Math, C3.1, and Science and Technology (2022) | Math asks for "efficient code"; science adds code "with a focus on obtaining input in different ways". |
| British Columbia, Grades 6 and 7 | Applied Design, Skills, and Technologies (ADST) | "a minimum of three modules" each year; the Grade 6 computational thinking module lists "visual programming", "for example, Kodu, Scratch". |
| Alberta, K to 6 | Renewed curriculum | New K to 6 mathematics "implemented in schools", filed under 2022/2023. |
| Alberta, Grades 7 to 9 (draft) | Renewed curriculum | Topics "like artificial intelligence, computer science and money management", "ahead of mandatory implementation in September 2027". |
| Other provinces and territories | Not verified | We could not read a primary page for elementary coding in the other provinces and territories that day, so we describe none. |
Read the Ontario lines top to bottom and a sequence appears: first a set of steps in order, then steps that repeat, then decisions, then a program judged on how well it is written. The curriculum asks children to read, change and write code at each stage, inside math class, not in a separate computer period.
For a parent the useful question is which rung the child is on now. A Grade 4 student who cannot yet predict what a loop will do is not ready for the Grade 6 idea of efficiency, whatever the report card says.
In the BC pages we read, coding shows up in a hands-on design module in Grades 6 and 7, where a child may build in a visual tool such as Kodu or Scratch. The ministry adds that "Schools may choose from among the modules listed below or develop new modules", so two BC children in the same grade can have very different years.
Alberta is mid-change. Its government says the new K to 6 math is in classrooms and that the draft for Grades 7 to 9 brings in computer science and artificial intelligence, with mandatory use planned for September 2027. A child now in Grade 4 or 5 in Calgary will meet that draft in junior high.
Sources: Ontario curriculum, elementary mathematics; BC curriculum, ADST 6; Alberta, curriculum: how we got here. All read 22 October 2026. Modern Age Coders is not connected with any ministry of education; our classes sit alongside school and replace no part of it. A fuller map is on our coding curriculum by province page.
Placing a child
Age is a starting guess, not a rule. Reading speed, patience with a mistake and comfort with a keyboard decide more than the birthday. This is how our teachers place a child in the first class; the stages are ours, not a ministry's.
| Age band | What the child works in | What a good month looks like | Signs to move on |
|---|---|---|---|
| 6 and 7 | Picture blocks and very short instructions, read aloud by the teacher | A character that walks, turns and says something, in an order the child chose | The child spots a block in the wrong place before pressing go |
| 8 and 9 | Scratch: events, loops, a score that changes | A small game with a rule the child invented, and one bug the child found alone | The child asks "what if two things happen at once?" |
| 10 to 12 | Typed Python, with the teacher beside them on screen | A program that reads a real file and answers a real question | The child can say what each line does before running it |
| Any age | Unplugged puzzles on paper | Sorting cards by a rule, tracing steps by hand | The child explains a rule in a full sentence |
A six year old can hold a sequence of steps in mind long before typing is comfortable. Blocks take spelling out of the way, so the lesson is about order and cause: this block runs, then this one, and the cat ends up in the wrong place because of that turn.
We keep sessions for the youngest short and busy, with the teacher reading every instruction aloud. A parent nearby helps, especially in the first month.
Blocks hide the moment a program is read as text, and that moment matters. By ten, most children can type a short line accurately, and Python lets them read the line back like a sentence: if the ground is soft and the child is little, then print the name.
The switch is gradual. For a few weeks the same idea is built twice, once in blocks and once typed, until the typed version feels like the quicker one.
A real data project
The City of Edmonton publishes a list of its playgrounds under an open licence that allows commercial use. We use it with children aged 10 to 12 to teach one idea properly: a computer can check several conditions at once, and the small word joining them changes everything. The program and every number below are ours, counted from the city's file downloaded on 22 October 2026.
The question the child answers: a family with a toddler who uses a wheelchair wants a playground with soft rubber ground. Which Edmonton playgrounds fit all three? The file has one row per playground, with columns such as Name, Surface Type, Accessibility, User Category and Neighbourhood Name.
| Column | What we found | Why it matters to a young coder |
|---|---|---|
| Rows | 662, every one with Type "Playground" | Big enough that nobody would check it by hand |
| User Category | 537 rows include "18 months", such as "Junior/Senior (18 months to 12 years)" | The age text is long, so the program looks for a piece of it |
| Accessibility | 358 say "Wheelchair Accessible"; 304 say "Unknown" | "Unknown" does not mean "no", and the child has to say so |
| Surface Type | Often a list, such as "Pour In Place Rubber, Sand"; 270 rows are "Sand" alone | A list cannot be matched with an exact equals sign |
| Spelling | One row writes "Pour in Place Rubber, Sand" with a small "in"; one writes "Engineered Wood Fiber" while 214 write "Fibre" | Real data is typed by people, and people are not consistent |
# Our playground picker (written by Modern Age Coders for this page)
import csv
found = 0
checked = 0
with open("edmonton-playgrounds.csv", encoding="utf-8-sig") as f:
for row in csv.DictReader(f):
checked += 1
surface = row["Surface Type"].lower() # "Pour in Place" and "Pour In Place" both become one spelling
little_kids = "18 months" in row["User Category"]
soft_ground = "rubber" in surface
wheelchair = row["Accessibility"] == "Wheelchair Accessible"
if little_kids and soft_ground and wheelchair:
found += 1
if found <= 3:
print(row["Name"], "-", row["Neighbourhood Name"])
print("checked", checked, "playgrounds")
print("matches", found)Hudson Park Playground - HUDSON Paisley Park - PAISLEY Mayfield Park Playground - MAYFIELD checked 662 playgrounds matches 155
Three conditions joined with and keep 155 of the 662 playgrounds. The program prints only the first three names so the screen stays readable.
| What the child wrote | Playgrounds kept | What went wrong |
|---|---|---|
| and between all three conditions (our program) | 155 | Nothing: every kept playground passes every check |
| Surface Type == "Pour In Place Rubber" | 56 | An equals sign wants the whole cell to match, so "Pour In Place Rubber, Sand" fails |
| little_kids or wheelchair | 622 | Or keeps a playground that passes either check, so nearly every row survives |
| "Pour In Place Rubber" in the surface, without .lower() | 150 instead of 151 for that phrase | The one row spelled with a small "in" quietly disappears |
Nobody types first. The teacher shows ten rows of the file on screen, and the children sort them by hand into "fits" and "does not fit", saying out loud which check each row failed. Only then do they write the three conditions, one per line, and name each one in plain words: little_kids, soft_ground, wheelchair.
Then they guess. Before running the program, each child writes down how many playgrounds they expect. Guesses are usually far off in one direction or the other, and the gap between guess and answer starts the liveliest conversation of the lesson.
"And means every check must pass; or means one is enough." "An equals sign is too strict when a cell holds a list." "Unknown is not the same as no." Three sentences, each tested against real numbers the child produced.
Those are the same ideas the Ontario Grade 5 expectation calls conditional statements, met here on a question a real Alberta family could ask.
Data: City of Edmonton Open Data, Playgrounds. Contains information licensed under the Open Government Licence, City of Edmonton. The licence allows use "including for commercial purposes". Counts, code and output are ours; the city does not endorse this page.
Try it at home
We wrote these for parents and children to do together, with no computer. Each one uses the same idea as the playground program. Answers follow the list; cover them first.
Answers. 1: two (4 red minus 2 with holes). 2: Monday and Tuesday, because each passes one check. 3: none, because no day passes both. 4: Ava only; Maya owes a book and Liam is under 8. 5: seven; count the 6 Canadian cards, then add only the goalie who is not already counted (3 goalies minus the 2 already in). 6: the or rule always keeps at least as many houses as the and rule, because every house that passes both checks also passes one of them.
Puzzle 5 is the one adults get wrong most often: adding 6 and 3 to make 9 counts two cards twice. It is the same mistake a program makes when it counts a playground once for each condition it passes.
Contests and clubs
A first contest is a good goal for a child who likes puzzles, as long as nobody treats it as an exam. CEMC, at the University of Waterloo, puts it plainly on its contest pages: "Our contests are not tests or exams. There is no passing or failing score."
| Contest or programme | Who it is for | What the organiser says |
|---|---|---|
| Beaver Computing Challenge, Grade 5/6 (CEMC) | "Students in Grade 6 or below" | "12 multiple-choice questions out of a total of 60"; "45 minutes"; questions "only require familiarity with concepts covered in the mathematics curriculum across all Canadian provinces" |
| BCC 2026 dates | Schools in North and South America | "Monday, November 9, 2026 to Friday, November 20, 2026"; schools order by "Monday, October 26, 2026" |
| BCC language | All levels | "This contest is available in English only." |
| BCC 2025 Grade 5/6 results | Last year's writers | 14 260 contestants, with a mean of 37.22 out of 60 |
| Problem of the Week (CEMC) | Grades 3 to 12, through a teacher | "e-mailed to educators for use with their students from Grades 3 to 12" |
| FIRST LEGO League (FIRST Robotics Canada) | Ages 4 to 14 | It "introduces STEM to children ages 4-14 through fun, exciting hands-on learning" |
Through a school only. CEMC says "all students must participate through their school", so a parent's first step is an email to the child's teacher or principal, well before the October ordering deadline. CEMC suggests another local school if the child's own does not take part.
The BCC needs no programming. Its multiple-choice puzzles, in CEMC's words, only ask for familiarity with the math every Canadian province teaches, so it suits a child who has done some coding and one who never has.
CEMC's 2025 table shows 14 260 children writing the Grade 5/6 paper with an average of 37.22 out of 60, which is about 62 percent (our arithmetic: 37.22 / 60). A typical child got most questions right and some wrong, which is the point of a well-made puzzle contest.
We prepare children with puzzles we write ourselves and send families to CEMC's free past contests for the real thing. We never copy CEMC's questions onto our pages.
Sources: CEMC, Beaver Computing Challenge, How contests work, Problem of the Week and FIRST Robotics Canada, read 22 October 2026. Modern Age Coders is not connected with CEMC or FIRST.
Thinking first
Our promise to families anywhere in the world is the same: we teach children to think through a problem and solve it, not to copy an answer from a video or an AI tool. For a child of 6 to 12 that promise has a very practical shape.
Before any program runs, the child says what it will do. A wrong prediction is the most useful thing that can happen in a lesson, because it shows exactly which idea is still fuzzy.
Every line a child writes, they can read back as a sentence. "If the ground is soft and the child is little" is a sentence; a line the child cannot say aloud is a line they do not own yet.
The teacher points to where a problem is, never types the fix. Finding the bug is the skill; the corrected program is only the receipt.
Mostly, they do not, and the companies say so. OpenAI's help centre states that "ChatGPT is not meant for children under 13", and Anthropic's terms require Claude users to be at least 18. Children in our classes write their own code with a teacher. Our courses never ask a child to open an account on a service that does not allow their age, and the youngest see AI tools only in demonstrations the teacher runs.
Children do learn what AI is: how a program can learn a rule from examples and where it goes wrong. That is taught with tools and exercises chosen for their age, and our separate page on AI classes for kids covers it.
A short note: what the child built, the idea underneath it, and one question to ask at dinner, such as "what does or do in your program?" A child who can answer that has learned something a screen recording cannot show.
Over a term the notes add up to a picture of how the child thinks, which matters more than the number of projects finished.
From Victoria to St. John's
Children join from every province, and since 2026 several provinces have stopped changing their clocks. We book times in the family's own zone and check them again whenever Eastern clocks move. No class time below is fixed; each family picks a slot.
| Families in | From 1 November 2026 | From 14 March 2027 |
|---|---|---|
| British Columbia (most of the province) and Yukon | UTC-7 | UTC-7: BC has kept one clock since 8 March 2026 |
| Alberta and Saskatchewan | UTC-6 | UTC-6, no change |
| Manitoba | UTC-5 | UTC-5, no change from 1 November 2026 |
| Ontario and Quebec, Eastern time | UTC-5 | UTC-4 |
| Nova Scotia, New Brunswick and Prince Edward Island, Atlantic time | UTC-4 | UTC-3 |
| Newfoundland time | UTC-3:30 | UTC-2:30 |
For younger children we favour weekend mornings and the hour straight after school, while attention is still fresh. A Saturday morning class in Winnipeg and one in Toronto sit at the same clock time all winter, since both are on UTC-5 from 1 November 2026; in summer Toronto moves an hour ahead. Our teachers work from India, so a weekend morning in Canada falls in the Indian evening, which is why those slots are easy to offer.
Four rungs
The steps we watch for, whatever the child's age. They are ours, used to place a child fairly.
| Rung | What it looks like |
|---|---|
| 1. Order | Puts steps in the right order and spots one that is out of place |
| 2. Repeat | Uses a loop instead of copying the same block five times |
| 3. Decide | Writes a rule with if, and can say what happens when it is false |
| 4. Combine | Joins conditions with and, or and not, and tests each on purpose |
A child can sit on one rung for a whole term and that is fine. Rushing to rung 4 makes children who type confidently and understand little.
If your child is in Ontario, rungs 1 to 3 line up roughly with the Grade 1 to Grade 5 coding lines in math.
Say what your program will do before you press run. If you are wrong, you just found out something.
When you are stuck, read your code aloud slowly. Bugs are shy; they come out when they are read.
More for children
Every course is taught live by a teacher, in a batch or one to one, for children in any province or territory.
KC / MAKE / 01
Logic and patterns, for ages 7 to 12.
Open the syllabusKC / MAKE / 02
Scratch, Roblox and Minecraft, ages 8 to 12.
Open the syllabusKC / MAKE / 03
From blocks to real code, ages 7 to 12.
Open the syllabusKC / BUILD / 01
Real apps built with blocks, ages 8 to 12.
Open the syllabusKC / BUILD / 02
Real websites, ages 9 to 12.
Open the syllabusKC / BUILD / 03
How AI learns and where it fails, ages 8 to 14.
Open the syllabusKC / TYPE / 01
Luau scripts in Roblox Studio, ages 8 to 14.
Open the syllabusKC / TYPE / 02
First real code and puzzles, ages 9 to 12.
Open the syllabusKC / TYPE / 03
Math learned in Python, ages 10 to 15.
Open the syllabusHow classes run
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.
Weekdays
Right after school, booked in your own province's time.
Weekends
Mornings, when younger children are at their sharpest.
1-on-1
A teacher for one child, paced to that child.
Six year olds and twelve year olds are never in one batch.
One regular teacher who learns how the child thinks.
Younger classes keep every few minutes active.
A few lines after each class, in plain words.
Scratch first; typed code when the child is ready.
Fifteen to twenty in a batch, or one child alone.
Student work
Our younger students start with small games and grow into projects like these. The student labs page shows more.

AI and ML
An AI nutrition coach that reads what you eat and works you toward a target.

AI and ML
A chatbot that answers mathematics and programming questions, built and deployed by a student.

AI and ML
An assistant that helps a young person recognise unsafe situations online.

Web app
A weather forecasting site with live conditions for any location.
Fees
One monthly fee covers eight live classes. Families pay a month at a time and can stop between months, so a child who loses interest costs nothing more.
Free first class
Free
no card required
Group batch
$140 CAD
a month, eight live classes
One to one
$210 CAD
a month, eight live classes
What families say
Google reviews left by parents and students, unedited.
★★★★★
"The one step solution for my son. Modern Age Coders make learning coding so simple that kids love it. The teachers explain complex concepts clearly with practical exercises and interactive content."
Ria Mukherjee
Parent
★★★★★
"Modern Age Coders has been a game-changer for me. I struggled to grasp IT concepts and coding before joining, but their classes transformed everything. I can now confidently write complex programs with ease."
Samriddha Mondal
Student
★★★★★
"One of the most wonderful education centres out there. Education is not limited to school syllabus but focuses on skill development."
Vansh Agarwal
Student
★★★★★
"My child Dhairya is really enjoying the Modern Age Coders classes. This is his first online class and he eagerly looks forward to it. I can already see his improvement, and the teachers are very cooperative."
Sonam Oswal
Parent of Dhairya
★★★★★
"Modern Age Coders have wonderful teachers who teach in a clear, easy and practical way. The teacher boosts students' confidence and inspires them to learn without hesitation."
Sonu Goyal
Parent
★★★★★
"I highly recommend this computer coding class! The teachers are incredibly knowledgeable and passionate about coding."
Ritu Kedia
Parent
Parents in Canada ask
Our Coding for Kids and Scratch courses take children from age 6, grouped by age. The youngest work in picture blocks with the teacher reading instructions aloud. Most children move to typed Python at about 10.
It depends on the province. Ontario puts coding in elementary math from Grade 1, under expectation C3.1. British Columbia has design modules in Grades 6 and 7 that can include visual programming such as Kodu or Scratch. Alberta's draft curriculum for Grades 7 to 9 adds computer science and AI.
Scratch for most children under 9, because blocks take typing and spelling out of the way. Python from about 10, when a child can type a line accurately and read it back. Our teachers place each child in the first class rather than by age alone.
They sit alongside it. For Ontario children we know which coding lines in math each grade meets, and we teach the same ideas in more depth. We are not connected with any ministry and do not replace school coding.
Yes, with a short, busy session and a parent close by for the first few weeks. Six and seven year olds are grouped together, and the teacher keeps the instructions spoken and simple.
A short puzzle contest run by CEMC at the University of Waterloo. The Grade 5/6 level is for students in Grade 6 or below: 12 multiple-choice questions out of 60 in 45 minutes. It needs no programming, and children enter through their school.
Not on accounts of their own. OpenAI says ChatGPT is not meant for children under 13, and Claude requires users to be 18 or older. Our courses never ask a child to sign up for a service that does not allow their age; children write and explain their own code and learn how AI works through teacher-run demonstrations and exercises.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. We book every class in your own province's time zone.
A batch has fifteen to twenty children of a similar age with one regular teacher. One-to-one classes are also available for a child who wants a teacher to themselves.
In the first months, small Scratch games with rules the child invents. Older children build programs that answer real questions, such as our Edmonton playground picker, which reads the city's open data and keeps the playgrounds that pass three checks.
Elsewhere on this site
More for Canadian families with children who like to make things.
Every page we have for families across the country.
Where coding sits in each provincial curriculum.
For families in Ontario.
For families in BC.
For families in Alberta.
Our Scratch teaching in depth.
What typed code looks like at ten.
How children can learn what AI is.
Breaking a problem into steps.
Start here
The first class is a short, friendly lesson with one of our teachers: a small puzzle, a few blocks or a few typed lines, depending on age. By the end the teacher can tell you which rung your child is on and which course fits.
Want to look around first? How we teach walks through a live lesson, and the full course list has every syllabus.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
Classes are live over video with teachers based in India, so there is nothing to drive to in any province. WhatsApp reaches us fastest.
A priority demo is a full class of about 45 to 60 minutes. After the class the mentor sends a written skill report and a personal learning roadmap on WhatsApp. If you enrol, the demo fee is adjusted against your first month's fee. Share your demo Order ID with us on WhatsApp and we take it off.
Book a priority demo