Not only are tech jobs going to be the jobs when your son or daughter graduates high school (by 2020, the U.S. will create 1.4 million jobs in computer science-related fields), chances are, those who have them are going to have more job security, a better salary, and probably more helpful robot butlers than you.
Zach Sims wanted to learn how to code, so he launched the online platform Codecademy five years ago, and now anyone can go there to learn programming languages from Java to Python. "I'm not a programmer by trade," says Sims. "We actually started the company to teach me to program, and this is the hands-on learning experience that I wanted."
It's become pretty common to grumble that America doesn't make things anymore, but that's not exactly true—it's just that old people like you can't necessarily envision what it is we'll be making in 20 years. You know who can envision it? Your kid, after they learn how to code.
In the days of floppy disks and Revenge of the Nerds movies, the computer science classrooms were full of bespectacled pariahs. Now programming is a fundamental part of early education. "Classically there are the the Rs of literacy: reading, writing, and arithmetic," says Sims. "We think that algorithm should be the fourth R. It is a foundational set of skills and framework for people to have in the 21st century." If your kid's school doesn't offer computer science, it may be time to disband the PTA.
Problem solving, critical thinking, and even spelling improves when kids start coding. But one of the most important skills that students pick up is how to fix mistakes. "You find plenty of bugs in code," says Sims. "How do you go through a systematic process of finding and eliminating error? In coding, you learn that it's okay how to make mistakes, as long as you know how to fix them."
These days, you don't even need to know how to type to start coding (and you really don't need techno music and a multiscreen command module). Children in preschool can be taught how to think in developing languages using toys and apps geared toward their age group. At this basic level, kids between 2 and 5 are learning how putting things in different orders yield different results. Like, underwear first, then pants.
- Code-a-Pillar: Fisher-Price's new programmable preschool toy teaches toddlers sequencing. Put Mr. Caterpillar's segments in different orders and he'll move, blink, and spin accordingly. And you thought they were just very hungry.
- Board Games: Not everything that teaches coding has to flash and beep. Try introducing some of these board games that are fun and logical—like Spock during Pon Farr.
- Mobile Apps: Tinybop knows those little hands want your iPhone. Queue it up with a game like The Everything Machine, which uses an easy drag-and-drop interface to reprogram your phone's sensors and tools. (Now they're ready for a career with the NSA!)
There's a lot more your child can be doing in the primary years besides recess and nap time. Alongside learning how to write and read, this is the right time to get the into block-based coding, where you drag and drop commands to create actions. Think of it like refrigerator magnet poetry—but instead of dirty limericks, your kid is creating actions on a screen.
- Scratch Jr.: Drag-and-drop platforms such as Scratch Jr. allow kids as young as 5 to create scenes where characters jump, dance, sing, and move around. It's not Call of Duty, but it's a start.
- Tynker: Set your child up with more formal online courses from Tynker. Here they can get an advanced set of skills to build games and applications.
- App Inventor: Speaking of apps, MIT and Google Labs has created a platform called App Inventor that focuses specifically on mobile programming. If your son or daughter does manage to create the next Angry Birds, think of all the fun you can have with their college fund.
- Hour of Code: The mission of Code.org is to get those from "4 to 104" to sit down for 60 minutes and make something. It has been implemented in schools in 180 countries, so chances are, someone is organizing an event near you.
Sims suggests that once young children graduate from the simple block-based coding, they can start on languages like Ruby or Python, which both use recognizable "if/then" constructions—as opposed to some crazy Perl coding that looks like you've found a crack in the Matrix. The main takeaway for their burgeoning career is, stick with one language, get really good at it, and make things that you can show off to a far-in-the-future employer.
We're more likely to stick with something that is fun over something that's work. Minecraft is a great way to get kids into coding, because nothing about it feels like coding. Seriously, look at some of these insane things you can build with those blocks. As long as your kids don't realize they're actually learning something, they'll hang with it.
At Codecademy, Sims talks about creating the "wow" moment for students, where their efforts are rewarded with something cool and useful. That why they have their students work on websites about themselves first. "If you have them build fun, small projects, where they can make something in an hour and show it to their friends, it helps kids understand the power of programming," he says.
This article originally appeared on Fatherly and is reprinted with permission.