Importance of type of degree
by Charles Voyles · 02/26/2006 (11:14 pm) · 7 comments
I've been having an on-and-off discussion with my roommate about the difference between a CS degree and a Math degree since I started back school. The deal is that I can concentrate on a BS in Mathematics and graduate in the Spring of 2007 with a degree. It would take me until Spring of 2008 at my current rate to get a BS in Computer Science. I would like to get my degree as soon as possible but would also want to be more attractive to the gaming industry since that is where my heart is set.
My roommate's point is that I could the Math degree and get a job and then still continue part time on the CS degree. That would push the time back on the CS degree, but at least my income should increase with a Math degree (hopefully.) My argument is that I have no idea what field even hires Math majors right out of college and if I would even want to enter that field.
So, I guess I'm wondering if it's still possible to enter the gaming industry with a Math degree along with a portfolio of some actual programming. I'm not a young 20-something that has all the time in the world and no bills. The decision isn't an easy one for me. If anyone has any thoughts on this, let me know.
My roommate's point is that I could the Math degree and get a job and then still continue part time on the CS degree. That would push the time back on the CS degree, but at least my income should increase with a Math degree (hopefully.) My argument is that I have no idea what field even hires Math majors right out of college and if I would even want to enter that field.
So, I guess I'm wondering if it's still possible to enter the gaming industry with a Math degree along with a portfolio of some actual programming. I'm not a young 20-something that has all the time in the world and no bills. The decision isn't an easy one for me. If anyone has any thoughts on this, let me know.
#2
1. How many people in this business do not understand simple linear algebra and/or Calculus. There is a tendency in this business to regard matrix multiplication as a voodoo process; if it doesn't work, you start flipping matrices around like a mad thing until eventually it does what you want.
2. How often I can apply all the math that I've learned. As graphics programming gets more and more complicated, you need more and more math. Spherical Harmonics, the things that are all the rage with the new generation of renderers, are solutions to a second order partial differential equation with complex coefficients that also satisfies the Legendre polynomials. How many people are going to be able to get their hands dirty in *that*?
(And frankly, a CS degree won't teach you how to write code. The whole discussion about 'what is a computer scientist?' and 'what is it that the university system is trying to teach CS students?' is still ongoing. You get people coming out of university with degrees in comp. sci who cannot actually program. )
If the gaming business is where you're interested in heading, anybody who won't hire you based on a bachelor's degree in mathematics and a good portfolio doesn't deserve your services. Simple as that.
Myself? I'm hoping to get into academia and become a senile professor. Wish me luck!
02/26/2006 (11:59 pm)
Well, here's the game programming perspective. Speaking as somebody who was in the industry, then left go work on his B.Sc. in Math (nearly done!), I continue to find myself amazed at two things:1. How many people in this business do not understand simple linear algebra and/or Calculus. There is a tendency in this business to regard matrix multiplication as a voodoo process; if it doesn't work, you start flipping matrices around like a mad thing until eventually it does what you want.
2. How often I can apply all the math that I've learned. As graphics programming gets more and more complicated, you need more and more math. Spherical Harmonics, the things that are all the rage with the new generation of renderers, are solutions to a second order partial differential equation with complex coefficients that also satisfies the Legendre polynomials. How many people are going to be able to get their hands dirty in *that*?
(And frankly, a CS degree won't teach you how to write code. The whole discussion about 'what is a computer scientist?' and 'what is it that the university system is trying to teach CS students?' is still ongoing. You get people coming out of university with degrees in comp. sci who cannot actually program. )
If the gaming business is where you're interested in heading, anybody who won't hire you based on a bachelor's degree in mathematics and a good portfolio doesn't deserve your services. Simple as that.
Myself? I'm hoping to get into academia and become a senile professor. Wish me luck!
#3
I also believe(not that this is actually the case, of course, but perhaps in the near future) that large developers are reaching a point where they need to keep around dedicated mathematicians/physicists to work with the programming team on efficient algorithms for 3d engines.
02/27/2006 (3:02 am)
In traditional CS, math skills are the main prerequisite. Many people(I know a few) can coast through without being particularly good at programming by getting the math down; wheras I tried going for CS and the math killed me even though programming was no problem. If you already have a math degree, you're set. You will probably have more success in the mainstream industry with a portfolio that demonstrates a high degree of proficency in one specialty(graphics, physics, ai, networking, etc.), with one or two sophisticated projects to demonstrate; not necessarily games themselves, but applicable to games. Indies have to wear more hats, of course, and in that case it would be more about answering the question "can you bring arbitrary game concepts to shippable code on your own?" which would entail writing a complete game.I also believe(not that this is actually the case, of course, but perhaps in the near future) that large developers are reaching a point where they need to keep around dedicated mathematicians/physicists to work with the programming team on efficient algorithms for 3d engines.
#4
A part of me is really glad I did a Software Engineering degree, yet another part of me wishes I'd done a Maths degree instead. The reason been that prior to doing my Software Eng degree I already knew how to program, I knew c++, I knew all about OOP, I knew about computer architecture on a low level, I knew the basics of project managment and the basics of most other fields of study (except real time systems/compilers and operating systems; loved that part of the course). All that pre knowledge meant I could work hard on the few areas I didn't know and excel in those as well.
However, I'm sure if I hadn't taken that Software Eng degree, that those areas I wasn't so good in, I could have self taught myself to a similar level in a short period of time. With Maths however it's a little different. Although I'm overall not that bad at basic math, I only studied up to A-Level, so my knowledge is quite lacking. For myself personally I think Maths would have been a much harder degree to obtain, but I likewise feel I'd probably have gained much more from it.
I guess what I'm trying to say, do the degree you think will be the hardest and that you'll learn the most from. Push yourself to get it. You'll be able to learn enough to get by in the other subject (whether that is CS or Maths).
I'll quote Andre LaMothe's answer to someone asking about whether to go for a CS or Electronic Engineering degree.
Maybe the key is to just do both Maths and CS :)
02/27/2006 (4:38 am)
Do the CS degree, learn the Maths later or do the Maths degree and learn the CS later. I think it's swings and roundabouts. Just having a good recognised degree will show you are commited to obtaining a goal.A part of me is really glad I did a Software Engineering degree, yet another part of me wishes I'd done a Maths degree instead. The reason been that prior to doing my Software Eng degree I already knew how to program, I knew c++, I knew all about OOP, I knew about computer architecture on a low level, I knew the basics of project managment and the basics of most other fields of study (except real time systems/compilers and operating systems; loved that part of the course). All that pre knowledge meant I could work hard on the few areas I didn't know and excel in those as well.
However, I'm sure if I hadn't taken that Software Eng degree, that those areas I wasn't so good in, I could have self taught myself to a similar level in a short period of time. With Maths however it's a little different. Although I'm overall not that bad at basic math, I only studied up to A-Level, so my knowledge is quite lacking. For myself personally I think Maths would have been a much harder degree to obtain, but I likewise feel I'd probably have gained much more from it.
I guess what I'm trying to say, do the degree you think will be the hardest and that you'll learn the most from. Push yourself to get it. You'll be able to learn enough to get by in the other subject (whether that is CS or Maths).
I'll quote Andre LaMothe's answer to someone asking about whether to go for a CS or Electronic Engineering degree.
Quote:
SOME colleges have good computer engineering courses, most don't, but you have to think REALLY hard about what you want to do, if you want to do electronics then do EE, if you want to program, maybe you STILL should do EE, why? Because programming is 1/10th as hard as EE, so if you learn the EE, you can always learn programming on the side yourself or thru electives and or get a minor is comp sci, but if you are a comp sci major you are not going to understand EE at all -- so I always say take the hard degree, teach yourself the easy one, think 10-20 years from now what do you really want to be doing?
Maybe the key is to just do both Maths and CS :)
#5
02/27/2006 (7:33 am)
Nomatter what you do... just don't let the numbers 2007 and 2008 scare you. They will be here so fast you won't believe it. Be that smart guy and don't let a year or two make your decision for you. There is nothing in life that won't be better if you wait. Don't forget how long it will take to actually make games once you start pro. For the love of your future... don't cheap out on your education. You WILL regret it regularly for the rest of your career.
#6
02/27/2006 (2:20 pm)
Thanks for the comments guys. I was planning to a double major. It would still take just as much time as the CS degree but just adding more math classes for each semester. I think I'll stick with my plan for now. It's just when I get stuck with long program assignments that I start to wonder.
#7
It seems that to add 'CS' to your BS degree, you would be in school for a lot longer. If you can get two BS degrees without any additional time, that
03/01/2006 (8:41 pm)
Your question has been stuck in my head for a few days - not sure why - but maybe this will help.It seems that to add 'CS' to your BS degree, you would be in school for a lot longer. If you can get two BS degrees without any additional time, that
Torque 3D Owner Marcus Daw