Skip to content
Ottawa, Ontario

Coding and AI classes in Ottawa

Who teaches coding and AI to Ottawa students live, with a real teacher?

Modern Age Coders teaches coding, Python and AI live online to Ottawa learners aged 6 to adult, either one to one or in a group of fifteen to twenty. Children usually start with Python and AI for Kids; teens move to AI and Machine Learning for Teens or our ICS3U and ICS4U companion. The first class is free.

Ottawa is a capital with a provincial border running through its middle. A student in Kanata or Orleans follows the Ontario curriculum, where code turns up in Grade 6 science, in MTH1W, the Grade 9 math course every student now takes, and in a newer Grade 10 technology course that names artificial intelligence. A student a bridge away in Gatineau follows Quebec's program instead, on the same clock. The city itself publishes its open data in English and French, side by side. This page uses all three facts: what Ontario schools ask an Ottawa student to code, what changes across the river, and a data project we built on the City of Ottawa parks file, where the most useful lesson is the moment the English and French columns disagree.

Facts last verified 22 October 2026. Teaching is online; no Ottawa branch is claimed.

Course picks for Ottawa

Where most Ottawa learners begin

Chosen against Ontario school stages, then confirmed against the student in the free first lesson, never assigned by age alone.

Browse the course atlas for more than one hundred options and use the coding roadmap to check prerequisites.

The four we are known for

Python, AI, vibe coding and agentic coding

These run underneath everything above. Every one is live and online, placed by ability rather than by age, and the first class is free.

Ottawa schools and code

Where code appears in an Ottawa student's Ontario timetable

Ottawa's public schools teach the Ontario curriculum. Each expectation below was read on 22 October 2026 through the data feed behind the Ontario curriculum website. The short quotations are the ministry's; everything else is our plain summary.

Four places code sits in Ontario courses an Ottawa student meets, with the year each document was issued. Short quotations from the Ontario Ministry of Education; summaries ours
Course or gradeYear issuedWhat it asks, in short
Grade 6 Science and Technology2022Expectation A2 has students “use coding in investigations” and to model concepts; A2.1 adds getting input in different ways, such as from a sensor or a user
Grade 9 math, MTH1W2021C2.2 asks students to build code by “decomposing situations into computational steps”, which is the habit every larger program depends on
Grade 10, ICD2O (Open)2023Programming fundamentals plus innovations “including automation and artificial intelligence”, weighed for both benefits and limits
ICS3U, then ICS4U (Grades 11, 12)2008Optional university-stream computer science; ICS4U builds on ICS3U, and each course is worth one credit

Read together, the rows describe a student who is asked to code in three different subjects before Grade 11 without ever taking a course called computer science. That is a good design and a thin one: the ideas are present, but a science unit or a math strand gives each child only a few hours at the keyboard. Our classes add the missing hours, and we spend them on the part school has least time for, which is building something big enough to break.

The Grade 9 math assessment

EQAO describes its Grade 9 math assessment as online, in two sessions of 54 questions in all, using a “multi-stage computer adaptive” model. The 2026 to 2027 window runs from 12 January to 5 February 2027, and EQAO says results count in the final course mark.

Computer studies and the diploma

For students who began Grade 9 in 2024 or later, ontario.ca lists one technological education credit among the compulsory ones and names computer studies as one option in a group of STEM choices. We stop there: the page does not say ICD2O fills the technology credit, so neither do we.

Phones and social media

PPM 128, in force since 1 September 2024, requires school boards to restrict access to social media platforms on school networks and devices. It is a fair reason to keep a coding class at home, on a laptop, away from the school day.

Beside school, never instead of it

We teach alongside a student's school courses and we do not grant Ontario credits; ICS3U, ICS4U, MTH1W and every other credit are earned at school. We are not connected with the Ontario Ministry of Education, EQAO, any Ottawa school board or the City of Ottawa.

Families who want the full provincial picture, including how the course codes chain together, can read our Ontario coding classes page and the Ontario computer science pathway. Grade 9 families will find more on MTH1W, and Grade 10 students on ICD2O.

Ottawa and Gatineau

One capital region, two school systems, one clock

Statistics Canada treats Ottawa and Gatineau as one census metropolitan area, which it names Ottawa - Gatineau and publishes in an Ontario part and a Quebec part. For a family choosing a class, three practical differences follow.

The capital itself

Section 16 of the Constitution Act, 1867 settles where Parliament sits: the Seat of Government of Canada shall be Ottawa. The city that holds that role still runs its schools under a provincial curriculum, like every other Canadian city.

Across the bridge

Quebec's secondary program runs from Secondary I to Secondary V, and students then usually go to CEGEP, where a pre-university program takes two years of full-time study. A Gatineau teenager of sixteen is placed by what they can do, not by the Ontario grade they would be in.

