Here you will find the differences between the different programs offered at McGill in Computer Science: From the various Faculties, to specific programs, as well as information about the Joint Programs offered
An Honours program gives you a deeper and more comprehensive education in computer science (and is particularly encouraged if you seek to attend graduate school) and requires a thesis.
If you choose to study computer science within the B.Sc. program, you'll have much more flexibility when it comes to choosing your courses. You can easily supplement your studies with a minor in other faculties.
If you decide on a B.Sc. degree in Computer Science or Software Engineering, then you should choose "Faculty of Science" on your application form and choose the physical, earth, math and computer sciences group. The only exception is that the Computer Science and Biology Joint Major is in the Biological, Biomedical and Life Sciences group.
Some of the students associated with the School of Computer Science choose to complete a B.A. degree; in fact, for international students, the cost of studying within the Faculty of Arts is approximately half that of studying in the Faculty of Science. It's possible to get quite a strong training in computer science within the B.A. degree program by taking both the computer science major concentration along with the supplementary minor in computer science. In terms of computer science content, this is almost the same at the B.Sc. major in computer science.
There are two main programs available in the B.A. program:
The B.A. degree is suitable for you if your background does not include very much science, but you do have a good background in Mathematics and you have an interest and aptitude for logical reasoning.
The combined B.A. & Sc. degree, jointly offered by the Faculty of Science and the Faculty of Arts is also an option available to our students. In the B.A. & Sc degree you can combine a 36-credit major concentration in computer science or software engineering with a major concentration or two minor concentrations from arts. For example, you could combine your computer science studies with areas such economics, anthropology, philosophy, linguistics, or geography.
Another option is the Interfaculty or Honours program in Cognitive Science. This is currently the only major and honours programs in cognitive science available at McGill (there is cognitive science minor in the B.Sc. program). You can choose a principle of area concentration, namely computer science.
B.A/B.Sc/Ba.Sc: CS, SE
B.Eng: SE, CE
Of these 3, CS and SE are the most closely related. Both cater to the study of computing theory and its applications. The primary difference between the two revolves around their larger focus. CS offers a general introduction into the theory behind the field, whereas SE provides a curriculum to its students that are more catered towards practical applications. Both start with the same set of foundational courses like COMP 202, 250, 251 etc., meaning if you're early in your studies, it's easy to switch back and forth. However, with upper-level courses, SE requires more software development related courses like COMP361 (year-long software engineering project). CS in contrast requires more theoretical coursework like COMP 330, COMP 360. CS offers greater flexibility (less specifically required courses) in upper-level course selection but some may prefer the structure offered by SE with things like its "Application Specialties" track. Ultimately, when it comes to employment prospects, there doesn't appear to be a discernible difference in the outcome of these two.
CE is an almost entirely different field, however, CE is oriented towards computer hardware principles. Offered only by the Faculty of Engineering, the CE major leads to an engineering certification and thus follows a much more structured core curriculum. Whereas CS and SE (besides the B.Eng variant) range anywhere from 36-63 required credits, CE requires ~133 credits. Your studies are highly structured with a mix of core engineering and major courses, leaving little room for electives. Many of your courses are hardware related like digital logic and microprocessors as opposed to CS/SE's software theory-oriented algorithm design and distributed systems.
tl;dr: Mostly interested in creating software applications? Choose CS or SE. CS offers greater flexibility in course choice but SE provides more applied software development experience. CS's more theory-centric nature also may make it the preferred choice if you plan on grad school. More interested in hardware development? Choose CE.
The joint major in Computer Science and Biology is a program to give students an outlet, within the McGill curriculum, to understand the basics of both computer science and biology and to appreciate the intricacies involved in their joint application. The program trains students in the fundamentals of biology and gives appropriate computational and mathematical maturity to pursue a multidisciplinary career.
A degree in computer science and biology can come in handy in a huge variety of fields/industries. Graduates of the program have gone into a wide range of careers, from big tech companies to medical and other graduate schools. Although not exhaustive, fields such as computational genomics, bioinformatics, computational neuroscience, bio-modelling, and computational anatomy seek those who have an integrated background in both biology and computer science, and the degree does just that. Having skills in computer science and knowledge in biology are great assets to showcase yourself!
The degree also presents a unique opportunity to conduct a research project involving both computer science and biology with COMP 401 “Project in Biology and Computer Science”. You’re given a lot of freedom to find a project and work with a
professor of your choosing (even outside of BIOL and COMP department) as long as it is related.
Within CS/Bio, you have the option between a Joint Major a Joint Honours degree. There’s a lot of overlap between the courses for both degrees, with first year classes being almost exactly the same, so if you’re on the fence you can decide later in the program or try an honours version of the few courses where the program diverges to see how you find it. Both options include an opportunity for you to do a research project. The Honours program is generally more demanding and time consuming than the Major program. In terms of registration, honours students have priority when registering for honours classes, but those in major programs can also register, sometimes with permission of the professor.
In your first few years, regardless of which program you choose, your basic prerequisites will include COMP 204, COMP 250, COMP 206, BIOL 219, MATH 240, and CHEM 212. It should be noted that the honours program does not require you to take honours equivalent MATH courses (although you may on your own accord). If you are interested in interdisciplinary biological research, you are in good luck! BIOL 395 titled “Quantitative Biology Seminar 1,” exposes you to current research in quantitative biology in weekly seminars where a faculty member presents on their research. Here are the key distinctions between the major and honours courses:
Overall, both the major and honours program gives you a lot of freedom with what CS courses you want to take. For complementary CS courses, you have the unique freedom to choose 9-12 credits from 300+ level COMP courses with at least 3 credits at the 400+ level. So, you can take what really interests you. If you're ever in doubt about course selection, ask a departmental advisor: they will know a lot more specific information about your program.
Note: BIOL 592, titled “Integrated Bioinformatics,” is not an acceptable complementary course for the Computer Science and Biology program.
The advantage of a joint program like CS Bio is that there are lots of different resources from both departments! Trottier 3090 is home to the CS Help Desk for help with your computer science courses, and there are advisors from both departments (Nancy Nelson for biology, and Liette Chin for computer science) to help with course selection and any issues you may have.
Additionally, both departments have a wide variety of cool talks and colloquia. The student societies for computer science (CSUS), biology (MBSU), and integrative biosciences (MIBS) organize and advertise all sorts of events and resources throughout the year. Be sure to subscribe to the CSUS listserv for a heads up on different events in SOCS!
For specific questions, feel free to email the VP Academic (csus-vpacademic@cs.mcgill.ca).
Math/CS technically encompasses 4 degrees: Math and Computer Science, Honours Math and Computer Science, Statistics and Computer Science, and Honours Statistics and Computer Science. There's a lot of overlap between the courses, and first year classes for the four degrees are almost the exact same so if you're on the fence you can try taking the honours versions of the few courses where the programs diverge and see how you find it. Honours programs tend to be more demanding and theoretical. They're intended to prepare the student for graduate school, and honours courses generally require more time than their majors equivalents. Although honours students get priority in signing up for honours courses, students in majors programs can also register for honours courses (these classes are rarely full, so you'll most likely never need to fight for a seat in an honours math course).
No matter what program you choose within the joint math and computer science family, COMP 250, COMP 273, COMP 206, and MATH 235 will all be required. In first semester, the only courses where you'll need to choose between the honours and majors version will be analysis (and even then, the math department lets students who took majors analysis 1 enroll in honours analysis 2) and possibly advanced calculus or probability if you choose to enrol in them in U1. If you're on the fence between enroling in math/cs and pure cs, it's worth noting that MATH 235 or MATH 242 can be substituted for MATH 240 to satisfy prerequisites. If you're ever in doubt about course selection, ask a departmental advisor (this is a different person from the faculty advisor that U0s are assigned to, and they will know a lot more specific information about your program).
The difference between a stats/cs degree and a math/cs degree is fairly small, especially in early years. The two programs diverge in upper level courses, with math/cs students getting slightly more freedom in their math course selections and stats/cs students restricted mainly to statistics-related courses. A math/cs student is required to take higher-level analysis and algebra courses but has some open credits and can use their math complementaries to take statistics courses, but a statistics/cs student will have a hard time replacing stats complementary courses with, say, topology. Taking probability early in your degree will give you an idea of whether you want to go the stats route and also opens the door to taking upper-level machine learning/artificial intelligence/natural language processing courses.