I was fortunate enough to go to a high school that had an amazing computer science curriculum (8 semesters worth of classes). One really intelligent decision the department made was to not just mimic a college curriculum. After all, why teach something kids will learn a few years later? Instead, they mixed in some offbeat courses. They had a software development course that taught Python and basic web dev. They had a graphics course where you built a graphics engine. They even had an intro course with Racket. It's unlikely other schools will be able to replicate this exactly, but I like the concept of fun over "usefulness".