The same hour

Ontario and Quebec keep the same Eastern clock, so a class booked from Gatineau and one booked from Barrhaven start at the same moment. Both provinces move to UTC-5 on 1 November 2026 and back to UTC-4 on 14 March 2027.

Gatineau families with a student in Secondary IV or V can read our pages on Quebec Secondary 4 math options and Secondary 5 math, and students heading to college on preparing for CEGEP computer science. One honest line for every family on either bank: our teaching, our materials and our written feedback are in English.

Ottawa data project

Two languages, one parks file: an Ottawa data audit

The City of Ottawa publishes its Parks and Greenspace inventory as open data, with an English and a French version of most columns. Our students decode it, count it, and then check whether the two languages tell the same story. Every figure below is ours, from the file as downloaded on 22 October 2026.

Our count of the dogs-in-parks designation in the City of Ottawa Parks and Greenspace file (1,378 rows, one per park; downloaded 22 October 2026). The file stores a number; the labels come from the city's map service
Code in the fileWhat the code meansParks
4Not Designated (Dogs on Leash)631
1Dogs on Leash356
0Dogs Allowed (off-leash)175
3No Dogs119
2Mixed69
(blank)No code recorded28

The first surprise is that the CSV holds only digits in that column. The meaning of 0 to 4 lives in the city's map service, as a list the service calls a coded-value domain, and a student has to fetch that list before a single count makes sense. The script below carries the list as a Python dictionary, counts the parks, and then runs the audit. It needs nothing beyond Python 3 and the downloaded file in the same folder:import csv LABELS = { "0": "Dogs Allowed (off-leash)", "1": "Dogs on Leash", "2": "Mixed", "3": "No Dogs", "4": "Not Designated (Dogs on Leash)", } SWAPPED = {("Active Recreation", "Loisirs passifs"), ("Passive Recreation", "Loisirs dynamiques")} counts = {} type_clash = 0 dog_clash = 0 with open("parks-and-greenspace.csv", encoding="utf-8-sig") as parks: for row in csv.DictReader(parks): label = LABELS.get(row["DOG_DESIGNATION"], "(blank code)") counts[label] = counts.get(label, 0) + 1 if (row["PARK_TYPE"], row["PARK_TYPE_FR"]) in SWAPPED: type_clash += 1 if row["DOG_DESIGNATION"] != row["DOG_DESIGNATION_FR"]: dog_clash += 1 for label in sorted(counts, key=counts.get, reverse=True): print(label, counts[label]) print("English and French park type disagree:", type_clash) print("English and French dog code disagree:", dog_clash)

1. Decode before counting

A dictionary turns "4" into Not Designated (Dogs on Leash). Rows with no code at all fall through to the label we chose, (blank code), so 28 parks are reported as missing rather than silently dropped.

2. Compare the two languages

PARK_TYPE says Active Recreation or Passive Recreation; PARK_TYPE_FR should say Loisirs dynamiques or Loisirs passifs to match. On 36 rows the pair is crossed, 18 in each direction, so the English and French park type disagree.

3. Find the one that matters

The dog code is stored twice, once per language, and on exactly one park the English column says 1 (on leash) while the French says 3 (no dogs). A dog owner reading the French map and one reading the English map would get different instructions.

Our audit checks on the same file. Counts are rows of the City of Ottawa file; none of these totals is published by the city
CheckResult
Distinct PARK_ID values1,378, one per row
Wards named in WARD_NAME24
Wards with at least one off-leash park21; River ward has the most, 23
Park type crossed between English and French36 rows
Dog code different between English and French1 row
ACCESSIBLE written as yes/oui, no/non, blank269, 1,062 and 47

What the file does not tell you

A park coded on-leash can still keep dogs away from its play area: the city's detail text mentions play areas on 981 of the 987 parks coded 1 or 4, which the code alone cannot show. Nor does the file say which of two disagreeing columns is right. The honest finding is a list of 37 rows to report to the city, not a correction we invent.

We use the parks file under the Open Government Licence - City of Ottawa, which the city bases on version 2.0 of the federal licence and which permits commercial reuse with attribution. Contains information licensed under the Open Government Licence - City of Ottawa (licence, dataset page). The City of Ottawa has not endorsed this page or these classes.

Contests from Ottawa

CEMC contests for Ottawa students in 2026 to 2027, and the language each runs in

Most contests that Ottawa schools enter come from CEMC, the University of Waterloo's Centre for Education in Mathematics and Computing. In a bilingual region the language matters, so the table carries CEMC's own language note beside each date. CEMC gives separate dates by region; these are its dates for the Americas, checked on 22 October 2026.

