views:

309

answers:

7

Hi, as the title says I'd like advice on choosing a degree for a future career in programming.

I recently attended a Mastering Physics workshop at the University of Nottingham, in which I attended several lectures. One of these lectures was dedicated to the benefits of taking a physics degree.

The lecturer said that physicists were often better at developing algorithms than computer scientists, and that many companies prefer physicists over computer scientists.

Given that I'm looking at video game programming in particular, and that his presentation made special reference to video games (ray tracing etc), I'm now not sure what degrees I should be looking at. The lecturer was most likely biased, I'm sure, since Physics was his field.

I do enjoy Physics and am currently studying it at AS Level. My question is, would it benefit me more to take a Computer Science or a Physics degree? Or any other degree for that matter?

Thanks in advance!

+7  A: 

I read Physics for my undergraduate degree from 2002-2005, and am now employed as a developer in the financial sector. As a rule, I haven't found that companies prefer Physics degrees to computer science, but nor have I found that they prefer Comp. Sci. - what most employers are interested in is you demonstrating good mathematical skills and critical thinking.

My advice is this: take a degree in what you enjoy more - you're going to have to dedicate 3+ years of your life to it, and a technical degree puts you in good stead for most technical jobs, almost regardless of the specifics of the course.

AlecZorab
Thanks, makes sense I guess. I'll research more into each subject and see which interests me most.
+1  A: 

I think it depends mostly on which subject interests you more. Getting a physics degree will make you valuable in some aspects of game programming but it won't teach you all the skills you need to develop games. That said, if I had the choice between being a physicist who had to learn to program or a programmer who had to learn physics, I would take the former.

Anyway, I would say that you should do more research into what you will actually be learning in each degree and see which you want to study more. Having a computer science degree is certainly not seen as a shortcoming to video game companies.

And as far as his statement that

many companies prefer physicians over computer scientists.

did he back it up with any more information? That seems like kind of a meaningless thing to say - how many companies? Which ones are they? What jobs do they prefer physicists for?

danben
He didn't say any specific companies, just that "physicists are usually better at developing algorithms and computer models and therefore are more sought after".Thanks for the advice!
+1  A: 

I remember reading an article from ACM once where they interviewed some of the luminaries in the gaming industry and they suggested that they prefer candidates with degrees in mathematics rather than comp sci because it was easier to teach a mathematician how to program than to teach the programmer the level of mathematics required for game programming.


I found the article that I mentioned.

Vincent Ramdhanie
Having worked with many mathematicians and their code, I'd say that it's not hard to teach a mathematician to code. It is, however, very hard to teach them how to code efficiently; concrete concepts like compiler and architecture optimizations are too practical (for lack of a better word) compared to the pureness of the math itself.
mmr
+1  A: 

If you have the ambition double major. If you specifically want to work with such things as ray tracing or physics engines which use very complex algorithms you will want a physics background I would recommend a Physics major with a CS minor. Additionally it seems that the financial industry prefers physicists over people with finance degrees as well but I only have anecdotal evidence for that.

RHicke
+2  A: 

Why couldn't you do both? Some people do a double major and thus can have the best of both worlds, in a sense.

I was in university from 1993-1997 in Waterloo, Ontario, Canada and graduated with a Double Honor's Bachelor of Mathematics with majors in Computer Science and Combinatorics & Optimization, so I do have the experience of doing a double major.

JB King
A: 

If you're going to write programs you'd better go for CS degree.

What you're saying is that people studying physics often are good at problem-solving and analytical stuff (not just general programming). Banks too often hire physicists to work as quants for instance.

PS Another thing to consider is your income. May be you consider working in a bank - quants gain a lot nowadays, far more that programmers do.

Captain Comic
What is a quant?
Scottie T
Quantitave Analyst - people who develop financial models (for security pricing for example)
Captain Comic
That was another one of his examples, banking. Thanks for the response!
+1  A: 

Why agonize over degree choices? Get PyGame (or SDL, or Ogre, or Flash, or whatever strikes your language/game type fancy) and start coding now!

On a more serious note, in my experience degrees have relatively little value to add to a programmer (unless you really are aiming for a very narrow niche and never want to leave it). Which is to say, if I was an employer, hiring a person with no formal education but with 3 years of solid programming over a person with any degree but without experience is a no-brainer. (On the other hand, I'm not in a position to hire anyone :-)

Of course, if you like studying, go for it. But I wouldn't expect it to make or break your career. And you should certainly do side-projects during that time.

Vladimir Gritsenko
I've spent last summer learning C++ and I'm now messing with SFML hehe. Thank you for the advice.
I am in a position to hire (not in the game industry) - and it's still a no-brainer. 'educated' people are easier to teach, but you have to un-learn much of what they know already IME.
SnOrfus