Skip to content
Home/Canada/Saskatchewan
Saskatchewan, Canada

Coding classes in Saskatchewan

Who teaches coding live to Saskatchewan students, beyond what school offers?

Modern Age Coders runs live online coding, Python and AI classes for Saskatchewan learners aged 6 to adult, in a group batch of fifteen to twenty or with a private teacher. Children usually begin with Python and AI for Kids, teens with Python for Teens, and Grade 12 students add our Pre-Calculus companion. Times follow Saskatchewan's year-round clock, and the first class is free.

Saskatchewan publishes its two computer science courses outcome by outcome. Computer Science 20 and Computer Science 30 sit with the sciences in the Ministry of Education's curriculum, the language is the teacher's choice, and Python heads the list of languages the ministry's guide suggests. Where a school runs them, a single semester leaves little time for the large project the outcomes describe. This page lists what the two courses ask for in the ministry's words, sets out the senior math courses beside them, walks through a Python project on the province's parks data, and explains the bill that would write Saskatchewan's single clock into a new Time Act.

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

Course picks for Saskatchewan

Four places Saskatchewan students start

Chosen around Computer Science 20 and 30 and the Grade 12 math year, then checked against the student in the free first lesson.

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.

Computer science in Saskatchewan schools

Computer Science 20 and 30, outcome by outcome

Saskatchewan's curriculum site publishes every outcome for both courses. We read them on 22 October 2026; quoted outcomes are the ministry's wording, the right-hand column is our plain reading.

Selected Computer Science 20 and 30 outcomes, Saskatchewan Ministry of Education (quoted from curriculum.gov.sk.ca; the explanations are ours)
OutcomeMinistry wordingIn practice
CS20-FP1“Utilize different data types, including integer, floating point, Boolean and string, to solve programming problems.”Knowing why 0.1 + 0.2 is not exactly 0.3, and when to use text instead of a number
CS20-FP3“Construct and utilize functions to create reusable pieces of code.”Writing a function once and calling it everywhere, the first real step toward clean code
CS20-FP4“Investigate one-dimensional arrays and their applications.”Lists of values, looping over them and finding the largest or the average
CS20-CS2“Investigate the impacts of information technologies on privacy, including digital security practices.”Passwords, permissions and what an app can learn about its user
CS30-FP2“Create programs that utilize external files.”Reading a data file, such as the parks file on this page, instead of typing values in
CS30-CC1“Explore recursion and investigate sorting algorithms.”Functions that call themselves, and why some sorts are far faster than others
CS30-CC2“Explore number systems and character encoding used in computing.”Binary, hexadecimal and how a letter becomes a number
CS30-CAP1“Create a large-scale computer program to demonstrate proficiency in procedural or object-oriented programming.”The capstone: one big program, planned, built and documented

The teacher picks the language

The ministry's January 2018 guide says the choice of language for both courses is left to individual teachers. Its suggestions for Computer Science 20 are Python, Java, PHP, JavaScript and Visual Basic; for Computer Science 30 it lists Python, Processing, Java, PHP and JavaScript.

Blocks only to begin

Blockly and Scratch are suggested as a starting environment, but the guide says a visual tool should not be the core language of Computer Science 20, and that students should start coding as soon as possible. It even suggests a Karel the Robot style language as the bridge.

Four ways of thinking

The guide names four dimensions of computational thinking: decomposition, pattern recognition, abstraction and algorithm design. They are the habits we teach from the first class, long before a student meets either course.

Computer Science 20 has five goals, from core principles and programming fundamentals to computing and society, career exploration and a student-directed project. The last one is the most demanding: outcome CS20-SD1 asks students to develop a coding project or research a topic of their own choice. A student who arrives in Computer Science 20 already comfortable with functions and lists can spend that project on something ambitious, rather than on learning syntax in the last weeks of the semester.

Our place beside the school course

Our classes run alongside Computer Science 20, Computer Science 30 and the math courses, and we do not grant Saskatchewan credits. Credits are earned at school. We are not connected with the Saskatchewan Ministry of Education or any school division.

Senior math in Saskatchewan

Pre-Calculus 30 and Calculus 30, and how they meet programming

The same curriculum site lists the senior math courses: Foundations of Mathematics, Pre-Calculus, Workplace and Apprenticeship Mathematics, and Calculus 30. Two of them matter most to students heading for computer science or engineering.

