I know there's a lot in the forums discussing various university game programming degrees, but what I haven't seen is anyone that has attended one discuss the actual skills they obtained or continue to study there. It's usually just... this place sucks, you need a portfolio, a computer science degree is better, etc...
All I would like to know is if there is anyone that has attended either Devry's Game Programming & Simulation BS or Westwood College's Game Software Development BS that can tell me about the exact programming languages learned and the quality of the exercises and instruction? For example, C++, Python, OpenGL, SQL, etc...? Any GUI Development? And are all projects game based? Did you enjoy the courses and find them challenging?
To give you some background. I have 10 years of experience as a Sr. Business Systems Analyst... I've worked with most technologies you can name, BASIC, C++, C#.net, Oracle, Java, SQL, etc... for several fortune 500 companies. I have experience in design, database administration, development, analysis, quality assurance, and project management... so I'm not some ill prepared noob. Here's the catch... I have no degree. I'm completely self taught and have fought my way up to where I am now. I am looking into a Game Programming & Simulation degree for a couple of reasons... probably fully online (yes, yes I know).
1. The courses in a typical Comp Science/CIS degree are all on technology I've worked with longer than the dang professors and I have no intention on sitting through them, granted I realize some of the game programming courses will be the same way (c++, etc..)...
2. Most CIS degrees I've found do not cover advanced mathematics (3d, physics, etc...) which I am eager to learn and apply in game development.
3. 3d programming, engine architecture, audio, visual and mmo programming topics cannot be found in a traditional CIS degree.
4. CIS assignments and projects will be business oriented not game oriented and the data structures and algorithms are geared toward business, not high performance games.
5. No AI in CIS unless you are attending an above average school.
I realize I can learn these topics on my own and leverage my experience, however what I'm looking for is a structured curriculum dealing with the various Game Specific technologies. I've spoke to a few admissions reps at various schools and my probing questions on actual course work seems to confuse them... which was expected.
Any thoughts would be great!!
Thanks
Runicode

I am currently attending Westwood for the Game Development Degree, and I have a year left. I can give you a lot of information on this school, I will say they have changed the classes catalog for this degree just a little bit as far as gaming classes go. I can give you a brief breakdown of the classes I have taken and what kind of classes I have left. You start out learning C++, you know the "Hello world" typical first console application. I went on to learning data structures in C++, then we took a class in C# (I wasn't sure why), I have taken probably 5 C++ classes two of which were game developing classes one in 2D and one in 3D. We also took a class using the Torque Game Engine but that mainly taught us its TorqueScript not C++. I started out learning basic algebra, but I think my initial test made me start so low, right now I am in Calculus I and I have two more to take. This degree says Game Software Development, but it is a well rounded degree, taking Lit, Business classes (Project management, Computer applications(Word, Excel, Project, etc...), Took a class in UNIX, really I have taken over 24 classes already. The C++ classes end with the last class I took was making a Lexical Analyzer in Win32 Console, the other programming class I took was learning SDL API as opposed to the DirectX classes we took previously.

If you want to know more about this school I can tell you probably almost anything you need to know. I will say this, this school is expensive and it is an accelerated class obtaining your degree in 3 years has its drawbacks, you get 1 real break out of the year and it is 3 weeks long for Christmas. You go every 9 weeks on the 10th week your finals are being graded so you get a semi-break. This school is non-stop except for Christmas. You have to be very self-motivated. Of course I am speaking on terms of online classes and not the on campus classes. An important note to take here is that this school is an accredited college. Anyways again if you want to know more shoot me an PM.

Original post by RunicodeAll I would like to know is if there is anyone that has attended either Devry's Game Programming & Simulation BS or Westwood College's Game Software Development BS that can tell me about the exact programming languages learned

Out of curiosity, why do you care?

Quote:

To give you some background. I have 10 years of experience as a Sr. Business Systems Analyst... I've worked with most technologies you can name, BASIC, C++, C#.net, Oracle, Java, SQL, etc... for several fortune 500 companies. I have experience in design, database administration, development, analysis, quality assurance, and project management... so I'm not some ill prepared noob.

