You're looking for the right gifts for a young or beginning programmer in your life, and you need to get them in a hurry. Not to worry: here are five ideas for kids or enthusiastic new coders:
Hello World: Programming for Kids and Other Beginners
Warren D. Sande and Carter Sande
Your computer won't respond when you yell at it. Why not learn to talk to your computer in its own language? Whether you want to write games, start a business, or you're just curious, learning to program is a great place to start. Plus, programming is fun!
Hello World! provides a gentle but thorough introduction to the world of computer programming. It's written in language a 12-year-old can follow, but anyone who wants to learn how to program a computer can use it. Even adults. Written by Warren Sande and his son, Carter, and reviewed by professional educators, this book is kid-tested and parent-approved.
You don't need to know anything about programming to use the book. But you should know the basics of using a computer--e-mail, surfing the web, listening to music, and so forth. If you can start a program and save a file, you should have no trouble using this book.
Python for Kids: A Playful Introduction to Programming
Jason R. Briggs
If your future coder is ready to go a little more in depth, you might introduce them to Python:
Python for Kids brings Python to life and brings you (and your parents) into the world of programming. The ever-patient Jason R. Briggs will guide you through the basics as you experiment with unique (and often hilarious) example programs that feature ravenous monsters, secret agents, thieving ravens, and more. New terms are defined; code is colored, dissected, and explained; and quirky, full-color illustrations keep things on the lighter side.
Chapters end with programming puzzles designed to stretch your brain and strengthen your understanding. By the end of the book you'll have programmed two complete games: a clone of the famous Pong and "Mr. Stick Man Races for the Exit"—a platform game with jumps, animation, and much more.
As you strike out on your programming adventure, you'll learn how to:
- Use fundamental data structures like lists, tuples, and maps
- Organize and reuse your code with functions and modules
- Use control structures like loops and conditional statements
- Draw shapes and patterns with Python's turtle module
- Create games, animations, and other graphical wonders with tkinter
Why should serious adults have all the fun? Python for Kids is your ticket into the amazing world of computer programming.
A Cheap/Old Computer
New coders need a machine to work on, and you might prefer that yours had a dedicated (and semi-disposable) computer than give them free reign over a family machine. Here are a few quick and affordable possibilities:
- Raspberry Pi: It'll take some setup, but at $25-35 you can't beat the price -- and it's intended for learning to code. Ordering the Pi through the traditional channels will take a while, but sometimes you can find them on Craigslist or eBay.
- Another Craigslist/eBay option: Pick up an older desktop or laptop and pop a lightweight Linux distro on there. Maybe install Steam for Linux, Minecraft, and a simple Python IDE. A rugged, customized, and dedicated computer might be exactly the right thing for a journeyman machine.
- On the other end of the spectrum, if your coder-to-be has access to a tablet or other mobile device, you could set them up with a Bluetooth keyboard and IDE. On iOS, you've got Koder, Codea and Pythonista. Android offers a host possibilities and you can find a few development environments in the Windows Store.