Selected CEMC contests for 2026 to 2027, with the language CEMC lists for each (CEMC wording, read 22 October 2026)
ContestWho it is forLanguage CEMC listsDate
Beaver Computing ChallengeGrade 10 or below, at three levelsEnglish only9 to 20 November 2026
The CCC, Canada's national programming contestTwo levels, picked by skill rather than gradeEnglish and FrenchWednesday 17 February 2027
Pascal, Cayley and FermatGrades 9, 10 and 11 in turnSee each contest page23 and 24 February 2027
EuclidFinal year of secondary school, or CEGEP studentsSee the contest pageTuesday 6 April 2027

Entry goes through a school

In CEMC's words, all students must participate through their school, so nobody registers alone. A student whose own school stays out can ask another nearby school to host them, an option CEMC itself mentions.

The CCC in two languages

The 2027 CCC falls on Wednesday 17 February 2027, according to CEMC, which offers the paper in English and in French. It is written online at school, in C, C++, Python or Java. We coach for it in English.

Practise with the archive

The last ten years of CEMC papers can be downloaded free, without an account. Students use that archive for real papers, while our lessons run on problems we write ourselves, never on CEMC's.

The parks audit above is quiet CCC training. Reading a file line by line, mapping codes through a dictionary and comparing two fields are the moves of an early Junior problem; doing the same thing fast on a million rows is where Senior begins. Our CCC preparation page sets out both levels, and Waterloo contest preparation covers the math contests. Modern Age Coders has no tie to CEMC or to the University of Waterloo.

Class times

Ottawa time against India time, through the 2026 to 2027 school year

Our teachers work from India, which keeps one offset all year; Ottawa and Gatineau change twice. The example hours below are conversions to help a family judge a slot, not a timetable we sell.

Two example Ottawa hours shown in India time across 2026 to 2027. The conversions are ours; the offsets come from the 2026e release of the IANA time zone database
DatesOttawa offsetThursday 5 to 6 pm in Ottawa is, in IndiaSunday 10 to 11 am in Ottawa is, in India
Until 1 November 2026UTC-4Friday 2:30 to 3:30 amSunday 7:30 to 8:30 pm
After 1 November 2026, until 14 March 2027UTC-5Friday 3:30 to 4:30 amSunday 8:30 to 9:30 pm
14 March 2027 onwardUTC-4Friday 2:30 to 3:30 amSunday 7:30 to 8:30 pm

Written in Eastern time

Every class time we confirm is written in Ottawa's own time first. In the week of each change we send the time again, so a family on either side of the river never converts anything.

Ottawa and Gatineau numbers

Ottawa numbers use 343, 613 and 753; Gatineau numbers use 819, 873 and 468. All of them work in the form below as ten digits, with the +1 already filled in.

A clock exercise for teens

A Python reminder that adds a fixed four hours to UTC will be an hour wrong from 1 November 2026. Rewriting it with the America/Toronto zone, which covers Ottawa, is a short lesson in why dates are hard.

Learning ladder

From a first loop to ICS4U, MHF4U and machine learning

The grades are a guide. The free class sets the real starting rung.

Grades 1 to 3

Blocks and sequences

Short block programs a child can read aloud, with the order of steps as the first big idea.

Coding for KidsScratch Coding for Kids
Grades 4 to 8

Typed Python

Python by about Grade 5, with conditions, functions and input, ahead of the Grade 6 science expectation that asks for it.

Python and AI for KidsAI Literacy for Kids (Ages 8 to 14)
Grades 9 and 10

Python properly, and the CCC

Files, functions and data, algebra through code for MTH1W, and a first Junior CCC for students who want one.

Python for TeensCCC Junior and Senior Preparation (Canadian Computing Competition)
Grades 11 and 12

Credits at school, depth here

Support beside ICS3U and ICS4U, Grade 12 university math, and machine learning for future engineers and scientists.

Ontario Computer Science CompanionOntario Grade 12 University Math
Coding and AI

If an AI tool writes the script, what is left for an Ottawa student to learn?

The part where someone notices that the French column and the English column disagree.

Give an AI assistant the Ottawa parks file and ask for a count of off-leash parks, and you will get working code and a number. You will probably not be told that one park says on-leash in English and no dogs in French, or that 36 rows swap their park type between languages. The tool answered the question asked. Knowing which question to ask next is the skill.

That is why we teach students to reason first and type second: plan the steps, write the loop, then interrogate the output. As they get older they use AI tools within age rules we follow, and they use them to check and extend their own thinking, never to hand in someone else's.

Ontario put coding into science and math so that students learn to break a problem into steps; an AI tool can follow those steps, but only a student who understands them can tell when it has followed the wrong ones. The longer argument is in our essay on why writing code still pays off for a capital-region student.

