According to Code.org, 90 percent of U.S. schools are not teaching any computer science. Eyebrows have been raised this year as the U.K. passed a plan to educate every child how to code.
In my opinion, parents of every student in every school at every level should demand that all students be taught how to code. They don't need this skill because they'll all go into it as a career -- that isn't realistic -- but because it impacts every career in the 21st century world. Any country recognizing that will benefit in the long term. Here's how you can start.
Education Objectives for the Hour of Code
The Hour of Code initiative has a goal of more than 10 million students trying computer science for just one hour in school during Computer Science Education Week this year (December 9-15). In my classroom, I have three objectives with the Hour of Code, but you can use them to celebrate, teach and inspire analytical thinking any time of year.
1. Help students see computer science as an important aspect of being well educated, no matter their profession. I’ll be showing the Code Stars video:
2. Help parents and other educators see Computer Science as needful in our school. I’m using the video "What Most Schools Don't Teach":
3. Give my students another opportunity to program for at least an hour. Because I have choice in my classroom, I’m going to use this blog post to give my students a choice of how they'll program. We'll debrief and share the day after the Hour of Code to see which we want to use more deeply in the spring.
With the following resources, you can teach programming with every student and every age.
Apps and Tools to Teach Coding All Year Round
Code.org has suggested resources for educators, unplugged lessons (those not requiring computers), and has just released tutorials to help you teach computer science to kids of all ages. If you want to participate, sign up on their site to register your school.
Teaching Coding to the Youngest Students
- Tynker Games: Use these age appropriate games to teach your elementary students coding concepts. From Puppy Adventures to Math Art and Maze Craze, you'll find games your students will enjoy. Grades: 1-8
- Kodable has made news as an iPad app targeted to students as young as kindergarten age. The first 30 levels are free, more than enough for an hour of code. They recommend this for age 5 and up, but there are stories of kids even younger using the app with great success to learn to program. iPad schools will want this app on every device.
Teaching Coding to Age 8 and Up
- Hopscotch is the free iPad app for upper elementary and above. Wesley Fryer has created and excellent free ebook for Hopscotch in the classroom, full of challenges that you can use with students. He also recommends activating the emoji keyboard (go to Settings > General > Keyboards) for use with the program.
- Scratch is a programming game that can be downloaded or used on the Web and is supported by MIT. They've got a powerful Hour of Code tutorial where students can program a holiday card in their web browser. Or, if you want options for other times of the year, use the one-hour "Speed Racer" activity to teach your students Scratch. Teachers can watch this tutorial video to learn how, visit Scratch's Hour of Code Ideas forum to ask questions, or search "Hour of Code" on the forum for lesson plans using everything from coordinate geometry to Latin. Scratch is considered acceptable for beginners.
- Alice is another popular platform with a unique storytelling aspect. You can use it to create a game, tell a story or make an animated video. Like Scratch, Alice is free and supported by a powerful community of educators. There are two versions of Alice. (The newer 3.0 version still has a few bugs but also sports many new, very cool animations.) This longstanding platform is a rewarding tool that kids will want to keep using past the initial hour. Alice is considered more for the intermediate student, but experienced teachers can use this with beginners.
- Kodu is another programming tool that can be easily used on a PC or XBOX to create a simple game. There's also a math curriculum. This is one method that Pat Yongpradit, Code.org's Director of Education, used in his computer science classroom. (I've used it as well.)
- Gamestar Mechanic offers a free version that you might want to use for your hour, but if you fall in love with it, the educational package allows teachers to track student progress, among other features. The company supports educators, and there’s also an Edmodo community that shares lesson plans and ideas for the tool, along with videos and a must-see teacher’s guide.
- Gamemaker is an option if you want to make games that can be played in any web browser. The resources aren't as comprehensive and the community isn't vibrant, but this one has been around awhile and might be fun for a more tech-savvy teacher.
- Live Code is used heavily in Europe. There are also some U.S. schools using it on iOS and Android devices. With free downloadable materials by age level, this is an option for many BYOD high schools.
- Minecraft.edu is an option that lets you install and use Minecraft in the classroom. While this does require some purchase and setup, Minecraft seems to be gaining in popularity among educators as an in-house, 3D world-programming environment that kids love. Minecraft.edu has a Google group and best practices wiki.
Flip Your Classroom or Use an Existing Curriculum
- Khan Academy: Follow the Hour of Code lesson plan tutorial on Khan Academy for ways to teach your students. These lessons are for older students with one computer each, or they could be adapted to a flipped class model.
Use Hardware and Make Something Cool
Programming, making and creating have never been easier. If you're getting into the Maker movement or #geniushour, these are staples for your classroom. While they may take longer than an hour of code, they're definitely something 21st century schools can use, because students are programming and building with their hands.
- The Raspberry Pi is an inexpensive computer. While Kickstarter's Kano kit isn't available yet (but is likely what we'll be talking about next year), there are so many things kids can make with the Raspberry Pi. After setting one of these up with my 15-year-old nephew, I recommend that the teacher be a tad more advanced! This is definitely a tool I'd use in my classroom. (Cost for a kit runs less than $100.)
- An Arduino is basically a motherboard that you can make, plus a programming kit. I have one of these in my classroom, and the students are fixated for hours. Several of my students have spent the last eight weeks programming and tinkering with the boards. That said, don't share them between classes, as students will be undoing each other's work. (Cost for a kit is around $100.)
- Lego Mindstorms are part of my curriculum every spring. Students love Legos! I have six older Mindstorms kits that we've used for years. The newer NXT kits even have cool robots that can be made and programmed. This product has been around for years, so there are many resources for teachers. If you purchase an older kit on eBay, make sure it will work with newer operating systems.
How Do You Teach Coding in Your Classroom?In this post, you've seen 15+ ways to teach coding in your classroom, but there are many more. Please join the movement to help reach every child by sharing your story in the comments -- or a link to your favorite resources for teaching kids to code..