Here in Victoria, Australia, we have a new curriculum for the 2017 school year. Lots of fun stuff in it, but for me, the most significant portion was the separation of Information Technology from its “Design and Technology Family” (Food, Metal, Wood, Plastics, Textiles, Robotics and Electronics) into its own field; Digital Technologies. This separation was accompanied by new learning objectives; specifically IT went from being general computer use, to specifically and explicitly begin about coding and programming with a bit a collaborative project management and networking thrown in. It is completely different than its old iteration, but I like it. Take a look at it here.
The result of this, is that I have been doing a lot of thinking about the best way to introduce a class to computer programming. It is going to take years for this curriculum to be fully implemented; current students will not have the background skills that the curriculum assumes for years; they just have not been taught it. The reality is that it will probably take years to see this curriculum fully realized, skills will need to build upon skills that haven’t been taught yet.