Computer Science Specialist (Science Program) - ASSPE1689

Enrolment Requirements: 

This is a limited enrolment program. To be eligible to submit an application, students must have completed at least 4.0 FCEs including CSC148H1 (with a minimum grade of 70%) and CSC165H1/​ CSC240H1 (with a minimum grade of 70%). Students will be assessed based on a competitive average across these courses, and a supplemental application which will be considered alongside their academic results.


  1. Requests for admission will be considered in the first program request period only. For detailed program enrolment instructions and application deadlines for restricted programs please click here.
  2. Due to the limited enrolment nature of this program students are strongly advised to plan to enroll in backup programs.
  3. Students admitted to the program after second or third year will be required to pay retroactive deregulated program fees.
Completion Requirements: 

(12.0 full course equivalents [FCEs], including at least 1.5 FCEs at the 400-level)

First year (2.5 FCEs):

1. CSC108H1, CSC148H1, CSC165H1/​ CSC240H1; MAT137Y1/​ MAT157Y1/​( MAT135H1, MAT136H1)


  1. Students with a strong background in an object-oriented language such as Python, Java or C++ may omit CSC108H1 and proceed directly with CSC148H1. There is no need to replace the missing half-credit for program completion; however, please base your course choice on what you are ready to take, not on “saving” a half-credit.
  2. CSC240H1 is an accelerated and enriched version of CSC165H1 plus CSC236H1, intended for students with a strong mathematical background, or who develop an interest after taking CSC165H1. If you take CSC240H1 without CSC165H1, there is no need to replace the missing half-credit for program completion; but please see Note (a).
  3. Consult the department's Undergraduate Office for advice about choosing among CSC108H1 and CSC148H1, and between CSC165H1 and CSC240H1.
  4. We recommend that students take MAT137Y1 or MAT157Y1, as they have been determined to provide the best preparation for upper-year courses in computer science and benefit students in CSC165H1/​ CSC240H1. Similarly, we recommend MAT223H1 or MAT240H1 from the options in second year.

Second year (3.5 FCEs):

2. CSC207H1, CSC209H1, CSC236H1/​ CSC240H1, CSC258H1, CSC263H1/​ CSC265H1; MAT223H1/​ MAT240H1/​ MAT221H1; STA247H1/​ STA255H1/​ STA257H1

Later years (6.0 FCEs):

3. CSC369H1, CSC373H1

4. 5.0 FCEs from the following:

with at most 2.0 FCEs from APM or MAT or STA courses, and at least 1.5 FCEs from 400-level CSC, BCB, or ECE courses.

No more than 1.0 FCE from CSC490H1, CSC491H1, CSC494H1, CSC495H1, BCB330Y1/​ BCB430Y1 may be used to fulfill program requirements.

The choices in 4 must satisfy the requirement for an integrative, inquiry-based activity by including one of the following half-courses: CSC301H1, CSC318H1, CSC404H1, CSC311H1/​ CSC411H1, CSC418H1, CSC420H1, CSC428H1, CSC454H1, CSC485H1, CSC490H1, CSC491H1, CSC494H1, CSC495H1. This requirement may also be met by participating in the PEY (Professional Experience Year) program. Transfer credits cannot comprise more than 1.0 FCE at the 300-/400-level, and cannot be used to satisfy the requirement for an integrative, inquiry-based activity. In addition, transfer credits cannot comprise more than 0.5 FCE of the 400-level CSC, BCB, or ECE courses required.

Choosing courses

This program offers considerable freedom to choose courses at the 300-/400-level, and you are free to make those choices on your own. We are eager to offer guidance, however, and both our Undergraduate Office and individual faculty members are a rich source of advice.