Out of curiosity, what actual positions did you hold. Did you do development for 10 years or development for 2 and some project management/QA/etc?

Quote:

1. The courses in a typical Comp Science/CIS degree are all on technology I've worked with longer than the dang professors and I have no intention on sitting through them, granted I realize some of the game programming courses will be the same way (c++, etc..)...

A great attitude. I suggest taking an actual CS program where you're not so focused on technologies, and on CS (where the professors have been doing it longer than you).

Quote:

2. Most CIS degrees I've found do not cover advanced mathematics (3d, physics, etc...) which I am eager to learn and apply in game development.

Again, I suggest taking a real CS program where you get ~8 semesters of mathematics starting at Calculus (and a nice well rounded background in physics and derivative physical sciences).

No, but they are by-and-large APIs that are fairly easy to pickup once you have a good solid language and program design background.

Quote:

4. CIS assignments and projects will be business oriented not game oriented and the data structures and algorithms are geared toward business, not high performance games.

Data structures are data structures. Algorithms are algorithms. It doesn't exactly take a rocket scientist to re-apply Djikstra's algorithm to Orc pathfinding instead of network routing.

Learning technologies won't get you very far. With as much experience as you have, that should be apparent. I don't have any first hand knowledge of either school, but feel that colleges that focus on job training rather than education will usually produce lower standard people.

Original post by Runicode1. The courses in a typical Comp Science/CIS degree are all on technology I've worked with longer than the dang professors and I have no intention on sitting through them, granted I realize some of the game programming courses will be the same way (c++, etc..)...

I somewhat agree with this broad statement for CIS as this degree is aimed more at a person seeking employment as a manager/systems administrator. However, this is generally not the case for any CS degree where the institution follows the ACM guidelines (or is one of the top universities).

My undergrad in CS consisted of exactly 1 technology related class. This was a 3 day class on how to get around the command line in UNIX. The intro programming class consisted of light theory and progressed from there. The class on programming languages was about the theory of languages which lead naturally into a class on compilers.

Quote:

Original post by Runicode

2. Most CIS degrees I've found do not cover advanced mathematics (3d, physics, etc...) which I am eager to learn and apply in game development.

Again, this is a product of CIS. Any competent CS Degree will require all sequences of calculus (single and multivariate), vector analysis (usually taught within calculus), linear algebra, probability theory, discrete mathematics. They will also require several hard science classes such as Physics I/II and chemistry.

Generally this is true. There are some specialized classes at a few universities where topics such as this are taught. Usually at universities that have 'media labs'. However, most universities teach along the lines of theory. Games are a practical application of theory(s).

Any two sequence graphics class will cover 2d and 3d programming topics. Theory based. My university then has another game programming elective. I find this class is mainly an attractor for the department.

You can purchase a book on engine architecture, audio and the rest. This will save you tons of money. The internet is there for help, and if you absolutely need a class, take a specific class online.

Quote:

Original post by Runicode4. CIS assignments and projects will be business oriented not game oriented and the data structures and algorithms are geared toward business, not high performance games.

Maybe at some universities, but certainly not at mine. All students take the first Algorithm Analysis class. This mostly covers deterministic algorithm strategies. We did touch on non-deterministic algorithms such as genetic algorithms. Tree based structures and algorithms are not just meant for 'business' or 'sorting'.

Quote:

Original post by Runicode5. No AI in CIS unless you are attending an above average school.

I don't know what university you are looking at. I also don't know how you are defining 'above average'. I attended one of the CSU campuses. It required AI from all computer science students... CS and CIS and CE. The was a standard state university.

Quote:

Original post by RunicodeI realize I can learn these topics on my own and leverage my experience, however what I'm looking for is a structured curriculum dealing with the various Game Specific technologies. I've spoke to a few admissions reps at various schools and my probing questions on actual course work seems to confuse them... which was expected.

