MIT's Scratch is one of my favorite ways to introduce students to programming. I have used it in projects over the last 8+ years in after school classes, digital art classes and extensively in my computer science classes (part of the CSTEM program). I have used Scratch with 4th-6th graders, and they love it.
Why Scratch?
One of the biggest reason to use Scratch, is community. Students can share and learn from people around the world (10? million projects and counting are online), and teachers can learn from the vast supportive teacher community that shares lesson plans and best practices. It comes with sound research and pedagogy from MIT. Some other reasons to use Scratch are below under 'Why Scratch'
Some of my own lessons / projects that I have used in my classes
My Scratch FAQ for use with students (answers to some common questions)
Some recommended resources to learn more on Scratch for teachers
Already know Scratch? Try Debugging some code
Good starter set of Debug activities created by Scratch Ed team
http://scratch.mit.edu/studios/237914/
Other debug activities from the CSTA 2013 workshop by the ScratchEd Team
Explore Scratch 2.0 new features
(from the CSTA 2013 workshop by the ScratchEd Team)
Why Scratch?