> Weightlifting isn't football. But if you get huge enough, your size from weightlifting predicts success in football.
Yes, but I imagine most people that got (some theoretical) degree in weight lifting or physical science wouldn't lament that it didn't teach them all the things they expected it to about being a good football player, but that's exactly what we get with Computer Science and Software Engineering.
A good foundation helps with some aspects of good software engineering, or helps steer some decisions, but by no means does it necessarily teach good software engineering (some programs might have some classes). I doubt that keeps the students from complaining about how they aren't actually being taught specifically to program, just like they did when I was in a CS program a couple decades ago.
I wonder if the training colleges that teach programming actually focus more on good software engineering practices? If so, they might actually come out of those institutions better prepared for the low end of the market than CS grads. For the middle of the market, a CS degree might give a leg up. For the high end, I imagine personal drive to learn and aptitude has long surpassed whatever advantage a CS degree gave. From what I've seen, the most knowledgeable and respected and accomplished people don't seem all that heavily weighted towards having a CS degree over another one.