Where can a Manitoba student learn coding with a live teacher?
Manitoba students from Grade 1 to adult learn coding, Python and AI with Modern Age Coders in live online classes, either with a private teacher or in a group batch of fifteen to twenty. Typical starting points are Python and AI for Kids, Python for Teens and, for Grade 12, our Pre-Calculus companion. Classes run on Manitoba time and the first one is free.
Manitoba has had a provincial computer science framework since 2004, with three courses a school may offer in Senior 2, 3 and 4, and it leaves the programming language to the teacher and the class. That freedom is generous, and it means two Winnipeg schools can teach the same course in different languages, and a school may decide not to offer it at all. This page sets out what each course is meant to cover, in the department's words where they matter; the Grade 12 math tests on the 2026 to 2027 calendar; a Python project built on fish-stocking records the province publishes itself; and the clock change Manitoba is skipping this November.
Facts last verified 22 October 2026. Teaching is online; no Manitoba branch is claimed.
Matched to the stages of Manitoba schooling, from the early grades to the 40S year, and confirmed in a free first lesson.

A first typed language for children who are done with blocks: variables, loops, conditions and small games they can show at home.
See the syllabus
Python all the way to files and data, the same ground the 20S and 30S outlines cover, which suits schools that teach computer science in Python.
See the syllabus
Written for BC and Alberta, and close to Manitoba's Grade 12 Pre-Calculus: trigonometry, logarithms, transformations and counting. We map each lesson to the Manitoba outline.
See the syllabus
For students who like contests: original practice for the Canadian Computing Competition, in Python, Java or C++.
See the syllabusBrowse the course atlas for more than one hundred options and use the coding roadmap to check prerequisites.
The four we are known for
These run underneath everything above. Every one is live and online, placed by ability rather than by age, and the first class is free.

