Just about any teacher who has incorporated Scratch into her classrooms knows that students love this free block-based coding language. Invented by MIT, Scratch allows users to drag-and-drop blocks that snap together to form “lines of code” that they can then run to see an output. With almost 40 million users, Scratch and its block-based coding language is the primary way students are introduced to coding in school.
It is what comes after learning block-based coding where we have a problem.
Over the last five years of using Scratch with students, I’ve encountered a disappointing reality: block-based coding doesn’t turn students into text-based coders. My students will spend a lot of time making games and other programs in Scratch. On Scratch, they are excited and engaged. When students are ready, I’ll challenge them to leave block-based coding behind and try text-based coding. I start with programs like the Raspberry Pi or Codecademy to learn Python, an easy to learn text-based language. When first confronted with these programs, almost all of my students shut down.
As they work through the beginner Python tutorials and videos, students aren’t shy about telling me how much they hate text-based coding. Computer science concepts like loops and conditional statements don’t transfer over easily into text-based coding for them. They are intimidated by the wall of text-based code they eventually generate and they hate going back through that wall of text to figure out when their code isn’t working, In all, I would say 9 out of 10 of my students lose interest in coding when making the move to text-based coding.
By exploring tools that bridge the gap between block- and text-based coding, we can better prepare our students to learn both of these languages.
Chris Aviles is a teacher at Knollwood middle school in the Fair Haven school district in Fair Haven, New Jersey. There he runs the Fair Haven Innovates program he created in 2015. Read more with Chris’s work on his blog TechedUpTeacher.com.
ADDITIONAL RESOURCES FROM TECHLEARNING.COM