ICD2OI (Digital Technology and Innovations in a Changing World – NEW FOR 2023) – replaces ICS2OI

This course helps students develop cutting-edge digital technology and computer programming skills that will support them in contributing to and leading the global economic, scientific and societal innovations of tomorrow. Students will learn and apply coding concepts and skills to build hands-on projects and investigate artificial intelligence, cybersecurity, and other emerging digital technologies that connect to a wide range of fields and careers. Using critical thinking skills with a focus on digital citizenship, students will investigate the appropriate use and development of the digital technologies that they encounter every day, as well as the benefits and limitations of these technologies.  Prerequisite:  NONE.


ICS3UI (Introduction to Computer Science, University)

Students will learn basic techniques and applications of computer science by designing algorithms and coding them as computer programs.  They will learn the essential tools of programming, including if-statements, loops, arrays, graphics, procedures & functions, commenting, and GUIs.  Students will learn how computers represent data and do arithmetic using logic gates. Students will explore ways to reduce the environmental harms caused by our intensive use of electronics.  We will also discuss the benefits, dangers and limitations of artificial intelligence.  Prerequisite:  NONE (MPM2DI strongly recommended)

Units of Study:

  • Unit 1 – What is CS?
  • Unit 2 – Introduction to Programming
  • Unit 3 – Loops & Graphics
  • Unit 4 – Arrays
  • Unit 5 – Procedures & Functions
  • Unit 6 – Environmental Stewardship in Technology
  • Unit 7 – Artificial Intelligence
  • Unit 8 – Computer Architecture
  • Unit 9 – Summative project


ICS4UI (Computer Science, University)

Students will develop sophisticated knowledge and skills in computer science.  Students will use modular and object-oriented design principles to create complex programs that meet industry standards.  Student teams will manage a large software development project, from planning to deployment and documentation. Students will analyse the efficiency of algorithms from a mathematical point of view and write recursive algorithms. They will learn mathematical techniques for modeling real-world phenomena and simulating them as computer programs.  Prerequisite:  ICS3UI.

Units of Study:

  • Unit 1 – The Broader World of CS
  • Unit 2 – Introduction to Processing
  • Unit 3 – Modeling & Simulation 1
  • Unit 4 – Object-Oriented Programming
  • Unit 5 – Software Engineering
  • Unit 6 – Analysis of Algorithms
  • Unit 7 – Recursion
  • Unit 8 – Modeling & Simulation 2
  • Unit 9 – Final Project