Any thoughts would be great!!ThanksRunicode

I don't think you are going to find what you are looking for in a traditional university setting. I will venture to say you will get a better overall education in the fundamentals of math and CS. Most universities will allow you to use your work experience as credit. They will also allow you to test out of classes. There is a draw back to this though. You would have to take all the lower division classes required by your state. Things such as english 101 etc... This will take time that I presume you do not want to 'waste'.

One option is to take classes on a no credit bases. This way you can pick and choose the classes you want. No end degree however. I have a feeling you would do fine with this.

If you are dead set on a structured curriculum, then I would say something like west wood or game institute would be your best bet. I think it is a waste of your time and more so your money.

The only real thing you are lacking is math. Plain and simple. Your project management, development and analysis experience does not become invalid when designing a game engine. Browsing over Eberly's book should make this clear. The specifics will be new concepts, but the overall picture will be very familiar.

My recommendation is -

1. Enroll at a state university in a CS degree (online if you absolutely have to).2. Follow the MIT, Stanford etc.. classes (online) and curriculum for FREE.3. Buy math/graphics books. Study said books.

Well I'm not attending Devry's Game Programming & Simulation or Westwood College's Game Software Development but am attending also attending a CSU to get my BS in CS and like SMC said it's pretty standard fare across all schools in the core requirements for the degree like 2 years+ of calculus, discrete math, data structures,etc. This is strictly Computer Science degree I'm speaking of and not CIS or IT degree which is way more business oriented.I assume it'd be similar for most state colleges in Florida but you'd need to speak to a school advisor to be sure.I'm sure this has to do with accreditation and ACM or guidelines. But if you are in a hurry or don't care to sit through classes that you know more than the professor (I have in my basic programming course) you can bypass the courses by taking credit by exam or whatever form substitution the school allows. Keep in mind that even if you skip so many classes they still require you to complete certain so called general ed and so many units in your major at the school to get said degree. Some guy at our school that used to work for Intel took like 30+ units per semester to get his degree in like 2 years instead of usual 4 years. So basically he did double the normal 15 or so per semester most students do. He said he had to do a lot of writing to validate that he had the experience or done equivalent coursework to get out of a tons of courses too. You can probably get away with this at a state or online college but after looking at some of the exams and coursework at some more theoretical i.e. more math usually and tougher schools like Standford, Berkeley, not gonna happen there. I think even "the Woz" took 4 years to get his degree from Berkeley and he didn't even use his real name because he said he didn't want to be embarassed if he/when he failed his classes there LOL. I'm sure he had nothing to worry about though.

Having said that if you are that sure of your skills:Following the MIT, Stanford etc.. classes online and curriculum for FREE and buying math/graphics books and studying said books would be cheaper and faster.Then again you never really said what your original goal was in going back to school other than degree. If you have as much experience as you mention that can usually be substituted for lack of said degree.

In my case although a lot of the basic classes are review there are some classes that have been extremely useful and I never got around to learning on my own namely, Linear Algebra and Discrete Math.Learned way more about Djikstra's algorithm than I really cared to the differences from Prism's and Kruskals, etc. and how they all seem coming back to graphs. I once read somewhere that most programming problems can be solved in terms of graphs and that's a lot clearer now.Yeah you can probably learn a lot of this online now but there's no quicker way to learn it than when you need to know how to tell if a graph is a bipartite graph by next week for the final/quiz LOL or how to travel a tree postorder, inorder or preorder!

To answer a few questions, my time has been split almost equally over the past 10 years. I typically dabble in a little of each (development, analysis, project management, etc...) it just depends on the project. I've built POS systems, PMS, SIS, insurance apps, etc..., but what I've always really been interested in is game programming. I'm at the point in my life where a degree doesn't really matter in the sense that it does not really hinder my employment opportunities. I also don't think I would switch careers to Game Development unless the salary was right considering a pay cut would be required. I would love to switch, but the salaries are not up there and I have to think of my family first... this however does not mean I cannot pursue it as a hobby and if it goes somewhere then great!

