There isn’t just one lesson when it comes to computer programming, and the act of coding is more than just instructing machines to follow commands.

For the last few months, that is what middle school students at 10 schools in the region have discovered as they produced their own video games, a project that has challenged them to exploit every corner of their brains.

The assignment was part of a program is called Coding Quest, which is an initiative by the charity, The Learning Partnership. On Friday, students showcased their work at Red Deer College.

The games are rudimentary, with 2-D graphics and simple controls. Each one has a story, developed from lessons in the the classroom.

“It’s so much more than just the coding. They learn about how to write a story for a video game, create characters, there’s a lot of writing, language arts curriculum involved,” said Chris Good, principal at Barrie Wilson Elementary in Red Deer.

'It takes a long time'

Grade 5 student Kseniya Rudakova says the hardest part of the project was the coding.

Kseniya Rudakova, a Grade 5 student from Barrie Wilson, made hers about the first wave of Ukrainian immigrants to Canada in the late 19th century. In Rudakova’s game, players find food, safe passage and get quizzed about Ukrainian-Canadian history.

While working on the assignment from home, she experienced first-hand the attention to detail that’s required of coding.

“Sometimes if I want it to do (something), it doesn’t do it. It takes a long time to get it to do what you want it to,” Rudakova said.

That itself is another one of the lessons. Coding is like speaking a language, one that isn’t very forgiving when the rules aren’t followed. A typo or syntax error on the software’s back end will cause the entire program to fail. Give the wrong instructions, get the wrong outcome.

For these students in Grades 4-8 who are just entering the world of computer science, there’s an application called Scratch that makes it simpler. A quick look at Rudakova’s project shows that the language is graphical, rather than text-based.

“It’s what’s called ‘block coding.’ In order to get a computer to do things, rather than typing the code with all the syntax that’s involved, they are dragging blocks. Those blocks are that syntax that makes the code work. They don’t need to learn the hyphens and brackets and numbers that are part of advanced coding,” said Sid Shugarman, program manager with The Learning Partnership.

“They still need to arrange them in sequence. They start to understand that the computer won’t do anything unless you tell it what to do.”

On the right side of the screen, block code makes programming simpler for middle school students.

The Learning Partnership has a broad mandate to enhance public education. Getting kids into coding is one of their goals because it prepares them for the modern world.

“Kids, people, need to understand why computers do what they do. Most of us can use a computer but we have no idea what’s going on to make the computer do that,” Shugarman said.

“At the same time, there are tens of thousands of coding jobs going unfilled because there are not enough programmers.”