This study creates a bias toward technical schools because they have a larger % of technical degrees than regular schools (MIT, GA Tech, CO School of Mines, etc)
Even the technical sides are of dubious quality. Let's take Computer Science, my field, a lot of schools are pushing OOP-philosophies w/o instilling a proper understanding of what they're for and where they're useful, this to the point where many new field-entrants (graduates/new job seekers) cannot see the value in something like Ada's subtypes, which focuses on excluding values rather than including [new] values. This is particularly disturbing given that any CS course should expose a student to enough math that they instinctively see the value of excluding values. (Excluding values is used all the time in mathematical proof; e.g. "for all positive integers..." excludes negative integers as well as all non-integrals & zero.)
Another indictment is the popularity of C-like languages in the professional field, to the point that many non-C-style languages are dismissed out of hand by hiring companies because "we can't find programmers for language X". {For example, LISP was used for Yahoo's stores but then recoded in C++ & Perl} -- if the universities were doing their jobs then new graduates would be able to see why C-like languages are terrible for production code (some companies have even developed their own version of the C++ Standard Template Library [STL] to address some of these deficiencies: link.)
Even the syntax is geared against humans who are prone to miss '=' vs '==' when typing (or reading) fast and, combined with another misfeature (allowing integers [and pointers] to directly control if-statements), means that if (x = 32) ... will perform the assignment and execute the TRUE portion of the conditional, creating a particularly irksome bug; and then there's many, many "implementation defined" things (like the sizes of int & long int, they could even be the same) at the base level that render code very unportable.