A Survey of High School CS in Canada

I thought I’d have a look at the status of high school CS across Canada. (I’m keeping this to provinces/territories that have a population greater than 500,000.)

Overall, it’s generally categorized as an elective, often lumped in with fine arts and second languages. BC, Alberta and Manitoba are the only provinces where it is categorized as a teachable subject at the BEd level; in Ontario it is available as a minor. (Quebec, as usual, is a beast of its own not easily comparable to the other provinces.)

Western Canada seems to be leading the pack for standards and teacher support – the only CSTA chapters in Canada are in BC, Alberta, Saskatchewan and Manitoba.

Atlantic Canada is furthest behind: New Brunswick, Nova Scotia and Newfoundland and Labrador do not appear to have computer science curricula, let alone CS teacher training/support.

Nowhere easily available on the internet could I find stats on how many schools teach CS or how many students take it – this information is FOIable if anybody really wants to see the numbers. (If you do have the numbers, I’d love to see them!)

British Columbia:

  • British Columbia does have a CS curriculum. It’s lumped in with “computer studies” that is mostly IT. It is categorized as “Applied Skills“ rather than a Science or Math.
  • CS is not categorized as required course for a high school diploma, but can be counted as an elective topic. BC students need to take 28 credits of elective topics.
  • The University of British Columbia offers a BEd in computer science, as does the University of Victoria and the University of Northern BC. I can’t find any BSc/BEd combined programmes for CS.
  • There is a CSTA chapter for BC.
  • I can’t find any stats on how many BC schools teach CS. My impression is that it’s not uncommon in Vancouver but rare elsewhere.

  • The Albertan universities (University of Alberta, U of Calgary, U of Lethbridge) accept high school computer science as science credit for entry to their science programmes

  • High school CS counts for graduation requirements as a elective, not as science or math. This said, students need to take 10 credits from the elective list (CS, fine arts, apprenticeships, PE, and second languages.) There are multiple CS courses on the books in Alberta’s education system.
  • The University of Alberta offers a BEd in computer science as well as a combined BSc/BEd programme in CS. The Universities of Calgary and Lethbridge do not offer BEd programmes in CS.
  • There is a CSTA chapter for Alberta.
  • I can’t find any stats on how many schools offer CS. The high school I attended in Lethbridge did not offer CS when I was a student (I was class of 2007) and I don’t know anybody from Alberta who took high school CS.

  • Saskatchewan does have a high school CS curriculum (CS 20/30). It is not required for a high school diploma. It appears that CS 20 can count as a science elective, but not CS 30?

  • Computer Science 20 is mentioned in some Saskatchewan Education documents but not CS 30 – I’m guessing CS 30 is not widely taught?* Computer Science 30 counts for science credit when applying to the University of Regina but not at the University of Saskatchewan.
  • Neither U of Saskatchewan nor Regina offer BEd programmes in CS.* There is a CSTA chapter for Saskatchewan.
  • I can’t find any stats on how many schools offer CS.

  • CS is not required for high school graduation – or even listed in the electives section. There is a high school CS curriculum.

  • The University of Manitoba has a BEd in CS, but not the University of Winnipeg.* There is a CSTA chapter for Manitoba. 
  • I can’t find any stats on how many schools offer CS.

  • CS is not required for high school graduation. Students do need to take one credit from science, computer studies, IT, and French. There is a high school CS curriculum.

  • Computer science is not available to as a major in BEd programmes, but only as a minor.
  • There is no CSTA chapter for Ontario. And as usual, I can’t find any stats on how many schools offer CS.

  • Quebec has a very different education system from the rest of Canada: students complete a secondary diploma in grade 11 then go to CEGEP for a couple years before going to university. CEGEP covers the equivalent of first year university. I’m hesitant to compare Quebec’s education system to the other provinces as a result.

  • Computer and technology studies count as a science for secondary diploma purposes. I can’t find a CS curriculum for the secondary level, however.
  • Computer science (informatique) appears available at all the CEGEPs in Quebec in some form or another.
  • There is no CSTA chapter, nor clearly available stats.
    New Brunswick:

  • Computer Science is categorized as in “Skilled Trades and Technology Education” and does not appear to count for high school graduation.

  • There is a “Robotics and Automated Technology” course that does count as a science credit for high school graduation.
  • UNB does not offer a BEd in CS, though they do offer a BEd in “technology studies”.* There is no CSTA chapter. Couldn’t find any stats.
    Nova Scotia:

  • High school students need to take “2 other credits from Technology, Mathematics or Science” for their diploma. There is no official computer science curriculum; the closest is a Computer Programming 12.

  • There are no BEd programmes in CS. There is no CSTA chapter. Couldn’t find any stats.
    Newfoundland and Labrador:

  • There’s no high school computer science curriculum at all (unless you count a course in HTML). There is a petition to change this.