British Columbia · Registered home education · Math and code

Homeschool coding and math in British Columbia

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

Three courses BC home-schoolers start with

Typed Python for teens, a western Canadian Grade 12 math course, and a course that joins math and code for the middle years.

The law itself

What BC's School Act and School Regulation say about home education

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.

Home education in the BC School Act and School Regulation, quoted from bclaws.gov.bc.ca (read 22 October 2026)
WhereWhat the law says
School Act, Division 4The division is headed "Home Education".
School Act s.12A 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.

What this means for a coding and math plan

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.

Limits of this guide

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

Home education or online learning school: the line BC's law draws

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 for home education versus enrolled in a school program, from the School Act and Regulation (the right-hand column is our plain reading)
Registered under s.13 (home education)Enrolled (including an online learning school)Our plain reading
Who provides the programThe 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 roleOffers 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 dutySchool 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 coursesGrades 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

A weekly coding and math plan for a registered BC teen

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.

  1. Live session 1, math (60 minutes): one Foundations of Mathematics and Pre-calculus 10 idea, such as slope and rate of change, taught from examples and checked with a second method.
  2. Solo session A (30 minutes, next day): a practice set on that idea, marked by the teen against worked answers, with corrections written beside each error.
  3. Live session 2, coding (60 minutes): a Python program that uses the same idea, such as the Trail Profile below, written by the teen with the teacher reviewing each line.
  4. Solo session B (30 minutes): extend the program: a new input, a second statistic, or a test case that should break it.
  5. Solo session C (20 minutes, end of week): a short log entry: what was learned, one thing still unclear, and the file names of the week's work.
  6. Once or twice a term: ask the registering school about its evaluation and assessment services, which the Regulation says must be offered, to see progress against students of a similar age.

About three and a half hours

Two live hours and eighty solo minutes cover coding and math well for most teens.

One idea, two subjects

The math idea of the week becomes the coding project of the week.

A log, not a binder

A weekly log entry is enough to show what was done and when.

A project from our classes

Project: Trail Profile, climbing and slope in Python

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.

trail.py · our programpython
# 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.

What it printstext
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 %
  1. Spot the difference. Total climb is 410 m but the net change is 400 m. The 10 m dip between 1200 m and 1400 m has to be climbed again, so climb and net change are different quantities.
  2. Check the steepest stretch by hand. From 1000 m to 1200 m the trail rises from 340 m to 420 m: a rise of 80 over a run of 200, which is 40 percent.
  3. Graph it. Plot distance against elevation on paper. The steepest stretch is the steepest line segment, and the average grade, 22.2 percent, is the slope of the line joining the first and last points.
  4. Change the data. Add a reading so the trail ends lower than it starts, and predict what each line of output will say before running it.
  5. Go further. Grade 11 and 12 students can fit a line of best fit, or compute the angle of the steepest stretch with an inverse tangent.

Why this project fits BC

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.

The idea underneath

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

Home education in BC high school: courses, credits and online learning

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.

BC coding and math courses a home-educated teen might study or take for credit through a school (course names from curriculum.gov.bc.ca, verified on 22 October 2026)
AreaCourses named in the BC curriculumWhat the curriculum says
Coding (ADST)Computer Studies 10, Web Development 10, Computer Programming 11, Computer Programming 12Computer Programming 12 covers "higher-level structures, such as functions, methods, or classes"
Coding (Mathematics)Computer Science 11 and Computer Science 12Listed among the BC mathematics courses
MathFoundations of Mathematics 11, Pre-calculus 11, Pre-calculus 12, Calculus 12Listed among the BC mathematics courses

The online learning route, in the Regulation's words

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.

Where our classes fit

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

Math and computing contests for home-educated BC students

Two Canadian organisers of school math contests both work through schools first, but they handle students without a participating school differently.

How CEMC and the Canadian Mathematical Society handle entry (read 22 October 2026)
OrganiserWhat it saysWhat 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

Class times on BC's permanent clock

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

