If you studied any computer science back in the day, odds are good that your lessons didn't start until high school. Or even college. Today, however, some children are learning the basics of computer programming as young as pre-school.
If your children aren't among the crowd, there are a some excellent reasons for them to join in--if not in pre-school, then at least in the K-12 years, experts say.
In fact, at least 15 European countries have already integrated coding classwork into the national school curriculum. That isn't true in the US, of course, where we don't even have a national school curriculum. Still, kids in the US are taking part in computer science projects in public and private school classrooms, as well as through after-school programs, specialized camps, and coding websites.
Common Core, a set of educational standards adopted by most US states, deals specifically with language arts and math. Yet many efforts have been launched to produce computer science lesson plans that support Common Core goals.
And many US schools are developing lessons on STEAM (Science, Technology, Engineering, Arts, and Math), an initiative to promote hands-on experiences and discoveries involving multiple subject areas.
California is a hotbed of activity in computer science education, although it certainly isn't the only place where kids can explore programming and coding.
"As part of our STEAM curriculum, our kids work on coding every school day, with fun activities such as coding a Bee-Bot robot, programming a humanoid robot to navigate obstacles, and writing and animating a story using coding," said Matt Main, a spokesperson for Stratford Schools, speaking to Techwalla. Stratford runs private schools for pre-K through 8th grade in the San Francisco Bay Area as well as in southern California.
Also in the Golden State, Pleasanton Unified School District's STEAM Preschool has seen enrollment triple since opening its doors in January 2016. Indeed, in the picture above, the color patterns in the boxes brings to mind the color coding strategies used in some commercial coding toys for kids. Pre-schoolers in Pleasanton could be combining coding lessons with explorations into sidewalk art.
Meanwhile, for a week in December of 2016, instructors from the Origin Code Academy went to Franklin Elementary School, a public school in San Diego for grades K-5, to work with teachers and students for an hour a day around computer programming tutorials. The lessons revolved around fun kid themes like Star Wars and MineCraft. Part of a larger "Hour of Code" program, the event in San Diego happened during Computer Science Education Week.
Experts weigh in
So why should your kids learn computer programming and coding, and what are some of the biggest obstacles they might face? We've asked some educators for their thoughts, and here is what they said.
Reasons for learning coding young
1. Career development. Kids with solid educational backgrounds in programming and coding can find it easy to obtain well paying jobs as adults.
"The long-term benefit I see for our students is preparing them (and get them excited) for the jobs of the future. As technology becomes more and more integrated with our every day life, computer science positions are only going to grow and grow," said Lindsey Handley, COO of ThoughtSTEM, LLC, in another email to us. ThoughtSTEM is an educational facility in San Diego that specializes in after-school, summer, and weekend coding sessions for kids.
2. Gaining personal control over tech. As the world becomes ever more tech-centric, your kids need to be fluent in the language of technology throughout their daily lives. Even if they don't opt to become computer science pros, knowing the components of a computer (and even how to assemble one), program a robot, or develop a web page can make them feel at home in a technological world.
"Think about how long you can go without technology today versus five years ago. Probably not very long. With the ability to manipulate this technology, that is offered by computer science, you will now gain control over the technology in your life, which is pretty satisfying," noted Madelaine Coelho, web developer and camp coordinator at Canadian-based Arcane Code Camp. In 8-week sessions in London, Ontario, 12- to 16-year-olds learn the HTML, CSS and Java progamming languages used in web development.
3. Building problem solving skills, critical thinking, and persistence. Computer programming and coding require step--by-step thought. "It's a combination of creative [and] pragmatic thinking, which leads to [an outlook] unparalleled [among] those without a computer science education," according to Coelho.
"Problem solving is a skill that is deeply rooted in the field of computer science. A coder rarely completes a project without a 'bug'. This bug is an error in their code that makes a program not run as expected, A bug is not just a challenge coders face in computer programming but is an everyday reality that we [all] come across in a variety of situations. However, a coder will never shut down when faced with a bug. We approach the problem directly with a 'bring it on' mentality," she contended.
Obstacles your kids might face
1. Lack of enough opportunities to keep developing skills. Private schools charge tuition. So do many pre-schools, after-school programs, and coding camps. Free instruction does exist in some public schools in the US, but it's certainly not pervasive.
"[Most of] our programs only meet for once/week (60 minutes/week)," explained Omowale Casselle, co-founder of Digital Adventures, an organization that offers after-school activities in coding to kids in the Chicago, IL area. Classes include video game design, mobile app creation, robotics, Minecraft modding, website design, the text-based Python programming language, and the visual based Scratch programming language.
"And, in order to really develop mastery, the kids need to spend more time wrestling with difficult problems, getting stuck, getting unstuck and then progressing to the next level by figuring out what went right or wrong and how they can better design their algorithms going forward."
On the bright side, many coding websites are available for kids, with some providing free training.
2. Misconceptions among parents. Unfortunately, some parents can't tell the difference between programming skills and the more common, user-oriented computing skills that kids pick up on their own.
Training in computer science involves understanding the logic behind apps and other computer programs along with learning and practicing the special languages used in programming.
"Parents often write off coding as something the student already 'knows' how to do, just because the student knows how to install an app on a tablet or how to navigate the internet," illustrated ThoughtSTEM's Handley. Nothing could be further from the truth.
3. Misperceptions among other kids. Some children think of coding and programming programs as uncool.
"The ability to create can in fact be quite cool but there is a perception that only 'nerds' will participate in a coding program for kids," Coelho told Techwalla. "The best way to address these issues it to promote coding for what it is: a chance to create, innovate, and succeed."