I work excessive hours and travel quite a bit so I'm looking for a fully online degree. I would much rather attend ground courses, but it's just not possible. What I'm looking for is a Bachelors in computer science, CIS, or something where I can add a few new skills to my skill set, get my math knocked out and at the same time study some game programming, preferably at an accelerated rate. This way I further my education relevant to my current career, boost my income potential, finally meet my education goals, AND at the same time get some game programming concepts.

With all of this in mind, I figured it would make sense to just enroll in a Game Programming online degree as it would cover C++, C#, scripting, AI, 3d programming, databases, etc... The problem of course is I've only come across a handful of schools, all of which seem contraversial and potentially negative on a resume.

Original post by Runicode1. I've only come across a handful of schools, 2. all of which seem contraversial and potentially negative on a resume.

1. If those are the ones you need to decide between, then you just need to make a decision grid. http://www.sloperama.com/advice/lesson25.htmhttp://www.sloperama.com/advice/m70.htm

2. Don't worry about appearances. How a particular school looks on the resume is not as important as all that. Your primary concern needs to be to gain the knowledge you'll need.http://www.igda.org/games-game-june-2009http://www.igda.org/games-game-november-2005http://www.igda.org/games-game-september-2007

-- Tom SloperSloperama ProductionsMaking games fun and getting them done.www.sloperama.com

Please do not PM me. My email address is easy to find, but note that I do not give private advice.

Thank you all so far for your feedback! So I've been working my way through information on available game programming degrees at Westwood, Devry, and University of Advancing Technology trying to find a well balanced program. I looked more into Westwood College's Bachelors in Game Software Development degree and I'm quite surprised at the course work. Weighing in at a 196 Credits, which seems very large for a BS (usually around 120 correct?). The program seems to provide a very well rounded education with 73.5 credits in general education, with 7 courses in Mathematics and Physics. It looks to cover everything from C# and C/C++ to databases, Assembly, AI, Scripting, WIN32 GUI, Graphics Programming, etc...

Does anyone see anything lacking in the coursework that I would need to supplement? Even at an accelerated pace it will still take me 4 years to complete and I don't see anything missing that I would normally get out of a CIS or many CS programs. The tuition would run at $66,525... considering the number of courses, that doesn't seem too bad to me. My wife attended the University of Miami for a Bachelors w/ Double major (123 credits) at $150,000+.

Original post by RunicodeThe tuition would run at $66,525... considering the number of courses, that doesn't seem too bad to me. My wife attended the University of Miami for a Bachelors w/ Double major (123 credits) at $150,000+.

Ouch!

I don't know why she (or anybody) would pay so much for school. I recommend getting an associates degree at a community college or small school, then moving on to a bigger school if desired for the bachelors degree.

That University of Miami is charging $17,770 per semester is outrageous to me. The nearby Florida-Atlantic university charges $2100. Miami-Dade's website says $1100. Florida Tech is $5200. Shopping around would have saved your wife a hundred thousand dollars. I know very few people who have that kind of money just for a specific name on a diploma.

Once you have been employed for a few years nobody cares which school you went to, except for a few snobby people. They will just use the school as a checkbox to say that you earned a Computer Science degree, nothing more.

If money is a concern, I recommend Miami-Dade or another inexpensive school. The topics are the same as the expensive schools, and often the educators are just as skilled. Get a regular Computer Science degree for maybe $20,000. If you want to move to a more expensive school after an associates then do so, moving it up to $40K. Then go get a job.

Quote:

Let me know your thoughts!

I am against the game degrees for two main reasons: First, they are not accredited as full CS degrees. Instead they are accredited as "specialized fields" degrees and have no rigorous standards. Second, they are not portable. If for some reason you cannot get a job in games, or perhaps you discover that games just aren't your thing, or you want to take a break from the industry, you will have a difficult time getting a job.