Delivery

Live online classes for Ottawa, Gatineau and the valley

Because every class is online, a student in Stittsville and one in Hull can share a teacher without a bridge crossing.

When 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.

Group or one to one

A group of fifteen to twenty learners working at the same stage, or private lessons with one teacher for ICS4U projects, contest work or a quicker pace.

Two provinces, one class

Ontario students are placed by grade and course code, Quebec students by secondary level; both join the same live lesson when their level matches.

Taught in English

Lessons, code comments and written feedback are in English. Bilingual students are welcome; French-language teaching is something we do not offer.

What a student needs

A laptop or desktop with a microphone and a connection steady enough for video. Tablets struggle with typed code, so we ask for a keyboard.

The first class

A full lesson at no charge that ends with a suggested level, course and time. No card details are taken.

No Ottawa centre

Modern Age Coders has no office or classroom in Ottawa or Gatineau and claims none. Every lesson is taught live online from India.

Fees

Fees for Ottawa families

Each line shows the fee with its currency code, so there is no guessing.

First classFree

A complete live lesson, free, after which we suggest a level, a course and a time.

Group tuition$140 CAD

The monthly fee for a place in a group of fifteen to twenty learners at one level.

Private tuition$210 CAD

The monthly fee for one learner with one teacher, at hours the family picks.

An Ottawa family pays what a family in any other Canadian city pays. Nothing is charged until the free lesson is done and the course and time are agreed; the pricing page explains holidays and missed classes.

Reviews

What families and students say about us on Google

Rated 4.9 across 547 Google reviews. These are real reviews, reproduced as written.

★★★★★

"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

Free placement class

Tell us about your Ottawa learner

We match the first task to the level: a bouncing-ball animation for a young child, a number-guessing game in Python for a middle schooler, or the bilingual parks file for a teen who wants real data.

+1

FAQ

Ottawa coding and AI questions

What Ottawa and Gatineau families ask us before a first class.

Is there a coding class for kids in Ottawa that is taught live?

Yes. Our classes are live online with a real teacher, so a child in any Ottawa neighbourhood joins from home. We have no Ottawa building; we teach groups of fifteen to twenty or one to one.

Can a student from Gatineau join an Ottawa class?

Yes. Gatineau and Ottawa share the Eastern clock, so the class starts at the same moment on both banks. We place a Quebec student by secondary level and skill rather than by Ontario grade. Teaching is in English.

What coding do Ottawa schools already teach?

Under the Ontario curriculum, Grade 6 science asks students to use coding in investigations, the Grade 9 math course MTH1W uses code for algebra, ICD2O in Grade 10 covers programming and artificial intelligence, and ICS3U and ICS4U are optional computer science courses.

Does a class with you earn an Ontario credit?

It does not: credits such as ICS3U or ICS4U are earned at school, and we do not grant Ontario credits. Our companion course adds practice and projects alongside the school course.

Are there robotics classes for Ottawa students?

We teach the programming half of robotics, not robot hardware: Python, logic, sensors as data and debugging. A student who wants to build a physical robot should pair our classes with a school or community robotics team.

Which AI classes suit an Ottawa teenager?

AI and Machine Learning for Teens, after a solid start in Python. Under-18 students do not use tools rated 18 and over, such as Claude, and a teen using ChatGPT needs a parent's permission, so we plan lessons around that.

Do you run Python classes in Ottawa for adults?

Yes. Adults learn in their own groups or one to one, from a first program to working with real files and data. The Ottawa parks file on this page is a typical first data project.

Can you coach an Ottawa student for the CCC in French?

The contest itself is bilingual: CEMC offers the 2027 CCC, on Wednesday 17 February 2027, in English and French. Our coaching is in English, using problems we write ourselves in Python, C++ or Java, and the student writes the contest through their school.

When do Ottawa 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. We confirm every time in Eastern time and again when the clocks change.

Can I enter a 613 or 819 number in the form?

You can. Ottawa numbers with 343, 613 or 753 and Gatineau numbers with 819, 873 or 468 are all accepted. Enter the ten digits after the +1, which the form supplies.

How are fees shown to an Ottawa family?

Scroll to the fees section: it lists the free lesson first, then the monthly fee for a group place and for one-to-one teaching, each beside its currency code. Nothing is billed before the free lesson.

More for Canada

Other pages for Ottawa and Ontario students

Ontario-wide detail sits on our Ontario coding page, and the national overview on the Canada page. Families in the Toronto area have a page of their own. Students aiming at contests have CCC preparation, and for math support see online math tutoring for Canadian students.

Free classPriority demoCall us

Keep exploring Modern Age Coders

Coding classes in nearby places

Learn more

Free resources

From the blog

Start here