A Week of Code Tidbit
December 4, 2017
The 2017 Education Week of Code is HERE!
10 Reasons Why We Should Teach Kids To Code
It’s an investment in the future: both theirs and ours.
1. It is one of the most used languages in the world
If we think of the code as a language, we can very well say that it’s one of the most used languages in the world. In a world where most jobs involve programming and dealing with software, code becomes the new, worldwide language.
Considering this picture, we should begin treating programming as part of literacy in the digital era.
2. It helps to be active consumers
Computer science is a constant presence in our everyday life. We use more and more devices and we’re constantly online.
Understanding technology is not the same thing as using technology; this is a crucial point. The fact kids are born and raised in a technological context and are prone to use them doesn’t mean that they understand them.
Coding is the best way to understand technology. Understanding technology is the only way to be able to evaluate benefits and disadvantages, as well as opportunities and risks.
3. Kids learn faster
This is not my theory: kids learn faster and better. If we look at digital natives, we see that they show a surprising predisposition to using certain tools.
3 years old kids use iPads as if it was the easiest thing in this world; 10 years old kids build castles on Minecraft, and teenagers run YouTube channels with millions of subscribers.
I see this at every CoderDojo, where I’m not surprised anymore to see kids talking with confidence and extraordinary knowledge of the subject. These are the times I realize how fast they learn.
That’s the age we have to act and introduce them to programming.
4. It stimulates creativity
What happens when kids’ unlimited imagination meets a tool with infinite potentialities such as coding?
It’s an explosive combo: the kids’ imagination can express wholly through a tool that allows them to realize everything they’re thinking about.
It is the case of Minecraft. Have you ever sat with your kids while they play it? Do you know what they do all the time they spend on the computer? Do you realize he’s developing the mind of an architect or a designer?
Try doing some research on YouTube to see what kids can do on Minecraft and you’ll be amazed.
5. It allows ideas to take shape
Everybody has ideas. The huge difference is that only a few people can actually realize them. Coding allows realizing them.
People who can code can put their ideas into practice.
I start my CoderDojo sessions with the sentence:In two hours, you’ll be able to create a videogame.
Obviously, kids give me funny looks, until they realize that they’re actually creating a videogame.
I call this the moment when they realize they have a superpower.
You just need to look at them to understand why: they scream, they jump, and they laugh at the new capacity they just acquired.
Why all this? Because creating is more satisfying than consuming; and in that moment, they realize they are the ones creating the videogame.
6. It introduces to problem-solving
Learning how to code introduces kids to problem solving; it shows how to look at the whole picture and face the problem from different points of view.
Additionally, programming is one of the few fields in which you can test your solution immediately.
I try to make this clear by starting each CoderDojo with the sentence:We are here to make mistakes and have fun. The latter wouldn’t be possible without the first.
And it is the truth: go and make mistakes, think about a solution, and test it. And then make more mistakes and find more solutions. The moment you find the correct answer and you solve the problem is priceless.
7. It stimulates critical thinking
Programming helps to break down the problems into a myriad of smaller problems; it teaches you not to freeze on the bigger problem, but rather to understand it by breaking it down and finding solutions to small issues. That way it is much easier, and it’s the only chance to find a solution to the original problem.
This means being able to analyze different situations in order to connect the dots eventually.
This type of skills, which have been defined soft skills are a requirement almost anywhere; not only for positions that involve software and programming. In a constantly evolving job market, it is important to nurture these skills from an early age.
8. It encourages computational thinking
We hear this big word a lot lately. But what is it exactly? You’ll find a lot of definitions online, however, all you need to know is that computational thinking involves elements of math, logic, and algorithms.
It’s the ability to approach problems in a structured way and use abstractions to represent certain concepts. In a sense, it includes elements of problem solving and critical thinking.
Teaching programming to kids encourages computational thinking, which, if cultivated at an early age, will frame their minds in a way that will be quite useful down the line, when it will come the time to solve problems of any kind.
9. It directs minds toward storytelling
There are a few tools that are meant for the youngest kids, like Scratch, which is a visual language developed by the MIT.
These types of tools are perfect for any sort of storytelling. Videogames are a classic example: thanks to Scratch, kids get a glimpse “on the other side” of videogames, and they are able to give shape to characters, create stories and settings.
Why is storytelling a worthy ability? Storytelling teaches kids to think procedurally. This type of approach is always useful, not only when writing codes.
10. It’s fun
Let’s say it: It is fun!
Just don’t call it “code”.
In the previous points I mentioned tools like Scratch and Minecraft; however, there are tens, hundreds of languages and tools that are meant for kids and young adults. They deliver the same concepts of programming without involving the infamous black screen with scrolling green text.
Think about projects such as Lego WeDo, Arduino, and Raspberry Pi, where programming concepts are delivered through the help of a hardware: kids assemble and disassemble pieces of wood and plastic that magically become real!
A Hour Of Code
The Hour of Code is a global movement reaching tens of millions of students in 180+ countries. Anyone, anywhere can organize an Hour of Code event. One-hour tutorials are available in over 45 languages. No experience needed. Ages 4 to 104.
Check out these additional sites to get your students involved in coding.
Here are 10 Hour of Code activities to get students started with computer science:
1. Minecraft: Students use coding skills and concepts to help their favorite Minecraft characters through challenges.
2. Game of Codes: Build a dragon to defend a wall and learn how to create the dragon’s movements and behaviors. Students can export their creation as a standalone app.
3. Google: Students can create their own Google logos as part of this year’s Hour of Code.
4. Google and Wonder Woman: In this activity, students will code three unique scenes from the film using Blockly, an introductory coding language, to help Wonder Woman navigate obstacles and reach her goal.
5. Crossy Road: With this tutorial from the popular game, students focus on creating their own games and learn about coding algorithms and sequences, inputs and outputs, and more.
6. Learn to Code with Hot Wheels: Learn to program with Hot Wheels and choose from a wide selection of cars, then learn to program as students navigate through complex race tracks.
8. Coding Franz Liszt: In this activity, students reconstruct a small part of a famous piece by composer Franz Liszt. Students will learn how to embed loops and how they’re used in both computer science and music. This is a step-by-step guide that will introduce algorithmic thinking in music with elements of computer science.
9. Kodable: Students can start with beginner activities and learn about sequencing, or they can tackle more challenging lessons as their skill develop. Resources also include coding activities for ELA students.
10. Thinkersmith: Via an “unplugged” activity, students use a predefined robot vocabulary to guide one another to accomplish specific tasks without discussing those tasks first. Students learn about the connection between symbols and actions, as well as debugging.