CS Education - Virtually everything is unsolved. How do we teach people how to code? What is the progression? Do we teach them how to "think" algorithmically first or just dive into a specific language? How do we assess their learning? Which skills are transferable?
I'm not saying some ways of teaching aren't preferable to others -- obviously, lectures and hands on teaching is better than just throwing high school students a Dennis Ritchie book and telling them to come back in a year. Just that there's no "one size fits all" answer. (Unless I misunderstand what you're asking.)