As someone with a background in teaching CS at the high school and university level, I've had this sentiment for the last few years but have never articulated it as well as you've just done.
I went back to my old high school a few years ago to see the AP Computer Science class and the difference in the students was marked to say the least.