Selected Pre-Calculus 30 and Calculus 30 outcomes (Saskatchewan Ministry of Education, curriculum.gov.sk.ca; groupings ours)
CourseOutcomesWhat the outcomes cover
Pre-Calculus 30P30.1 to P30.5Angles in degrees and radians, the unit circle and six trigonometric ratios, trigonometric graphs, equations and identities
Pre-Calculus 30P30.6 to P30.11Operations on and compositions of functions, transformations, inverses, logarithms, polynomials up to degree 5, radical and rational functions
Pre-Calculus 30P30.12 and P30.13Permutations with the fundamental counting principle, combinations and the binomial theorem
Calculus 30C30.3 to C30.6Limits and continuity, differentiation as a rate of change, curve sketching, optimization and related rates

Counting is where Pre-Calculus 30 and Computer Science 30 overlap most. P30.12 asks students to demonstrate understanding of permutations, including the fundamental counting principle, and a short recursive function that lists every arrangement of four letters makes the formula visible: 24 arrangements, printed one by one. We use exactly that exercise in our own classes, written by us, to connect the two courses.

Logarithms in code

P30.9 covers evaluating logarithms, laws of logarithms and solving equations. A binary search that halves a sorted list each step finishes in about log base 2 of n steps, which turns an abstract outcome into a number a student can measure.

Calculus 30

Calculus 30 adds limits, derivatives and their applications. Students who write a few lines of Python to estimate a slope from shrinking intervals see what a limit is doing before they are asked to prove anything about it.

How we help

Our Pre-Calculus support follows the P30 outcome order a Saskatchewan school uses, with practice sets written by us. We do not reproduce school or ministry assessments.

Saskatchewan data project

How big is a typical Saskatchewan park? Mean and median on the province's own file

The Government of Saskatchewan publishes its parks boundaries on GeoHub. Our students download the 172 records, convert the areas to square kilometres and find that the average tells a misleading story. All the figures here are ours.

