Students stream into the computer lab and check out their Chromebooks from a cabinet in the back. Two big screens in the front of the room show a cartoon of a sprite and some characters who look like they’re made of rocks. Sunset Ridge Intermediate School teacher, Nam Nguyen, goes to stand by a laptop at the front of the room.

“Listen up! Today we’re going to be working on a project called Earth Dance,” he says. The kids all turn to watch. The cartoon animates with the sprite moving around, then the rock people follow in the same movement.

Nguyen continues, “Today, you will be playing—programming—Splash as your primary sprite and the Rock People as your secondary. Your first objective is to have Splash demonstrate her dance move to the Rock People. Then the Rock People are going to mimic the dance move. You’re going to mimic—copy—the code so things are moving together. That’s the beginning. That’s the bare bones of the program.”

These students aren’t seventh or eighth graders; they’re in the fifth grade. And they’re programming in block coding, a system that lets students select and order blocks of code to complete tasks. Nguyen said the students adapt to it very quickly.

“Because of development and how intimidating computer science can be, a lot of students worried about whether they were just going to sit here and code the whole time, line code,” he said. Instead, they’re engaged in creative tasks, working with other students at their tables to drag and drop code blocks, finding the right pieces to solve a logic puzzle.

Nguyen explains that the visual code blocks are all composed in Python, one of the top computer programming languages worldwide. “It’s one of the most innovative methods of introducing young students to Python,” he explained, “because every line of code or every block that students are using in the program at the fifth and sixth grade level is the exact same code that is used in Python.”

The computer science electives at Sunset Ridge Intermediate School and View Ridge Middle School are popular and fill up quickly, so classes are designed for students to enter the courses at any given stage or grade level without a lot of prerequisites. And challenges are built into each exercise so students can work at their own levels.

Soon the students are pointing at each other’s laptops as they discuss ways to change the code, or to try the challenge level of making the characters dance without tilting. It’s a different kind of screen time, the kind of work that lies behind every video game or app. But it looks like the students are having fun—and the characters are all dancing.