When New York City educational technologist Dylan Ryder first programmed 15 years ago in high school, the programming language he used was BASIC. BASIC, which stands for “Beginner’s All-purpose Symbolic Instruction Code,” is considered one of the most popular early programming languages — yet it failed to interest him.
It was not until Ryder encountered Scratch in a graduate school course that he found himself hooked by computer science.
“Block-based programming grabbed me right away and I started using it with young students in a camp setting soon after that. They loved it, so I loved it even more.”
Now, Ryder teaches programming to all of his students at The School at Columbia University. In fact, he even spends quite a bit of time creating his own Scratch projects, just for fun!
The Scratch Foundation recently spoke to Dylan Ryder to learn how he connects programming to kids’ interests, and what he hopes students gain from these creative experiences.
I’m Dylan Ryder, an Educational Technologist at The School at Columbia University, a K-8 laboratory school in New York City. I teach engineering and computer science to third through fifth graders and I advise an after school engineering club with sixth through eighth graders.
I was first introduced to Scratch while taking a graduate school course in Actionscript programming. It was an introductory class, and our instructor’s first assignment was to use Scratch to learn basic computational thinking concepts like events, sequences, conditionals, loops, and variables.
It’s important to find points of integration for your programming activities. It not only promotes more collaboration and buy-in for CS education from your colleagues, but also models how computing is truly embedded into so many other fields in real life. Programming is everywhere from agriculture to the arts, and even professional sports.
We love to find ways to use Scratch to extend our classroom learning in exciting new ways. Recently, our fourth grade teachers used Scratch as part of a math unit and challenged students demonstrate their mastery of polygon geometry by making their own polygon-sorting games.
Another fun project from a third grade literacy unit involved students writing their own works of realistic fiction, then using Scratch to animate a scene.
A recent favorite of mine was an experimental music unit that our fourth grade music teacher, Sheila O’Shea, led us through. At the beginning of the unit, students were tasked with creating a collaborative chance performance in the style of modern composer John Cage. The entire fourth grade was split into four groups: Music, Dance, Costume Art, and Science/Technology. Each group prepared and rehearsed their own contribution for the cumulative chance performance. Basically, a chance performance is one in which the musical composition structure and timing elements are decided randomly (by dice rolls). Performers also can improvise when they are conducted to contribute.
In terms of my technology class, this experimental music unit served as a vehicle to integrate computer programming into the larger curriculum. In order to make the various instruments work, fourth grade students had to grapple with common computational thinking concepts (loops, conditionals, variables, etc.) and practices (iteration, debugging, etc.) while designing their instruments. We also dove into physical computing concepts with the integration of sensors (distance, touch, loudness, and motion) into our instrument designs. Students built and played MaKey-MaKey pianos and percussion boards, plus LEGO WeDo distance sensor theremins during the performance.
It’s important to me that students understand that computer programming is a creative process by which they can play, express themselves, and share their work. I worry that too many children — and adults — still have a narrow view of what computing is, and that they may exclude themselves, or feel excluded from participating, because of these misconceptions. It’s not all binary math and sorting data just to land a high-paying job.
While those properties of computing are important, they are not the only reason to learn to program. Once you learn some programming, you have an amazing toolkit for making and sharing wonderful creative works of art, music, fiction, games, and more.
One great way to build debugging into your student’s own practice is to have them participate in pair programing activities. Students take turns as “driver” and “navigator” while building a program together like professionals often do. As they work, they help each other spot errors and find solutions. Two heads are better than one!
I also like the “ask 3, then me” strategy. It’s appropriate and absolutely necessary in a teacher’s toolkit. Instruct your students to ask their question to three peers before reaching out to the teacher. They’ll wait less for help, and build a community of sharing in the process.
My only caveat is that helpful debuggers must tell their peers what they should do, rather than take over their friend’s device and actually do the work for them. Those seeking help never really learn by not doing.
Go against your “teacher instincts” and try programming with your students even though you might not feel like a content expert yet. Try an activity from the Scratch Creative Computing Curriculum Guide with them, let them know that you’re learning alongside them. Share your work with each other — they’ll love it!
Most importantly, structure your Scratch activities in an open-ended way with plenty of room for student agency. Give students some basic starter code and a good prompt. Encourage them to customize a project that you’ve started with them. Tell them to work together — it’s collaboration, not cheating. When your students have room to be creative and the freedom to explore the possibilities they will actively teach themselves new blocks and new ways of coding solutions to challenges. It’s powerfully motivating for them.
We wouldn’t expect young art students to paint exactly like their teachers, or to copy their work stroke by stroke. Your programming instruction shouldn’t resemble a paint-by-numbers activity either. “Do as I do” is boring. “Show me what you can do” is exciting.