Kemi teaching

Computer Science Majors

Major in Computer Science (BSc)

Students in the Faculty of Science must be in good standing (not on academic probation), and have taken CPSC 107 or CPSC 110 prior to applying to gain admission to a Computer Science specialization. This is a minimum requirement and does not guarantee admission. 

The Computer Science BSc Major program includes the general first year Science program, with further choices in mathematics, a thorough grounding in computer software design, and a broad choice of other studies in computing. It gives you freedom to pursue your interests in courses both within and outside computer science. You can select electives from various departments including, but not limited to: Psychology, Music, Economics, Visual Arts, Biology, Philosophy, etc.  

Program requirements and restricted electives

Credit Exclusion List


How to apply

Computer Science Major (BA)

This program is ideal for students who have a strong interest in both computer science and the arts, and whose interests are more closely matched by the Faculty of Arts requirements, rather than those offered through the Faculty of Science. For example, Arts students normally do not take biology, chemistry, and physics classes.

If you are in the Faculty of Arts, you must meet the following requirements: a 70% average across grades obtained in CPSC 110 (or CPSC 107), CPSC 121 and CPSC 210, before you can be admitted to the BA Major in Computer Science. 

Please note that meeting the 70% average does not guarantee admission: it is the minimum requirement to apply. Your admissions average will usually be computed based on all your grades at UBC in the past 3 years. If you expect to meet the requirements with your Term 2 courses, you can still apply before your final grades are released.

Program Requirements

Credit Exclusion List

How to apply

Double Major in Computer Science

Unlike a Combined Major program, students enrolling in a Double Major are required to complete all the specialization requirements for both subject areas. In most cases, it will take longer than four years to complete a Double Major. BSc students wishing to undertake a Double Major in the Faculty of Science (e.g., BSc Major in Computer Science and another Science specialization), or in Arts (BA Major in Computer Science and another Arts specialization), may do so with the permission of an advisor in their home faculty -- and advisors in both departments. BA students wishing to undertake a Double Major where the second Major is the BSc in Computer Science (rather than the BA) should consult with an Arts advisor (see https://students.arts.ubc.ca/specializations/adding-a-double-major-from-science/).

Students not already in a Computer Science specialization:

Please refer to the instructions for the Major in Computer Science (BSc or BA), above, as you will be subject to the same competitive admissions process. If you are accepted, you will then be required to complete the applicable Double Major form referenced below:

Application for Double Major, both majors in Science

Application for Double Major, first major in Science and second major in Arts

Other programs may have additional admissions procedures (e.g. Biology and Microbiology & Immunology programs), and you may be required to go through additional steps after your appointment with the Computer Science advisor.
How to apply

Software Engineering Option (Major or Honours)

A maximum of 30 students will be admitted to the Software Engineering options of the Computer Science Honours and Major specializations each year. The best 30 applicants (in terms of the overall and CPSC/MATH/STAT averages) will be admitted. Applicants must be enrolled in a Computer Science BSc specialization and must have completed all the required second year Computer Science courses (CPSC 210, 213, and 221) with overall and core averages of at least 72%. 

Note: Being admitted to the Software Engineering option does not guarantee you a seat in the courses required by that option.

Apply here

Students who already have a specialization other than Computer Science and wish to apply to the department should apply using the same application process as that for the Computer Science Major.

Cognitive Systems: Computational Intelligence and Design

Cognitive Systems is a multi-disciplinary undergraduate program involving four departments: Computer Science, Linguistics, Philosophy, and Psychology. It provides students with a thorough grounding in the principles and techniques used by intelligent systems (both natural and artificial) to interact with the world around them. Cognitive Systems has four different streams, one of which (Computational Intelligence and Design) is managed by the Computer Science Department. Please see the Cognitive Systems Website for more details.

Program requirements and restricted electives

Credit Exclusion List

The application process is the same as that for the Computer Science Major as it is considered a computer science specialization.