While I agree that trade schools are a Good Thing ™, I have to respectfully but strongly disagree with your assertion that theory of computation and programming language semantics and implementation are somehow unimportant for any student of programming, whether vocational or theoretical.
True, it may not be terribly illuminating for a game programmer to rigorously prove historical theorems in computability or complexity theory. However, understanding the practical importance of big-O notation, the equivalence of any Turing-complete language, (as well as the lambda calculus, partially-recursive functions, etc.) and compiler design will all be of massive benefit when they're looking to actually distinguish themselves from the rest of the assembly-line game coders.
Overall, though, +1 on the idea of a solid two-year "Computer Programming" degree. Leave CS as a truly academic realm, and give those who are just looking for a solid white-collar career path a respectable path there.