How to teach your child coding
How to Teach Coding to Kids in 2022 - Step by Step Guide
Parents must have encountered this question lately, “How to teach Coding to Kids?”.
Because coding for kids is something you have to know about.
You cannot miss this. ✅
Just when you start getting accustomed to the existing technology, something new drops in the market.
Today’s kids have a better knack for technology than the elders. 🤖
All these things indicate one thing.
It’s time to get these kids acquainted with the whole making of all things technology.
The one most important word is ‘Coding’.
Not just coding, coding for kids.
The first question that pops up in our head when we think of coding for kids, is, “How to start coding for kids?”
As difficult as it may seem, teaching kids coding is easy.
The secret about teaching coding to kids is to teach programming as a creative activity for any kid to engage.
When has any child learned anything the basic way!
Data processing algorithms might not appeal to kids.
However, programming music, designing games, or websites, writing simple code in software, definitely would intrigue kids!
Teaching coding to children will give them a skill for life.
Many different programming language tools exist for teaching children how to code.
Some of these tools are developed as open-source and free ones that reached millions of children around the world.
You can teach kids how to program with ease by the end of this step-by-step guide.
Let’s discuss 7 easy steps to learn how to teach coding to kids.
Table of Contents
1. Define Coding Step by Step
It goes without saying that over the next 10 years, programming will be one of the fastest-growing occupations.
When we learn something (new), we learn it thoroughly and step by step.
Thereafter, it is ideal to teach and learn coding step by step.
Let us talk about the first step.
↪️ The first step is to define it for kids.
It will act as their guiding principle or rule of thumb to keep in mind when they’re confused.
Go with the basics of coding.
Use analogies, use examples – explain the concept in simple language that kids can relate to and understand.
For example, to answer the question “What is coding and how do you do it?”, explain it this way:
A code is an instruction given to a computer. These instructions make the computer behave accordingly. Code written together becomes a set of commands. The commands make the computer undertake an activity in a step-by-step process. Each code represents a step.
Therefore, the code written by you leads to a specific outcome that your computer or gadget generates.
The buttons you press on your gadget lead to a code being fed into it, performing a task in a game, or moving to a new video.
The choices are endless!
Coding for newbies seems daunting at first.
Once you break it down into such simple and sequential sentences, it becomes easy for kids to understand.
2. Talk About Coding Languages
Let us now jump on to the next aspect of coding basics;
↪️i.e., the very first of programming for kids.
To do this, answer the next natural question that pops up in the minds of kids,
“If coding is instructing a computer, what language do we use to communicate with them?” 🤔
Explain that languages take many forms and functions.
Let me explain meticulously.
What this implies is that just like the human world, in like manner computers too have different languages to communicate. 🗣
Humans learn one or more languages, and similarly, they also learn one or more computer languages.
The way we speak to different people in different languages, we communicate with gadgets in the language they interpret.
It’s time to teach a new language. 🎯
Introduce the different languages to the students – from the child-friendly Scratch to Javascript, Java, Python, and C++.
Remember to mention that each language is used for a specific goal to achieve in mind, with a specific gadget or software.
You must remember that when teaching coding basics to kids, Scratch should be the first step of their journey.
Start from scratch, literally.
ScratchBefore you teach Python to kids, or more complex languages, teach them the simple ones.
Therefore children of age 7 to 15 years must learn Scratch.
As established, Scratch is the best way for kids to learn coding.
It helps in inculcating strong coding basics for kids.
Research and studies show positive effects of visual programming environments on students’ learning. It was found that a slight improvement in the students’ self-confidence in their problem-solving ability has been enhanced while working with Scratch.
(Also Read: Benefits of Coding For Kids And Teens – Top 9!)
This block-based coding language offers a visual learning experience for the children as it enables them to drag and drop blocks of code to create different characters and games.
Scratch is a great coding platform for beginners.
JavaScriptThis is the next best coding language for beginners.
It plays a crucial role while teaching kids to code.
Children can use JavaScript to create fun games, websites, and other client-facing applications.
JavaJava is the most popular and widely-used language.
The popular and loving game, Minecraft, was coded in Java.
Lua is another such language used in Roblox – another great game that kids love!
PythonNo, not the snake. 🐍
But if you crack this language, you can slither through smoothly!
Teach Python to kids next since it is very complex.
Once they have a strong foundation in language, it will be easier to learn and write Python better.
3. How to teach kids Computer Programming – By building their interest and excitement!
Shortly, more than 1.4 million jobs will be based on programming. 🤯
But with only 4,00,000 graduates in computer science, it will leave around 1 million seats vacant due to scarcity of programmers.
Also, read about “Why Digital Literacy is Important for Kids?” here
Grasping the attention of young minds is key to teaching them new concepts (and to be honest, their attention span is that of a goldfish😛).
As explained above, if we talk about the different languages they know and video games that involve coding.
It will have them hooked and intrigued. You will connect with them as an educator.
It enables you to successfully and efficiently teach kids programming.
If they are not interested in coding, tell them how data science and artificial intelligence are related to sports or how pressing a button on their gadgets implements a code and brings about the action they want.
Coding could be as simple as pressing the on and off on their phone. 📱
4. The right coding platforms for beginners
Introduce kids to computer programming tutorials.
For young kidsMIT’s Scratch is a free programming tool.
It is designed especially for kids and runs in all modern Web browsers.
Pick similar courses and tutorials that have visual styles and captivate a child’s attention.
Most computer courses and programming tools are curated to teach kids how to program using Scratch.
Since Scratch has blocks of code that won’t fit together if they do not get along computationally, making syntax errors is impossible.
It makes Scratch the perfect tool for younger kids who can’t type well.
For older kidsOnce young kids learn Scratch, they would want to upgrade to a new and advanced language.
They eventually outgrow the basics. Coding for teens and pre-teens involves teaching them programming languages like Python.
It makes for the perfect first programming since it involves simple syntax.
Want to know more about a career in coding? Read this blog!
5. Writing codes is the way to go when teaching kids how to program
Practice makes perfect.🙋♀️
Computer programming tutorials that involve making kids code themselves are key.
As an educator, there is only so much you can explain and talk about to teach kids programming.
Hands-on code writing and regular practice equip a child with holistic learning.
Python is great for kids who want to practice since it is interactive.
Subsequently, it encourages experimentation with the instructions.
Make kids create their games with different coding software.
They can move to web and app development with time.
The key is streamlining their practice sessions in a step-by-step process and assisting them when they hit roadblocks. 🔐
STEM has become an integral part of the education system throughout the world.
But many people are still unaware of its core objectives.
It could help us win against the challenges that the future has in front of us.
Read more about STEM Education here.
6. Teach kids programming on a computer of their own
Are you teaching a group of kids?
Is it a personal tutoring session?
Either way, push for each student to access a computer or laptop of their own.
The way kids need their football or guitar to learn the sport or the instrument, in the same way, kids need their gadget to learn to code.
A simple bare-bone PC is a good starter kit for young students. Accessories would, of course, include a mouse, keyboard, and monitor.
Try to keep Chromebooks, iPads, and tablets at bay since Python tends to get complicated to run on these gadgets.
Hands-on learning resonates better!
7. Coding for Newbies is different from Computer Science
If you have an academic background in computer science or software development, you tend to think on a higher scale and have better concepts at the helm of your thoughts.
As educators, we love to share our knowledge with young minds and explain endless ideas to you.
If we talk about programming jobs in the future, out of the top 10 jobs, 4 will require programming experience. 😮
It was calculated that 60% of math and science jobs are based on computing, but only 2% of math and science students are computer science students.
While it’s a lot of fun and helpful on a different level, kids begin coding in the shallow end of the pool.
Here are some topics you can explain at a later stage to a #YoungKeenCoder:
- Design patterns
- SQL databases
- Other domain-specific languages
- Object-oriented programming
- Data structures other than besides lists, arrays, hash maps, and dictionaries
- Recursion
- Networking protocols that go beyond easy HTTP requests.
Now to come to your rescue, we at Codevidhya teach coding for kids online. Should you be interested in coding, or need more convincing on its importance, visit our website codevidhya.com. You can also take a free coding class for your child!
Frequently Asked Questions
- How do I start teaching my child to code?
Introduce them to basics, games, and live videos. Receive their feedback and replan your approach accordingly. Begin with Scratch since it is a child-friendly and fun platform! - How do I teach my child to code online?
Start with a basic course in a simple code like Scratch, and then move on to more advanced code courses in JavaScript, and Java. Live tutoring sessions and games are a good way to begin your coding journey. - Is coding good for kids?
Coding develops logical thinking, creativity, problem-solving skills and develops education and job opportunities for them. - What is the best programming language for a child to learn?
Scratch is the best programming language for kids since it has a graphic-game-based approach. It has blocks of code animated into a game format, which are required to be matched into sets. It builds logic, creative thinking, and problem-solving skills in children.
10 Resources to Teach Your Kids to Code
by
Kasia Kovacs
Arrow RightWriter
Kasia Kovacs writes on a variety of higher education topics for BestColleges. With a master's in journalism and a background in newspapers, she also freelances as a news reporter and copywriter. ...
Updated September 15, 2022
Learn more about our editorial process
7 min read
Share this Article
- Coding can teach kids problem-solving, persistence, and teamwork.
- Many apps and games teach kids how to code through play and creativity.
- These apps and games are available for different age ranges and budgets.
Childhood is a great time to learn how to code. Coding can help kids develop problem-solving skills and encourages creativity and imagination. Plus, it's a good foundation for learning more computer science principles later on.
Of course, reading a 500-page textbook full of small black and white text and programming scripts probably isn't the most engaging way for kids to learn to code. Luckily, you can find many resources specifically designed to make coding lessons age-appropriate, easy-to-digest, and, most importantly, fun.
BestColleges.com is an advertising-supported site. Featured or trusted partner programs and all school search, finder, or match results are for schools that compensate us. This compensation does not influence our school rankings, resource guides, or other editorially-independent information published on this site.
Ready to Start Your Journey?
Why Teach Kids How to Code?
According to the Bureau of Labor Statistics, computer science occupations are growing, and programming knowledge can equip kids with marketable skills for the field later on. Even without looking ahead 18 years, kids should learn to code for these fundamental reasons.
Coding Teaches Kids to Solve Problems
As a discipline, coding is full of challenges. Coding requires kids to look at problems from several angles and come up with possible solutions. Honing problem-solving skills at a young age can provide a strong foundation for confronting challenges in everyday life.
Coding Teaches Kids Resilience
When kids develop a fixed mindset, they want to give up when things go wrong. In coding, things go wrong frequently, which can help kids learn to deal with failures. They will learn how to come up with another solution and move on.
This persistence teaches kids that small failures don't have to stop your progress. Instead, they're opportunities to solve problems in creative ways and develop a growth mindset.
Programming Can Help Kids Develop Creativity
When it comes to coding, the sky's the limit. Kids can use their imagination to create projects. They become world-builders and creators, having fun with experimentation. Even though programming relies heavily on math and technology, it can also help kids strengthen their creative and artistic sides.
Coding Can Teach Entrepreneurship and Teamwork
Programming allows people to create their own websites, apps, and games. Coding apps like Hopscotch allow kids to pay each other with virtual coins to use each other's games. Many coding platforms also include collaborative tools, connecting kids with each other so they can build programs together.
Coding Is Fun
Programming can teach kids plenty of useful skills. Still, at their core, many coding apps for kids are simply fun, and there are few things more essential to childhood than having fun and letting your imagination run wild.
10 Resources to Teach Your Kids How to Code
Codeable Crafts
Codeable Crafts, a free app for Android devices and iPads, introduces coding to kids by appealing to their imagination. This app allows kids to experiment with programming through storytelling. Children can animate their own stories or add animations to story prompts using simple "coding blocks."
CodeCombat
CodeCombat takes a game-based approach to coding, offering courses for classrooms and kids who want to code on their own. Students learn coding languages like Python and JavaScript through a gaming platform, guided virtually by teachers. Kids can also connect with each other by joining a competitive AI coding league.
Learners can enroll in self-paced courses, a summer class, or private lessons. Most courses are one-on-one, although the summer class includes four students. The first lesson is free, but further lessons can cost anywhere from $99 per year to $399 per month.
Codeemoji
Codemoji offers a coding curriculum for students in grades 1-8. The program teaches HTML, CSS, and JavaScript, and kids build their own websites and create animations within a designated virtual play area.
Students can enroll in courses at beginner, intermediate, and expert levels. Codemoji aims to make its programs both playful and challenging so that kids become neither bored nor discouraged.
Parents can enroll their children in either a $15 per month plan or a $55 per year plan. These packages both include lessons, projects, and live customer support.
Code.org
Code.org, a nonprofit organization, aims to expand access to coding education for students around the world. The group's Hour of Code campaign claims to have served over one million students. Plus, Code.org has integrated computer science classes in schools all over the U.S.
Code.org facilitates in-person classes in local schools and communities. The site also offers online computer science courses which kids can take from home. For introductory or quick-hit lessons, students can also access one-hour tutorials on topics like artificial intelligence and Minecraft.
Hopscotch
Designed for kids ages 10-16, Hopscotch is an app that teaches users how to build code by creating animated stories, games, and art. This coding app, which works on iPad or iPhones, also teaches kids about entrepreneurship. Game players can "pay" game creators with in-app currency seeds, which encourages users to get creative and build enticing programs.
Parents can choose between a $19.99 per month or a $59.99 per year plan. Users can test out the app through a seven-day free trial.
Scratch and ScratchJr
The apps Scratch and ScratchJr teach coding to kids through imagination and creativity. The apps were developed by the DevTech Research Group at Tufts University, MIT's Lifelong Kindergarten Group, and the Playful Invention Company. Scratch is directed at kids ages 8-16, while ScratchJr offers lessons for kids 5-7.
Kids can create their own interactive stories and work collaboratively with each other to exercise teamwork skills. App users can also access tutorials and an ideas page to help them create stories and games.
Students in over 150 countries can access these apps in more than 60 languages. Scratch is available for computer download, and kids can also play on their web browser. Scratch is free to use.
SpriteBox Coding
SpriteBox Coding teaches kids as young as four the basics of coding. The app teaches functions like sequencing, parameters, loops, procedures, and basic Swift and Java syntax. The app describes itself as an "adventure game" that instructs children through coding icons that eventually turn into textual commands.
Users can download the app for $4.99 through the Apple Store or Google Play.
Swift Playgrounds
This app focuses on Swift, a programming language for Apple apps. Swift Playgrounds allows users to guide a character through a 3D world by using real code. As players learn more advanced concepts, they make their way through increasingly difficult levels. Along the way, players master concepts like commands, loops, parameters, and variables.
Apple designed the programming language Swift and developed the Swift Playgrounds app. Users can download Swift Playgrounds for iPad or Mac.
Tynker
Tynker is an online creative coding platform that teaches computer science skills to kids ages 5-18. Lessons start with an introduction to computing through block-based coding challenges. As students learn more, these blocks turn into JavaScript and Python commands. The courses take an immersive, game-like approach to keep kids engaged.
Students can follow self-paced plans or participate in group classes or private lessons. Tynker costs $25 per month for self-paced courses, $60 per month for private classes, and $280 for eight weeks of group lessons.
Vidcode
Designed for teenagers, Vidcode offers courses like Intro to JavaScript, game development, HTML and CSS, and physical computing with Makey Makey. During these lessons, students learn how to create complex projects like games and simulations.
Thousands of schools incorporate Vidcode into their curriculum, but many teens also use the program at home. They can follow self-paced study with over 300 tutorials and create their own projects. Learners can pay $8.99 per month, $71.88 per year, or $135 for a lifetime membership.
Frequently Asked Questions About Teaching Coding to Kids
Many coding apps are aimed at children as young as five years old, when they can learn about coding through gamified techniques. That initial exposure probably won't make them experts in coding, but it can help them get started.
For young kids and children with no previous experience in coding, Scratch provides a great introduction. Scratch uses colorful command boxes instead of text-based coding, which makes it easier for kids to use. Students in a slightly older age range can also learn HTML/CSS, JavaScript, and Python.
Yes. Scratch and ScratchJr, popular tools to introduce kids to coding, are both available for free. The nonprofit organization Code.org also offers several free coding resources.
Explore More College Resources
View allBestColleges.com is an advertising-supported site. Featured or trusted partner programs and all school search, finder, or match results are for schools that compensate us. This compensation does not influence our school rankings, resource guides, or other editorially-independent information published on this site.
Compare Your School Options
View the most relevant schools for your interests and compare them by tuition, programs, acceptance rate, and other factors important to finding your college home.
How to teach a child to program? | ProgKids
The desire to earn a reputation in the eyes of their buddies is a very powerful driver for children, especially when they become teenagers. The competitive element plays an important role. These two factors are combined in programming courses for schoolchildren - students understand new topics together, complete tasks together and compete to see who can do them better.
By sending your child to a programming school, you also immerse him in a party and help make useful contacts. It's not about those connections that will help with a career (although in reality no one can know who the boy next to him will become), but about friendship with children who share useful hobbies. By the way, online programming courses also work in this regard, because in this case, children get to know each other and communicate with each other, albeit in a virtual classroom, and not a real one.
Now, as promised at the beginning of the article, a selection of programs with which you can start teaching programming to children. Of course, you can buy a JavaScript or Python textbook for kids, this method is great for teenagers and high school students. If a young developer loves Minecraft, they can learn how to code right in the game. Some kids dive straight into complex languages like C++.
However, in most cases - especially if you want to teach programming to a 6-8 year old child - it's better to start with simple visual development environments that don't even require you to write code. Behind the external simplicity of such programs, there is a serious logic that will allow the student to get close to complex abstract functions and mathematical operations.
Scratch. We have already talked about this great program and its ideological successor Snap. Therefore, we will not dwell on all its advantages now. We only note that Scratch allows children to learn the basics of programming by creating their own games, interactive cartoons and other creative works. This is the best training system for programmers from the age of six.
Alice. Like Scratch, Alice uses visual blocks, but the level of possibilities is higher. This system introduces children to 3D programming concepts of object-oriented development, which are being developed, for example, in C ++. Games, animated videos and other programs created in Alice can be transferred to the Java environment, so that the child comes close to "adult" programming languages.
Swift Playgrounds. If your child wants to create applications, then this program is his ticket to the world of mobile development. Swift is the main language for iOS developers, and Swift Playgrounds is Apple's official learning app for the iPad. Here the child will get acquainted with the main commands in a playful way, pass a series of tests in 3D labyrinths, in order to learn how to develop programs in Swift at the end.
Twine. This application, in turn, is suitable for future game designers, web developers and scriptwriters. The creators did not focus on code, but on storytelling. The application teaches you how to create interactive stories by combining text and images into a coherent work. Thus, the child will be able to invent their own fairy tales or design multimedia games with a branching plot.
LEGO EV3. If your child is interested in robots, then the LEGO Mindstorms set, together with the free LEGO EV3 development environment, will be a great help. With the help of visual programming tools, he will be able to get acquainted with real robotics technologies. For more senior developers, there is an option to use Python and C++. Remembering the importance of socialization, we note that on the basis of this platform, you can organize a whole club of robotics lovers, whose members will work together on large projects.
How developers teach their children to program (and whether it is necessary to do it) - Offtop on vc.ru
On the one hand, here are short and almost step-by-step guides for teaching children to program. On the other hand, ordinary life stories about the relationship between children and parents, reflections on the peculiarities of children's perception of the world.
34,875 views
We at the Alexei Sukhorukov IT Academy do not teach children, but we and our teachers have a lot of interesting and informative information on this topic. However, we decided to start with Western experience. In this article, professional developers and startup founders talk about how they taught their young (sometimes very young!) children to code.
- How my four year old son learned Python
- How my 8 year old son learns to code in Java
- How I taught my ten year old son JavaScript
- How I taught my daughters to code
How my four year old son learned Python
Matt Lerner, VP Product & Design @redfin, co-founder of @walkscore
I wanted to teach my kids to code because is a great skill and a powerful way of thinking . My kids spent a lot of time playing Angry Birds on my iPhone and I decided it was time for them to look behind the curtain and see how programming works. So, here are my tips for you. They are taken entirely from personal experience and will be useful to you regardless of whether you are a hardcore programmer or someone who has never dealt with code before.
Tip #1. Start with the basics
When my son Sai was four years old, we already started using iPad logo software (Mad Logo) and making animations using the Scratch programming language for kids. But I wanted my son to look inside and come up with some tricks to get him excited about Python programming. It's a language simple enough for a child to understand, yet powerful enough to implement all the ideas that come to my mind and for which I get paid a good salary.
Tip #2. Switch to Python.
Do you know that Python is already installed on your MacBook? All you have to do is open a terminal window and type python to run (press ctrl+d to exit). Everything you need to get up and running with Python is in this guide.
Tip #3. Talk to the computer.
In order for the child to pay attention, I have a special life hack. Make the computer talk! If you have a macbook, then just open a terminal window and enter the command "greet". The computer will say hello. Isn't it magic?
Tip #4. Play a number guessing game in Python.
To run this program:
- Download the source code for
- Open a terminal window
- Enter cd Downloads
- Type python mathquiz.py (and check if your sound is on)
This is a real guessing game. My son Sai at first liked to just play it, but then we studied every line of code to understand how it works.
Open this file with a text editor and try changing max_number to 100.
Tip #5. Everything else you can easily find on the Internet.
Imagine that you want to teach a child something difficult. Let's say recursion. Remember what it is? I remembered, but damn it, I was very interested - how can I explain something really complicated (such as recursion) to a child? I used the excellent one from Khan Academy, which talks about the recursive factorial program in an accessible way.
This is the code we used with my son. He was 6 years old then, and I think he was too young to understand recursion, but he really enjoyed watching the computer do really big factorials.
I'm sure there are six-year-olds who have already made millions of dollars from an iPhone game they wrote themselves. But my kids didn't start writing their own programs. In fact, I'm not even sure they're interested in programming!
However, thanks to these exercises, my son Sai became interested in factorials and, most importantly, he saw that programming is something that absolutely everyone can do. I advise you Code. org - there are many materials for effective programming training.
How my 8 year old son learns to code in Java (and your kids can too)
Frank Meehan, http://www.sparklabsglobal.com & http://www.sparklabs.co.kr Korea Accelerator Co-Fndr @smartup_io
My 8 year old son now knows Java very well and loves it programming language. I have used a number of interesting intuitive tools that aim to teach programming to 8-14 year olds.
I am very passionate about finding such tools. Today, it is difficult for general education schools to keep up with the times, parents have to think for themselves how to make their children creative, teach them to develop and design. I wrote a little guide on how my son learned Java . I hope he can help someone start coding with their child.
Step 1. Minecraft and YouTube.
The first stage was the same as everyone else. My son is 7 years old and very interested in Minecraft. A little later, he started watching various videos on YouTube, he saw how people create new textures, items, skins and add them to the game. He has always loved Lego, and being able to create new blocks and characters in Minecraft got him very excited. I think this is the brightest creative tool for his age. Together with friends, they meet, enter the game and get a truly collective creative experience.
And be sure to let them watch YouTube videos. It inspires children, shows them their real possibilities. Then they will move on to videos about science, art and learning.
Step 2. You need to learn Java to make Minecraft mods yourself
My son really wanted to make his own mods for the game. I told him the only way was to learn how to code in Java. He decided that it was time, and I began to think how.
Step 3. Minecraft Redstone Summer School
My son already knew Scratch, but he got bored with it. I agree - I think Scratch's interface and features are out of date. We ended up sending him to a tech summer camp last summer for a week where he took the Minecraft Redstone digital engineering course. There he studied digital logic, created complex machines (for example, an elevator), mastered command blocks (Scratch cannot give this). This was a Funtech summer camp in London and I can wholeheartedly recommend it. The range and variety of their courses is amazing.
Step 4. Breakthrough with Youth Digital
We tried to create mods on the computer ourselves, but it turned out to be difficult. Then I accidentally stumbled upon YouthDigital.com, where my son learned to program in Java. Created by Justin Richards, this resource is brilliant in every way. The system combines interactive tutorial videos, a custom version of the Eclipse and Minecraft coding tool. Children watch videos, edit in Java in Eclipse, and see the results of their changes in Minecraft. This is what the 21st century means!
This is the correct coding, not a drag and drop interface. Here is a screenshot from my son's work as proof.
At the same time, everything is not complicated here. Especially good is Justin, who himself acts in commercials - he inspires so much that any child understands and does everything.
They have a lot of absolutely fantastic courses - fashion design, game design, server design and so on.
Step 5. Playing CodeKingdoms
I myself started coding at the age of 12 and since then I have been fascinated by the search for new ways and tools. Today, I am a co-founder and partner of the SparkLabs Global Ventures investment fund, a subsidiary of SparkLabs Korea. One of the startups we have invested in is the CodeKingdoms project. It's a delightful game with clever ways to engage and teach kids how to code. My son liked it and told all his friends.
I am confident that this project has a bright future ahead of it and I strongly recommend the game to all parents who want to get their kids excited about coding.
What's next.
This summer my son wants to go to summer camp again. Most likely, he will choose a course in robotics. Now he and his friend are the most technically advanced guys in the school. It's great to see how he leads the school circles and helps others to dive into the world of programming.
I would also mention Big Hero 6, my son's inspirational cartoon. It perfectly demonstrates to children how cool it is to be creative and technology. After watching it, he began to dream of creating his own laboratory with robots.
How I taught my ten year old son JavaScript
Rich Klein, Full-stack web developer, author of children's books.
My son was seven years old and he asked me what I do for a living. Naturally, he immediately wanted to understand what a “web developer” is, and this is where it all started ... Parents love to teach their children - these are instincts. We teach them how to talk, how to kick a ball, how to teach them about values, but what about programming? It's not as fun as new toys like Lego, but it's a full-fledged form of creativity and self-expression.
Starting from scratch
Scratch is very fun and intuitive. And this platform just looks like the same Lego. My son has been actively using it for more than two years and even now looks in there sometimes.
True coding
Moving from the warm and cozy world of visual programming to the harsh and cold world of normal command line typing (and the error messages that follow) is a big and important moment.
First language
I read the recommendations and chose Python. I myself work with HTML / Javascript, PHP / Laravel, Node / Express, I had no experience with Python. But I immediately realized that this was the best solution and ordered the book “Python for Children”. Python is an easy to read and elegant language. You don't have to write as much code in it as you do in C-like languages.
I took my mother's laptop and installed Python and Sublime on it. His skills in Scratch allowed him to quickly master variables, conventions, loops, and lists. It started out pretty fun, but then my son stopped and lost motivation. Tasks from the second part of the book could not compete with the same Scratch, not to mention the Xbox. But I understand that it was a great experience for both of us, and I'm sure my son will return to Python in the future because it has so many uses.
JavaScript comes to the rescue
I remember how excited he was when he realized that he could view the code on sites and change content using Chrome DevTools. Adding “poop” to web page titles is a lot of fun for kids. I decided that he needed to learn HTML and JavaScript, and ordered the book "JavaScript for Kids", which covers all the basics. He worked on the book for a little over an hour on weekends, but made significant progress.
Code School
Web development is a big topic and I needed help. At some point, a couple of months later, his learning lost its initial momentum and slowed down again. We subscribed to CodeSchool and it worked. Their mix of music, video workouts and online exercise worked great for my son, although sometimes he would just listen and look for new jingles. Then he moved on to Javascript Road Trip Part 1, and now we are working on Javascript Road Trip Part 3, and the exercises there are difficult for both of us. I myself learned a lot with him.
How to explain programming concepts to children
It is important to translate abstract computer concepts into things from the real world. Here are some examples that worked great for my son and helped him figure things out.
Variables. Variables in JavaScript are like regular boxes that hold things. You name them the same way you put stickers on boxes. It is necessary to give understandable names so that later any things can be easily found.
Arrays. A JavaScript array is like your bookshelf - it has a lot of different things (books, toys, drawings, photos, pencils) and makes it easy to access them. If you ask me to take a Harry Potter book from the left side of the lowest shelf, I can easily find it.
Functions. They are like cooking recipes. If you are baking chocolate chip cookies, then you need to go through all the steps - collect and mix the ingredients, put them on a baking sheet, preheat the oven and then start baking. The launch of a function also goes through all of its stages until it reaches completion (it's like asking you out for dinner).
Short circuit. The closure looks like a dinosaur fossil. You can get information about a dinosaur from a fossil even though the dinosaur itself disappeared millions of years ago.
Cookies. I go to the bakery and the baker asks me what kind of cookie I want. Then I start to visit this bakery every day, and he just asks me: “How is it for you?”. This example was still not clear enough (because the baker did make a repeated request), and then my son himself suggested the example with our hairdresser. We arrive and he just starts cutting our hair because he knows what we want.
Programming is a long journey
It takes time, practice, patience and commitment, and for kids it's not the easiest thing to do. My son and I are still at the very beginning of this journey, but we are slowly moving forward. I try not to limit his interest in new things. For example, we recently attended a small event related to indie game development. He became interested, and now he watches videos about Unity. I think that the next important step for him will be the development of his own program or application. I don't know when or how this will happen, but in any case, his first minimum viable product will be a new starting point for us.
P.S By January 2017, he lost interest in JavaScript (he got bored). In fact, web development is an endlessly long and complex learning process.
You seem to be climbing a mountain, but on its top you find yourself at the foot of another mountain.
I never force my kids to code. I can only act as a mentor and motivator. My son quit coding and got into fiction. But at some point, he became interested in artificial intelligence and machine learning. And then we are back to Python!
How I taught my daughters how to program
Grace Francisco, VP of Developer Relations at Roblox
I have two amazing daughters aged 9 and 12. I love having kids - every day I have to learn and improve myself as a parent. My husband and I try to instill in them a love of learning, but at the same time we want them to remain just children. Like most modern children, they are already on “you” with technology. But, for example, when we sit at dinner, we do not allow them to climb into smartphones. We want them to be able to communicate outside of technology, these skills are essential for a successful and happy life.
A few years ago I chose a summer technical camp for my eldest son. My daughter looked into my laptop and said, "It's just for boys" (pictures from these camps were mostly boys). After that, I tried to attract them with standard methods - Scratch and Code.org. But their interest disappeared after 10 minutes. iPad games, ready and beautiful, seemed much better to them.
The breakthrough happened thanks to one seminar where I helped a colleague. There we showed other children how to use Scratch for programming. My daughters were also in this children's workshop. They saw a bunch of boys and girls who were interested in digging into computers. They had fun in that class, and after that my eldest said that she also wanted to work in technology “like a mother”.
Then their cousins introduced them to Minecraft and it became their favorite pastime. I created a special development environment for them in JavaScript.
I love the sparkle in their eyes when they discover new programming opportunities. The difficulty is that young children often lose their attention and it is necessary to constantly find a balance between playing and learning in the game.
Parents who are not themselves programmers may find it difficult to learn this way. For example, when you need to set up a development environment. On the other hand, there are a number of online resources that do not require programming skills, and on which children can learn along with their parents. Start with visual programming tools and then move on to scripting languages. I would recommend JavaScript - it's available to everyone. Try to enjoy all this with your children.
I think the world will continue to see more and more innovative technologies for teaching children to code. It is only just becoming commonplace in wealthy and high-status schools, but it is important that such teaching permeate every school in every part of the world.
A programming language can become for everyone the same fundamental skill as grammar and mathematics, a skill that is learned in school and is necessary for work and life.