When I went to school, in the mid-80s, we were taught BASIC and Pascal, which was a good springboard to languages like C. Today, we have the benefit of more mature, object-oriented languages like Java which are great for educational use, but instead, my son's high school teaches with App Inventor, which is like teaching shop class with LEGOs.
We also have the benefit of great, now classic, books like the Gang Of Four's Design Patterns. We should be teaching kids something useful out of high school, yet we no longer do.
I'm mentoring on my son's Robotics Team, and find myself having to teach them Java programming from the ground up. I suppose it is good for them, but I'm not a teacher, I'm an engineer. Still, we are managing, and they are learning. I'd prefer it if a professional instructor had prepared them better, though.
Shame on educators for having gone this route.