How to get the next generation coding early

Everything I've been able to do in my professional life I can trace back to my mom giving me the chance to learn to code.
533 readers like this.
Woman sitting in front of her computer

Ray Smith

You've probably heard the claim that coding, or computer programming, is as crucial a skill in the 21st century as reading and math were in the previous century. I'll go one step further: Teaching a young person to code could be the single most life-changing skill you can give them. And it's not just a career-enhancer. Coding is about problem-solving, it's about creativity, and more importantly, it's about empowerment.

Empowerment over computers, the devices that maintain our schedules, enable our communications, run our utilities, and improve our daily lives.

But learning to code is also personally empowering. The very first time a child writes a program and makes a computer do something, there's an immediate sense of "I can do this!" And it transforms more than just a student's attitude toward computers. Being able to solve a problem by planning, executing, testing, and improving a computer program carries over to other areas of life, as well. What parts of our lives wouldn't be made better with thoughtful planning, doing, evaluating, and adjusting?

The importance of starting early

As a computer science professor, I get to see the transformation firsthand, at an accelerated pace—from disoriented freshmen to confident, competent graduates who get high-paying jobs in industry, government, military, and beyond, in the span of just a few years.

But it can start much earlier, and indeed, these days it must. A 2012 Science Education study of career interest in science, technology, engineering, and mathematics (STEM) fields found that by ninth grade, over 80% of girls had self-selected out of STEM careers, and by the time they graduated high school, only 12.7% of females were interested in pursuing a STEM field. Boys fared better, but less than 40% of males stated an interest in a STEM career at both ninth and 12th grades.

That means that we must intervene earlier than high school. Middle schools and elementary schools must introduce computer science and engineering (the two biggest STEM fields, accounting for almost two-thirds of all STEM jobs) early and often. Better, more relevant, and more engaging science and mathematics instruction will support the goal of producing more STEM graduates, but coding and engineering exposure are absent from most primary education around the world.

Where do I start?

Here is where parents can make the biggest impact. Find visual, fun, engaging coding activities for your children to try at home, like Turtle graphics in Python (a personal favorite of my two sons, both under 10 years old), programmable robots, coding apps like Scratch, Tickle, and Tynker—whatever interests your child—and encourage them to play, explore, and try new things. Connect them with a mentor in industry or a tutor from a nearby university.

And be willing to model the importance of learning to code by coding alongside your child. Ask to see the programs they've created. Show them that coding matters to you, and it just might matter to them.

Once they've learned one coding language or platform, encourage them to learn another—most modern programming languages are free to download, install, and use. Many programming languages are open source, including Python, Ruby, PHP, and Java's OpenJDK. Several can even be learned online, for free, through sites like W3Schools, Codecademy, and Trinket.

There is also a growing wealth of free, open source programming tools, from helpful text editors with syntax highlighting, to full integrated development environments including Eclipse, Swift, and even VisualStudio Code.

Books, video tutorials, afterschool programs, and coding camps provide a variety of opportunities to expand your student's learning.

Beyond coding

After picking up a couple of coding languages, explore robotics, mobile app and game development (including Minecraft, Unreal, and Unity), networking, cybersecurity, or physical computing with Arduino or Raspberry Pi. What starts out as a fun hobby can become a serious differentiator on a resume or college application. A cybersecurity recruiter I know made a hiring decision because the young graduate she was interviewing had built a device using a Raspberry Pi to help keep his cat off the kitchen counter.

Job recruiters and college admissions counselors alike want to see that students have done more than what's provided in that they've gone beyond what they've learned in the classroom, that they show an interest, or better yet, a passion, for technology, science, or problem-solving.

Begin at home

And that interest starts at home. Teach your child to code, change their future. Mentor a kid in using technology, and you'll give them a lifetime of new opportunities. That's how it started for me. My mother bought me my first computer when I was 13 years old, along with a programming book on the BASIC language, and a subscription to a monthly programming magazine. I was hooked.

I became the first person in my family to graduate from college, the first PhD, a tenured full professor, a department head of computer science, and an author. And it all started with a $300 computer, a book, and a coding magazine subscription.

That's how I know that teaching a kid to code can change their future. Because it changed mine. Everything I've been able to do in my professional life, and in much of my personal life, I can trace back to my mom giving me the chance to learn to code. I taught computer science on four continents in a single semester this year because someone made an investment in my future in seventh grade.

Make an investment in a young person's life or even your own. Learn to code. Teach a young person to code. Better yet, learn together.

Teach a kid to code, change a life.

User profile image.
A tenured professor of computer science and director of the Center for Cyber Operations Education at the University of North Georgia, Bryson Payne is the author of the books Teach Your Kids to Code (2015) and Learn Java the Easy Way (2017) from No Starch Press, and instructor for the online courses Teach Your Kids to Code (Python), Learn Java the Easy Way, and Real-W


Great article Bryson! I've shared this widely. I'm looking forward to reading your book on Java too.

Thanks, Don - I appreciate the kind words! It means a lot coming from a fellow author and coding enthusiast - thanks for everything you do to encourage kids to code.

In reply to by Don Watkins

Thanks for the article. I think maybe one of the keys to grabbing the interest of kids is the idea of empowerment. At the same time, a lot of the introductory tutorials for programming are very disempowering, showing meaningless little tasks, many of which would be easier to do without programming.
A starting point, or one of the starting points might be to get kids familiar with the command line, because you can start out small, and by all means stick with some task that does something useful. Command line usage can lead to shell scripts for combining a series of individual commands, with the associated logic. After that, something like Python is a natural move.

I agree completely, and thanks for posting! Yes, command-line to scripting, scripting to coding in Python - it's not just a great path to empower beginners, it's the way we're teaching the next generation of Cyber Heroes at UNG! Sys admins, network admins, security analysts and many more high-demand, high-paying IT roles can grow directly from the path you laid out - not to mention great coders and general problem-solvers. And the world needs all the problem-solvers it can get. Thanks for the comment, and have a great week,

In reply to by Greg P

Thanks for the articles. It really provide us a great knowledge.

This was a great article - and provided a clear carrot for parents to get involved with teaching their children to code early. It is worth mentioning the stick as well -- an enormous number of current jobs are under direct threat for automation either by scripts or robots. Most parents want their children to have some control over their lives - and STEM careers are currently the best bet for the future in a career that will not be swept away immediately in the current (and accelerating) automation frenzy.

Creative Commons LicenseThis work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License.