From beating the best human players at chess, to flying planes, to running stock market transactions, computers are now used in virtually every facet of modern-day life. But children aren't being adequately prepared to understand and use this omnipresent technology, experts say.
That's why many parents are turning to coding apps and toys to help give their kids a head start. The toys, tailored to different age groups, range from robot turtles to stripped-down, visual coding languages made just for kids.
It turns out, no one really knows, because there's very little research on the subject, and even less from outside a traditional classroom setting, said Andrew Ko, a computing education researcher at the University of Washington in Seattle.
"We have a very immature understanding of how to teach computer science right now," Ko told Live Science.
What's more, coding apps and toys shouldn't be taking the place of time spent in more traditional childhood exploits, such as playing in the mud or learning to read, experts said. However, early exposure to coding toys and apps can build enthusiasm, and that motivation could potentially translate to future computer science work, experts said. [The Top 5 Benefits of Play for Kids]
Different tools for different ages
Most kids need to know how to read or write before they can use coding toys or apps, Ko said. But beyond that, kids can learn the most basic building blocks of coding with toys, such as turtles that can be programmed to move around with a few clicks of a button.
Kids ages 5 and up can also use image-heavy kids' coding tools or games and apps such as ScratchJr (an app in which kids can program their own stories and games), The Foos (an app that uses visual language to teach coding concepts), or Lightbot (a video game for learning about coding), said Alice Steinglass, vice president of product and marketing at Code.org, a nonprofit dedicated to increasing access to computer science. Kids ages 7 and up may be able to use simplified visual coding language, such as Scratch or Tynker, she added.
By the time kids reach middle school, they are starting to develop a sophisticated theory of mind — meaning they can make models of how other people are likely to act. Research suggests that it's also at this age when kids can make predictions about how longer snippets of computer code will run, meaning they can tackle real coding languages, Ko said.
At that age, kids may be ready to make their own robots or, for example, an alarm that detects when a pesky younger brother sneaks into their room, said Sheena Vaidyanathan, a computer science teacher and curriculum developer for the K-8 level of the Los Altos School District in California, in Silicon Valley. [Space Bots & Android Waste Collectors: What's Ahead for Robotics]
Free, open-source programs such as Arduino , as well as pocket-size computers such as Raspberry Pi, allow kids to simply make their own robots and little devices. They may even be ready, at this point, to tackle rudimentary elements of "real" coding languages such as Python or C, she added.
Early exposure to computer science may be particularly useful for girls and those from traditionally underrepresented minorities. In 2012, women earned just 14 percent of computer science (CS) bachelor's degrees, while underrepresented minorities held less than 20 percent of all CS degrees, according to the National Science Foundation.
But some research suggests that early exposure can help close those gaps.
For instance, a 2014 study conducted by Google found that early exposure to computer science coursework was one factor in whether women stuck with the field in college. Many first-timers in CS get intimidated in their introductory programming classes when they are up against students who have been hacking their school networks or scripting Python for years, Steinglass said.
"It's like taking an entry-level Chinese class and finding that every other kid in the class spoke Chinese growing up," Steinglass told Live Science. "You can feel really lost."
Still, it's not clear that early use of coding apps or toys actually makes kids smarter or even better coders.
It would be a mistake for parents to think, "'If I throw every single toy at my kid, they're going to be coding geniuses,'" Vaidyanathan said. "I don't think it works that way. The way they play in the mud and run around and play imagination games is probably just as important."
And while some research suggests that classroom exposure to computer science helps build CS skills later on, there's little scientific evidence that a few hours of after-school tinkering with a coding game has the same effect, Ko said. And no toy or app can guarantee that a kid will become the next Bjarne Stroustrup, the designer of the C++ programming language,
"The idea that toys are something that will promote that learning — it's really going to promote that first 1 percent of that learning," Ko said.
Learning grit and resilience
But really, that's not the point.
"What you're teaching with these games — it's not rocket science," Steinglass said. "What you can learn is that computer science is not scary, and you can get confidence in what you can do."
Most toys are aimed at getting kids addicted to the feeling of creatively solving fun, open-ended problems, she said. Another upside is teaching them the grit and resilience to overcome the frustration that comes with decoding robot speak, such as "Move (10) steps. Turn 15 degrees. Point in direction (90)."
Still, though games and toys can be fun and motivating, "there's not a lot of evidence in research that motivation is lasting" and translates to actual computer programming, Ko said.
Research that Ko and his colleagues will present in May at the SIGCHI Conference (the Special Interest Group on Computer-Human Interaction Conference) has found that grit, persistence and a growth mind-set, or the belief that people can improve with practice, are key skills kids need to become good at coding.
"It's very clear from our research that coding can be learned by everyone. It's not something that someone is born with. There's no geek gene," Ko said.
And those are life skills that provide benefits well beyond the computer screen.
"This way of learning or thinking helps with whatever you learn, whether you become coders or not," Vaidyanathan said.