If you'll excuse some gross generalizations for the sake of discussion I think that there are three main goals for various college programs.
- To prepare people for a job upon graduation
- To prepare people for a career upon graduation
- To prepare people for further academic endeavors - research, PhD, etc
The difference between a job and a career is a subtle but important one. People getting education for a job are looking for specific training on specific tools or areas in order to get a specific job. People looking to prepare for a career are much more focused on concepts and principles rather than specific tools or fads.
Education designed to help people on to graduate or research programs often go out of their way to avoid using current professional tools. They avoid even the appearance of being "vocational" in nature. They occasionally look for things that could not possibly have practical uses.
There is really a continuum with specific job training on one end and pure research preparation on the other end. Most education programs are somewhere along the line and not at either extreme. Honestly neither extreme is all bad or all good. It very much depends on the individual and what their goals are. I've known a number of people who are trying to make major career changes in their career rather late in the game. Often the best thing for them is some very specific training in tools and techniques that will enable to get a specific job.
On the other hand most younger students are better off in the long run looking for programs that prepare them for either graduate work or a career. In fact while we really do need more research PhDs in computer science we have an even greater need for career professionals in computer science and/or information science fields. We need people with a strong theoretical and conceptual base upon which they can continue to learn and develop throughout a long career.
Still I think that a lot of companies wish that new graduates had a bit of job skills - knowledge of current programming languages, development environments and other specific tools in their tool kit. Recently I've visited a couple of colleges in my home state of New Hampshire that seem to have found a good balance. Specifically they have some exciting new programs around game development. These programs are solid in the area of theory and concepts and yet they also embrace current professional development tools. Their students would certainly seem to have a leg up over students in programs that are either all theory or completely vocational.
New Hampshire Technical Institute in Concord is part of the community technical college system in New Hampshire. They have an interesting program in Animation and Graphic Game Programming. They have a bunch of Xbox 360s that will be used withe the XNA Game Studio for the development of games.
Southern New Hampshire University in Manchester has a series of courses that include IT and Digital Games, IT and Digital Music, and Digital Game Development. Languages include Visual Basic .NET and C#. Students will learn DirectX and Windows APIs among other things.
All three of these programs have professors in charge who have both academic and industry experience. I have been impressed with all of them and their dedication to teach professional development strategies using professional development tools without sacrificing academic rigor and a powerful emphasis on learning concepts. They are all also working with companies in the game industry to make sure that their courses are current and relevant to meeting the needs of that industry. At the same time there is a commitment to basic concepts and instilling the academic rigor that students can use as a base to learn the next big thing that will come along more than a few times during their career.
The combination of strong academics and preparation from faculty who really know how industry works seems like a powerful one to me. I'm looking forward to learning more about these programs and following the graduates of these still fairly new programs as they enter to work force.
[Note: Edited to add words missing because of a cut and paste error.]