This is a pretty good curriculum for the basics of Computer Programming I. It does cover the Utah standards for Computer Programming I in a student driven curriculum. There is teacher support with each lesson and a beginning teacher could use this curriculum to help students learn the material for the course. There is one downside to the course and that is that some of the text is dry to read and the activities are slow to progress to the interest of a typical student.
There are check point quizzes for each section, but they can be laborious to complete because of all the verification required.