I’ve been teaching programming to 7th and 8th graders for 3 years now, and I’ve been refining my approach each year. The first two years it was just part of my math class or technology class while this year I have a class dedicated to programming. Students love it; it’s creative, challenging, frustrating, rewarding, and as Steve Jobs said: it really teaches you how to think.
This year I focused on three tools to deliver my content.
http://www.playcodemonkey.com: I started the school year only teaching with CodeHS, but later quarters I augmented the experience with Code Monkey, especially when I started teaching 7th graders. Code Monkey is easier than CodeHS, and more game-like. Students transition nicely from Code Monkey to CodeHS.
http://www.CS-First.com: This is a Google site that is promoting programming for younger students. It’s run like a club, and Google has been generous about providing materials to make the experience more fun (passports, stickers, etc). CS-First uses Scratch but in a project-oriented way. You can sign up for different themes: Art, Game Design, Fashion, etc and the students are led via videos on the themed projects. I like this approach because by itself Scratch is too open-ended to serve as a good code learning platform. CS-First does a good job of parceling out useful coding concepts as the projects get more and more interesting. I use CS-First once a week with my students.
Next year? This summer I am attending PLTW’s Introduction to Computer Science training, and will be offering it to my students next year.