If you are concerned about a game portfolio then work on hobby games on your own. If I can see a list of hobby games then I consider that as enough evidence. Artists need a portfolio showing their abilities, but programmers really don't. Lots of people get game programming jobs without putting together a fancy portfolio of projects. If you happen to have one and it looks good then it is strong evidence that you can do the job, but don't bank on a portfolio alone.

I rank a CS education as more important than a few completed games with no theory to back it up. Not a "Game Programming" degree, not a "Computer Programming" degree, not a "Computer Theory" degree, but an actual Computer Science degree. I can easily teach a skilled CS graduate how to make games. They know the concepts already and just need a little prodding to apply them in the right places. They will advance on their own.

On the other hand, it is generally hard to get a self-taught hacker with no formal CS schooling to advance because they have no background in the core concepts. One peer (who had no formal CS education) had been working on a scripting languages for several months. I sat down with him, rewrote his rules as a simple grammar, and after an hour of basic computer theory we were able to transform his scripting language into something both easy and useful. If he had known the basic concept of a grammar up front, he would have saved a month or more of development time.

Original post by RunicodeDoes anyone see anything lacking in the coursework that I would need to supplement?

Kinda weak on the math but then again this is usually the case with online colleges I have noticed. Well they had to cut some stuff I guess to fit all the game specific courses it looks like.The additional Calculus and Differential Equations is not the biggest omission but Discrete Math should definitely be in there somewhere.It covers a lot of stuff that you'll need later on and will make Linear Algebra a lot easier if you take Discrete first.Say if you were planning on getting a MS this list gives you a good idea of the types of things you'll be expected to already know or have learned getting a CS degree and you won't be clueless when it comes to grammars in a CS sense:Background. People enter the MSCS program with a wide variety of background experience. Some people did CS undergrads, and others have never done any programming. But most every MSCS class will assume that you've taken these classes, or their equivalents elsewhere:Mathematical Foundations of Computing. CS103 will give students the mathematical foundations necessary for computer science. Topics include proof techniques and logic; induction; sets, functions, and relations; an introduction to formal languages; DFA's, NFA's, and Regular Expressions; Context-Free Grammars, Turing Machines, and NP-Completeness.

Yeah I'm not quite sure why they didn't include Discrete Math. I wonder if they even offer the course... if they did I could take it outside of the degree. I looked around for an online CS degree... but I have yet to find one. I'm not particularly fond of a fully online degree, but unfortunately it would be my only option. The universities nearby do not offer flexibile enough ground courses. Thank you for the link, good info to know!

I don't see anything missing that I would normally get out of a CIS or many CS programs.

This presumes that you get the same education from two different courses with the same name. This is naive to say the least. And looking at the program, you're missing a lot of things you'd get from a good CS program.

All of which (except AI) are things that shouldn't be covered in a Computer Science program. And I suspect 'AI for games' isn't exactly going to involve nice formal grounding in AI theory.

Quote:

with 7 courses in Mathematics and Physics.

Algebra and Trig are not college mathematics. That you need to take them at all for your degree is an embarrassment. I'd also be surprised if either of the physics courses involve calculus, which is next to worthless.

Yah, even my physics class at my high school is grounded in calc (I took calc BC already and am taking a calc class at OSU)

by the wayyy, have you ever considered simply looking up the information you want online? I do that for pretty much everything now; I'm not talking about the junk thats the absolute basics written by people who know hardly more than that, I mean the university journals. Almost everything you could want can be found at a much higher level if you search google using the proper industry/academic terms.

This presumes that you get the same education from two different courses with the same name. This is naive to say the least. And looking at the program, you're missing a lot of things you'd get from a good CS program.

Quote:

Algebra and Trig are not college mathematics. That you need to take them at all for your degree is an embarrassment. I'd also be surprised if either of the physics courses involve calculus, which is next to worthless.

Obviously two courses with the same name may not cover the EXACT same topics... it is an assumption not being naive. It's all dependant on the University and Professor among other things. As far as the mathematics, I don't see how it is embarassing to take Algebra and Trig in college and you sound arrogant stating that it is! Over a decade has passed since I graduated high school and trig was not a requirement at the time nor does every high school student take Trig or Calculus. Regardless I'm going to need a refresher.

