Why Kids Should Code
It is 3 p.m. on a sunny Monday, and I have just finished giving a talk for hundreds of early childhood teachers in the Boston area. As I am making my way out of the room, a shy woman approaches me. She wants to know if she should allow her six-year-old to use ScratchJr—an introductory programming language for young children—on her own and how often. I smile at her. I have heard this question many times.
I ask her, “Will you allow her to read a book? How often? Will you allow her to write a story? How many of them? Always?” She replies: “It depends. It depends what book and it depends when she wants to write. I will not let her write a story while we are having a family dinner, and I certainly do not let her read some grown-up books I have at home. They can be scary for her.” In order to answer my question, this woman carefully considered the context. Similar logic applies to the use of technology: it depends.
Coding is a playground. It offers many opportunities for learning and personal growth, exploration and creativity, mastery of new skills, and ways of thinking. We do not always take children to the playground. There are other places to visit and other skills to develop. But when we do go to the playground, we want it to be a developmentally appropriate space.
In my work, I explore the role of coding in early childhood. I draw on the framework of Positive Technological Development to understand the developmental milestones and playful learning experiences that children can have while developing computational thinking and exploring powerful ideas from computer science. Coding can be a playground for children to become producers, and not merely consumers, in our technologically-rich world.
The playground approach to coding moves the conversation beyond the traditional view of coding as a technical skill. Coding is a literacy. As such, it invites new ways of thinking and carries the ability to produce an artifact detached from its creator, with its own meaning.
There is a producer with an intention, with a passion, with a desire to communicate something. Coding, like writing, is a medium of human expression. Through this expressive process, we learn to think, feel and communicate in new ways. Problem solving isn’t the primary goal of teaching young children to code. Instead, I propose coding to support fluent personal expression.
In the coding playground, young children create their own projects to communicate ideas and express who they are. They need developmentally appropriate tools, like KIBO—a robot kit for children aged four to seven—and ScratchJr. They engage in problem solving and storytelling; they develop sequencing skills and algorithmic thinking. They journey through the design process from an early idea to a final product that can be shared with others.
They also learn how to manage frustration and find a solution, rather than giving up when things get challenging. They develop strategies for debugging their projects. They learn to collaborate with others and they grow proud of their hard work. In the coding playground, children have fun while learning new things. They can be themselves and playfully explore new concepts and ideas, as well as develop new skills. They can fail and start all over again.
In this coding playground, children encounter powerful ideas from computer science that are useful not only for future programmers and engineers, but for everyone. Coding is a way to achieve literacy in the 21st century, like reading and writing. It needs to start early. Today, those who can produce digital technologies, and not only consume them, will be in charge of their own destiny. Literacy is a medium of human power. Those who know how to read and write can assert their voices. Those who do not are disfranchised. Will this be true for those who cannot code? For those who cannot think computationally?
It is our responsibility to introduce children to coding and computational thinking when they are young. We know that, as a literacy, coding will open doors, many of them that we cannot anticipate now. But we also know that these young coders are still children. As such, they deserve the best we can give them. It is not enough to copy models of computer science education developed for elementary or high school students. It is not good to give them programming languages created for older children, which are not developmentally appropriate for them.
As teachers, we need technologies and curriculum specifically designed for young children that take into consideration their cognitive, social, and emotional needs. This is novel territory. Therefore, these children are our best collaborators, as they can guide us through the complexity of their thinking.
As researchers, we need to explore the developmental stages of learning to code and the learning trajectories associated with computational thinking. We must understand what is truly happening when a four-year-old programs her robot to dance the Hokey Pokey, and a five-year-old makes an animation.
While there is a growing movement towards STEAM—science, technology, engineering, arts, and mathematics—education and research methodologies from those disciplines, we also look at research on literacy to elucidate some of these learning processes. Coding can be studied not only as a problem solving mechanism, but as a process that allows the creation of a shareable product of human expression.
As teachers all over the world begin to incorporate coding and computational thinking in early childhood education, may we have the clarity to understand how these can be integrated into pre-existing early childhood educational practices. May we see the children in their totality, as individuals with their own voices and their own stories to tell, and not only as problem solvers. May we encourage and support their playfulness as a way of learning.
Excerpted and abridged, with permission, from Coding as a Playground: Programming and Computational Thinking in the Early Childhood Classroom by Marina Umaschi Bers (Routledge, 2018).
Marina Umaschi Bers is a professor in the Eliot-Pearson Department of Child Study and Human Development and heads the Developmental Technologies Research Group.