Brief: Online, apps, gamified coding activities and physical coding toys are valuable tools for getting kids excited about coding. By design, these tools are limited, which means the lessons kids can learn from them are incomplete. The games are an excellent introduction to coding concepts, but they cannot replace in-person instruction.
In-person instruction teaches coding in its proper context. It can still be gamified to make it fun, but this is paired with deeper lessons about how coding is useful in the real world. Without the greater contexts of science, math, and engineering, gamified coding is just a game.
Parents recognize that there’s tremendous value in teaching children to code, and starting them on the path as early as possible. It’s an endeavor that pays dividends throughout their academic lives and prepares them for exciting, high-demand, lucrative careers.
That’s why we will forever be indebted to code.org and its venerable “Hour of Code” initiative. This program, which started in 2013, now reaches hundreds of millions of children around the world, demonstrating that anyone can learn to code. It established learning to code as an accessible and universal part of elementary school education in the US.
They can start kids on their journey, but they don’t go very far
Because the Hour of Code is free and online, it’s accessible to a wide range of students, popularizing Scratch, CodeSpark, Minecraft, and other browser-based, entry-level programs. These are all effective methods for showing kids that coding can be fun, exciting, and rewarding. However, these programs are only gateways. They can start kids on their journey, but they don’t go very far. Eventually, the value peters out if they aren’t followed with more in-depth instruction that places the lessons kids are learning in the greater context of a proven curriculum.
Why Games fall short
The sort of coding gamification that you find through popular coding games and toys does an excellent job of sparking the imagination and getting kids exciting about computers and computer programming. Include here are Scratch, MineCraft, Tinker, LittleBits and a myriad of apps.
However, these tools are unable to build Computational Thinking foundations which is the real value of coding for most kids. What’s needed are in-person instructors, prepared and qualified to take students from the screen-based activities into lessons about programming and engineering. Without that, a kid isn’t really learning to code. Instead, they’re just learning to play a game about coding.
As an example, take Minecraft, the popular building and crafting game which lets kids explore a massive virtual world, harvesting raw resources, converting them into more refined materials and then using these to build massive structures. These structures allow kids to program actions and behaviors, like creating doors that open when players draw near or lights that turn on when night falls in the game.
These games do introduce logic flow, inputs and outputs, and basic concepts. However, the learnings are trapped in the mechanics of the game. Knowing how to build an automatic trap door in Minecraft doesn’t grant you the ability to do that anywhere else. It doesn’t teach you real-world programming, only game-world programming. The game omits any practical knowledge.
This problem extends into nearly every gamified coding activity. Kids will develop skills, but those skills are inextricably tied to the game they’re playing or the toy they’re using. They become very good at playing a game that someone else created, but they wouldn’t be able to create a game of their own.This sort of one-dimensional instruction doesn’t supply the needed context for kids to see how the coding skills they’re learning in the game can extend into the real world.
Templeted Coding Curriculums Are Not Effective
Code is written with a coding language. Like any language, in order to be truly conversant, you need to know the vocabulary, the grammar, and the syntax. It’s not enough to be able to recognize a proper sentence when you see one. You need to be able to write your own sentences from scratch.
Most coding schools do not have the curriculum or capability to develop curriculum. Instead they use third party apps or games such as Mindstorms, Roblox, MIT App Inventor, or Story Based Coding. These programs will never produce skilled coders if, for no other reason, the games are extremely limited in their ability to explain the roots of the concepts they’re teaching.
Thee Coding curriculums usually provide block-level, drag-and-drop coding. Students might be provided with an incomplete program and then given a choice of pre-written code chunks to finish the exercise. While this does teach basic concepts, kids would be hard-pressed to write their own programs without having large portions of the work already done for them.
Parents, please wake up. You get good at coding by coding. It takes practice. If your kids are in a program that does not teach pure code you’re doing them a disservice. If you think your kids are going to learn to code by playing a game, think again. Without real-world, multi-pronged exposure to the science, the language, and the modes of thought that lie behind the games, your kids will be great game-players but not much else.
Hey We Are Different
At UCode, In-person coding instruction with a group of like-minded kids is an entirely different experience. Codemates can bounce ideas off of each other and get help when they need it. In-person instruction is a social experience. This all keeps them engaged and excited. And most importantly they learn to code – in pure code.Every kid gets the expert, caring help and guidance they need to realize the ultimate goal of coding instruction — truly learning how to code well.