Our calculation on Saskatchewan Parks Boundaries, queried 22 October 2026: area per park type in square kilometres (area as computed by the province's map service; our conversion and rounding)
PARKTYPE in the fileRowsMean areaMedian area
RS, recreation site1043.220.58
PA, protected area242.370.49
PP-N, natural environment provincial park12583.02235.42
PP-R, recreation provincial park1124.275.73
PP-H, historic provincial park90.400.13
HS, historic site80.020.01
PP-W, wilderness provincial park41,207.501,151.70
All 172 rows17272.610.61

This short script produces the table from the downloaded file, using only Python 3 and its built-in statistics module:import json import statistics with open("parks.json", encoding="utf-8") as f: parks = [feature["attributes"] for feature in json.load(f)["features"]] by_type = {} for park in parks: km2 = park["Shape__Area"] / 1_000_000 by_type.setdefault(park["PARKTYPE"], []).append(km2) for kind, areas in sorted(by_type.items(), key=lambda p: len(p[1]), reverse=True): print(kind, len(areas), "mean", round(statistics.mean(areas), 2), "median", round(statistics.median(areas), 2)) every = [a for areas in by_type.values() for a in areas] print("all", len(every), "mean", round(statistics.mean(every), 2), "median", round(statistics.median(every), 2))

1. Convert the units

The Shape__Area field is in square metres, because the service stores the boundaries in a metric map projection. Dividing by 1,000,000 gives square kilometres. Writing the divisor as 1_000_000 lets Python read it while a person can still count the zeros.

2. Mean against median

Across all 172 rows the mean is 72.61 km2 but the median is 0.61 km2. A few huge northern parks pull the mean up: Lac La Ronge Provincial Park alone is about 3,191.9 km2, while 99 of the 172 rows are under 1 km2. The median is the honest answer to how big a typical park is.

3. Check the labels

The dataset description lists protected areas as PR, but the file itself uses PA for those 24 rows. A careful student trusts the data over the description, then writes the mismatch down so the next reader is not caught out.

What the numbers leave out

Areas come from the service's map projection, so treat the second decimal as approximate. The description says the boundaries were last updated on 22 September 2021, so a park created since then may be missing. And a park's area says nothing about how many people visit it or what it offers.

For a stronger student the next step is a chart: a histogram of park areas on a normal scale is one tall bar and a long empty tail, while the same data on a logarithmic scale spreads out neatly, which ties straight back to the logarithms of Pre-Calculus 30. Contains information licensed under the Government of Saskatchewan Standard Unrestricted Use Data Licence (Version 2.0). Data: Saskatchewan Parks Boundaries, Saskatchewan Ministry of Parks, Culture and Sport, on the Saskatchewan GeoHub (licence). The calculations and script are ours; the Government of Saskatchewan does not endorse this page.

Contests from Saskatchewan

Math and computing contests a Saskatchewan school can order for 2027

The University of Waterloo's CEMC sets contests that schools anywhere in Canada can order for their students. The winter and spring 2027 dates below are CEMC's, read on 22 October 2026.

CEMC contests in 2027 for Saskatchewan students (grades and dates as listed by CEMC)
ContestWho it is forCEMC date
Canadian Computing Competition (CCC)Junior or Senior, chosen by programming skillWednesday 17 February 2027
Pascal, Cayley and FermatGrades 9, 10 and 1123 and 24 February 2027
EuclidFinal year of secondary schoolTuesday 6 April 2027
GaussGrades 7 and 810 to 21 May 2027

Entry runs through a school, never through an individual sign-up, so the first step is asking a teacher whether the school will place an order; CEMC also allows a student to join another local school that is taking part. The CCC accepts C, C++, Python and Java, which suits a student whose Computer Science 20 class used Python or Java. CEMC's past contests are free to read, and we teach from original problems we write rather than copying CEMC's. Our Pascal, Euclid and Gauss pages go deeper. Modern Age Coders and CEMC are not connected.

Class times

Saskatchewan's one clock, and the Time Act, 2026 bill

Saskatchewan does not change its clocks, and the time zone database has it at UTC-6 through the year. Neighbouring provinces changed in 2026, which matters for anyone scheduling across the Prairies.

Prairie and India clocks from 1 November 2026 (offsets from IANA tzdb 2026e and provincial time laws; the example times and conversions are ours)
PlaceOffset all yearA 4 pm class in Saskatchewan is, thereSame moment in India
SaskatchewanUTC-64:00 pm3:30 am the next day
AlbertaUTC-64:00 pm3:30 am the next day
ManitobaUTC-55:00 pm3:30 am the next day

The bill as printed

Bill No. 58, The Time Act, 2026, defines central standard time as UTC-6 hours and says Saskatchewan includes the City of Lloydminster. Its last section says it comes into force by order of the Lieutenant Governor in Council, and the assent line on the copy we read is blank, so we treat it as a bill, not yet as law in force.

A shared Prairie clock

With Alberta at UTC-6 all year and Manitoba at UTC-5 all year from November 2026, Regina and Calgary now always read the same time and Winnipeg is always an hour ahead. Saskatoon families can schedule with Alberta relatives without a seasonal adjustment.

Phone numbers

Saskatchewan numbers with the 306, 474 and 639 area codes work in our booking form. Enter the ten digits; the +1 is supplied.

For our teachers in India, a Saskatchewan class is the simplest in Canada to plan: India is eleven and a half hours ahead every week of the year. A Saturday class at 9 am in Regina is 8:30 pm the same day in India, all year, which is why weekend mornings are a comfortable fit. We still write every confirmation in Saskatchewan time.

Learning ladder

From first blocks to the Computer Science 30 capstone

Grades are a starting guess; the free class decides the real starting point.

Grades 1 to 3

Blocks and puzzles

Blockly-style and Scratch projects where the child plans each step before running it.

Coding for KidsScratch Coding for Kids
Grades 4 to 8

Into Python

Typed Python with loops and functions, and plain-language lessons on how AI systems learn from examples.

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

Ahead of Computer Science 20

Data types, functions and lists in Python or Java, so the CS20 project can be ambitious.

Python for TeensJava for Teens
Grades 11 and 12

CS30, AI and contests

Files, recursion and a large program, then machine learning and CCC practice for those who want it.

AI and Machine Learning for TeensCCC Junior and Senior Preparation (Canadian Computing Competition)
Coding and AI

A mean is easy to compute and easy to misread. So is AI output

The parks project shows the habit we care about most: checking whether a correct-looking number answers the question asked.

Ask an AI tool for the average size of a Saskatchewan park and it may compute 72.61 km2 correctly and still mislead, because the typical park is under a square kilometre. Spotting that takes a student who knows what a mean and a median do, and who looks at the data before trusting a summary of it.

Our students write their own analysis first, then compare it with what a tool produces, and explain any difference. Teens use AI tools only within each provider's age rules, with parental permission where a provider requires it; younger children learn how AI predicts things by building small programs, not by using adult tools.

Computer Science 20 lists privacy and the impact of technology among its outcomes; judging AI output is the newest part of that same job. The longer argument is in is coding still worth learning in 2026.

Delivery

Live online for Saskatoon, Regina and everywhere between

Every class is live with a teacher on video, so distance from a city makes no difference to what a student can take.

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.

Around the province

A learner in Saskatoon, Regina, Prince Albert, Moose Jaw, Swift Current, Yorkton or North Battleford can sit in the same class, on the same Saskatchewan time.

Two formats

A group batch of fifteen to twenty students at one level, or a private teacher for a student who wants a faster pace or help on the CS30 capstone.

Saskatchewan courses

Teachers plan around Computer Science 20 and 30, Pre-Calculus 30 and Calculus 30, and know where each sits in the semester.

School languages

Python is our default, as it heads the ministry's suggested list. Students whose school uses Java or JavaScript can learn in that language instead.

Start free

The first class is a full lesson, free, ending with a recommended level, course and time.

No Saskatchewan office

Modern Age Coders has no centre in Saskatchewan and claims none. Teaching is live and online from India, and a student needs a computer with a microphone, speakers and a steady internet connection.

Fees

What classes cost in Saskatchewan

The currency appears next to each fee, so nothing has to be converted by hand.

First classFree

A full live lesson that costs nothing and ends with a recommended level, course and time.

Group tuition$140 CAD

The monthly fee for a seat in a group batch of fifteen to twenty students at one level.

Private tuition$210 CAD

The monthly fee for one-to-one teaching on a schedule built around the student.

Saskatchewan families pay the same monthly fee as families elsewhere in Canada. We bill only after the free lesson, once the course and the time are fixed; the pricing page covers 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 Saskatchewan student

We choose the first task by level: a block-coding maze for Grade 2, a Python quiz game for Grade 6, or the parks file for a Computer Science 20 student who wants real data.

+1

FAQ

Saskatchewan coding questions

Questions Saskatchewan families send us most often.

Do you teach coding to students in Saskatchewan?

Yes, live and online, from Grade 1 to adult. There is no Saskatchewan classroom; students join from home, in a group batch of fifteen to twenty or with a private teacher.

Does Saskatchewan have high school computer science courses?

Yes. The Ministry of Education publishes Computer Science 20 and Computer Science 30, filed with the science courses. Whether a particular school offers them is up to that school.

What programming language is used in Computer Science 20?

The teacher chooses. The ministry suggests Python, Java, PHP, JavaScript or Visual Basic for Computer Science 20, and says block tools such as Scratch should not be the core language.

Do your classes give Saskatchewan credits?

No. We do not grant Saskatchewan credits. Credits for Computer Science 20, Computer Science 30 and math courses come from the school; we teach alongside them.

Can you help with Pre-Calculus 30?

Yes. We teach the P30 outcomes in school order, from the unit circle and trigonometry to logarithms, permutations and combinations, with practice we write ourselves.

Does Saskatchewan change its clocks?

No. Saskatchewan stays at UTC-6 all year. The Time Act, 2026 bill would set central standard time as UTC-6 and comes into force by order of the Lieutenant Governor in Council.

What time are classes for Saskatchewan 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. Times are confirmed in Saskatchewan time.

Can my child write the Waterloo math contests from Saskatchewan?

Yes, if their school orders them. CEMC lists Pascal, Cayley and Fermat for 23 and 24 February 2027 and Euclid for 6 April 2027. Students cannot sign up on their own.

Do Saskatchewan phone numbers work in the form?

Yes. Numbers with the 306, 474 and 639 area codes work. Type the ten digits; the country code is already filled in.

What is a good age to start?

Age 6 or Grade 1 for block coding. Most children are ready for typed Python by Grade 4 or 5, and adult beginners are welcome.

Where do I find the fees?

In the fees section of this page, which lists the free first class, the monthly group fee and the monthly private fee, each shown with its currency. Nothing is billed before the free class.

Saskatchewan cities

Our city pages in Saskatchewan

2 pages for Saskatchewan towns and cities, each written for the families there.

More for Canada

Other pages for Saskatchewan students

Begin at coding classes in Canada, or read how Saskatchewan compares with other provinces in our curriculum guide. Neighbouring Alberta has its own page, coding classes in Alberta, and every province's high school math is side by side in Canadian high school math courses compared.

Free classPriority demoCall us

Keep exploring Modern Age Coders

Coding classes in nearby places

Learn more

Free resources

From the blog

Start here