Tech is everywhere! And it's important to remember, everyone is a beginner once. The industry is continually growing, looking for new folks to add valuable perspectives. How do we inspire our next batch of tech contributors?
In honor of Ada Lovelace Day, we asked our community of writers if they had any resources or books they recommend for young programmers or enthusiasts. Here's what they had to share.
Start from Scratch
I recommend Coding Games in Scratch: A Step-by-Step Visual Guide to Building Your Own Computer Games by Jon Woodcock and Code Your Own Games!: 20 Games to Create with Scratch by Max Wainewright. Being a LEGO family, all of my kids have spent time with the LEGO BOOST set. It involves a minimal amount of coding but is really focused on some of the foundational skills involved in code like logical, sequential thinking and creative problem solving.
My 4-year-old loves ScratchJR. They have an official book, The Official ScratchJr Book: Help Your Kids Learn to Code by Marina Umaschi Bers + Mitchel Resnick. These fun board books about science are perfect for babies.
Probably the most important thing is that kids love to think—and to think critically. There are two books that help to achieve this in a fun way and also inspire kids to love math and to question everything: The Hitchhiker's Guide to the Galaxy by Douglas Adams and Humble Pi by Matt Parker. Scratch is ideal for a student's initial exposure to coding because understanding basic concepts is usually easier visually.
Programming for the whole family
My favorite books for young programmers come from the publisher, No Starch Press:
- Electronics for Kids: Play with Simple Circuits and Experiment with Electricity! by Oyvind Nydal Dahl
- Teach Your Kids to Code: A Parent-Friendly Guide to Python Programming by Bryson Payne
- Raspberry Pi Projects for Kids: Create an MP3 Player, Mod Minecraft, Hack Radio Waves, and More! by Dan Aldred
- Python for Kids: A Playful Introduction To Programming by Jason R. Briggs
Learn to code by coding
I don't know if I was inspired by fiction books. But the Apple II computer was very popular when I was growing up. Our parents bought an Apple II computer for my brother and me to use, and we taught ourselves how to write programs in Applesoft BASIC. We also had several "teach yourself programming" books that we read cover to cover. I learned a lot by reading, then trying it out on my own, then figuring out how to make it better.
I encourage other developers to do the same. Pick up a book about programming, and just try it out. Make programs that you find interesting; don't worry about what others think. Write a number guessing game, or a turn-based text adventure game, or a puzzle game. Or experiment by writing command line tools that you find useful. A good place to start is to write your own versions of some of the Linux command line tools like
more. What matters most is that you try something, and then you make it better. That's a great way to teach yourself about programming.
^^ In response to Jim
That's an excellent point! Now that I think back, my earliest formative exposure to programming was more or less the same. My parents couldn't easily afford to buy me and my brother tapes of popular games (yes, tapes... for those not old enough to have experienced it first hand, games were usually sold in a clear plastic bag or bubble package containing a paper manual and a cassette tape). Instead, we had subscriptions to home computing magazines which included articles interspersed with printed source code for programs, often games. There were also paperback compilations of these we sometimes received as gifts. If we wanted to play a game on the computer, we had to type it all in first (and inevitably debug it too), so we'd take turns and check each other's work.
I doubt that approach would have worked for later generations, but it was certainly an incentive to fast-track our exposure to software development. It naturally followed that as soon as we got bored with a game, we didn't just pop in something else. We were familiar enough with the code, from hours of painstakingly typing it in and fixing all our errors (sometimes even finding and correcting mistakes in the printed version!), that the obvious solution was to change the game in order to make it more fun. A war strategy game based in ancient Rome could be trivially turned into a space battle setting just by altering some names and terminology. A particular game mechanic which made things less enjoyable could be adjusted or removed to improve the experience and suit our personal tastes.
Little did I know back then I'd still be doing pretty much the same thing 40 years later, collaboratively editing and reviewing changes to source code. And now I can get paid for it!
All about Ada
My 7-year-old daughter is venturing into chapter books while my 3-year-old son is still into colorful board books that he can carry around the house. Both still adore picture books because they can really see themselves in the stories. I’m teaching them about Ada Lovelace in a way that they can grasp her impact. There are lots of books that tell her story. We own the following books:
- Ages 0-3: This Little Trailblazer: A Girl Power Primer board book by Joan Holub
- Ages 4-8: Little People, Big Dreams: Ada Lovelace by Maria Isabel Sanchez Vegara, illustrated by Zafouko Yamamoto
- Ages 6-10: Ada Lovelace Cracks the Code, A Good Night Stories for Rebel Girls Chapter Book
A bonus read I recommend to parents of young kids is How to Code a Sandcastle by Josh Funk and Sara Palacios. Pearl (how great is that name?!) is trying to teach her robot, Pascal, how to build a sandcastle. She encounters a few bugs along the way, but finally creates her palace thanks to problem-solving and cooperation.