And quite honestly. It shows in the CS grad population too. A lot of us are condescending toward anything that doesn't make sense to us. But, I digress.
The best engineers I've worked with are all non traditional backgrounds, non degree or degree holders from non elite schools. They think differently, they tinker, they are incredibly nice and patient, and do it for the love of connecting humans to technology.
Look up the names mentioned in the article. Garcia, Ranade, Nelson. All of them are involved with highly theoretical mathematics and scientific computing. Just because you're good at 1 thing does not mean you are qualified to teach. And none of these professors are trained or taught or graded or performance managed on how they teach. For most of them, its just required that they spend 10% of their time in the classroom lecturing.
Let's be honest about another thing. 99% of EECS graduates, even from elite schools, are wrangling objects and their relationships to a graph. Simply put, we're all just a bunch of glorified JSON massage therapists. It just so happens that we get paid well for it, and we hold that over people. The same happens in the classroom.
I think in order to facilitate a healthy, educational environment for young adults, we as adults must encourage, motivate and make that environment fun and practical. We force feed binary trees and the compiler AST's, but we need to make it fun. It's like the commonly accepted saying: Schools kill creativity :(.