CSSA Logo
CSSA Logo

UManitoba CSSA

Electives and Minors

Electives and Minors

Electives and Minors

Electives and Minors

Electives and Minors

You haven't forgotten that you need to take a W course in your first 60 credit hours? You didn't? Great! Continue reading!

COMP Courses

You have other COMP options you can try, if you've already completed some core in Summer or have credits to spare:

  • COMP 2600 (Technical Communication in Computer Science): Offered in Winter, this course teaches you the tools and techniques necessary to be an effective communicator in Computer Science. If the programming standards you learned in first year aren't enough to convince you, being able to communicate well beats being able to code fast every time! You also learn genuinely useful, job-applicable tools such as Git, static site generators, and OpenAPI.
  • COMP 1002 + 1006 (Introduction to Tools and Techniques in Computer Science): You learn useful tools that you probably wish you knew in first year, if you haven't taken these courses already. They're worth only 3 credits altogether. You can peep at the textbook here!
  • COMP 2002 + 2006 (Tools and Techniques in Computer Scinece): The latest iteration of these also 1.5 crs lab courses had you explore Python, Lisp, C and Go as programming languages and comparing and contrasting them to Java. Diversity in knowledge means more resumé bullet points and makes you a better computer scientist!
  • COMP 1600 (Navigating Your Digital World): If you haven't taken this already in first year, it is a good overview on how digitalization has shaped our world. As you're furthering your education to become a well-rounded computer scientist, you should be aware of the effect your field has on humanity at large. This course is also a spiritual precursor to COMP 4620, a mandatory course you'll have to take in the future.
  • COMP 3490 (Computer Graphics 1): While this course normally requires COMP 2452, another alternative prerequisite path is COMP 2140 + any MATH 2XXX course. If you're interested in Graphics, consider doing a second-year MATH course in Fall and taking this Winter (recommendations below)!
  • Any other courses you have the prerequisites for and are interested in!

If you did COMP 2140 in Summer, depending on whether you do COMP 2080 early in the same Summer or Fall, you may also have a crack at COMP 3030 in Fall and COMP 3170 in Winter.

Regarding Minors

If you're slightly confused by Minors in University, they're pretty simple: you take 18 credit hours of a discipline, some of them prescribed, and as long as you complete them before you graduate, you earn a Minor on your transcript. You can declare Minors the same way you declared your program, either through Aurora or sending a form to Science academic advising.

For details on what you need for a Minor, please refer to your Minor of interest in the Academic Calendar. Note that, depending on your programs, you're not allowed to take certain Minors:

  • Computer Science Honours/Major can't take Computer Science as a Minor (duh).
  • Joint CS + Math, Physics, and Stat respectively can't take the courses listed in their name as a Minor.
  • Data Science can't take any of Computer Science, Mathematics, or Statistics as a Minor.

Fun fact: Joint CS + Stat, by requiring MATH 2080 + 2150 for the degree, effectively grants you a free Minor just for doing the degree.

Minors offered by Faculty of Science and Faculty of Arts are mostly fair games, but keep in mind that different faculties may have different restrictions on whether Science students are allowed to do a Minor in a program owned by them. Please contact an academic advisor if you're interested in any Minor to determine your eligibility.

Do Minors matter?

Short answer: Except to you, no.

Minors don't give you an extra diploma upon graduation. They simply represent that you've done enough courses in a discipline tangent to your Major program. In the job search (or grad school search), it is at best something for you to talk about during interviews, but nobody will be accepted or rejected based on whether they did a Minor in university or not.

Do Minors because you think it'd be cool to take a deeper dive into something of your interest outside of CS. University is, after all, where you're supposed to get a diverse education and have freedom on what you choose to study; utilize that! It doesn't matter if it makes you "look better" or not; taking courses of topics you enjoy will significantly improve your experience.

What Minor should I do?

Do Minors in topics you enjoy, be it science, arts, or humanities. You don't even have to commit 18 credit hours if later courses aren't as fun as you realize; again, it genuinely doesn't matter to anyone else but you whether you do Minors or not.