Four stages for a home-educated coder in BC

Our stages, used in the first class to place each learner fairly.

From reading code to writing it (ours)
StageWhat it looks like
1. ReadingFollows a short program and predicts what it prints
2. EditingChanges values and conditions in a working program and explains the effect
3. WritingWrites a program from a problem statement, with input, decisions and loops
4. StructuringOrganises larger programs with functions and tests, as Computer Programming 12 describes

For parents

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.

For teens

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

Nine courses for BC home education

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.

I

Primary years

About Kindergarten to Grade 5

HMB / PRI / 01

Early Math Foundations

Counting and shapes for ages 4 to 7.

Open the syllabus

HMB / PRI / 02

Mental Math for Kids

Number sense for ages 5 to 10.

Open the syllabus

HMB / PRI / 03

Scratch Coding

Visual programming, one block at a time.

Open the syllabus
II

Middle years

About Grades 6 to 9

HMB / MID / 03

Math Competitions

Harder problems for keen learners.

Open the syllabus
III

Graduation years

About Grades 10 to 12

HMB / GRAD / 01

Java for Teens

Classes and methods in a typed language.

Open the syllabus

HMB / GRAD / 02

Web Development for Teens

React and Node.js for teen builders.

Open the syllabus

How lessons run

How BC home-schoolers take our classes

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.

One idea, two subjects

Each math idea becomes a program.

Weekly logs

Short records of what was learned and when.

Your program

BC curriculum or your own, as you choose.

Real data

Trails, weather and tides as material.

All of BC

From the Island to the Kootenays.

Group or private

A group of fifteen to twenty, or private lessons.

Student work

Student work from our classes

Our learners build games, tools and websites. A few are below, and the student labs page holds the rest.

NutriLife AI nutrition coach project screenshot

AI and ML

NutriLife

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

by Bhavya · Open it

Misti AI chatbot for maths and coding screenshot

AI and ML

Misti

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

by Harshit · Open it

GuardianX AI internet safety assistant screenshot

AI and ML

GuardianX

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

by Vivaan · Open it

SkyCast weather forecast application screenshot

Web app

SkyCast

A weather forecasting site with live conditions for any location.

by Krish

Fees

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

  • A free first class
  • A short placement task
  • No card details
Book it

Group batch

$140 CAD

a month, eight live classes

  • Fifteen to twenty learners per batch
  • Learners grouped by age and stage
  • Daytime or weekend times
  • Charged monthly
Start here

One to one

$210 CAD

a month, eight live classes

  • A dedicated teacher
  • Fitted to your educational program
  • Projects built on real data
Enquire

What families say

Rated 4.9 across 547 Google reviews

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

Homeschool coding and math in BC: common questions

How do I register for home education in BC?

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.

Do I have to follow the BC curriculum when homeschooling?

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.

What does the school I register with have to provide?

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.

Is an online learning school the same as homeschooling in BC?

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.

Can a home-educated BC teen take courses for credit?

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.

Do your classes count as enrolment in a school?

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.

Can home-educated students in BC write math contests?

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.

How much coding and math is enough each week?

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.

When are classes for BC families?

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.

Is this page legal advice?

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

Related pages

Further reading for British Columbia.

Coding classes in British Columbia

Our main page for BC families.

Coding classes in Canada

Every page for Canadian learners.

Homeschool coding curriculum

A coding sequence for families teaching at home.

Homeschool computer science

High school computer science at home.

High school math compared

Pre-calculus 12 beside other provinces.

Coding curriculum by province

Where coding sits in each province.

CEMC Waterloo contests

Contest preparation from Grade 7 up.

Fermat Contest

The Waterloo contest for Grade 11.

How we teach

Inside a live class.

Start here

Book a free first class

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.

There is no fee and no card for the first class.

Want a class sooner? Book a priority demo

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

Keep exploring Modern Age Coders

More maths tuition

Learn more

From the blog

Start here

Free classPriority demoCall us