So my question is what courses are missing that would be covered in a CS program? I'm trying to determine the benefit of a CS over CIS or Game Programming degree and I have yet to see it. Everything that is explained to me is a CS graduate walks out the door with all theory and no actual skill set... unless it is leading into a Masters?

Quote:

by the wayyy, have you ever considered simply looking up the information you want online? I do that for pretty much everything now; I'm not talking about the junk thats the absolute basics written by people who know hardly more than that, I mean the university journals. Almost everything you could want can be found at a much higher level if you search google using the proper industry/academic terms.

Original post by RunicodeAs far as the mathematics, I don't see how it is embarassing to take Algebra and Trig in college and you sound arrogant stating that it is!

Sure, but let's be practical here. Algebra is based around the concept of abstraction based off of variables. The practice of programming is based around the concept of abstraction off of variables. (At least when I was in school) Algebra was taught at 7-9th grade. If you (not you, anyone really) cannot grasp that fundamental concept until ~13th grade maybe programming isn't for you. That the university assumes that the majority of their students need the course is not a good sign.

Quote:

So my question is what courses are missing that would be covered in a CS program? I'm trying to determine the benefit of a CS over CIS or Game Programming degree and I have yet to see it. Everything that is explained to me is a CS graduate walks out the door with all theory and no actual skill set...

University is not job training. A proper CS degree will get you a good math, science, communication and CS foundation. Westwood will (by all appearances) not provide that. You've listed all these technologies you've used. Did you need help learning C# or SQL? No. You'll need help learning hard stuff like algorithmic complexity and how to use that to make your programs way better. Stuff that is always going to be applicable, no matter what technology you're going to use. Technologies change. Computer science doesn't. Do astronomers go to college to learn how to use a telescope?

Now I understand what you're saying. So the next challenge is finding an online Bachelors in Computer Science... I looked around a bit, but the only things that are popping up look more like Devry or University of Pheonix... Can anyone point me in the right direction to a descent university that offers online learning? I looked at Penn State and they have an online program, but the Bachelors looks VERY lacking.

Original post by TelastynAlgebra and Trig are not college mathematics. That you need to take them at all for your degree is an embarrassment. I'd also be surprised if either of the physics courses involve calculus, which is next to worthless.

Quote:

Original post by TelastynSure, but let's be practical here. Algebra is based around the concept of abstraction based off of variables. The practice of programming is based around the concept of abstraction off of variables. (At least when I was in school) Algebra was taught at 7-9th grade. If you (not you, anyone really) cannot grasp that fundamental concept until ~13th grade maybe programming isn't for you. That the university assumes that the majority of their students need the course is not a good sign.

I am not sure what classes he was listing for, but I am a student at Westwood and can tell you I am in Calculus I and have II and III left after this, so for you to state I bet the physics classes don't include grounded calculus sound like a misinformed speculation. I started out taking low level math because I too needed a refresher since when I started my college courses 2 years ago, I had been out of school for 10 years. I'm only 26 now and is a long story ill stay away from, since the scope of this conversation has nothing to do with that. When you join a college you usually have to take prereq's when you take your assessment test they determine where you need to start in math and writing, if you need to start at pre-algebra, how is that the schools fault, and doesn't mean that you shouldn't take computer programming because you don't remember how to do algebra, that in no way means you don't understand the concepts.

My only real advice here aside from the schools is make sure what you really want to do in life and be realistic, I went to school for game software development, I moved to an area rich with game programming jobs, and will I be doing this, sadly no! Personal reasons are going to move me somewhere, where there isn't a game company within 600+ miles away and I will not commute back and forth, I'm married and have responsibilities, etc... Think about what you are going to do with that degree, and now that I will be getting a job in an area that doesn't need specialization in game development. Luckily I am taking well rounded courses for management, and the like, but I am sure ill still have to start and work my way up after I learn the company I get a job with.