HMB / PRI / 01
Early Math Foundations
Counting and shapes for ages 4 to 7.
Open the syllabusBritish Columbia · Registered home education · Math and code
In British Columbia, home education rests on a few short sections of the School Act and one section of the School Regulation. They set a date, 30 September each year, and a distinction that matters for every family: a child registered for home education is not the same as a child enrolled in a school program, including an online learning school. This page quotes the law on both, explains where coding and math fit, then sets out one week of study and a trail project we teach. Our coding and math classes sit inside the family's own program, and we do not grant provincial credits. Nothing on this page is legal advice: read the Act and Regulation yourself and ask the school you register with.
Teaching live online since 2020 · 10,000+ students · rated 4.9 across 547 Google reviews
In short
In BC, a parent may educate a child at home under the School Act and must register the child with a BC public or independent school on or before 30 September each year. That school must offer evaluation and assessment services and the loan of approved materials. Modern Age Coders runs live online coding and math classes for BC home-schoolers, one to one or in a batch, including its Python for Teens course.
Courses BC families use
Typed Python for teens, a western Canadian Grade 12 math course, and a course that joins math and code for the middle years.

HMB / 01
For teens aged 13 to 18. Input and output, decisions, loops, functions and projects: the constructs BC's Computer Programming courses describe.
Open the syllabus →
HMB / 02
Pre-calculus 12 content, taught live, for a teen aiming at science or engineering after Grade 12. No BC credit comes with it.
Open the syllabus →
HMB / 03
Ages 10 to 15. Patterns, data and probability built as small programs, for the years before high school.
Open the syllabus →The law itself
The ministry's homeschooling page on gov.bc.ca could not be read on 22 October 2026 (the connection was refused), so we went to the law itself on bclaws.gov.bc.ca, the King's Printer site. Both the Act and the Regulation were shown as current to October 13, 2026.
| Where | What the law says |
|---|---|
| School Act, Division 4 | The division is headed "Home Education". |
| School Act s.12 | A parent of a child of school age "(a) may educate the child at home or elsewhere in accordance with this Division, and (b) must provide that child with an educational program." |
| School Act s.13(1) | The parent "must register the child on or before September 30 in each year with (a) a school of the parent's choice that is operating in British Columbia", or with a francophone school where eligible, or "(c) an independent school operating in British Columbia." |
| School Act s.13(3) | "A school or francophone school that registers a child under this section must provide the child with access to educational services in accordance with the regulations." |
| School Regulation s.3(1) | The registering school "must offer (a) evaluation and assessment services sufficient to enable the parents of the child to determine the educational progress achieved by the child in relation to students of similar age and ability, and (b) the loan of educational resource materials that are authorized and recommended by the minister". |
| School Regulation s.3(2) | "With the permission of a board", a registered child "may audit educational programs offered by the board", on terms the board sets. |
The Act asks the parent to provide an educational program, and the Regulation gives the family a school whose evaluation services can show progress "in relation to students of similar age and ability". That is a useful outside check for math in particular.
The Act does not list subjects for home education. Families who want a structure can use the BC curriculum, which includes coding through Applied Design, Skills, and Technologies and through Computer Science 11 and 12 under Mathematics.
This summarises two pieces of BC legislation for families; it is not legal advice. The ministry's own guidance, which we could not reach, may add detail; please read it, and ask the school you register with how it applies the Regulation.
Modern Age Coders is not connected with the BC Ministry of Education and Child Care, any school district or any independent school. We teach classes; we do not register, assess or report on home education.
Sources: School Act, Part 2, School Act, Part 1 (definitions) and School Regulation, B.C. Reg. 265/89, read 22 October 2026. Always read the live text before relying on it.
Registered or enrolled
BC families searching for "BC homeschool programs" often find online learning schools, which are a different thing in law. The Act defines online learning as "a method of instruction that relies primarily on communication between students and teachers by means of the internet", and an online learning school as "a school or francophone school that offers instruction to its students through online learning only".
| Registered under s.13 (home education) | Enrolled (including an online learning school) | Our plain reading | |
|---|---|---|---|
| Who provides the program | The parent: s.12 says the parent "must provide that child with an educational program." | The school, whose teachers instruct the student, online or in person. | At home, you are the teacher of record; enrolled, the school is. |
| The school's role | Offers evaluation and assessment services and loans of approved materials (Regulation s.3(1)). | Delivers the full educational program. | Registration gives you support, not instruction. |
| The enrolment duty | School Act s.3(3)(b): the enrolment requirement "does not apply if the person ... is registered under section 13". | The student is enrolled. | One or the other, not both, for the same program. |
| Taking school courses | Grades 10 to 12 may take online learning courses and stay registered (s.3(3)); taking a board program not delivered online ends the registration (s.3(4)). | Courses are part of the enrolment. | For teens, the delivery method decides which side you are on. |
Where we sit: our classes are private lessons a family chooses as part of its own program. They are not a BC school, they are not an online learning school under the Act, and taking them does not enrol a child anywhere. A family that registers under section 13 and adds our coding and math classes is still a home-education family.
A sample week
Our own plan for a home-educated teen in about Grade 10, built from two live classes with us and three short solo sessions. It assumes the family also uses the registering school's evaluation services once or twice a term.
Two live hours and eighty solo minutes cover coding and math well for most teens.
The math idea of the week becomes the coding project of the week.
A weekly log entry is enough to show what was done and when.
A project from our classes
Our teachers wrote this project for teens learning at home in Grades 10 to 12. It takes elevation readings along a hiking trail and works out the total climb, the net change and the steepest stretch. The math is slope as rate of change; the code uses the constructs BC's Computer Programming 11 names: "input/output, logic, decision structure, and loops".
The data. Ten elevation readings taken every 200 m along a made-up trail, from 120 m to 520 m above sea level. One short stretch goes downhill.
# Our Trail Profile project: climb, descent and the steepest stretch (Grades 10 to 12 math with code)
step = 200 # metres walked between readings
heights = [120, 150, 210, 260, 270, 340, 420, 410, 470, 520] # elevation in metres
climb = 0
descent = 0
steepest_grade = 0
steepest_at = 0
for i in range(1, len(heights)):
rise = heights[i] - heights[i - 1]
if rise > 0:
climb += rise
else:
descent += -rise
grade = rise / step * 100 # percent grade = rise over run, times 100
if grade > steepest_grade:
steepest_grade = grade
steepest_at = i
distance = step * (len(heights) - 1)
print("Distance:", distance, "m")
print("Total climb:", climb, "m | total descent:", descent, "m")
print("Net change:", heights[-1] - heights[0], "m")
print("Average grade:", round((heights[-1] - heights[0]) / distance * 100, 1), "%")
print("Steepest stretch: from", (steepest_at - 1) * step, "m to", steepest_at * step,
"m at", steepest_grade, "%")Tested under Python 3 on 22 October 2026. Percent grade is rise divided by run, times 100, the way trail signs describe steepness.
Distance: 1800 m Total climb: 410 m | total descent: 10 m Net change: 400 m Average grade: 22.2 % Steepest stretch: from 1000 m to 1200 m at 40.0 %
Computer Programming 11 describes computational thinking as "decomposition, patterns and generalizations, abstraction, and algorithmic thinking". The project decomposes a trail into stretches, generalises one calculation to all of them, and keeps only the numbers that matter.
It also suits a province where many families walk steep trails; any real trail with elevation markers can supply new data.
Total climb and net change sound the same and are not, just as registered and enrolled sound similar and are not. Knowing which definition you are using is the lesson family behind this BC page.
Students who can say which quantity they computed, and why, have understood rate of change rather than memorised a formula.
Grades 10 to 12
For teens, the School Regulation opens one door that younger children do not have: online learning courses from a board or independent school while staying registered for home education. We do not grant provincial or high school credits; credit courses come from BC schools.
| Area | Courses named in the BC curriculum | What the curriculum says |
|---|---|---|
| Coding (ADST) | Computer Studies 10, Web Development 10, Computer Programming 11, Computer Programming 12 | Computer Programming 12 covers "higher-level structures, such as functions, methods, or classes" |
| Coding (Mathematics) | Computer Science 11 and Computer Science 12 | Listed among the BC mathematics courses |
| Math | Foundations of Mathematics 11, Pre-calculus 11, Pre-calculus 12, Calculus 12 | Listed among the BC mathematics courses |
School Regulation s.3(3): "A child in grade 10, 11 or 12 registered in a school, francophone school or independent school under section 13 of the Act may enroll in all or part of an educational program that is (a) offered by a board or an independent school, and (b) delivered through online learning."
Section 3(4) adds that enrolling in board programs not delivered through online learning means the child "ceases to be registered under section 13 (1) (a) of the Act and is enrolled as a student with the board." Ask the school before signing up for any course.
We teach the content: Python and Java to the depth Computer Programming 11 and 12 describe, and Pre-calculus 11 and 12 topics in math. Many teens take a credit course online through a school and use our classes to learn the material properly.
We do not grant provincial or high school credits, issue BC transcripts or replace a school course. What we offer is teaching.
Sources: School Regulation, B.C. Reg. 265/89, s.3; BC curriculum pages for ADST and Mathematics as recorded in our fact sheet (curriculum.gov.bc.ca could not be reached again on 22 October 2026, so no new curriculum text was added).
Contests
Two Canadian organisers of school math contests both work through schools first, but they handle students without a participating school differently.
| Organiser | What it says | What a home-educated student can do |
|---|---|---|
| CEMC (University of Waterloo): Gauss, Pascal, Cayley, Fermat, Euclid, Beaver, CCC | "only educators are permitted to request a CEMC School Account"; creating one "can take up to three weeks". | Ask a school, perhaps the one you register with, whether it orders the contest and would host the student. Ask early. |
| Canadian Mathematical Society: Canada Open Mathematics Challenge (COMC) | "Normally, all registration is done by teachers or school staff." An Independent Students route is "Only for students whose school is not participating." | The CMS says some university partners host an Open Writing Centre "for students whose schools are not participating through a teacher". The CMS says "The OWCs are In Person". |
The CMS set Thursday 22 October 2026 as the last day to register for the 2026 COMC, so for the next edition check the CMS page in the late summer. We help students prepare for both organisers' contests, but cannot enter a student or run a sitting. Our CEMC contests page and Fermat guide explain what the papers ask.
Sources: CEMC, How contests work and CMS, COMC, read 22 October 2026. Modern Age Coders has no connection with CEMC or the CMS.
Pacific time, all year
BC stopped changing its clocks in 2026, which simplifies a home-education timetable.
The BC government announced permanent, year-round daylight saving time after clocks moved forward on Sunday, March 8, 2026, which puts most of the province at UTC-7 all year. East Kootenay and Golden keep UTC-6, the same as Alberta. Eastern Canada still changes, so a class at 11:00 a.m. in Vancouver is 2:00 p.m. in Toronto during winter 2026 to 2027 and 3:00 p.m. there once Eastern clocks spring forward on 14 March 2027 (our own conversion, for families who share classes with relatives in the east). For home-educated students, weekday mornings in BC are open, so class times rarely clash with anything.
Where a learner starts
Our stages, used in the first class to place each learner fairly.
| Stage | What it looks like |
|---|---|
| 1. Reading | Follows a short program and predicts what it prints |
| 2. Editing | Changes values and conditions in a working program and explains the effect |
| 3. Writing | Writes a program from a problem statement, with input, decisions and loops |
| 4. Structuring | Organises larger programs with functions and tests, as Computer Programming 12 describes |
Stage 1 is underrated. A teen who predicts output correctly is thinking like a programmer before typing much at all.
The registering school's evaluation services and the teen's weekly log together give two views of progress.
Predict, then run. If you were wrong, that is where the learning is.
Keep your weekly log. It turns into a record you will be glad of.
The catalogue
Each one is live online with a teacher who stays with the class, one to one or in a group, on Pacific time or your own clock.
HMB / PRI / 01
Counting and shapes for ages 4 to 7.
Open the syllabusHMB / PRI / 02
Number sense for ages 5 to 10.
Open the syllabusHMB / PRI / 03
Visual programming, one block at a time.
Open the syllabusHMB / MID / 01
Ratio, integers and equations.
Open the syllabusHMB / MID / 02
From blocks to typed code.
Open the syllabusHMB / MID / 03
Harder problems for keen learners.
Open the syllabusHMB / GRAD / 01
Classes and methods in a typed language.
Open the syllabusHMB / GRAD / 02
React and Node.js for teen builders.
Open the syllabusHMB / GRAD / 03
Through calculus readiness.
Open the syllabusHow lessons 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
Mornings or early afternoons on Pacific time.
Weekends
Weekend mornings for families who keep weekdays busy.
1-on-1
A teacher who builds around your educational program.
Each math idea becomes a program.
Short records of what was learned and when.
BC curriculum or your own, as you choose.
Trails, weather and tides as material.
From the Island to the Kootenays.
A group of fifteen to twenty, or private lessons.
Student work
Our learners build games, tools and websites. A few are below, and the student labs page holds the rest.

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
A single monthly fee covers eight live classes with code review. Families are never tied to a school year with us: keep going month by month, or stop when your plan changes.
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
Reviews parents have left on Google, 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
Questions from BC families
The School Act says a parent must register the child on or before September 30 each year with a BC school of the parent's choice, a francophone school where eligible, or a BC independent school. Ask that school about its process.
The School Act asks the parent to provide an educational program but does not list subjects for home education. Many families use parts of the BC curriculum anyway. The ministry's guidance, which we could not reach today, may say more, so check it.
The School Regulation says it must offer evaluation and assessment services so parents can see progress compared with students of similar age and ability, and the loan of educational resource materials authorised and recommended by the minister.
No. The School Act defines online learning as instruction that relies primarily on internet communication between students and teachers. A student in an online learning school is enrolled, while a home-educated child is registered under section 13.
The Regulation says a registered child in Grade 10, 11 or 12 may enroll in all or part of a program delivered through online learning by a board or independent school. Enrolling in a non-online board program ends the home-education registration. We do not grant provincial credits.
No. Our classes are private lessons that a family adds to its own program. They are not a BC school or an online learning school, and they do not enrol a child anywhere.
CEMC contests run through schools, since only educators can open a CEMC school account. The Canadian Mathematical Society offers an Independent Students route for the COMC, with in-person Open Writing Centres hosted by some university partners.
There is no official figure. Our sample plan for a Grade 10 teen uses two live hours and about eighty minutes of solo work each week.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. Most of BC is on UTC-7 all year, so times stay fixed.
No. It quotes the School Act and School Regulation so families can find the text quickly. Read the official versions and ask the school you register with before deciding anything.
Elsewhere on this site
Further reading for British Columbia.
Our main page for BC families.
Every page for Canadian learners.
A coding sequence for families teaching at home.
High school computer science at home.
Pre-calculus 12 beside other provinces.
Where coding sits in each province.
Contest preparation from Grade 7 up.
The Waterloo contest for Grade 11.
Inside a live class.
Start here
The first class gives your child a short placement task in coding or math and ends with a suggested weekly plan. The teacher explains the result so you can record it in your own way.
Reading before booking? How we teach explains our classes, and the course list holds each full syllabus.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
Our teachers teach from India by live video, which is how one class reaches families from Prince George to Victoria. A WhatsApp message gets the quickest reply.
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