Having taught computer programming for over 25 years, I really believe in having students do it, the less I talk the better, the more their neighbors help them the better, the more I am there when they get frustrated the better. The more they learn to google and youtube to solve their own problems the better. I even have them searching the particle.io community, amazing how much easier it is to solve problems when you have 31 people working together, instead of one teacher telling 30 students how to program.
You may want to checkout my topic at Teaching High School Robotics with the Spark Photon