Coding in the Classroom

Computational Thinking for Kindergartners

Songs and games can be used to teach the basics of computer science to young students in age-appropriate ways—without a screen.

Teacher helping a group of kindergarten students with a project.
©Gable Denims/500px

Teaching computational thinking to preschool and kindergarten students? This may sound out of sync with what we know about developmentally appropriate activities for 4- and 5-year-olds, as computational thinking refers to the skills, concepts, and behaviors used in computer science to solve problems or complete projects. But my state of Virginia and others now require computational thinking instruction in grades K to 12.

Why? Schools must constantly look ahead to see what skills will be necessary in in their students’ lifetimes. The ways they will work, interact, and communicate will continue to evolve, and the young children of today will need to be fluent in the types of thinking that will drive many of the tools and services of tomorrow.

Much of the content in preschool and kindergarten is taught with hands-on manipulatives, games, and songs, and with thoughtful planning, young children can engage in such activities and develop computational thinking in age-appropriate ways. For example, at this young age, we can begin to scaffold an understanding of algorithms, sequencing, events, conditionals, and repeat loops.

Teaching Computational Thinking in Preschool and Kindergarten

An algorithm is a set of instructions used to complete a task, and the sequence, or order, of the steps is important. You can teach this concept by acting out or describing the instructions for any familiar activity—putting on shoes, brushing teeth, feeding a pet.

Ask children to create picture cards to sequence a “program” for that activity. Demonstrate what happens when the sequence is changed. Or read a picture book in which a character travels to a clear sequence of locations. Write a “program” for the character’s movement, and then, using a map and a doll, run the program by moving the doll to each location on the map.

An event is a trigger that causes an algorithm or program to run, and conditionals define the set of conditions that must be present to run the program. Ringing bells, clapping hands, and turning lights on or off are all familiar events that teachers use as signals for classroom transitions. They can easily be turned into conditional statements: “If it is raining when the bell rings for recess…” or “If I am standing by the door when I clap my hands….” Age-old games like Red Light, Green Light and Simon Says can also be adapted to teach the concept of events and conditionals, while incorporating movement and playfulness.

Repeat loops signal how many times a command or sequence of commands should be repeated. In students’ lives, each meal is a repeat loop of delivering a bite of food to the mouth, chewing, and swallowing. Our daily routines are repeat loops of waking, dressing, eating, going to school, returning home, playing, eating, undressing, and going to bed.

These routines can be turned into “if, then, else” statements: “If the bowl has cereal in it, then repeat the eat loop, else put the spoon down.” “If it is a weekday, then repeat the school loop, else sleep late and play all day.”

Songs and dances can be an active and fun way to teach the concept of repeat loops since many have repeating lyrics and movements.

These concepts can be further reinforced through work and play with age-appropriate programming apps and robots, but do some detective work on the research that went into their development. Determine if they foster passive use or, preferably, active problem solving and creativity. The ScratchJr programming app and the Kibo robot are both supported by a hefty amount of research and were carefully designed to match the abilities, interests, and developmental stages of preschool and primary grade children. They provide children with opportunities to plan, take risks, problem solve, iterate, and perhaps most importantly, persist as they design, build, and solve problems in a playful way.

If you decide to add screen time to the classroom, limit the amount and be aware of how much screen time is happening in other classes and at home. Children need a healthy balance with other kinds of age-appropriate activities. The American Association of Pediatrics and Common Sense Media offer screen time guidelines and suggestions for each age group.

Developing computational thinking is important, but perhaps more important is developing behaviors for working with others and dealing with frustration. By asking children to work with partners or in groups, we can nurture communication, cooperation, and empathy.

If we wait until children are in middle school to begin working with code and robots, we’ve missed out on an opportunity to make it easy and fun. The bonus of starting early is the opportunity to teach some important social and emotional skills along the way. As we become more adept at building and programing machines to do our work, these skills play a large part in helping us make the ethical decisions about what these machines can do, how they will do it, and who will have access to them.