Saturday, January 29, 2011

Computer Science Vs. Game Development (or Which Degree Should I Get?)

Note: This is long, if you don't want to read it, skip to the bottom to get to the conclusion and summary.

Weekly blog post #4, go! This one has been on my todo pile for a while, so as long as I am in ranting mode, I might as well get this off of my chest. It is a problem that is highly prevalent on many game developer forums, and especially so on one I often frequent, GameDev.net. Often, people will ask the question: "What should I do about college, is a game degree right for me?" Unfortunately, 9 times out of 10, the response is "get the 4 year degree in computer science, it makes you more marketable for non-gaming related jobs!" This answer comes almost as an automated response, as if the world has an away message posted just for this question.

As a disclaimer, please note that everything I am going to say and, for that matter, everything on this blog is my personal opinion. I am asserting that I am correct because it’s my blog and my opinion, but that does not mean that you have to agree with me. I will also preface this by stating that I have been to both a prestigious 4 year college and obtained a degree in Game Development from Full Sail, so I have experience with both sides of this argument. I have also worked several jobs, both in and out of the game development industry, so I can talk about the process of interviewing with non-gaming companies when you have a Game Development degree.

I'd like first to clarify a common misconception about game development degrees. The misconception is that game development = game design, and that game design = sprawling out some concept art, a story, a few stats, and having other people make your games. Or worse, some people believe that game development goes something like this. The position of "Idea Guy" does not exist unless you are funding the project or you are a proven developer with several successful titles under your belt. Even then, unless you are an indie or a huge name designer in the sphere of Miyamoto or Kojima, chances are you will not have full reign over the project you are designing, and that your personal game ideas will sit on the shelf, untouched until you either get enough money to fund your own project, or you learn to program and take up the reigns of creation yourself.

I don't say this to destroy anyone's hopes of being a game designer. There are more opportunities now than ever to design your own games, but they all require having a skill and being very good at that skill. So if what you are looking to do is go to school for "game design," I recommend you rethink your focus and go to school to obtain a skill that will let you -develop- games. You can specialize in programming, art, animation, sound engineering, or any array of things that float your boat, but you must have something to bring to the table or you will never even start down the path of realizing your goals and getting your dream game made.

So, what does all that have to do with the debate of Computer Science Degrees vs. Game Development Degrees? Mainly, I wanted to clarify the difference between "Development" and "Design." With a Game Development degree at any school worth its salt, you will be tasked with learning a good deal of programming, as well as many other of the technical aspects of game development. Sure, there is a little design to be had, but most good game design school focus on teaching you usable skills to bring a project from start to finish, giving you hands on experience and letting you get your hands dirty. With a Computer Science degree at most schools you will be given a battery of classes, ranging from various forms of literature to health to math to lots of computing theory. A Computer Science degree will expose you to an array of topics you may not have otherwise even thought about, though lack of specialization will leave you needing to focus heavily on doing things outside of class in order to have a greater usable skill set immediately out of college. I recommend doing things outside of class regardless of which degree you decide to obtain, so this is nothing different.

The major benefit of a Computer Science degree is -not- that it makes you more marketable to companies when it comes to getting a job. The benefit is just what I mentioned before: you get exposed to things you may not have otherwise thought about. If you are not quite certain which area of game development you might be interested in, going to a normal 4-year college and pursuing a Computer Science degree is a good way to start. Chances are that by the time you're done you may not even come out with a Computer Science degree, you may have decided that instead you like doing art more, or you may have decided that you enjoyed that one class you took in Japanese and went on to get a degree in International Business. The process of obtaining a Computer Science degree gives you the latitude to better decide what you really want to do.

And it is exactly on that point that I differentiate the two degrees, deciding what you want to do. If you know that you want to make games, that it's your one passion in life and you really don't want to do anything else, then go for the Game Development degree. You will come out with less knowledge of general things (which can honestly be picked up by reading a few books outside of class anyway), but you will come out with much more skill directly applicable to making your dreams into reality. You will also gain a hidden advantage: connections within the industry. When you are at a traditional school obtaining a Computer Science degree, you are surrounded by various types of students who all have aspirations to different careers, from making banking software to designing rockets. But when you are at a school learning game development you are surrounded by people like you, people who want to develop games for a living, who are seeking to enter your industry. A good portion of these people will succeed in getting into the industry at various companies. Some of these people will quickly rise through the ranks into positions of power at your favorite development houses. How much easier do you think it might be to get in at Bungie when you spent several years in school with the lead programmer? How much easier might it be to get your resume seen at Valve when you've done level design with someone who is already working there? Most companies hire people first by asking around internally to see if anyone knows anyone who could fill a role. During your years obtaining a Game Development degree, as you interact with your peers you are basically putting in your bid for these positions way in advance.

Conclusion / Summary:
Do what you want to do. If you want to develop games, pursue your passion. There's no reason to go get a degree in psychology if you want to be a texture artist. There's no reason to go get a general degree in Computer Science when what you want to do is game programming. The biggest rationalization for Computer Science over Game Development is fear of commitment and fear of failure. If you want to be a game developer, go get the game development degree. Period. If you want to be a computer animator, go get the Computer Animation degree. Period. If you are not sure what you want to do in life, go get the Computer Science degree, not because it makes you more marketable, but because it leaves you with time and experience to figure out what it is you want to do, and that will make you more marketable.

Anyhow, this has been a pretty long post and I could go on for days about it. Maybe if anyone has further questions or there's enough interest I will continue this conversation. Till then, I will see you next post! As always, leave a comment or two, let me know what you think.

2 comments:

  1. Hahahaha I knew it was going to be that westwood commercial before I even clicked on it. Well written, my CS degree led me to discover that, while I enjoy programming, I most enjoy the analysis of people. I went on to get an advanced degree in Human Computer Interaction which is the perfect field where I get to use all of my skills and passions.

    ReplyDelete
  2. Silly westwood, U Can't Learn Anything. Some schools like USC have computer science games majors that combine both!

    ReplyDelete