For younger kids, visual-based learning software such as Scratch are perfect for learning core programming concepts. For older kids who are adept to learning more sophisticated concepts, ‘high level’ (or easily read) languages such as Python are the best entry point to learning, which has the added benefit being a ‘real life’ programming language used worldwide.
There is a significant jump
in technical understanding between both styles of learning, and this is largely
down to the ability of the child. The ages of 10 – 15 are a significant period
of development for a child, and the medium which they use to learn will be
determined by their existing ability for comprehension and to solve problems.
There are many ‘gameified’
learning platforms aimed at kids within this age group such as codecombat.com,
which frame the python coding experience in a game. The colors, storyline, and
task-driven storyline keeps kids interested and engaged.
The most impactful
method of teaching code seems to be related to the culture and
environment in which the child is taught. Children tend to absorb new
information when they are working within a positive atmosphere, and studies
have shown that a happy child is one that learns faster – and that this
relationship is cyclical.
“Engaging with the world in
playful ways is essential for laying a foundation for learning early in life”
(Jennifer M. Zosh, Emily J. Hopkins, 2017)
popular first person adventure game available on most platforms, is a
particularly good example of learning through play. When kids are able to
imagine and produce their own custom modifications, they become more focused
and engaged and associate learning with fun.