I am planning on attending UTSC (but I think this question should be
applicable to the other campuses) this September, and I am looking for
advice on whether I should aim for a major + 2 minor or (software
engineering) specialist program in Computer Science.
I am leaning towards the major + 2 minor option for the following reasons:
The specialist program requires some additional courses that I think would
make it more difficult than the major. For example, it requires both Linear
Algebra II and Intro to Probability, whereas the major program let’s you
choose one of them. Another math course that is required is Calculus of
Several Variables I, which just sounds terrifying. And I know that math is
important in CS, but, I am only okay in math (ended with 83 in functions
because trig killed me [I probably wouldn’t have done that well on it in
the first place, but I planned poorly for other subjects, and so did not
have time to study for the unit test]; calc seems much more interesting,
though), and so I would like to skip some of these math courses.
Additionally, I am not sure how useful or hard some of the additional CS
courses like Intro to Numerical Algorithms for Computational Mathematics or
Computability and Computational Complexity will be—they all seem very
abstract and not-practical.
Another reason I want the major + 2 minor is that I would get two minors. I
am taking Writer’s Craft this year and have realized that I quite enjoy
creative writing. It just so happens that UTSC offers a minor program under
English called Creative Writing. I think taking this minor alongside the CS
major would be a great way to lessen the workload and pursue something I
enjoy, while also pursing something else I enjoy that can actually earn me
money. Having only math and theory-based CS courses besides a small number
of electives is not too appealing to me. I realize that those courses are
better than practical programming courses in the long-run, but having them
make up the vast majority of my degree seems a bit painful. I don’t have a
solid pick for a second minor yet, but I don’t think it would be hard for
me to choose one (linguistics and food science are top contenders).
Here, then, are reasons I might want to go the specialist route:
I think some of the courses the specialist has you take would be pretty
beneficial. For example, since my goal is to get a job as a programmer, the
courses that seem to teach you how to do stuff in a real-world environment
like Intro to Software Engineering and Engineering Large Software Systems
could really be useful, and I might be missing out if I opt for the major.
There are also a few other courses like Programming on the Web and Intro to
Databases which could add to my skill set and make me more marketable for
co-op and post-post-secondary jobs. I am of course just predicting how
valuable these courses might be form their names and descriptions alone;
that’s why I’m asking you! The major program only allows you to take 1
credit of additional C/D-level (300/400-level) CS courses, which means
missing out on some potentially useful courses. I am guessing that it is
not possible to take more as electives, but is it?
My minors will probably also not help at all with my future career; I would
only be taking them to lessen the amount of math/CS courses and increase
the amount of enjoyable courses. Is that a bad thing to do?
So, to conclude, do you think the benefits for taking the specialist
program (additional useful courses) outweighs the cons (more un-fun
courses; less fun courses)? Both choices aid the mind, but in different
ways (i.e. one probably reduces chances of suicide).
Thank you and sorry for the long message; I wanted to make my points clear
i began penning a response to this question that went a little something like: “just go with your gut! it seems like you’re leaning towards the major and two minors option! why not pursue that?”, but upon further reflection, i’ve decided that we need to rewind a little, if that’s okay with you.
(just so you know, i’m not a computer science student, nor have i taken any computer science classes and i’m just as confused as you are about these programs. i’m speaking only as a seasoned upper year student)
before i start ripping into you, (it’s going to happen, i’m sorry) kudos to you for thinking this hard about what program you want to get into. it’s clear you’ve put a lot of thought into this, which is great. this response isn’t supposed to make you feel bad- i just want to bring you back to earth a little.
so, first- you’ve made some serious assumptions on what these courses are going to be like. i can tell you from experience that i’ve made assumptions based on course names and have been incredibly wrong. classes also vary pretty dramatically depending on the instructor.
*askastorytime* i took a class called urban geography, planning, and political processes. i thought was going to be super difficult and intense, but it ended up being super chill. for our final project, we created a zine and performed a rap for the class. for our group presentation, i contributed a sick drum beat and didn’t even utter a single word. moral of the story: do not judge courses by their names. linear algebra is probs super easy. (i’m kidding. math is never easy. math is very hard. we mustn’t joke about math.)
your assumptions that some classes are “abstract”, “non-practical” or “terrifying” are all based on the course name. the truth is, every program at u of t will require a great deal of hard work. sure, easy courses exist, but transitioning from high school to first year is a huge challenge and you need to take that into account. picking the major and two minors option over a specialist program doesn’t necessarily mean that you’ll be choosing the ‘easier route’. like i’ve said in previous posts, it really depends on how deep you want to get into a subject. a major and two minors allows you to explore a larger variety of subjects whereas a specialist will let you dig deep into one subject. which option are you more interested in?
while the university does have a breadth requirement which encourages us to take courses outside of our faculty, personally, if i were to choose two minors that were completely unrelated to my major, i feel like i would have lots of difficulty focusing on each one and feel like a scatterbrain. for others who are better at multitasking and switching between subjects easily, a major and two minors is perfect! it really depends on what kind of person you are. can you turn your computer science mind off and jump right into phonetics and phonology if you need to? you’ll have to test that out in your first year! p.s. don’t forget to take a moment to check out the requirements for your potential minors and their different application requirements.
that being said, from what i’ve heard, computer science is extremely math heavy. there is no easy way out. you have been warned.
for now, i think you should try picking courses that are prerequisites for the general computer science programs (if you are sure about pursuing computer science), and see how you feel about them. fear not, the utsc calendar literally says that it’s not meant to be difficult to switch between different streams within computer science.
you have plenty of time to discuss your options with an academic advisor as well! you can also talk to the program supervisor for computer science if you have more specific questions about the available compsci programs.
i’d also encourage you to reach out to current or past computer science alumni to get some different perspectives on how they chose their programs. hearing other people’s thought processes might help you figure out what you’re looking for!
hey, if doing programming for your whole undergrad sounds terrible for you, maybe computer science isn’t the right program for you. your first year is meant for you to explore and discover what courses you like. you don’t even necessarily need to get into your program by second year if you still don’t know what to do after your first year.
so in conclusion, specialist courses won’t necessarily be more useful in the long run, and if the idea of specializing in software engineering doesn’t sound colourful enough for you, maybe the major and two minor option will be better for you! again, you really need to take some university level classes to see what it’s really like here. don’t judge a book by its cover, yo.
good luck with your decision, i hope you choose a program you like!
peace and love,