Future Game Coders - Online Education or College?
An anonymous reader asks: "My cousin is about to graduate high school and wants to enter the game industry. I told him to get a day job (possibly as QA in a game studio) and get an online degree like DeVry's Game and Simulation Programming degree or The Art Institute of Pittsburgh's Game Art & Design degree. I have a BS and an MS in Computer Science, and I've only found what I learned mildly useful for my game programming hobby. Should he suck it up and get a 4-year degree, or is taking online courses focused on game development the way to go? Has anybody gotten one of these degrees and done well for themselves?"
A 4-year degree is better than a fake degree
If he will love game programming for the rest of his life, skip the 4-year degree.
If he might want to change to something else later, say outside of computer programming even, get the 4-year degree.
-Tom
Neither course will guarantee him a spot (or even help) designing the great games of the future. Those are designed by suits in boardrooms, for the most part.
But at least a real degree is worth a little more than a comparable size of toilet paper.
I don't need no instructions to know how to rock!!!!
Unless the university totally sucks, a computer science degree contains most of the important stuff for game development: maths, maths, applied maths, more maths. Did I mention some math? Oh, and some system programming.
In the end, thats all what games are about.
I didn't check by myself, but my girlfriend who goes to CMU told me they have a graduate program for game programming thats fairly popular with EA too I think, so then one can kill 2 birds with one stone: have a fairly decent CS degree, and game specific education, with a potential big name having you in their line of sight as soon as you graduate... Its almost a flawless plan, if it is true.
Get the dayjob being a game tester, see how demanding and unlike playing games working in the field really is, and then go from there. Granted, it looks and sounds fun, but for every person who's bragging about how cool there job is there's probably a horror story to match it.
There's no real need to rush to college or start paying for speciality education right out of highschool. Make sure you like the smell the roses before you want to grow them.
I found both to be a waste of time
He will have far greater options with a regular degree.
An on-line degree is unlikely to open the doors that a degree from a regular college or university will.
Even from a regular college or university, the choice of the school can make a big difference. Years ago, I sent in an application to one company in New York City but never heard back. I mentioned that to someone who was familiar with that company. According to him, it is nearly impossible for anyone without a degree from an Ivy League School to get any kind of development job there.
So the choice of school does matter. A degree from an on-line school won't open near as many doors as from a regular school.
College is there for four things:
a) to further prepare you for a professional working life.
b) to give hands-on training with hardware you couldn't afford at home.
c) for people who can't learn as well on their own.
d) breaking into a career that heavily depends on diplomas.
Ask your cousin if he needs any of this, and he'll know his answer. D is definately a hurdle for programming jobs, but it fades as you gain experience to vouch for your skills.
Begin shameless plug:
Rensselaer Polytechnic Institute just got their new Games and Simulation Arts and Sciences program out the door--your son can get a four-year education in Game Design with one of five concentrations, or elect to take a dual-major or dual-degree with GSAS and a more traditional major like CS, Psychology, or something else.
I'm a freshman at RPI and I'm not planning on transferring into this program, but I am planning on taking a minor in Game Design Studies, which has been available for a couple of years now. I know some of the professors involved in making this program happen, and they've really been busting their asses to make the school faculty and the Regents of New York happy with it.
Read all about it here: http://www.gsas.rpi.edu/
Having a BS in computer science from a regular university won't hurt his ability to get a job working on games and it will definately help him should he decide he wants to work in a different area of software development.
This debate always overlaps with one of my pet peeves.
Namely, that people say "I did x, without going to (Univeristy|College|Dog Show|HS|...)" that is good for you. But you can't talk about how successful your career is until you've retired or have enough money to retire. And even still, the industry isn't like it was in 1999, and I doubt it'll look the same in 2047 (when this kid's about to retire).
I've been hearing stories for years about discrimination against older programmers. What happens if we programmers have to face stiffer competition in the future (against cheap foreign programmers, or languages that significantly boost productivity, or degree inflation caused by a horde of people like me worring about what is going to happen to them 30 years from now)? I'll take only one bet, of all the things that will change, HR trolls never will.
So just be careful before you tell a kid that the easy way pays off. Think not only of the present, but also of the future.
I work in the industry (art side, not code side), and I can say that at the end of the day it doesn't matter where you got your skills, as long as you have them.
.NET skills coupled with a good feel of game code (gained through modding) will be the foundation you need. From there, look at studios that have internship programs or offer short contracts for people new to the industry (do or die contracts).
We've got coders who are self taught, coders from 4 year programs, and across the spectrum in between. I would mainly suggest NOT going to DeVry or a vocational program like it. They don't offer a very strong foundation or practical projects to learn on. Go to a local community college and start working on mods if you want the cheaper/faster approach. Good C and
It's not stupid. It's advanced.
Coding games as a hobby and working in the games industry are *vastly* different experiences. If he's hoping to find a career doing what you do for a hobby, he's in for a rough time.
Vocational education will teach him how to code. A college education will teach a much broader range of things. Note that the games industry isn't all about coding, and if/when he gets sick of it, the college degree will be applicable to a much wider range of jobs.
I'd suggest that he intern at a games company for a little while and see if it's really what he has in mind. And if he thinks it is, then he can choose between learning to code and learning a broad range of skills, depending what he sees himself doing there.
It all depends what role your cousin wants to fill. If he wants to produce, he may be better served by entering the industry immediately as QA, since a large amount of producers move up from QA. If he wants to be a programmer, he definitely should go to college to some degree. I would suggest a standard CS program to get good fundamentals, but I have heard good things about the programs at DigiPen and Guildhall at SMU for undergraduate. If he wants to be in design, it's a little less solid. He could go to a program like those above and train for it, or he could just start authoring levels and mods for existing games. Both seem to have some credence, though generally I have found that companies prefer one or the other. Art he could go to a program for, but if he already has Maya or Max skills, his portfolio will be what makes or breaks him.
The CMU grad program is excellent, as mentioned by someone, though that would obviously be further down the line. I came through it myself, after a standard CS degree. It is an excellent all around primer on the team oriented entertainment technology industry.
Please note that the questions is about "Game coders", not about music developers or graphics developers. The reason it's better to educate yourself in Computer Science and Software Engineering is because you want to be a scientist / engineer, not a mechanic. Game programming is still programming and has all the requirements (In fact, at times more challenging requirements) as any other sort of programming. And don't we all keep telling college kids to focus on the "Science" aspect of "Computer Science" for the long run benefits?
A Compsci degree will train the student to think in an analytical way to solve problems and understand the mathematical background of games. While a game design specific degree will train the student to follow an already defined path (Which will get obsolete in a couple of years anyway). A computer science student will be able to handle all problems technical or otherwise reasonably well. Game programming is a complex field. Not having thorough understanding of maths and computer science can only produce average-at-best programmers. In fact, in some cases, even maths and physics graduates will be more valuable to a game programming task than a game design degree holder.
For now, knowing game programming doesn't mean that you understand computer science. But the other way round is true (To some extent).
A technical degree will teach the specific technologies for whatever part of game development your friend wants to get into. The question is whether your friend just wants to be a technician, or is he interested in understanding the systems he'll be working on. It's the latter skill that will allow him to switch careers, or advance beyond being just another code monkey.
I'll be honest, in my world, there isn't a lot of respect for people coming up from technical degrees.
My advice would be to go for a college degree, but dedicate units of spare time to learning the specific technologies for game programming, or slowly getting one of those online certs if he wants some sort of paper proof of knowledge.
Rather than spending four (or more) years in college up front, perhaps a better choice would be to get into the lifestyle for 6-8 months first.
I would recommend 8-10 cups of strong coffee per day, so that he can stay up writing code for 12-16 hours, 7 days a week (start slow - 10x6, then work up to 16x7). Not fun code, but really mind numbing stuff. Get a good test project, then let him go at it. Figure a good project might be 4-6 weeks long (say, 500-600 hours of programming). When he gets about 75% of the way through - ideally when he starts seeing the light at the end of the tunnel - change the specs. This will be hardest for you, as you'll need to phase the changes so that there are 2-3 new things that need to be incorporated each week, plus 2-3 things that will need to be rewritten. Make sure that you throw in the rolling-rewrite or two - somehting he's already rewritten that "needs" to be changed...again. If you're certain he's not saving old code, do a re-set once in a while to make him re-code something he's deleted as not needed anymore.
If he's not a slobbering idiot in 8 months, he'll at least be ready to save yoy a year's worth of tuition by taking 22-24 credits per semester. And you'll know he can hack the EA deathmarch. Well, at least until he has a family.
Is it just my observation, or are there way too many stupid people in the world?
It doesn't matter what major, just get a 4-year degree from a respected school, preferably the toughest school he's qualified for that won't overstress him.
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
You are simply wrong. Why do you think that game coders lament the fact that everytime we start a new game, we reinvent the camera? Hobby coding is just that, a hobby. It's totally different than doing it professionally.
I'll give you a hint, it's not because we're reusing the stock engine for the game we just finished, or any other stock game engine, for that matter.
As for the original question, get a four year college degree. Good fundamentals are the most important thing I care about when looking to hire someone. I think we've covered this topic pretty thoroughly already on slashdot (and my specific take).
I currently have no clever signature witicism to add here.
I completed my BSCS at ACCIS (now American Sentinel University http://www.americansentinel.edu/).
I would say it was as hard as many brick-and-mortar schools, but I couldn't say how it compares to an Ivy league school. My employer at the time made me a software engineer once I graduated. It took me almost 3 years (got a little head start at a JC). Most of the learning goes on at home, reading through work books and the text book. I think that distance education is getting better all the time, and most employers don't have a problem hiring people who complete their degrees this way. Experience ends up saying a lot more about a candidate anyhow.
Just my 2c.
~JB
...and regularly hire programmers. The job interview generally goes pretty much like any other engineering position. If he wants to code, he needs to know how to code. Don't know how to write multi-threaded code? Sorry, no job. Never heard of a pointer? Don't need you. That's not to say a four year program is required, we've hired people from game schools as well. Generally they have a background in CS (working in IT, another BS, hobby programmer) that has given them exposure to hard programming topics. I've found that in general game college doesn't give you any real rigorous CS training, and if you want to be a programmer its no different in this industry than any other.
Oh, and QA won't help you get an engineering job. It will take time away from school. Better off spending that time writing a demo or something, as that would be more impressive than saying how you tested X and thought Y would be a better way to do it.
I could just say "specialization breeds weakness", but I'll actually give a little more this time, I think :)
The usefulness of a 4 year degree is obvious - although game dev is gaining more and more cred, I would wager that many non-gaming businesses would hesitate to hire someone with a gaming degree (you don't always get to jump right into your ideal career, in many cases). Beyond that, the experiences from a good 4 year program are more than just learning how to make games - think of it like Public School, 400 level. Social interaction (read: networking with potential clients, employers, and coworkers) is a big part of the college experience for any would-be-professional.
Of course, one important aspect of becoming a professional in any tech industry is having experience BEFORE you get you got to school for it. I myself was involved in tech work a number of years before I started college. It'll give you a bit of an edge, or will at least put you on the same level as your peers.
"Better to be vulgar than non-existent" -Bev Henson
As someone who works at simply modding other people's game engines, I can easily say that you have no idea what the fuck you're talking about. Games aren't just about having an engine that you can simply throw assets at and run off the assembly line (well, EA may think so). Coding is an extremely important part of game design. Even if I were to agree with your point, SOMEONE has to make these engines that you speak of.
Depending on where you'd like to go with it, you may or may not require a computer science degree. If you're looking to get into the hardcore parts of engine design then computer science may be for you. There's an awful lot of complicated concepts required at that level, both in terms of application design, and mathematics. For 3d engines you need to know a good deal about 3d vectors, matrices, quaternions. If you're looking at programming AI then you've got to have not only a solid foundation of understanding the mathematics of the engine but also AI's own fun programming style, such as finite state machines, and graphs (especially with respect to pathfinding), just to throw a couple of the more popular AI paradigms out there.
On the other hand, if you're just looking at doing game logic code, which is still vastly important to a game (since it handles the details of gameplay), then CS might not be as important. A strong foundation in programming and at least an understanding of some of the topics stated above is an asset. As a modder, this is where I stand now. My education isn't complete, and I simply don't have the time to be fiddling around with creating my own engines or modifying those that already exist.
Game logic includes things like defining how items are stored in a player's inventory, building the bridge between the inventory UI and the inventory in memory, how enemies are spawned, the interaction of agents with the environment, etc. While some may describe it as being more "menial" (i.e. some may claim that there is not a lot of challenge when hooking up an interface with an API), I would say that game logic is still highly stimulating and provides a good degree of challenging problems to be overcome. While engine designers may be making interesting innovations in the world of graphics and physics, the logic coders are the ones making interesting innovations in the world of gameplay. To pull a quick example, Gears of War's "active reload" is something that is handled by game logic and not the engine, and I consider this to be at least a little innovative.
To further a counter-point to parent, the Doom 3 engine was licenced to Human Head for the production of Prey. Human Head did not simply have a team of artists that put assets and maps into the engine until they had a game. There was still a vast amount of change that needed to be made to the engine and the game code to handle the new things that happened in Prey. Portals that could be shot and seen through, anti-gravity, the ability to leave your body, etc. all did not exist in Doom 3. These had to come from somewhere; the coders from Human Head, that worked on a pre-designed engine. "Completed" engines do not preclude programmers.
From an employment standpoint, I can offer no advice. I have never been employed at a development studio nor have I applied.
Beware he who would deny you access to information, for in his heart he dreams himself your master. -Anonymous
Best of both worlds. I can get a BS in "computational media" and some extra stuff then stay for another 5 semesters and have a MS in CompSci. I can try the games industry and if it proves I'm not cut out for it or I don't enjoy it as much as I think I will I can go somewhere outside the industry and get a job that will do me well.
You mad
I've been programming video games on for about 9 years now, with many shipped commercial titles on various platforms.
For the love of god, get a real degree. "Game" degrees are useless outside the game industry, and a joke and target of pity from within the industry.
Hunt your preferred prey at Aliens vs Predator MUD. Join the war at avpmud.com port 4000
The longer and harder the degree, the more someone will believe you can learn and do work, in a very generic sort of way. If his vision of a career in games is working for someone else to make their games, then this is going to have an upside. So spend as much time and effort as possible; it's all about sending a message.
If he wants to make games and isn't thinking in terms of working for someone else, then top priority is to start writing games. Right now. If that's the way he wants to go, then CS may be useful, as education rather than as building credentials -- it depends on his existing programming skill.
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
Even wrong can be interesting. I've learned a lot from this thread- turns out code reuse isn't as prevelant in the gaming industry as it appeared to be to me (I happen to be the type of person who HATES First Person Shooter games- and DOOM3's engine seems to have taken over 95% of the gaming industry).
SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
Perhaps the original poster of the article wishes to set up his own game company - it certainly is possible in the UK. Put together your own team (find some entry-level animators/artists and put together a game engine demo to show to publishers).
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
How can you be a game dev without the calculus and linear algebra? The fact that you haven't used your CS degree simply means that your job may be outsourced soon. Computer science is a degree in applied mathematics; Mathematical logic, Number theory, Graph theory, Type Theory, Automata theory, Computability theory, Computational complexity theory, Quantum computing theory, Analysis of algorithms, Algorithms, Data structures, etc... A real computer science degree will not, and should not, teach you about practical programming, you should be able to pick that up on your own.
I recommend anyone looking for a real computer science degree to pursue a computer engineering degree instead.
After reading some of these comments, I have come to realize that a CS, CmpE or preferably a SWE degree would be better. If your cousin is dead set against a four or five year program, then he should at least consider a diploma program in a classroom setting, such as at the International Academy of Design and Technology in Toronto, or some similar institution. Nothing compares to being able to talk to your profs face to face.
By which I mean, clown college. As we all know, offshored humor is just not funny.
putting the 'B' in LGBTQ+
I think the 4-year degree is the way to go, assuming you are looking at a programming career path. Here's why:
- Game programming is hard. You need to be a first-class programmer (seriously), and I think the DeVry's degree would put you at a disadvantage.
- The game industry has a bias against online degrees (because of the above).
- The game industry often pays less than other software jobs. Having a better/more flexible degree might get you a better salary, since they will be competing against offers from non-game companies.
- College is fun. You might learn other things not directly related to game programming, and that's a good thing.
As for the path you suggested... as I understand it, QA is not usually a very good path for a job as a programmer, anyway. QA usually feeds more into producer/designer type jobs. To get a job as a programmer, what matters is to get as much programming skill/experience as possible - get part-time coding jobs and summer internships (even if they aren't in games) and try to do at least one really impressive games-related hobby project.One more thing I'll throw out there... if your cousin is only interested in programming because he wants to do video games, it's possible that game programming isn't the job for him. He might be better off as a producer or designer.
Total BS. The staff on most games is about 40% engineering. There are more artists per title than programmers, but the programmers make more money. I know because I work as a Rendering Engineer for a game company.
Programmers are needed to do everything from writing the code to optimize a mesh's index list for the GPU's post-transform cache, to writing blinn shaders, to making sure that the sliders work in the game so that the artists can work. The visual quality of a game depends on both artists and engineers. You need both, and even if you have an engine like Unreal, there is always more work to do.
Why? Because with a real college degree there will be very little question about his ability to learn something new. Or the ability to fully understand and comprehend a problem. Critical thinking and full problem analysis are skills that are only really developed at a good university. Sure you can learn a computer language on your own and learn the current tricks of the trade outside a university setting. But, if that is the case, you will only ever be a code monkey writing some sub function or routine. You will have a much harder time becomming the overall code designer, as your background doesn't show any experience at all with understanding full complex systems.
In other words, you may get into the industry, but getting higher then the bottom floor will be more difficult.
Besides, what will he do when the game industry decides to outsource to India? At least with a college degree in Computer Science or Engineering he has a chance to move to another industry. Just about every industry needs computer programmers, and many of them can not easily outsource (some can not do so by law). But with an industry certificate degree (i.e. DeVry Gaming, or similar), he will have an extremely hard time, and may in fact have to go back to school before being able to find other work. An engineering firm won't hire him for building their simulation tools if he has a degree from those types of institutes/schools, even if his last 2 years of work was building the physics model for outdoor environements in Half-Life Episode 9...
We were all warned a long time ago that MS products sucked, remember the Magic 8 Ball said, "Outlook not so good"
Check it out, there are many ways to get into, and stay out of the games industry. You are promoting two methods that will keep your family member on the periphery of the industry.
First: Don't be a QA. Yes, people think it's a great way to get in... yeah well no. In reality, QA isn't very much respected, and in the words of the director of SCEA product evaluations... "QA are little more than trained monkeys. It just isn't feasible yet to outsource them." - from a personal conversation during the GDC.
Now, we move on to the online degree aspect... are you kidding me? Online degree? Why not just buy a printer and print your own degree? Seriously, the only reason online degrees exist is for lazy people, shutins, and desperate people to spend enormous amounts of money on a degree of questionable quality. DeVry? HAHAHAHAHA. Take a look at gamecareerguide.com for a great article regarding these for-profit game design degrees. If your family member is really interested in going that route, take a look at sending him to Carnegie Mellon, UCLA, Digipen (they are one of the best consistently.).
So what should he do if he wants to get into the games industry? Get good in traditional art if he wants to be an artist, or get good with programming. Get a traditional 4 year degree, and tell him not to screw off. Tell him to be smart about internships, and to learn on his own how to develop assets, or code. whichever is his choice. He can also go the route of getting one of many games available that can be modified, and have him make his own assets, get them in an engine, etc.
Another option available to him if he is the programmer type... explore Microsoft's XNA. This is a great framework to develop a small game quickly. Next, meet some IGDA members, keep an eye on what the industry is doing, and research the future. He needs to be able to speak well, write well, and generate code, design concepts, or art assets quickly and in high quality.
Do those few ever so simple things, and he'll be making Halo part 5.
The vast majority of the people I know who got jobs directly out of college got jobs at places they interned at during college. I've seen this is true of the world at large, the software industry, and the game industry. With a 4 year degree you have three summers to build up your work experience, resume and contacts.
Also, college is an experience. I don't think I know anyone who would have traded away their college experience for their current job (I know people who would trade it away for their current grad school, but the point is most people wouldn't).
Make sure he understands that game development != real science. Constant crunch time, (relatively) low salaries, stress and deadly deadlines - what you usually hear about working in the game industry is true. It's really not so good.
Get the 4 year degree and a proper job outside game development, make your own games on the side. You can even sell them online on your own if they're good. You will enjoy it much better. I know I do.
You couldn't count the number of highschool students who want to go off to be a game programmer because 'games are so fun'. They tend to think that it's two hours a day coding and six hours a day having fun playing games.
The real life of a game developer is 60-80 hour weeks, running the same code over and over trying to find some obscure bug in some function that performs some obtuse mathmatical function. There's incredible pressure to deliver before a competitor delivers something similar. After a couple months, the stuff you're working on will make you want to cry because you've done it so much. Then, if your game flops, you get to look for another job.
You should first talk to him to discuss the lifestyle that he'll have to follow in most of that line of work and ask if he wants to devote several years of his life to that. It seems glamorous from the outside as a game player but it is a type job where your life will completely pass you by and all you'll have to show for it is poor health, poor eyesight, and little money.
Definitely a four year degree is going to massively help your case, especially as a "game programmer" (especially if you plan on being an engine programmer). But on top of that, look at most game position ads. They're usually looking for at least 1 shipped title. Trust me, spend some time actually making a gameplay example. It shows initiative as well as gives physical evidence of your abilities and why you would be a good hire DESPITE not having a shipped title. Oh, and don't think that you'll be driving a Ferrari either.
Here's WHY you want a 4 yr B. Sc. degree:
* You will be exposed to the breadth of comp sci. Games are one of the few applications that require you to know a little of EVERYTHING. Specifically:
If games sound a lot like an Operating System, it is because they practically are!
* Sure some of the classes you will never use again, but at least you'll have the language and the background to know WHEN you should choose one algorithm over another, and the pros/cons of each. i.e. static arrays over dynamic lists, etc. Learning big O notation will help in this.
* YES, you probably could be be a great games programmer without a degree, but it's hard to prove it without experience. To get experience you have to demonstrate you have the knowledge. (classic chicken-egg) That piece of paper shows that at least you
a) understand the basics, and
b) were committed to finish getting it.
* Lastly, don't get into game programmers for the money. The pay stinks, & the are hours long. (BOO Crunch Time). Only the crazy ones survive in this industry (avg turn around time is There is always something NEW to learn, especially when the "next-gen" consoles come out. (Usually scratching your head at trying to figure out how to best make efficient use of the hardware)
Cheers
sorry, last paragraph got munched....
* Lastly, don't get into game programmers for the money. The pay stinks, & the are hours long. (BOO Crunch Time). Only the crazy ones survive in this industry (avg turn around time is less then 5 years before jumping to another industry) because we eat, breath, and live code, and like constantly being challenged. There is always something NEW to learn, especially when the "next-gen" consoles come out. (Usually scratching your head at trying to figure out how to best make efficient use of the hardware)
(if anyone answers : )
How hard is it to get into the game development field for a programmer who has done 15 years of programming, but not game programming (for example in my case: desktop and web development (2/3rds desktop development) doing all sort of languages (my strongest being, these days, C#, C++, and (unfortunately, and outdated) VB 6). Have a 4-year Computer Science degree from University of Tulsa (got it in 93) and been programming ever since.
I was curious on the feedback (if at all to my query). I have always been interested in the game development field... i just ended up doing classic IT and business desktop software over the years as the job availability in the area I lived was basically that (and was kinda tied to the area for a time). Now, I don't hat my current profession and specialties therein, just always looking at something new.
I work in the gaming industry as a programmer. I have 13 years experience. I have hired (and fired) programmers of all stripes.
Some places are more snobby than others about your educational background, and I find that generally comes from the group in charge of hiring - a bunch of academics will want more schooling than a group of self-taught programmers. Having a degree will make it easier to get past the snobs, and the others won't really care about it because it's really not worth much. At the end of the day if you can walk into a game studio, sound intelligent and discuss programming topics with confidence you will eventually get a job no matter what the source of your knowledge.
I get asked this question periodically. I always recommend that the person get a degree at a reputable university. Not because it will help in getting into the gaming industry, but because you won't be in the industry forever. Most people drop out around the age of 30-35 because they want families, need to spend time with their wives and kids and that doesn't go well with crunch. People like to shit on EA, but they are far from the only company crunching. It shouldn't be that way, but it is. Having the degree smooths your exit to less stressful jobs outside the industry when you inevitably want that.
Another thing that I don't think anybody has touched on is talking the talk - I hire people who are passionate and interested in games. You obviously have to play them (although I get people who think games are for kids and are therefore trivial to make) but you also need to think about them, understand the common mechanisms involved and be able to discuss why some ideas worked and others flopped. Learn what kind of games the company makes before you apply and study both their games and competitors games. People working in any particular genre have a specific working language, and it makes you easier to work with if you already speak it.
Making games is definitely not "all fun and games". It can be fun, I still enjoy it 13 years later. It is very hard work and more challenging than non-industry programmers realize. A few years experience will grind those rose colored glasses away. Choose the company you work for carefully. Research them, if possible talk to people who work there. Try to get into conventions and talk to anyone whose ear you can bend. Go to the IGDA message boards and ask questions. Working at the wrong place will sour you quickly, but there are some good places out there that do give a shit about your health and welfare.
Game programming IS hard. It is much harder than anything you will encounter in the typical IT world. Having a solid engineering foundation, whether from a university or acquired from experience, will be a major advantage. I regularly interview many candidates with CS/MS degrees and others with IT programming experience who are unable to pass our technical interview, which is NOT specific to games. I'm talking about your standard Algorithms, Data structures and OOP type of stuff.
Well IMHO The OP said that his cousin is interested in getting into the game industry. How everyone interprets that as "I want to be a programmer", says more about the poster than it does the cousin. There's a wide range of jobs that involve games, that also apply outside the industry.
Now as far as the industry is concerned, with increasing complexity all around. There will be greater specialization with a smaller number overall. There will be the game engine/middleware companies and the content creators (with a smaller amount of programming). There may even be the stock assets company.
IMHO college teaches you more than just your technical training (provided you move away from home) and the skills that you learn outside of class may be just as important as the ones that you learn in class. Living at home attending school right now my life is basically the same as high school. Ive made no connections outside my local community and the best job opportunity is still the grocery store in town. By GOING to college or university you learn to meet people and make connections and these skills are what can get you a job beyond just technical ability.
"Game" degrees are useless outside the game industry, and a joke and target of pity from within the industry.
Oh? Hm. Guess I should of thought about that before I went and got a bachelor's of Game Development and got hired at a respected game studio. Probably would have saved from this whole "being a professional game developer" thing.
Wheel in the sky keeps on turnin'.
I've got a bachelor's of Game Design and Development and, not so coincidentally, a job at a game studio. Sure, the game degrees that are advertised on TV with hit phrases such as "tighten up the graphics on level 3" or "I make a living playing games all day!" are crap, but the real ones, such as Full Sail's, Digipen's, or Guild Hall's are nothing to snub your nose at.
Instead of going and getting a degree in a tangentially related field, such as mathematics or computer science, why not get a degree in game development? Of course, I'd only suggest that if he's *sure* he wants to be a game programmer. Otherwise, a more general degree might be the way to go.
As far as online classes... the only ones I've taken were for classes that were idiotic no matter what setting they were taken in (I'm looking at you, gen. ed. fluffer classes), so I can't really render an opinion either way other than saying classroom learning enforces some things better than an online class would and is more personal.
Wheel in the sky keeps on turnin'.
Just curious. Where the hell is another freespace game?
You mad
Open Source. Get your feet seriously wet. The best education is learning how to do something by doing it.
rhY
I hold very few opinions. I hold information based on observation and fact. If you wish to disagree, please use facts.
Well, DeVry degrees are generally a joke and target of pity.
Heck, heavily advertised degree programs come in two sorts: Diploma Mills, which make their money by selling degrees with no value, and Turnover Engines, which make their money by enrolling people who subsequently drop out due to real life constraints, dissonance (it was harder than I expected) or disillusionment (I'm paying for what?).
A degree in video games is ideal for a Turnover Engine school: people think, "hey I like games, maybe I should work on them." They go to a course taught by an underpaid CS MA, and drop out: either they realize there's stuff like math and work involved and bail, or they engage the subject and realize that the degree is gonna be worthless.
However, there are some "serious" game schools, whose employees do get jobs in the industry. Read what people say about DigiPen, or, for example, the guy above me responding to this thread went to Full Sail. He also seems to like GuildHall. Look at where the graduates go, and how many of them. Also note what the students do while there: what courses are they taking?
There should be a difference between CS and Computer Game Design. A proper Computer Game Design course should apply CS theory to the fundamentally creative and collaborative endeavor of making games. So students should come out with a portfolio that demonstrates their capabilities individually and as members of teams. Again, go to those websites and download some student projects.
Introversion are doing well out of it!
The subjects they taught me in this degree, are not often directly relevant to my day job - I work as a Storage Analyst, which is basically 'support, design and stuff' of SANs, Backup Systems and Archiving. These aren't really subjects that were covered in my degree.
My previous employer, I was working alongside someone who'd come in through an apprentice ship at 16, and had 4 years on me, with the company.
Which sort of shows, I guess, that experience _is_ a substitute for a degree.
The important point though, is in doing a degree I learned a _lot_ of things, that I'm starting to realise are phenomenally valuable to me. I understand the underlying concepts of so many things, not because I was 'taught' them precisely, but because I was taught how to think.
Once you start to understand what a 'computer system' actually _means_ then you start having an awful lot more ability to think laterally about how things should be done.
I've seen many workmates get into the 'don't understand it, so will put up with it' mindset, that's so _very_ prevalent, and have been shocked when I've pointed out a trivial solution that's just not at the 'layer' they're thinking of.
So, speaking as someone who spent 3 years on a degree. Worked part time for my second/third year, and moved into employment immediately. Have changed jobs 3 times, each time into something that I consider 'proper IT', and have quite a few people I know who _didn't_ do a degree, I would make the assertion that it's DEFINITELY worth it.
You will never have another opportunity to do it, between bills and pressures of work. It will be hard, but ... in my opinion it's an extremely valuable learning and growing experience. Do a degree. Do a degree in a subject you enjoy. It will serve you in good stead for the rest of your life. The subject is actually less important than the skills you gain, but obviously something relevant is more useful.
Almost all I learned in the university was completely alien to the real world. There are lots of things you can only learn by doing it, it's the "Thousand books are not worth a trip" effect. If he likes the industry, he should focuse on doing games by himself and entering a game company. That was my experience.
Your best bet to get a good education with the highest chance of getting into the game industry when you graduate is to go to Digipen
As far as I know they're the only school that will teach you relevant information to the game industry and give you a degree at the same time.
I wanted to go there when I was graduating from high school but being a Canadian couldn't get accepted because they weren't an accredited school yet, now they are except you'll have to be an exceptional student to get accepted.
Not only should he get the degree because of the wide aspects of the tech industry that he should be exposed to then, but also because it gives him something to fall back on if he determines that 22 hour days with no exercise, no sunlight, and no social don't really appeal to him.
I just want to add a big "Me, too!" to everything Unknown Soldier has said. I'm one of those who was programming games for <5 years before getting out of the industry. From the perspective of the work, it's great. You do need to use a huge range of skills. In a year and a half I'd done everything on his list, and more. It's incredibly challenging stuff.
But you've got to love it. And I mean you've got to want to eat, drink, and breathe game programming. Because that's what you're going to do. I got called on the carpet by my manager one day. He'd noticed that I was only working a 9-hour day, and that I wasn't going to get very far in the company if that kept up. Mind you, this wasn't "crunch time" and everything was completely on schedule. We had one guy who only went home to shower once or twice a week; he slept under his desk and lived on Chinese take-out. I have a wife and two kids, and I actually like to spend time with them. I got out of that hell-hole.
There were lots of other things wrong with the company contributing to its being a hell-hole. The whole "work harder, not smarter" mentality was only one of them. But from what I could tell, the whole experience wasn't an atypical for that industry.
Game programming (and art, sound, design, and all the rest of it) is only for those who really love it.
Chelloveck
I give up on debugging. From now on, SIGSEGV is a feature.
Since I am actually a Game programmer I am finally qualified to answer an ask slashdot question, (rather than just guessing and pretending to be an expert :)
The original poster is right. You will not get a programming position without group programming skills. Online trade schools are not taken seriously.
If you want to go the quick way I would recommend a 2 year trade school, such as Guild Hall, on campus at SMU.
There is a lot of variance in programming positions. The good paying jobs require an intense background in mathematics, probably the single greatest skill in game programmer. Most of my co-workers have double majors in CS mathematics or minors in mathematics.
In conclusion, I would recommend a 4 year cs degree with a minor in mathematics. Do it in a town with lots of Game programs, at a college with a Game Development focus area. THe other key to getting jobs is to intern every year of college withing the industry. Jobs will fall into your lap when you graduate.
Regards
----- 70% of all statistics are completely made up.
A big part as psychologists will tell you is the justifying of spending all that money, even if in one's heart the college degree wasn't everything it was cracked up to be. Rarely are you going to hear "I spent all that money, and it wasn't worth it". Slashdot tends to go for the "get a degree" advice every time these kind of questions come up, even if a college degree isn't always the right answer.
"Why? Because with a real college degree there will be very little question about his ability to learn something new. Or the ability to fully understand and comprehend a problem. Critical thinking and full problem analysis are skills that are only really developed at a good university."
Well then if the bad spelling, poor grammer, and terrible math, let alone the poor reasoning skills on slashdot is any indication? Either a college degree isn't what it use to be, or the majority here don't have college degrees but do feel free to tell others to get one.
It's not just a lack of code reuse but also a lack of automated testing. After being at Atari for six years as a lead tester, a lot of job interviewers were amazed when I told them that I had no automated testing experience since video games weren't designed that way. It's manual testing all the way. You turn on the console or PC, play the game from beginning to end, and see what crashes or looks ugly.
It's not just a lack of code reuse but also a lack of automated testing. After being at Atari for six years as a lead tester, a lot of job interviewers were amazed when I told them that I had no automated testing experience since video games weren't designed that way. It's manual testing all the way. You turn on the console or PC, play the game from beginning to end, and see what crashes or looks ugly.
I've had a lot of experience with automated testing of UIs- I'm a business programmer- and I've got to say, I'm quite underwhelmed with the concept. A good human tester will test things that no automated test programmer ever thought to test.
Having said that- I find it hard to believe that the game industry suffers from a lack of good manual testers; you'd think there'd be a certain class of geeks who would pay to have that job.
SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
Having said that- I find it hard to believe that the game industry suffers from a lack of good manual testers; you'd think there'd be a certain class of geeks who would pay to have that job.
It's the opposite problem. There are tons of high school students who will just die to work for free to test video games. Most video game companies are unwilling to pay for experienced testers who been around the industry for five, ten or more years since they can always hire straight from high school for cheap. The industry continues to suffer from re-inventing the wheel while not advancing like other fields of software development.
Many people have already covered the fact that a real CS degree is a huge benefit in getting and keeping a game programming job. I'll only concur with that (I work in the industry) and move on to something else.
Go to college for four years. Work is something you'll do for the rest of your life, college is something that only happens once. It doesn't matter if you get a CS degree or an English degree, the experiences you have in college are some of the most important learning you'll do during your life. The amount of social, professional, and personal growth that most people go through in the course of going to school is staggering. If you miss out on that by rushing into your working life, I'm really sorry for you. You're going to be working for 40+ years anyway, why hurry up to get into that? Take the time to broaden yourself as a person. Take classes you wouldn't otherwise ever experience. Before shutting yourself up in the world of programming, learn about history, music, biology, or philosophy. Not only will you be a happier person, you'll be a more sought-after contributor to game projects.
I yearn for you tragically. A. T. Tappman, Chaplain, U.S. Army.
Your cousin is more likely to get laid at a real university.
Education is so much more then just classes in one's chosen field of study. It's about meeting new people, learning to live independantly, and exposure to different ways of thinking. An online degree can't do that.
If your cousin doesn't value the piece of paper, he can blow off his classes to write games and drop out when he feels like it. I personally chose to get decent grades and graduate early, but I always tell kids that they're better off attending a college and dropping out over never going at all.
No, I will not work for your startup
I am also an industry veteran (10 years) with several shipped titles (Spiderman3 Wii included, which just was approved by Nintendo today!) and I went to SUNY Oswego in NY. They have nothing even remotely like a gaming degree, but you can take all kinds of courses. You may find this amusing but I think there is a lot of merit to pursuing one of the following degrees while working on your game development skills on the side:
- Psychology
- Philosophy
- Creative Writing
- Art (any kind)
- History
- (insert degree here that doesn't have a 1:1 correspondence with a job out there)
The reason I say this is that being well rounded and having soft skills are ginormously important. If you have the chops for programming or game art, the only way you're going to be able to be marketable is to do them on your own. Even if you were to go to a well regarded game trade school like Digipen, you still would need to have the passion to do it on your own.
That said, getting a general degree at a relatively inexpensive 4 year school will yield so many things for you, not the least of which is sparing yourself 4 years of the real working world. College is fun! I know a million people that hated high school, but barely anyone I know hated their university experience. You meet friends for life, party, and dream big. You think you know it all for a while and it's a great time in most people's lives. The thought of giving it up all to jump directly into the working world makes my stomach hurt. I mean for the love of God, do you want to get laid or what?
Now, it takes a boatload of work to get into the game industry. You've got to be out there on the web interacting with folks and busting ass to get better all the time (even once you are in!). However, the skills that a person picks up with a general higher education, like writing, public speaking, teamwork, and not the least important, beer drinking, are all very very relevant in the game industry. As an example, we have a mailing list and a group of engineers all did code reviews of each other's systems. While they were insightful and broke down the systems with technical accuracy, I was amazed in reading them all that these guys are actually good writers! Imagine that next time you're on a messageboard out there on the Intarweb and you read a post with bad grammar and misspellings. That is not looked upon kindly anymore in what was once known as the industry for kids who wouldn't grow up.
To sum up - Be well rounded. Take your time. Have fun. Work hard. Have another beer.
Do NOT advise him to get a degree from a certificate-factory, if he has the option of getting a real 4-year degree. UnknownSoldier touches on many of the reasons, but I'll address a few more:
1.) NO ONE can guarantee that you will get into the industry. At least if you have a CS degree, you can still get a job, if you don't.
2.) Some studios WILL NOT EVEN LOOK AT YOUR RESUME if you don't have a 4-year degree. Why shoot yourself in the foot like that?
3.) Universities teach things other than just programming. There are a lot of things you can learn outside your field that are beneficial for game development. Getting outside of the geek-culture echo chamber sometimes is a GOOD thing.
If you are worried that your CS program didn't cover much that you felt was useful for game programming, fear not. Every year, more Universities start up new game specialization programs. For example, Rensselaer JUST started up a degree program in Game and Simulation Arts and Sciences. There are other Universities that have had programs running for years. (SMU has the GuildHall, and CMU has their ETC program, etc., etc.). Get on the ball: You and your cousin should do some research into good academic programs.
The poster has a background in software engineering, but not necessarily his cousin. There are many, many jobs in the game industry where you may never see a single line of machine code: distribution, publishing, marketing, QA, graphic design, and even layers of management. Only if the cousin is seeking a programming job would I not fully recommend a 4-yr degree. Coding is one of the few engineering-related fields where you can experiment to your heart's content FOR FREE (i.e. no cost of materials or assembly). I doubt the cousin will be able to say for sure what field he wants to be in for the rest of his life, so I recommend he go to as prestigious a 4-yr engineering college he can find, try several things through academic internships, and work/play hard. College is also about networking, so he can more easily find a job by playing frisbee with a publisher's son than mailing resumes to a brick and mortar HR department. Those online degrees can be very helpful to the right people, but a generalizing statement is that they prepare you for entry-level work without the credentials necessary for upward movement. I know people who've spun off from these degrees to become very successful, but I don't attribute that to the degree as much as to their personality. Your cousin will know very quickly if he enjoys the game industry; let him learn the hard way :)
This question comes up all the time on Slashdot, and always gets the same answers.
Have you met my buddy the "Search" button?
Dunno :-P Space sims aren't all the rage nowadays. What I'm working on right now is pretty amazing, so stay tuned :-)
Wheel in the sky keeps on turnin'.
However, the skills that a person picks up with a general higher education, like ... beer drinking, are all very very relevant in the game industry.
:-P
You might think it's a joke... but it's not. 90% of the networking at GDC happens during the after-parties. It's amazing the amount of alcohol the industry as a whole consumes
Wheel in the sky keeps on turnin'.
Someone's cyberstalking me, apparently :-P
I've only had personal experience with Full Sail, but I've heard good things about the other two big gaming schools (Digipen and Guild Hall). One of the things that makes Full Sail unique is also a double-edged sword: low entrance requirements. Honestly, it's why I went to Full Sail and not Digipen (2.2 GPA in high school and a 3.4 GPA in college, it's amazing how hard you can work when you love the work). It does cause a lot of turnover in the first few months with people under-estimating the amount of work required and over-estimating the amount of partying they can do when they go to a hardcore school. But, to be fair, everyone's warned right up front, and are required to take a math test before hand to see if they'd suggest tutoring. Full Sail even now has "pre-Programming" classes before you actually begin school, if you wanted to get familiar with it before you enter the class.
I'm happy to take questions if anyone has 'em, about Full Sail, Volition, or getting into the industry (even though I'm pretty new to it myself).
Wheel in the sky keeps on turnin'.
You lucky bastard... back to modding.
You mad
He says about the same thing that everyone else in the game industry seems to say: You basically give up your life when you take the job. It doesn't matter how much work has to be done, marketing will determine the release date, and you WILL ship the game on that date - even if your entire team has to put in 16-hour days for half of a year straight.
I think I'd tell your cousin to pick another field...
Oh, you're not stuck, you're just unable to let go of the onion rings.
Check out game-oriented colleges such as DigiPen Institute of Technology or Full Sail. An online degree is a waste of time and money and is not trusted by anyone in the industry. If the dedication is there, one can go to a real college and get a real degree with an emphasis on games.
If you're gonna write "should of", why didn't you also write "would of"? It's SHOULD HAVE and seriously it's as retarded as "for all intensive purposes" and "artical".
My bad, but relax.
Wheel in the sky keeps on turnin'.