Hey all. Yet another long-time lurker here, who finally decided he had a question worth asking…
I’ve been doing college on and off for almost twenty years. My most recent “on” session began a couple of years ago, and I’m finally set to earn my BS in Mathematics a year from now. The plan has been to go on and at least get my MS.
For about six months, I’ve been feeling more and more sorry that I didn’t go with Computer Science as my major. I started to look into it a couple of times, but quickly decided it would delay my graduation far too long to pursue. Graduate school has been looking less attractive as well.
For the last couple of weeks I’ve been thinking about it again, very seriously. Should I decide to major in Computer Science, I have two options:
Finish my math degree first, then re-enroll as a postbac. I figure the total time would be about two and a half to three years (I could get several CS courses out of the way while finishing up the math program).
Abandon math and go straight for Comp Sci; total time would be about two years.
Either way, I don’t think I’ll be doing graduate school, at least not right away.
So here is where I’m looking for opinions:
Would having the math degree really give me any particular advantages when it comes to the Real World, and finding a Real Job? Or would I be better off just going straight for Comp Sci and finishing up sooner?
I’d say it depends on what sort of Real Job you’re looking to get. I did a BSc in physics and mathematics, and then a MSc in computer science. I’m using very little of that in my Real Job in the Real World, where I do data warehousing. I’d say there’s a whole spectrum of jobs in IT where maths skills can be very useful - a lot of them are academic/research type jobs, however.
Given the option, I’d go for the combination degree - having solid academic qualifications never hurts when it comes to job-hunting, and will broaden your prospects should you wish to go back to graduate school at some point in the future.
Are you more interested in doing straight up programming and development work, or do you like the research or teaching aspects of Math?
The answer to that question will push you in one direction or another. What do you actually want to do with these degrees once you finish? Do you have a passion for either one that you want to pursue?
In the good old days, a lot of CS people started in Math, before there were actual computer science majors. My first graduate advisor was a mathematician. However I suspect a CS degree would be easier to get interviews with, though a math background might be useful in getting a job. I’d switch. When I was in college back in the stone age a lot of CS classes were math also - is that still true?
I abandoned Architecture for Applied Mathematics, and then when I took a lot of computer classes to fulfill my core electives, I realized that I only needed about another 48 quarter units (12 classes at 4 units each, quarter system), that it seemed only natural to get the double major, albeit my decision was made 4 years later when a new curriculum was enforced to include many more units in the humanities. I just took the CS classes and not the humanities because I felt I could explain to any employer that the degree was there with the coursework, just not the extra units in humanities that would have been officially recognized. Same thing happened when I took enough units for a minor in Geography.
If you just want your basic, corporate, white collar job, it won’t matter much. I have worked in IT for 11 years and I have met a grand total of two people with computer science degrees and they were both interns. I have a degree in psychology/behavioral neuroscience and my boss has a degree in music. People with a political science degree and a criminal justice degree round out the pack. We range from senior analysts to managers so a certain degree was never required to move up into any position in the mega-corp. You just absolutely need a bachelors degree although the major isn’t important.
If you want to end up doing cutting edge research or maybe video game development then either agree might be appropriate and both would be better. That is really specialized stuff though. It isn’t needed for most regular white collar jobs. Just pick the one you like the best or both and run with it.
Most employers will only care that you have a degree. Beyond that, they might care about specific CS classes you’ve taken (e.g., Oracle would like you to have taken a databases class). Grad schools are going to look more at the courses you’ve taken, but CS programs love people with math backgrounds.
If the double major’s not going to take that much longer and you’re not in a great big hurry to get the degree, I’d say do 'em both.
If you want to be in CS, my advice is to go ahead and make the switch now. The math may help you in your CS career, but I see no reason why a full degree will accelerate the CS career.
I wish I’d gone with mathematics as an undergraduate (or at least a joint CS + maths degree).
I’m now a PhD student in theoretical computer science (heavily mathematical) and sometimes find myself struggling to work out what the “Schanuel topos” is, so, if you ever envisage yourself going to graduate school, it’s good to have a maths background, but also:
a) A lot of computer science is heavily maths based anyway - machine learning, computer graphics, automated reasoning, robotics, computability/intractability, programming language design etc. all require a strong maths background.
b) It seems (at least IMO), that the most interesting stuff in computer science is the stuff that requires the most mathematics. YMMV.
c) A lot of jobs are opened to those with maths degrees who know how to write software. For example, graphics programming, physics simulations, games etc. so ultimately it depends upon what job you want.
I will just offer an observation based on my experiences in the math department at a major university. In my math department there were very few options for people interest in applied math and jobs outside academia. The department was dominated by professors in pure math and they assumed that all the students wanted to do pure math. There just weren’t any classes for students who wanted to cross over into computer science or any other field (except physics). Now there may be some departments that are more welcoming to students of applied math. But if you choose grad school in math, be sure to find a program that has options for what you want to do.
I’d finish your math degree, and instead of taking a couple more years to do CS, go get that MS in mathematics like you were thinking about. While you’re getting that MS, focus on projects and problems that require you to use a lot of computer skills.
Then, you’ll be able to apply for scientific programming positions, and note your computing experience in your cover letter and resume. You’ll be able to work with computers without a CS degree.
I read an interview with a muckity muck from Google the other day (in Feeakonomics). His advice to a kid in college was (paraphrasing) “find a big area, and find a way to service that area.” He then said, “that big area is data. Focus on economics, econometrics, statistics, etc”.
I agree with that. If you can program and do math, and you don’t mind looking at HUGE data sets, and dealing with them, and writing programs that work with them. . .I think you’ll always fun, challenging, well-paying work.