Python, web and AI projects where the learner still owns the thinking.
See the syllabus
Automate the work you already do, then let AI carry part of it.
See the syllabus
Train a model, read what it learned, and be able to say why it is wrong.
See the syllabus
Run AI coding agents on real work without losing control of the codebase.
See the syllabusA single 2004 framework from the department, now called Manitoba Education and Early Childhood Learning, covers Senior 2 (20S), Senior 3 (30S) and Senior 4 (40S) Computer Science. Quoted words below are the department's; the topic lists are taken from its suggested course outlines and shortened by us.
| Course | How the framework describes it | Programming topics in the outline |
|---|---|---|
| Senior 2 Computer Science (20S) | “This introductory course in computer programming is of interest to a broad audience.” | Variables and data types, input and output, debugging, branching and nested branching, definite and indefinite loops, built-in graphics, subprograms without parameters |
| Senior 3 Computer Science (30S) | “This course takes an in-depth look at problem solving through computer programming.” | Multiple branching, subprograms with parameters, strings, one-dimensional and parallel arrays, simple sorts |
| Senior 4 Computer Science (40S) | “This project-based computer programming course reflects the way projects are completed in industry.” | Files, one program in two languages, object-oriented programming, recursion, two-dimensional arrays, analyzing algorithms, sorting and searching, a team computer simulation |
The framework says it “does not prescribe a specific language” and that the teacher and students decide which modern languages to learn. In 40S, students are even asked to learn a new language on their own and to write one program in two different languages.
Schools may offer one, two or three full credits in computer science, and the framework sets no prerequisites. Where a school skips 20S, its outcomes move into 30S, and the same happens between 30S and 40S. The department's course code for all three is 0280.
The department is plain that “many of the computer science learning outcomes can be achieved only by programming a computer.” Students trace an algorithm by hand to confirm its logic, then program sorts, searches and a random number generator.
The framework replaced the older Computer Science 205 and 305 documents, and its age shows mostly in small things, such as the department's former name, Manitoba Education, Citizenship and Youth, on the cover. The ideas have not aged. Hand-tracing, two-dimensional arrays, recursion and comparing the efficiency of two sorts still separate a student who can type code from one who can reason about it, and in our view they remain the core of programming. The framework also notes that students are not required to create their own classes until S4, which tells a parent roughly when object-oriented programming arrives.
Our classes support a student taking 20S, 30S or 40S, or a student whose school does not offer them, and we do not grant Manitoba credits. Credits and marks come from the school. We are not connected with Manitoba Education and Early Childhood Learning or any school division.
Manitoba sets provincial tests at the end of each semester for the three main Grade 12 math courses. Dates are the department's 2026/27 schedule, read on 22 October 2026.
| Test | Semester 1 | Semester 2 |
|---|---|---|
| Grade 12 Applied Mathematics Achievement Test | Tuesday 26 January 2027 | Thursday 17 June 2027 |
| Grade 12 Essential Mathematics Achievement Test | Wednesday 27 January 2027 | Wednesday 16 June 2027 |
| Grade 12 Pre-Calculus Mathematics Achievement Test | Thursday 28 January 2027 | Tuesday 15 June 2027 |
The department says these tests count for 20 per cent of a student's final grade in Applied, Pre-Calculus or Essential Mathematics, and that they are marked locally by teachers using its marking guidelines. The schedule also names the courses at 40S, which places 40S in Grade 12; by the same pattern 30S is the Grade 11 level and 20S the Grade 10 level, though schools decide which grade takes each computer science course.
Grade 12 Pre-Calculus Mathematics carries course code 3939 and one credit. Its overview covers angles in standard position, the unit circle and six trigonometric ratios, transformations and inverses, logarithms, and permutations, combinations and the binomial expansion.
Manitoba also collects classroom results province-wide: Grade 3 reading and numeracy between 19 October and 27 November 2026, and Grade 7 mathematics between 18 January and 26 February 2027. These are formative, used to plan teaching rather than to grade.
For Pre-Calculus 40S we teach the topics in the order a Manitoba school does, with original practice written by us. We do not reproduce provincial test items; the department publishes its own archived tests and support documents.
The Manitoba government publishes its waterbody stocking records as open data, one row per stocking event back to 1917. Our students pull the whole file through the web service, group it in Python and then question it. Every figure below is our own count.
| Decade | Stocking events |
|---|---|
| 1910s | 1 |
| 1920s | 74 |
| 1930s | 216 |
| 1940s | 446 |
| 1950s | 768 |
| 1960s | 996 |
| 1970s | 1,121 |
| 1980s | 1,748 |
| 1990s | 2,287 |
| 2000s | 2,088 |
| 2010s | 1,925 |
| 2020s, to October 2026 | 1,210 |
Our script reads the seven saved pages and groups the events. It runs on Python 3 with no extra packages:import glob
import json
rows = []
for name in glob.glob("stocking/page-*.json"):
with open(name, encoding="utf-8") as f:
rows += [feature["attributes"] for feature in json.load(f)["features"]]
by_decade = {}
ids_for_name = {}
for row in rows:
decade = row["YEAR"] // 10 * 10
by_decade[decade] = by_decade.get(decade, 0) + 1
ids_for_name.setdefault(row["WATERBODY_NAME"], set()).add(row["WATERBODY_ID"])
print("events", len(rows))
for decade in sorted(by_decade):
print(decade, by_decade[decade])
shared = [n for n, ids in ids_for_name.items() if len(ids) > 1]
print("names", len(ids_for_name), "shared by 2+ waterbodies", len(shared))
The feature service hands back at most 2,000 records per request, so the 12,880 events arrive in seven pages, asked for with a growing resultOffset. Students check that the pages hold 12,880 distinct OBJECTID values, which proves no page was fetched twice.
Integer division turns a year into its decade, and a dictionary counts events per decade. The busiest single year in the file is 1994, with 291 events. By species, walleye leads with 4,404 events, ahead of rainbow trout at 3,408 and brook trout at 1,643.
There are 594 waterbody IDs but only 576 names, because 23 names belong to more than one lake or river. Gull Lake alone covers four separate waterbodies. A student who groups by name merges different lakes; grouping by WATERBODY_ID keeps them apart.
An event is one stocking, of any size, so more events in the 1990s does not mean more fish. We never add up the QUANTITY column, which the province describes as an approximate number of fish. And 2,930 events have no exact date, only a year, which is why the script groups by YEAR rather than DATE.
A good follow-up question for a Grade 11 or 12 student: the SIZE column holds 13 different labels, from Fry and Fingerling to 18+ cm, and includes 70 rows marked 0 and 3 marked SEE COMMENTS. How should those be cleaned before anyone charts fish size over time? Contains information from the Government of Manitoba, licensed under the OpenMB Information and Data Use License (Manitoba.ca/OpenMB). Data: Manitoba_Waterbody_Stocking_Records (see the stocking records on the Manitoba geoportal and the OpenMB licence). We wrote the script and made every count; the Manitoba government has not endorsed this page or our classes.
Manitoba students write the same University of Waterloo (CEMC) contests as students in Ontario, ordered by their school. These are the ones closest to the courses above, with CEMC's dates for North and South America.
| Student | Contest | Date |
|---|---|---|
| Up to Grade 10, no coding needed | Beaver Computing Challenge | 9 to 20 November 2026 |
| Any grade with some programming | Canadian Computing Competition, Junior or Senior | Wednesday 17 February 2027 |
| Grades 7 and 8 | Gauss math contest | 10 to 21 May 2027 |
The CCC fits Manitoba's courses closely. A student who has finished the 30S topics, strings, arrays and simple sorts, has the tools for the first Junior questions, and the 40S topics of recursion and searching lead into Senior. Participants choose C, C++, Python or Java, and CEMC does not let anyone register alone: a school orders the contest and the student writes it there, online. We prepare students with problems we write ourselves and point them to CEMC's free past contests; more is on our CCC Junior guide and CCC Senior guide. Modern Age Coders is independent of CEMC.
On 17 September 2026 the Manitoba government announced permanent daylight saving time. For families booking online classes, that makes the arithmetic easier, not harder.
| Period | Manitoba | Toronto | A 4:30 pm Manitoba class is, in India |
|---|---|---|---|
| Until 1 November 2026 | UTC-5 | UTC-4 | 3:00 am the next day |
| 1 November 2026 to 14 March 2027 | UTC-5, no change | UTC-5 | 3:00 am the next day |
| From 14 March 2027 | UTC-5, no change | UTC-4 | 3:00 am the next day |
The release said Manitobans' clocks will not revert to standard time on Nov. 1. The Official Time Amendment Act of 2023 already defines Manitoba Standard Time as five hours behind UTC, so the province simply stays at UTC-5 all year.
In winter Winnipeg and Toronto now show the same time. From 14 March 2027, when Ontario moves forward, Toronto is an hour ahead again. Every class time we send names Manitoba time, so no one has to work this out.
Numbers with the 204, 431 and 584 area codes all work in our form. Type the ten digits; the +1 country code is already set.
There is a coding lesson inside the news. A reminder program that stores Winnipeg as a fixed offset will be right this winter by luck, while one that relies on an out-of-date time zone database will move the class an hour on 1 November 2026. Our students compare both against the America/Winnipeg zone and see why software teams update time zone data instead of hard-coding it.
Grades are only a guide. The free class shows where a student should begin.
Sequences, repeats and stories built in blocks, with the child explaining each step aloud.
Coding for KidsScratch Coding for KidsPython with loops, conditions and functions, and a gentle first look at how AI makes guesses.
Python and AI for KidsAI Literacy for Kids (Ages 8 to 14)Python or Java taken properly, with arrays, strings and simple sorts before school asks for them.
Python for TeensJava for TeensRecursion, searching and machine learning, plus CCC preparation for students who want a contest.
AI and Machine Learning for TeensCCC Junior and Senior Preparation (Canadian Computing Competition)Manitoba's framework asks students to confirm an algorithm's logic by hand. That habit is the best protection against confident, wrong AI output.
An AI assistant will write a quicksort in seconds. It will not tell a student whether the version it wrote handles an empty list, or why grouping fish records by lake name quietly merges four different Gull Lakes. Those checks come from tracing code line by line, which is exactly what the 2004 framework asks for and what we practise in every class.
So students write the first version themselves, test it on small cases they worked out on paper, and only then compare it with what a tool suggests. Teenagers use AI tools within each tool's own age limits, and with a parent's consent wherever a tool asks for it. For children under 13 we skip the tools and build tiny guessing programs that show how AI makes a prediction.
A course with no prescribed language is a course about thinking, and thinking is the part no tool can do for the student. The longer argument is in is coding still worth learning in 2026.
Lessons are online, so a student in Thompson has the same teacher and the same class as a student in Winnipeg.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.
Winnipeg, Brandon, Steinbach, Winkler, Portage la Prairie or Thompson: wherever the student lives, the lesson is identical and the province keeps a single clock.
A group of fifteen to twenty at a similar level, or a private teacher when a student needs a faster pace or help with a 40S project.
Teachers plan in Manitoba grades and know where 20S, 30S, 40S and the January and June math tests fall in the year.
Because the framework leaves the language open, we teach in the one the school uses where we can, Python or Java, and bridge to the other.
The first lesson is a full class that ends with a recommended level, course and time, and costs nothing.
No Manitoba office
Modern Age Coders has no centre in Manitoba and claims none. Lessons are live on video with a teacher in India, and a student needs a computer with sound, a microphone and a dependable connection.
Each fee below shows its currency next to the number.
One full lesson free of charge, ending with a recommended level, course and weekly time.
The monthly fee for a place in a class of fifteen to twenty learners at one level.
The monthly fee for private lessons with one teacher, scheduled around the student.
Manitoba families are charged the same monthly fee as families in every other province. No payment is taken until the free lesson is over and the course and time are agreed; see the pricing page for holidays and missed classes.
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
The first task depends on the level: a looping pattern for a Grade 2 child, a guessing game for a Grade 6 student, or the stocking records for a 40S student who wants real data.
The questions Manitoba parents and students ask us before starting.
Yes. Every lesson is live on video with a teacher. There is no Manitoba classroom to visit; students log in from home and learn either in a shared class or with a teacher of their own.
Manitoba has a framework for Senior 2 (20S), Senior 3 (30S) and Senior 4 (40S) Computer Science, and schools may offer one, two or three of these full-credit courses. Whether a given school offers them is the school's choice.
The framework does not set one. The teacher and students decide which modern language to learn, and the 40S outline asks students to learn a new language on their own as well.
No. We do not grant Manitoba credits. Credits for 20S, 30S and 40S courses are earned at school; our classes run alongside them.
In 2026 to 2027 the department lists Thursday 28 January 2027 for semester 1 and Tuesday 15 June 2027 for semester 2. The tests count for 20 per cent of the final grade.
No. The Manitoba government announced that clocks will not go back on 1 November 2026, so Manitoba stays at UTC-5 all year. We confirm every class in Manitoba time.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.
Yes, through a school that orders it. The 2027 CCC is on Wednesday 17 February 2027, according to CEMC, and each student picks Junior or Senior by programming skill, not by grade.
Yes. Numbers with the 204, 431 and 584 area codes work. Enter all ten digits without the leading 1.
Around age 6, in Grade 1, with block coding. Most children move to typed Python between Grades 4 and 6, and adults can start at any point.
In the fees block on this page: the free first lesson, the monthly group fee and the monthly private fee, each with its currency. You pay nothing until after the free lesson.
2 pages for Manitoba towns and cities, each written for the families there.
The national page is coding classes in Canada, and our province-by-province curriculum guide sets Manitoba beside its neighbours. For time zones across the country after this year's changes, see Canada time zones in 2026; for contests, the contest calendar; for math help, online math tutoring in Canada.