Game-Related Education On the Rise At Colleges
The LA Times has a story about the increased interest in learning how to make video games amongst college students, and the subsequent rise in game-related education as the schools respond to that demand. Some programs are gaining legitimacy, while others do perhaps more harm than good. Quoting:
"The surge in interest has led schools to add games to their menu — but not always to the benefit of its students. Recruiters say they often see 'mills' that run around-the-clock sessions to quickly churn out as many students as possible. Other programs teach specific skills but not how games are pulled together. 'It's a very hot academic growth area,' said Colleen McCreary, who runs EA's university relations program. 'I'm very worried about the number of community colleges and for-profit institutions, as well as four-year programs, that are using game design as a lure for students who are not going to be prepared for the real entry-level positions that the game industry wants.'"
Somebody who'd want to program for a real game company would be better off getting a math degree with emphasis on programming rather than a CompSci degree with emphasis in software engineering.
On what basis do you offer this advice? Game development is a very practical endeavor, with a large number of very specialized requirements:
* C/C++ fluency is almost universally required. Other languages such as C#/Lua/Python
* Understanding of efficient coding practices and optimization
And, of course, you can then split off into one of many specialized areas:
* 3D graphics programming
* Audio programming
* AI and pathfinding
* Animation systems
* Cinematics/Machinima systems
* Physics programming
* Internal tools development
* Gameplay programming
* Platform-specific specialists
* Server/network programming
A math degree is useful for some of these jobs, but not all. Most programming job listings ask for a CS degree or equivalent in industry experience. You could probably get in with a math degree, and it might help you find a specialized programming job such as a physics developer (extremely math-intensive), but I just don't see it being too practical in a general sense.
Honestly, I can think of very few times I've had to call on any of my higher math skills as a game programmer (I specialize in audio, cinematic, and AI programming). Most of the time, basic linear algebra suffices quite nicely.
Irony: Agile development has too much intertia to be abandoned now.