View Full Version : Go to School - Make Games
fitbabits
12-30-2005, 09:05 AM
Thanks to Gamecloud (http://www.gamecloud.com) for the info on the latest in educational offerings (http://www.gamecloud.com/article.php?article_id=2857).
There are two interesting announcements on new efforts to teach how to make video and PC games. Microsoft's Learn to Write C# the Fun Way (http://www.microsoft.com/events/series/msdnvideodev.mspx)
If you have always wanted to develop cutting-edge video games but are just getting started, tune in to our 11 free webcasts. Learn the concepts of 3-D video game production as instructors from DigiPen Institute of Technology demonstrate the key stages of developing a game engine using Microsoft Visual C# 2005 Express Edition, a new development environment for beginner programmers. Learn how to handle backgrounds, objects, and collisions. In addition, these webcasts provide a primer for handling artificial intelligence in your game, along with multiple levels and additional character functionality.DeVry University's Online Bachelors Degree in Game and Simulation Programming (http://tinyurl.com/dhkyg)
OAK BROOK TERRACE, Ill.--(BUSINESS WIRE)--Dec. 29, 2005--Building on the success of the game and simulation programming (GSP) baccalaureate degree program at 11 of its campuses nationwide, DeVry University (NYSE-DV) announced it will offer the GSP degree program online beginning in spring 2006.
Is anyone here enrolled in such a program or are you thinking about it? What are your thoughts on these initiatives? Good, bad or indifferent?
Citizen Philip
12-30-2005, 09:40 AM
Most of these programs, including animation and game design are run by colleges that are not officially considered "educational" instutitions. They charge lots of money and will take pretty much anyone: they want the seats FULL.
9 months, 20 students x $12 000 = Cash. They don't care, they want those seats full. DOn't expect anything you learn to help you get it, they'll help if you already know what you are doing.
yellowoystercult
12-30-2005, 09:55 AM
I have absolutely no history in programming, so although it'd be really cool to check this stuff out, it's not worth enrolling in a college program just to find out it's not really my thing. Been really interested in that Carnegie Mellon Entertainment Technology Masters program for a while, though. And it should be worth tuning in to the Microsoft webcasts.
Programs like these and the Carnegie Mellon one are undoubtedly going to become more popular and help make the industry more legitimate. Just as the film industry went through a period of growth where it began to define itself as an art form in need of study - technically and otherwise - the game industry will follow a similar path. Where film students may write papers on the impact of camera angles and musical cues on a film's overall effect, game students might focus on the control.
I wish my school offered a course on gaming's cultural impacts. There are plenty of ways to tie gaming in with ethnic and gender studies, world culture studies, and even theatre studies.
pdeupree
12-30-2005, 09:59 AM
Heh. I worked with a guy at a previous game development job that went to Devry. They made one of thier infamous "I graduated and now this is what I do" commercials with him in it, and in the background they showed games he wasn't even working on at our company. It's really interesting to see, firsthand, the distortions that go on with some of these commercials.
There were other elements to the commercial that "adjusted" the truth, but showing the games he didn't work on was one of the largest ones.
I've also always wondered about these online degrees since, in my opinion, part of what a person gets from paying their money to get a degree is the social experience of working with or around other students.
I'm just not sure what an online degree offers that you couldn't get by just reading some books and doing work yourself.
Now, the news about the Microsoft webcasts is much more interesting. I might have to check those out to see what they cover and how they do it.
Steele Johnson
12-30-2005, 10:06 AM
These colleges don't really need to offer a degree in game programming, they just need a good, solid Computer Science program. Technology changes so rapidly that it's best to get a good foundation in software design and development, and then you'll be able to choose your own direction. If you already know that you want to become a game programmer, then just find a good computer science school and take physics as a minor.
What these colleges really need to focus on is degrees in Software Project/Product Management. No one knows how to do this. No one.
JazGalaxy
12-30-2005, 10:16 AM
I just worry for the time and money that is going to be wasted by a lot of kids who get swept up in this out of general ignorance. I can't tell you how many people I see as a graphic design student who think they are going to work in the games industry yet have no real talent drive or knowledge of game making. I can see them joining this program simply because they're gamers, and what gamer doesn't want to make games for a living, and wind up dropping out becuase it's hard and not at all like they think it is.
amusedtoe
12-30-2005, 10:29 AM
Anyone remember how C# was supposed to be the new wave and destroy C++? Yea, that hasn't gone quite that way.
NACIONAL
12-30-2005, 10:39 AM
Anyone remember how C# was supposed to be the new wave and destroy C++? Yea, that hasn't gone quite that way.
just like java....
With C# you can make a lot of things faster (development time) and easier (think web service) than with C, but C is the master in areas that no one else can (Driver proggramming, Real Time applications, etc).
Varsity
12-30-2005, 10:46 AM
I think I'll give C# Express and these webcasts a go. I'll be bumping this thread in a few months. :p
koorb
12-30-2005, 10:51 AM
I watched the previous webcast series showing you how to make a 2D shooter and even though I am a programmer it moved too fast. The first few webcasts where good and way below my level so I was confident, but then it quickly ramped up and didn't explain what they where doing, concepts behind it or why. I haven't hared of anybody making anything from the series so I don't think I am alone in my issues with it.
This new 3D series could be different and I hope it is because the Video Game industry doesn't have any preferred entry point at the moment. People working in the industry are either experts in their own fields like music, art and animation that came to work for developers or people hired as slaves from some VG orientated course that provides companies with eager/nieve employees that can be worked hard for a few years before they burnout.
Steele Johnson
12-30-2005, 11:09 AM
Anyone remember how C# was supposed to be the new wave and destroy C++? Yea, that hasn't gone quite that way.
C# is a great language. And if you don't know a language like C# or Java, you're going to have a tough time finding a job these days.
Here's the breakdown of which type of software that's currently being developed:
games/multimedia: 3%
open source: 6%
mobile: 12%
network: 13%
enterprise resource planning: 13%
manufacturing: 13%
communications: 18%
application service provider: 23%
web services: 36%
real-time/embedded: 22%
system software: 24%
n-tier: 25%
e-commerce: 23%
database management: 38%
internet/web: 55%
client/server: 62%
as you can see, client/server, Internet, db management, and web services still has the most demand. All these applications and services require C#/Java, SQL, and some type of language like ASP, PHP, etc.
But I agree that it's good to know languages like C/C++ because it will help you understand memory management, heaps and stacks, etc. But for the most part, C#/Java/ASP/PHP/SQL has the highest demand.
So yes, C# and Java are blowing C++ out of the water. :p
endrom
12-30-2005, 11:20 AM
I'm planning to go to fullsail in two years, but the tutition keeps going. :/
gojira
12-30-2005, 11:48 AM
I've always thought the performance of Java sucked hard. It's ok for small apps and web applets, but anything larger I can't stand to use because it's so slow.
Is C# any better? Are there ways of making Java as fast as C++? Or is this all rapid development, cough it up to the consumer as soon as possible type stuff?
jeffool
12-30-2005, 12:15 PM
Hey endrom, as someone who went to Full Sail, let me tell you that they have some good teachers and some solid classes, but you quickly learn that the 'uppers' only care about filling seats. Those in control don't care about any of the school's programs, least of all games. I can honestly say that I wish I had just went to a local school instead. Sure it wouldn't have been gaming-specific, but if you can't teach yourself, Full Sail isn't for you anyway. A lot of it was sitting in class for four hours listening to a lecture, then getting an assignment for your next four hours in class (with lab assistants to ask for help if needed). And then sometimes extra work for home.
Don't get me wrong. I went, I graduated, I had a hell of a time. (Especially someone like me who isn't surrounded by a solid gaming culture in the area I live. That was a fantastic experience.) I made a couple of friends that I'm still in contact with to this day, a year and a half later. They keep you so busy that it's rare to have time to look back and say "Wow. I've come a long way." But it's a hell of a feeling when you do.
The thing is, with most of the graduates I know, that after you finish they scoot you out of the door and that's that. Now it's all up to you to get the job. And don't get me wrong, it's not their job to get you a job, but many folks, self-included, don't have the chops for successfully doing it alone. And if you do have the initiative and stick-to-it-iveness to do the job-hunting it takes in the world of video games, well, you could have likely graduated from some place insanely cheaper, with more indepth knowledge, and had taught yourself every nuance that you needed to know to make the games as well.
Of course, that's just my experience, though I will submit that it is shared by more than a couple of former classmates. Though, a few guys from my class have programming jobs as we speak. So it obviously can be done, and done well.
They're constantly changing their program, but if you've got any questions that I think I can answer, I'll gladly try when I come back tonight after getting off of work at midnight (Eastern.) Or you can email me. If not, I'll shut up now. :D
cjrizzo
12-30-2005, 12:23 PM
Yeah, amusedtoe, except nobody does C++ for web services and business applications. Everything we do (financial services, including real-time market data) can be done efficiently with C# (client apps, web apps) or Java (back-end processes, web services). Nobody around here has done C++ for quite a long time - rapid development works better with C# and Java. Game programming - that's another topic - but most businesses that write custom apps do it in C# or Java.
koorb
12-30-2005, 12:58 PM
I've always thought the performance of Java sucked hard. It's ok for small apps and web applets, but anything larger I can't stand to use because it's so slow.
Is C# any better? Are there ways of making Java as fast as C++? Or is this all rapid development, cough it up to the consumer as soon as possible type stuff?
.Net is faster than Java, and not as fast as C++, but that is the hit you take when you work at a higher level.
Hellstorm
12-30-2005, 01:21 PM
I'm planning to go to fullsail in two years, but the tutition keeps going. :/
Going to Full Sail doesn't mean you are going to get a job right away. I know quite a few Full Sail grads that are doing nothing two years after graduating.
Sometimes it's better to go to a regular college for CS, probably cheaper too. Unless you are going to Full Sail to learn 3D modeling.
Once you graduate, YOU have to do the leg work of getting a job.
jBusy
12-30-2005, 01:23 PM
I made a game curriculum (http://www.louisiana.edu/Advancement/PRNS/lala/2004-FALL/gamers.pdf) at The University of Louisiana as an undergrad/grad student. Some places would like you to believe that "regular programming" is not like game programming, which simple is not true. You have to take into consideration that the average number of years someone is in the game industry is 5 which which means you will probably not be in the game industry for life. (The industry is brutal at times) When/if you decided to get out of games or just take a break from it, a regular CS/art degree will be mighty helpfull.
I still believe the best way to get in the industry is to get a solid foundation for your field, and then do some games on the side with your friends. Anyone is welcome to PM me if you want more info.
jeffbax
12-30-2005, 01:26 PM
I have absolutely no history in programming, so although it'd be really cool to check this stuff out, it's not worth enrolling in a college program just to find out it's not really my thing. Been really interested in that Carnegie Mellon Entertainment Technology Masters program for a while, though. And it should be worth tuning in to the Microsoft webcasts.
Programs like these and the Carnegie Mellon one are undoubtedly going to become more popular and help make the industry more legitimate. Just as the film industry went through a period of growth where it began to define itself as an art form in need of study - technically and otherwise - the game industry will follow a similar path. Where film students may write papers on the impact of camera angles and musical cues on a film's overall effect, game students might focus on the control.
I wish my school offered a course on gaming's cultural impacts. There are plenty of ways to tie gaming in with ethnic and gender studies, world culture studies, and even theatre studies.
I go to CMU and yes, the ETC is quite a program.
But I don't hold much hope for these other things. Most of what I've read is you go to this school and they teach you a few APIs and scoot you out the door. That makes you good to be some code monkey or something, but not necessarily the best fit for high level positions.
I know that the ETC focuses on teaching you to work mostly with people and experimental ideas over just learning some API. Its a graduate level program so you have to have already earned a bachelors and be accepted (program is highly competitive). What you do is learn teamwork.
Classes like Building Virtual Worlds, you are given random teams, and you have two weeks to get your project done. Its incredibly intense, but everyone who graduates is well prepared to lead a team and get right into good practice for any company.
I am not convinced these other schools prepare you so well - they sound too focused on buzz words than a solid eduactional background.
I know we have a ton of industry scouts out here, and I think that the traditional education is important - as is the school helping to set you up with a company, and so far I've seen that works.
Schnoogs
12-30-2005, 01:29 PM
I've always thought the performance of Java sucked hard. It's ok for small apps and web applets, but anything larger I can't stand to use because it's so slow.
Is C# any better? Are there ways of making Java as fast as C++? Or is this all rapid development, cough it up to the consumer as soon as possible type stuff?
it's funny reading comments like this. I work for a fortune 500 technology company as a software engineer. We support a manufacturing line that produces well over 100 million dollars worth of products yearly.
Our entire system which includes complex process instruction and visualization systems were written in Java.
As a middle layer, Java has proven to be the superior choice in terms of performance and stability.
It may not be as fast as C++ but in this day and age with processors as fast as they are who cares. Unless you're doing something low level or speed is the primary concern Java is fast enough.
I go to DigiPen and while it's upper management's not focused on filling seats in the sense these other programs are, they still follow the practice as a form of cash flow. Pretty much anyone can get into DigiPen with its 2.5 General GPA/3.0 Math GPA requirement, and a lot of people do and then drop out because it's nothing like they expected. So there's about a 50% dropout rate that nets DigiPen $345 * 20 credits * 1 or 2 semesters of cash. The people who graduate, though, they know what they're doing. You know Rumble Box? The DigiPen game that made it in the professional IGF category? Made by TWO PEOPLE. The talent at the upper levels is amazing.
Also, DigiPen's more than happy to help graduates find a job, and as such I think over 90% of graduates end up with one out of college. They also have a career day where employers come around and play the student's demo games and ask them technical questions about them.
Hellstorm
12-30-2005, 01:51 PM
I go to DigiPen and while it's upper management's not focused on filling seats in the sense these other programs are, they still follow the practice as a form of cash flow. Pretty much anyone can get into DigiPen with its 2.5 General GPA/3.0 Math GPA requirement, and a lot of people do and then drop out because it's nothing like they expected. So there's about a 50% dropout rate that nets DigiPen $345 * 20 credits * 1 or 2 semesters of cash. The people who graduate, though, they know what they're doing. You know Rumble Box? The DigiPen game that made it in the professional IGF category? Made by TWO PEOPLE. The talent at the upper levels is amazing.
Also, DigiPen's more than happy to help graduates find a job, and as such I think over 90% of graduates end up with one out of college. They also have a career day where employers come around and play the student's demo games and ask them technical questions about them.
DigiPen is pretty well regarded. I have also heard they actually try and help you get a job. A few coders that I met that survived, the school and Claude Comair, are top notch.
Shifteh
12-30-2005, 02:18 PM
I have an Advanced Diploma from the Art Institute of Vancouver - Burnaby, and I think it was an amazing programme.
Probably not worth the cost, but then nothing really would have been.
It was formerly CDIS, which to you old folks of gaming, you might recall. Voted best in the world or some such.
In fact, if you check out the student category of the IGF, you may find my game there. Name of Sora, team Roundtable. So far we have had two of our programmers hired, our Lead has a huge chance, and the rest of us are stock still, in case we scare away employers.
Either way, I'd suggest you check out the entries. The Independant Games Festival is a great show for new talent, and has helped a lot of small companies start out.
Shifteh
12-30-2005, 02:29 PM
This new 3D series could be different and I hope it is because the Video Game industry doesn't have any preferred entry point at the moment. People working in the industry are either experts in their own fields like music, art and animation that came to work for developers or people hired as slaves from some VG orientated course that provides companies with eager/nieve employees that can be worked hard for a few years before they burnout.
Unfortunately, it does have a preferred entry point - the dreaded QA.
Unless you are a fantastic artist/programmer/level designer, you'll most likely end up in QA. I was singled out as a "Designer," and as such, I was told that I would have to suck it up and do QA for awhile. It doesn't bother me that I'm doing that job, per se, it bothers me that I paid 30k for a course that nets me a $10/hr job.
ElectricMonk
12-30-2005, 02:47 PM
I have worked with people from devry and digipen.
Digipen is actually located in the same building as NST (nintendo software technologies, basically the usa branch), and the guy I worked with was the top of his class and is now working at nintendo. Most of the graduates were pretty terrible, and I have to say if you're not motivated enough to do stuff on your own, digipen isn't going to magically transform you. They also have issues with their programming-as-a-team courses too, if you are good artist you'll end up spending your time doing art instead of doing programming (which is what you're paying for). Overall you'd have the same success with digipen as you would if you completed a mod.
DeVry seems to gear people more for the corporate database style programming. You wouldn't have any troubles getting a job, but might not be in games. My cousin took this and it actually made him less interested in programming than he was before he entered the course. Not sure if that was just him or the result of the school.
I took the route of just making games and getting hired when the dot com boom was going on, but then I became less interested in the video game industry and that lack of paper is a real obstacle to getting a job in traditional database programming. I'm almost stuck in the video game industry.
Hagetaka
12-30-2005, 03:12 PM
Game design colleges have been around for how long now? Im not overly certain, so dont quote me on this, but Id say about 6-10 years (First one I heard about was Digipen, back when i was a Sophmore in highschool). Its a perfect example of capitalistic America. I dont know about any of you, but when i was still in highschool, I really wanted to make video games as my career. And of course i was much too nieve to consider how brutal that industry really was. Game production companies go out of business, are bought out, and employees are consistantly laid off, very frequently. Dont buy into the fad (perhaps thats not the best term, yet as far as 'gaming colleges' go, most are underdeveloped at best), you'd probably be better off going to a larger college for a CS degree
/not to dis those who have or are going to a 'gaming college', im sure your very talented, and I hope it works out for you.
vallor
12-30-2005, 04:28 PM
Unfortunately, it does have a preferred entry point - the dreaded QA.
Unless you are a fantastic artist/programmer/level designer, you'll most likely end up in QA. I was singled out as a "Designer," and as such, I was told that I would have to suck it up and do QA for awhile. It doesn't bother me that I'm doing that job, per se, it bothers me that I paid 30k for a course that nets me a $10/hr job.
QA is the first step, it seems, to any non-art style position in a games company. It's not as sexy as most of the other positions, but as you advance down the QA track you can find great pay and a similar level of respect as other disciplines.
Personally I work QA in the games industry and have for 7 years now. I make a better living than most of my "professional" non-technical friends and use skills I have learned in design, programming, and people/product management all the time.
QA doesn't always have to be a stepping stone. For those that have the talent for it you can do nearly as well at some companies as QA as you could down one of the other tracks.
That said:
One way to improve your chances at bypassing being low man is to create your own game or join a team that does (as someone above mentioned they had). Get that game out via IGF, the web, Xbox Live! even a physical product like a board game. Any level of success (especially any retail style success) will increase your chances at skipping the "Dreaded QA" level.
Just like an artist building a portfolio of work that highlights your abilitys can give you a leg up. A library of design documents, a series of levels created using one of the more popular engines, a couple of nice DLLs, tools, or other interfaces that smooth out the rough edges in common processes.
A degree in gaming helps open doors (many companies I've worked for won't even look at a resume that doesn't have something about gaming on it), but for various reasons the degrees are still not given as much weight as someone with a more traditional degree.
I still see a lot of preference for people with a standard CS, CE, or even English degree who has gaming experience somewhere over someone with any sort of Video Game degree or certification.
This varies, but generally the exceptions are for art/level design where talent combined with the usage of the specialized tools (Unreal-ed, Maya/MAX) that is genearlly taught in the Art tracks of places like digipen/fullsail is often enough to give an edge over a "traditional" art degree.
Keep in mind, even as an artist or other "creative type" nowadays people are looking for a more technical skillset even for entry level. Learning anything about programming/scripting (something like PERL, LUA or even MEL scripting), security, database management, etc is often a pre-req for getting any position above low-man status.
Thats my opinion, its worth whatcha paid for it.
-Vallor
*edit: For the record I have neither a traditional degree nor a specialized gaming degree. I took my lumps as low man, but even 5 years ago that was more possible than it is these days, especially with the proliferation of specialized degrees and certifications.
gojira
12-30-2005, 08:02 PM
it's funny reading comments like this. I work for a fortune 500 technology company as a software engineer. We support a manufacturing line that produces well over 100 million dollars worth of products yearly.
Our entire system which includes complex process instruction and visualization systems were written in Java.
As a middle layer, Java has proven to be the superior choice in terms of performance and stability.
It may not be as fast as C++ but in this day and age with processors as fast as they are who cares. Unless you're doing something low level or speed is the primary concern Java is fast enough.
And comments like yours are also funny to me. I'm an engineer also -- as in electrical. My first job out of college was programming little Z80 industrial controllers. Eight bit. Assembly language is fun. :) I'm a great C programmer but only fair C++ programmer. Java is like a toy.
But seriously, mostly when I download some Java app from the web it's some horrible, bloated POS that barely runs. Maybe that's just due to poor programming practices. I do have one Java app I use a lot. The guy has been working on it for close to 6 years or so. He's now redoing the backend server code from C into Java, so I believe you when you say it's possible to have real production Java that runs well. But a 6 year learning curve? Yikes.
What do you do to optimize your code? Is it all "I just know what's fast" or do you profile and redo things that are slow? I know you can't tell me everything, but I'd like get a general idea.
Vulture
12-30-2005, 10:10 PM
Oracle uses JAVA for fast deploy apps that they can port to multiple OSes.
But the Backend and true core stuff is c++.
The ORacle Enterprise MAnager was written in C++ orginally for 9i and took the team ~2 years to get it out. The java replacement suppsoedly took 6 months. But it runs at best half as fast.
xanthome
12-30-2005, 11:05 PM
If you want to be a *GAMES* programmer, you need to know C and C++, no ifs or buts. A good CS course could teach you. Just knowing Java, C# or VB is *NOT* enough.
If you want to be a *GAMES* scripter, C#, Java are ok, I've seen guys that do HTML in notepad become excellent scripters and eventually programmers.
For all other positions, apply to QA, work hard and don't be a dick. It's the backdoor to the industry. Like most other jobs, knowing someone will get you hired if you want to do games bad enough. Be prepared to do gruntwork for a year at least.
motor
12-30-2005, 11:59 PM
I've been working in the industry for more than 7 years now as a programmer. It is possible to get into the industry as a programmer without going through the QA track. I've hired plenty of people out of college. If your technically oriented I would recomend going to the best school you can get into and getting a CS degree, take as many other classes as you can in art, history and english. The world has and always will run on people being able to write good documents of what they plan on doing and what they have accomplished (from design documents to milestone review documents). And then spend every waking moment you can writing games while you have the free time that most people do in college. Start off by ripping off the simplest, stupidest sprite based game you can think of and write every part of it from start to finish (from engine, to save game, to ui, to the manuals), and sell it /give it away on the web. It is a learning experience you won't believe. Then write another one that is slightly more complicated and repeat until you are done with school.
endrom
12-31-2005, 01:02 AM
Reply to hellstorm
I know that genius, I wasn't even talking about my full on career plans, so please keep to yourself. I was just attempting to make a relation to the post. please think before you go critizing other people's plans. especially ones you have no information on.
Hey endrom, as someone who went to Full Sail, let me tell you that they have some good teachers and some solid classes, but you quickly learn that the 'uppers' only care about filling seats. Those in control don't care about any of the school's programs, least of all games. I can honestly say that I wish I had just went to a local school instead. Sure it wouldn't have been gaming-specific, but if you can't teach yourself, Full Sail isn't for you anyway. A lot of it was sitting in class for four hours listening to a lecture, then getting an assignment for your next four hours in class (with lab assistants to ask for help if needed). And then sometimes extra work for home.
Don't get me wrong. I went, I graduated, I had a hell of a time. (Especially someone like me who isn't surrounded by a solid gaming culture in the area I live. That was a fantastic experience.) I made a couple of friends that I'm still in contact with to this day, a year and a half later. They keep you so busy that it's rare to have time to look back and say "Wow. I've come a long way." But it's a hell of a feeling when you do.
The thing is, with most of the graduates I know, that after you finish they scoot you out of the door and that's that. Now it's all up to you to get the job. And don't get me wrong, it's not their job to get you a job, but many folks, self-included, don't have the chops for successfully doing it alone. And if you do have the initiative and stick-to-it-iveness to do the job-hunting it takes in the world of video games, well, you could have likely graduated from some place insanely cheaper, with more indepth knowledge, and had taught yourself every nuance that you needed to know to make the games as well.
Of course, that's just my experience, though I will submit that it is shared by more than a couple of former classmates. Though, a few guys from my class have programming jobs as we speak. So it obviously can be done, and done well.
They're constantly changing their program, but if you've got any questions that I think I can answer, I'll gladly try when I come back tonight after getting off of work at midnight (Eastern.) Or you can email me. If not, I'll shut up now. :D
I didn't go to Full Sail, looked into it but it was far too expensive for me. I went to The Art Institute of Vancouver in Canada and did the Design program. From my experience there I can pretty echoe exactly what you said in your post. I too come from an area that only has a few studios local but their kept hidden away, theres no gaming culture around me either as you put it. Sounds as though we both pretty much had a very similar experience.
To be honest, if you know the industry well and your a programmer, even if you have no industry experience then you don't need someone to help you get a job. You pretty much just have to let them know you exist. I know that in Vancouver and here in the UK all studios are permanently on the edge of their seats looking for coders of any sort.
I also agree with what some people have stated further up, that if your into coding you dont really need to go a 'game school'. I think you only really need to go to a game school if you want to learn 3d Art and all that goes with it. Because that kind of stuff you really do need to learn from people who know.
dojoteef
12-31-2005, 08:45 AM
I go to The Guildhall (guildhall.smu.edu) at SMU. It's a graduate level program like Carnegie Mellon's. The difference is in the focus. Carnegie Mellon does not focus specifically on making video games, instead it is more general. It focuses on entertainment technology, as they call it. So they cover stuff like animation houses like Pixar as well. The Guildhall on the other hand focuses specifically on making video games.
It also sets itself apart from all the other games programs that pop up everywhere by accepting programmers, artists, and level designers. These disciplines then form together into groups to make games. That is the biggest difference between it and Digipen for example. Digipen does not have cross-disciplinary teams building games. Guildhall does.
One of the big skills the games industry wants is console experience. Well the Guildhall is working on getting consoles for us to program on as well. It is pretty much guaranteed at this point that we will be getting consoles to program on by our fourth term.
Guildhall is nice because the staff actively tries to get everyone a job. They strive for 100% job placement. They did that for the first group of graduates, I think the second group is at ninety-something percent, and this third and latest group of graduates (graduated in December) I don't know about yet. The graduates from the Guildhall have also gotten into some of the best companies in the industry. There are graduates at Blizzard, id, Bethesda, EA, Raven, Gearbox, Ensemble, Ritual, etc.
Not everything about the Guildhall is nice though. The program is extremely expensive and there are gripes that students have. The faculty does listen to some degree and tries to change what they can. Though the recent addition of electives (which aren't really elective) is upsetting us, it is required for the Master's program to be accredited. It goes with the territory I guess.
Schnoogs
12-31-2005, 09:36 AM
And comments like yours are also funny to me. I'm an engineer also -- as in electrical. My first job out of college was programming little Z80 industrial controllers. Eight bit. Assembly language is fun. :) I'm a great C programmer but only fair C++ programmer. Java is like a toy.
But seriously, mostly when I download some Java app from the web it's some horrible, bloated POS that barely runs. Maybe that's just due to poor programming practices. I do have one Java app I use a lot. The guy has been working on it for close to 6 years or so. He's now redoing the backend server code from C into Java, so I believe you when you say it's possible to have real production Java that runs well. But a 6 year learning curve? Yikes.
What do you do to optimize your code? Is it all "I just know what's fast" or do you profile and redo things that are slow? I know you can't tell me everything, but I'd like get a general idea.
Your post did nothing to discredit Java as a language...I know a guy who's taken 6 years to write a C++ app and it sucks. Using your poor logic that would imply that its the fault of the language and not the fault of the programmer.
Seriously..what was the point in your post? Stick with electrical engineering and leave the programming to Computer Science folk.
Talk about funny! ;)
Serapth
12-31-2005, 10:20 AM
Im not a big Java fan myself, but I would say the performance issues around it mostly stem from bag programming moreso then the langauge itself.
Its funny though, the things you need to know to make Java perform well, are alot of the selling points of not using C++. Memory management being the biggest. Automatic garbage collection is great, but in the end if you dont have a solid understanding in memory management, your applications will at time slow to a crawl.
My biggest beefs with Java ( and reasons I like C# ) are as follows. 1) The UI stuff sucks arse. AWT and SWING, ewww. WinForms is much much nicer. Granted, I dont do much cross platform work so thats not a selling point to me. 2) Having to declare exception handling mechanisms on every function. Again, ewww... I can see how it leads to good class design, but damnit, its annoying. 3) Confusing object vs native types. Int for example. 4) JNI, the ways of calling a native DLL are just gross and slow. This is where C# ( and .net in general ) takes the prize. Calling C++ code from C# ( or VB.NET ) is bloody simple, with very little performance overhead.
** disclaimer, havent touched java in a few years, so some of this stuff may have improved.
[SMS]Rantage
12-31-2005, 10:31 AM
But seriously, mostly when I download some Java app from the web it's some horrible, bloated POS that barely runs. Maybe that's just due to poor programming practices.
Another software engineer checking in; I've worked in the IT industry for over a decade, and I've used both C# and Java within the last 5 years on client projects. IMO both Assassin and gojira are correct on some points.
Java's performance is sub-par in the areas that most people see and associate with that language: applets embedded in web pages. Some of this can be attributed to poor programming, some to the size of the applet and the amount of bandwidth available to download the thing, and some to the fact that the Java visual components (the Swing library) is sluggish as hell.
Poor coding and Swing also plague Java standalone applications, though there are some ways around the latter -- most notably by extending the platform's native widgets (which is something that the Eclipse IDE does). Of course, by doing so you sacrifice platform portability.
That said, Java really shines behind the scenes. While Java's performance lagged well behind C/C++ in the mid-to-late 90s, improvements to the virtual machine and JIT compilers have made it very competitive...again, assuming that the code is running without any GUI. The base libraries consist of hundreds -- if not thousands -- of classes providing functionality that ranges from string manipulation to xml parsing.
Microsoft's .NET framework is much the same: tons of base class libraries in one convenient location. Whereas Sun touts Java as a "one language, many platforms" solution (although one can argue (http://www.steelmaelstrom.com/blogs/phileosophos/index.cfm?mode=entry&entry=5432CFB1-DC3F-A077-BF9F9EDAFF2FC73C) its true portability), the .NET framework is a "many languages, one platform" solution: if you write code in C# and your coworker prefers VB.NET or Perl or Python or one of over two dozen other languages that are supported by the framework, you can still work together and compile a single project.
If I had to choose between Java and C# for a standalone application (assuming I had no preexisting platform restrictions), I'd probably choose the latter just because of it's better GUI performance and development tools (Eclipse is great in many respects, but as someone who has had to build a Java GUI by hand in the past I'll take Visual Studio's capabilities in a heartbeat). The .NET framework's performance is also very competitive with C/C++ code; I couldn't tell you how it compares with Java and I don't want to get near that particular tar-baby, but if performance is key a native code compiler is also shipped with the framework.
The bottom line is (with few exceptions) that the best solution is the one that you can implement in the least amount of time for the least amount of cost without ignoring/sacrificing any requirements or placing undue stress on your coder(s).
One can debate all day about the wisdom of using (for example) Perl instead of Java or Tcl/Tk instead of C, but if you don't have to maintain it and the above has been taken care of...who cares?
Serapth
12-31-2005, 10:39 AM
Rantage'] Whereas Sun touts Java as a "one language, many platforms" solution (although one can argue (http://www.steelmaelstrom.com/blogs/phileosophos/index.cfm?mode=entry&entry=5432CFB1-DC3F-A077-BF9F9EDAFF2FC73C) its true portability), the .NET framework is a "many languages, one platform" solution: if you write code in C# and your coworker prefers VB.NET or Perl or Python or one of over two dozen other languages that are supported by the framework, you can still work together and compile a single project.
While in itself that is true, from experience I FORCE all our devs to use the same language (C# in my case). In practice, having some dev's working in C#, some in VB and some even in Managed C++, created an absolute maintenance nightmare. Unless a component is completely stand alone, trust me on this, use a single language for everything. Worse still, is visual Studio solutions cant contain multiple languages easily, which makes things even a bit worse to manage.
Schnoogs
12-31-2005, 11:14 AM
Rantage']Another software engineer checking in; I've worked in the IT industry for over a decade, and I've used both C# and Java within the last 5 years on client projects. IMO both Assassin and gojira are correct on some points.
Java's performance is sub-par in the areas that most people see and associate with that language: applets embedded in web pages. Some of this can be attributed to poor programming, some to the size of the applet and the amount of bandwidth available to download the thing, and some to the fact that the Java visual components (the Swing library) is sluggish as hell.
Poor coding and Swing also plague Java standalone applications, though there are some ways around the latter -- most notably by extending the platform's native widgets (which is something that the Eclipse IDE does). Of course, by doing so you sacrifice platform portability.
That said, Java really shines behind the scenes. While Java's performance lagged well behind C/C++ in the mid-to-late 90s, improvements to the virtual machine and JIT compilers have made it very competitive...again, assuming that the code is running without any GUI. The base libraries consist of hundreds -- if not thousands -- of classes providing functionality that ranges from string manipulation to xml parsing.
Microsoft's .NET framework is much the same: tons of base class libraries in one convenient location. Whereas Sun touts Java as a "one language, many platforms" solution (although one can argue (http://www.steelmaelstrom.com/blogs/phileosophos/index.cfm?mode=entry&entry=5432CFB1-DC3F-A077-BF9F9EDAFF2FC73C) its true portability), the .NET framework is a "many languages, one platform" solution: if you write code in C# and your coworker prefers VB.NET or Perl or Python or one of over two dozen other languages that are supported by the framework, you can still work together and compile a single project.
If I had to choose between Java and C# for a standalone application (assuming I had no preexisting platform restrictions), I'd probably choose the latter just because of it's better GUI performance and development tools (Eclipse is great in many respects, but as someone who has had to build a Java GUI by hand in the past I'll take Visual Studio's capabilities in a heartbeat). The .NET framework's performance is also very competitive with C/C++ code; I couldn't tell you how it compares with Java and I don't want to get near that particular tar-baby, but if performance is key a native code compiler is also shipped with the framework.
The bottom line is (with few exceptions) that the best solution is the one that you can implement in the least amount of time for the least amount of cost without ignoring/sacrificing any requirements or placing undue stress on your coder(s).
One can debate all day about the wisdom of using (for example) Perl instead of Java or Tcl/Tk instead of C, but if you don't have to maintain it and the above has been taken care of...who cares?
Nice post...it's nice to hear from people who are knowledeable and not just from people who are casual programmers.
At my work we use Java for our application server and we've proven time and time again that it was a superior choice to one written in C/C++. For our client apps we use C#.
When people describe Java as a toy they clearly either don't know anything about Java or their only familiarity with it comes from downloading some poorly written Applet once and they allowed that one miserable experience to form their sole impression of the language.
Java is a very mature and powerful langauge. It's proven itself time and time again as a very cost effective and reliable platform. There's a reason MS spent billions building .Net and hiring the Java creator to create C#.
Serapth
12-31-2005, 12:39 PM
Java is a very mature and powerful langauge. It's proven itself time and time again as a very cost effective and reliable platform. There's a reason MS spent billions building .Net and hiring the Java creator to create C#.
James Gosling is Java's creator. I believe he is still at Sun. MS hired Anders Hejlsberg to create C#, he being from Borland and the father of Turbo Pascal and Delphi. Neither language ive used much of, but I hear very happy things from Delphi users.
motor
12-31-2005, 01:57 PM
I've programmed a fair amount professionally in all three (Java, C# and C++). I agree with the previous post, I like the studio dev environment better then Java's options so JAva versus C#, I'd go with C#. As for C++ versus C#, for professional game development you simply have to use C++ (I also write console games, so C# isn't an option, but stay tuned on that one...). Beyond the native versus interpretted, there is the garbage collector to consider and it makes the code unacceptably slow (and the time of the slowdown unperdictable). But only for professional commercial games, I write shareware games in my spare time and C# is fine for that and very rapid to develop in. And now that C# has a template equivalent it is totally competitive with C++ as an expressive language.
dojoteef
12-31-2005, 03:15 PM
The language you choose depends on many factors, ease of programming, ease of updating, time frame, portability, speed, etc. Java has yet to become effective when speed is an absolutely vital issue, like in cutting edge gaming. You simply will not find a console game programmed entirely in Java. At least not in the near future. Java does work well for a miriad of other types of applications. It can be nice in those situations. Tools programming for games is a great example (though many people use C# instead). It just is not the ideal solution for all situations. People who advocate one language over another in general are already fighting a losing battle. There are no magic bullets; that's why there are so many programming languages.
BTW, how did a thread about video game universities turn into a programming language flame fest? Can we call truce on that and discuss the actual post. Maybe you guys can make a new thread to discuss programming languages.
[SMS]Rantage
12-31-2005, 07:03 PM
While in itself that is true, from experience I FORCE all our devs to use the same language (C# in my case). In practice, having some dev's working in C#, some in VB and some even in Managed C++, created an absolute maintenance nightmare. Unless a component is completely stand alone, trust me on this, use a single language for everything. Worse still, is visual Studio solutions cant contain multiple languages easily, which makes things even a bit worse to manage.
I agree completely with both points (I told my dev team we're using C# as well); code maintenance can be hairy with multiple languages, even if you're just dealing with C# and VB.NET.
I don't know if VS2005 supports multiple-language assemblies automatically (would be nice if it did); I didn't even know you could do that until I got my MCAD and learned about the command-line tool to use.
[SMS]Rantage
12-31-2005, 07:06 PM
BTW, how did a thread about video game universities turn into a programming language flame fest?
A flame-fest? Man, this thread is downright tame compared to others I've seen. :)
I have an Advanced Diploma from the Art Institute of Vancouver - Burnaby, and I think it was an amazing programme.
Probably not worth the cost, but then nothing really would have been.
It was formerly CDIS, which to you old folks of gaming, you might recall. Voted best in the world or some such.
In fact, if you check out the student category of the IGF, you may find my game there. Name of Sora, team Roundtable. So far we have had two of our programmers hired, our Lead has a huge chance, and the rest of us are stock still, in case we scare away employers.
Either way, I'd suggest you check out the entries. The Independant Games Festival is a great show for new talent, and has helped a lot of small companies start out.
I went to that very same school. I graduated from there in June 2005
Shifteh
01-01-2006, 05:12 PM
Nice, which game did you work on?
bobbler
01-01-2006, 06:55 PM
It may not be as fast as C++ but in this day and age with processors as fast as they are who cares. Unless you're doing something low level or speed is the primary concern Java is fast enough.
I think this mentality is the biggest problem in the software industry...
Maybe I'm just a glutton for punishment, but I can't stand the candy-coated langauges that are "above" C++ (anything beyond it, like C#/Java/Managed C++/VB/etc).
amusedtoe
01-01-2006, 07:20 PM
Rantage']A flame-fest? Man, this thread is downright tame compared to others I've seen. :)
Yea that was my fault, I made a vauge memory reference to how C# was supposed to be another one of those languages hearlded to bring an end to the way things were done and start a whole new way of life.
koorb
01-01-2006, 07:25 PM
I think this mentality is the biggest problem in the software industry...
Maybe I'm just a glutton for punishment, but I can't stand the candy-coated langauges that are "above" C++ (anything beyond it, like C#/Java/Managed C++/VB/etc).
A few weeks ago a friend said "wouldn't it be cool if there was a free app that converted text to MP3". Within an hour I had created an app that converted pasted text to a WAV file (thanks to the Microsoft Speech SDK DLL). I thought it would take a lot longer to make, but so much is already done for you in .Net most of the grunt work is removed. Five minuets more and it was multithreaded so the thing didn't freeze while it was converting the text.
That speed of development isn't possible in C++. Although the thing that nags me about .Net apps is that they take a couple of seconds to open. Even if it is just a stupid little thing. Still no buffer overruns or a concern over my app damaging system stability. So I am cool with it, and now the possibility of my apps running under Linux with no modification! Now that's just sweet.
amusedtoe
01-01-2006, 10:00 PM
A few weeks ago a friend said "wouldn't it be cool if there was a free app that converted text to MP3". Within an hour I had created an app that converted pasted text to a WAV file (thanks to the Microsoft Speech SDK DLL). I thought it would take a lot longer to make, but so much is already done for you in .Net most of the grunt work is removed. Five minuets more and it was multithreaded so the thing didn't freeze while it was converting the text.
All this programing talk makes me wish I had the chops for it, lol.
bobbler
01-02-2006, 12:20 AM
A few weeks ago a friend said "wouldn't it be cool if there was a free app that converted text to MP3". Within an hour I had created an app that converted pasted text to a WAV file (thanks to the Microsoft Speech SDK DLL). I thought it would take a lot longer to make, but so much is already done for you in .Net most of the grunt work is removed. Five minuets more and it was multithreaded so the thing didn't freeze while it was converting the text.
That speed of development isn't possible in C++. Although the thing that nags me about .Net apps is that they take a couple of seconds to open. Even if it is just a stupid little thing. Still no buffer overruns or a concern over my app damaging system stability. So I am cool with it, and now the possibility of my apps running under Linux with no modification! Now that's just sweet.
No doubt, and there are a lot of things they are very useful for, but I still can't stand them on a personal level. I've used them plenty, and I'll be the first to admit they save quite a bit of time (and that saved time is often hard to replace by the merely the possibility of efficiency gains of going asm/c)... they still bother me.
I just don't like the idea that processors getting faster and faster essentially gets wasted by software creation getting more bloated. Mostly it's just a personal preference and a distrust of compilers doing things for me...
vBulletin® v3.8.4, Copyright ©2000-2012, Jelsoft Enterprises Ltd.