Some practical advices:

  • Mathematics: By completing all the MATH requirements in first year, you're already 4/6 of the way to a MATH Minor. If you're pursuing a Joint with PHYS or STAT, you have either 1 or 2 more MATH 2XXX courses you're supposed to take, so getting a Minor in Mathematics is extremely free. Math is possibly the closest aligned field to CS, especially if you're going into fields that are fundamentally more mathematical like machine learning. Committing to a few more math courses would help you feel cooler for having a Minor, as well as prepare you better for later COMP courses. Specific course recommendations can be found in the next section.
  • Statistics: While significantly requiring more effort to earn than a Math Minor, STAT rounds out the computational science trifecta and many of its courses directly apply programming experience valuable from COMP courses. Furthermore, something often overlooked is that STAT courses are quite easier to earn higher grades in: they usually have lower cutoffs (for reference, most MATH/COMP courses require 95% for A+, while STAT requires 90%). If you want to stick to the computational sciences, STAT is a more digestible field than MATH while also still being very applicable, especially if you want to look at data science-aligned fields without committing to a Data Science/Joint Stat degree.
  • Whichever program of the Faculty of Arts course you liked in first year: This is probably one of the most popular ways every student picks their Minor; if you took a course in first year and liked it, take more!
  • Whichever complements a field you're very passionate about: Economics for business analytics. Psychology for user experience. Fine arts for graphic design. Engineering for robotics. Biology for bioinformatics. The list goes on: if you know what you're deeply passionate about, get the interdisciplinary knowledge to excel in that field!

Electives

There are many options you can do for electives in second year (assuming you have the space for them), but we recommend, in order of importance:

  • Getting your W requirement (3 credit hours) over with
  • Getting your Faculty of Arts requirements (6 credit hours) over with
  • Either COMP courses mentioned above, or something building up to a potential Minor if you follow the guidelines above

Recommendation for MATH courses

Decided you want to take a couple more MATH courses, but don't want to stick your feet too deep into it? Here are some practical recommendations (assuming they aren't already required courses for your current degree):

Bold text indicates which term these courses have historically been offered in.

  • MATH 2740 (Mathematics of Data Science) Fall: A great course introducing useful applications of mathematics in basic data science. Contains a lot of programming (albeit in R) to boot! The assignments are super interesting and, when iterated on, will look great on your resumé. It is also significantly more application based than other 2XXX level MATH courses and thus easier. As a cherry on top, the instructor, Dr. Julien Arino, hosts the course materials publicly on his GitHub! You can take a glance over it and see if it piques your interest.
  • Aside from 2740, realistically, the best MATH course to take is one that supplements the topics you enjoyed most in the MATH 1XXX courses:
    • MATH 2070 (Graph Theory) Winter: If you liked graph theory in MATH 1240. Also arguably the most useful and applicable MATH course for computer science-related endeavors. Extremely useful if you intend on going into theoretical computer science; a huge part of the field is basically graph theory. Note that this course is historically only offered in Winter.
    • MATH 2030 (Combinatorics) Fall: If you liked combinatorics in MATH 1240. Very useful and applicable MATH course for computer science-related endeavors, similar to MATH 2070.
    • MATH 2170 (Number Theory) Winter: If you liked number theory in MATH 1240. This is an alternative prerequisite to COMP 4140, the cryptography course.
    • MATH 2090 (Linear Algebra 2) Fall: If you liked the linear algebra course (MATH 1300/1220/1210). While you learn some of the topics in MATH 2740, this takes a more theoretical approach and thus is more likely to help you understand the material better. Linear algebra and matrices are ubiqutous in fields like machine learning, robotics and computer graphics.
    • MATH 2720 (Multivariable Calculus) Fall/Winter/Summer: If you liked the calculus courses. Calculus is useful in fields like machine learning and robotics. Also, this is the most application-based course alongside MATH 2740; if rigor and proof-writing scare you, it's the best choice.

Lastly, don't take MATH 2080. It's the hardest course you are currently eligible to take, and its own instructors recommend against doing so unless you are serious about Mathematics. Alternatively, if you want to briefly experience what true "pure mathematics" feels like, give it a shot!

Written by: Computer Science Students' Association

Last updated: July 5, 2025

Reading time: 9 min read

© Copyright 2023 - 2025 Computer Science Students' Association
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License