This lesson plan includes a quiz, instructional video, interactive coding game and reflection activity. The quiz can be quite challenging if this is the student's first introduction to programming, but retaking it at the end of the lesson can be a great metric to demonstrate to the students themselves how much they've learned. Depending on the student's computer literacy, I might choose to do the refletion activity as a warm up and save the quiz for the end.
Hands on, no computer required game to teach sorting algorithms, I love these activities especially if my students are energetic from a recess or lunch. Sorting is a very important topic in computer programming, but I tend to use this activity in classes that have a big focus on programming as opposed to classes that are just spending a week or two on introducing coding. The lesson plan was clearly written by engineers so you may wish to reword the handouts/instructions to fit your class level.
Would your students rather draw on their hands than learn to count in binary? Now they can do both! Again this activity does not require computers for the students. Instead they write numbers on their hands (or have them write on their partner's hands) and then do simple binary math and word decoding. Sometimes I hold binary math competitions or give a "secret message" as a warm up for the students to decode.
In addition to their online resources, code.org has in person workshops led by experts in teaching programming to kids. You can sign up for one in your area here. I attended one of their workshops in San Francisco and it was phenomenal. The instructor had a strong background programming and teaching. Additionally, I got to meet other educators in my area that were facing the same challenges as me. The value of face-to-face interaction with an expert and peers cannot be overstated!
Although Elementry students shouldn't be too concerned with their future profession just yet, I like to use this list of programming professionals to demonstrate why we are bothering to learn programming. Additionally, this list is very diverse and shows people who use coding for their job but also have other hobbies and interests. It can be paired with a writing exercise, where students are asked what they imagine they could do with computers/programming in their future.
Another hands on activity that doesn't require computers for students. This lesson plan also references Brainpop's excellent programming video, which you can play for your class before the activity. For an added twist, you can assign different groups the same goal and have them compare their programs at the end of the activity. This is a good activity to emphasize that there is no one right answer when it comes to programming.
This is a great hands on lesson plan that introduces programming concepts while developing student's teamwork and communication skills. For classes with or without laptops these kind of psuedo coding on paper activities that demonstrate what it is like to write instructions that will be followed exactly as you wrote them are very important. The biggest challenge to becoming a successful programmer is learning to think like a programmer.