Teaching programming is by far the most difficult topic I have ever taught. As a math teacher I usually have a textbook full of homework problems to choose from, supplementary materials, pre-cooked texts and quizzes and the material is all designed for the grade level of the course. Programming typically has diddly-squat written for the high school classroom. The textbooks I have found are as exciting as watching paint dry. If a kid was excited by programming at the start, after the first chapter they are definitely bored.
It is hard to teach programming