Major in Computer Science

Our Major programs keep pace with advancements in computer science, and provide a well-balanced foundation in the discpline. They cover all aspects and levels of computers and computing.

Each program specifies approximately half of the courses required for your degree. We believe that those courses constitute the minimum which could be expected of any student in computer science.

We offer three versions of the CS Major: a general program, and three specialized streams:

  1. Smart Systems
  2. Visual Computing and Games
  3. Data-centric Computing

The required courses to complete the general program are listed below, and the required courses for the streams are available at their respective links.

Both the general program and the streams require that you take the same core courses at the 1000 and 2000 level.  The general program then allows you freedom to choose which 3000 and 4000 level courses to take to complete your degree requirements, subject to availability and prerequisites, whereas each stream requires that you take a set of courses which specialize in that area.

 

Streams are being replaced with concentrations

 

From 2025 the stream programs will not be available for new enrolment. Students currently registered in a stream will be able to complete their program.

 

They will be replaced with optional concentrations: sets of courses with a specialized focus that can be completed as part of the computer science major or honours programs.

 

The concentrations will be largely similar to the existing three streams in content, plus a fourth concentration in Theory of Computation.

 

More detail will appear here in Spring 2025.

Admission

Admission to the Major programs in the Department of Computer Science is highly competitive and selective.  There is a set of courses that you must complete here at Memorial before you can apply.  Full details about how and when to apply can be found on our  Admissions page, and please see our FAQ page for more information and advice.

Required Courses to Complete the Major (general program)

As a component of the Degree Regulations for the General Degree of Bachelor of Science, or the Degree Regulations for the General Degree of Bachelor of Arts, as appropriate, for the CS Major you must complete the following courses:

  1. Forty-five credit hours in computer science:
    1. Computer Science 1001, 1002, 1003, 2001, 2002, 2003, 2004, 2005, 2006, 2007 and 2008.
    2. At least six additional credit hours at the 4000 level.
    3. Twelve additional credit hours in computer science at the 3000 level or beyond.
  2. Mathematics 1000, 1001, 2000, 2050, and Statistics 2500 or 2550.
Suggested Courses (all Majors programs)

In addition to the set of required courses, students are encouraged to take Mathematics 3000 and Statistics 2560.

Electives

Since the program specifies approximately half of the courses required for your degree, a great deal of your program will be made up of elective courses, both in computer science and other disciplines. These electives can be chosen from many areas, subject to the general regulations for the Faculty of Science or the Faculty of Humanities and Social Sciences.

Choose your electives wisely

The quality and usefulness of your degree to both yourself and prospective employers depend, to some extent, on the elective courses that you choose. A general recommendation is to try to have a concentration of courses in one or two other areas: for example, an area in which you have a professional interest (an area in which you wish to work in the future) or an area in which you have a personal interest. In order to accomplish this, we recommend that you choose some area as a minor, and work to fulfil the requirements for a minor in that area as specified in the university Calendar.

And Finally...

Remember to keep track of your progress!

Page last updated May 24th 2021