Here’s the cool thing about getting started with something new at a young age. If you’re a kid, anything you start sooner than later is only going to allow you maximum time to practice and perfect whatever it is you’re diving into.
But, if you’re a teen who is starting that same thing, and is perhaps a few years “behind” where a kid would be, there is still plenty of reason to get going.
Meaning, while I wouldn’t purposely wait to chase a new passion just for the sake of waiting, if you have a teen who has to push something off - or, as is the typically the case - they just don’t get exposed to something until a later age, there are plenty of benefits and advantages to waiting.
For instance, with age comes experience. For kids, coding may seem extremely intangible, but teens typically have a lot more experience with the very things that coding powers - apps, video games, websites - it’s a bit easier to understand just all that is capable with such related skills.
Secondly, a teen who wants to dive into coding is typically more easily able to jump in and hit the ground running “right now.” This stems from being able to research and suggest opportunities to parents rather than having to rely on the parent to find the opportunity and present it to the kid; or being able to follow friends who have already begun coding themselves.
So, if you have a teen interested in coding, the time is now, and they’re in a very good position to begin learning what coding is, developing skills, and then immediately putting those skills in motion.
Why teens should want to learn to code
There are a number of reasons teens should be coding, some of which can start paying off immediately, while others hold their value for the long term.
To fill a gap
School is required. School is valuable. But most schools also haven’t come around to offering computer science courses. Unfortunately, though, coding is no longer a “nice to have” reserved as a selective skill for only the extremely dedicated to chase and learn on their own. It’s now something that is arguably more crucial to a well-rounded education, since ideally, “education” exists to prepare students for success in the real world.
So, teens should go out and learn to code because the opportunity to do so is not going to come to them in the traditional school setting.
To get a leg up
If teens go out and seek to do something not available to most of their peers, they are going to stand out when compared to others. And one of the most important times that comparison happens is when it comes to college applications.
I mean, any extracurricular is typically going to bolster a college application, as it shows a student is taking initiative to take on more, and to develop alternative skills. But even beyond that, students who possess coding skills in particular can be reasoned to be logic-based problem solvers, or persistent and resilient challenge-tacklers who aren’t easily pushed off course by bugs or hurdles.
The benefits only snowball from there—those who seek to solve problems are often forced to communicate and work with others, and then are able to lead and teach once tasks are mastered, and so on.
To secure a lucrative career
First comes the opportunity, then comes college, and then of course, the ultimate goal, a career that pays well, is enjoyable, and has a noticeable impact on the general public.
Coding can very much be that career! While it’s up to the coder to decide whether or not coding is actually enjoyable and something they like doing, there isn’t any denying that a career rooted in coding is a lucrative one (the computer science major is one of the highest paying college majors available), and is something that is required and utilized throughout each and every day across the world.
In fact, there are a number of different coding languages that are used in order to make all of these things a reality.
Coding languages for teens to consider
A great beginner’s language, teens can use Python to get their ideas up and running relatively quickly, given that Python requires fewer lines of code than other languages! Python is used by Google, Disney, other big brands, and can be utilized to develop video games, numeric computing projects, and web frameworks. Python is also flexible enough for use in cybersecurity and AI!
Beginners can expect to get started creating something like a text-based game, two-dimensional game, cybersecurity program, or console application.
If augmented reality is of interest, teens should consider diving into C#. By combining C# coding and Unity (the industry-standard game development engine), teens learn to use next-level sending and imaging tech to create their own mobile games!
Quick fact: Augmented reality is an interactive experience where digital objects are placed in a real-world environment in real-time.
This is a versatile programming language that if mastered, will open the door to complex problem solving and a true understanding of how programs work. Teens might be most familiar with C++ as the language that is used to create computer applications. Thus, C++ is a time-intensive and complex language, but necessary for those interested in game programming.
Hands-on coding tools for teens
With something new and seemingly complex like coding, it might be useful for teens to get familiar with the tools and “toys” at their disposal, in order to make coding - and coding creations - more tangible.
The micro:bit is a small programmable computer more formally known as a microcontroller development board. It allows users to create awesome inventions. In addition to creating basic programs, teens can also use the device to develop games and solve real-world problems.
The Sphero RVR allows teens the opportunity to jump into autonomous robotics (which refers to robots that can be programmed to perform tasks on their own). The Sphero RVR is highly customizable and has many built-in sensors, a professional-level control system, and a powerful motor paired with all-terrain treads.
Prototype HARP is an escape room style hardware game you have to “hack” to solve using cryptography and critical thinking skills. (HARP stands for hardware alternate reality puzzle.)
An Arduino is a microcontroller, perfect for prototyping, and popular among teens who want to create new electronic devices and integrate sensors for something like an autonomous robot that understands and navigates its environment.
VEX is a popular, exciting, robotics platform designed for teens to build a wide variety of robots. Features includes sensors, which gather information for the robot, and motors, which allow users to create moving parts, like wheels and claw arms.
PyCharm is an Integrated Development Environment or IDE. You can think of it as a notepad in which to write programs.
TensorFlow is a Google-developed library that makes it easier to create and train machine learning models and neural networks.
Quick fact: Machine learning allows computers to learn and improve at a given time with practice over time. Learn more about machine learning for kids.
To start writing and running code in Java, teens can use IntelliJ, which is also an integrated development environment.
Speaking of IDEs, Visual Studio is Microsoft’s integrated development environment. Teens can use Visual Studio for computer program development, allowing them to create websites as well as web and mobile apps.
As spelled out on micropython.org, “MicroPython is a lean and efficient implementation of the Python 3 programming language that includes a small subset of the Python standard library and is optimized to run on microcontrollers and in constrained environments.”
For instance, out at our robotics summer camps, MicroPython is used with Arduino to control the camera of an autonomous and self-driving robot, and sends information based on the camera readings to initiate commands in the Arduino programming language.
Coding project examples
When starting something new, a common piece of advice you’ll often receive is to go “step by step” or “one step at a time,” “walk before you run,” etc.
It’s all true, and great advice. But it doesn’t mean you can’t look ahead or around you at the same time. A perfect time to do so is when figuring out an end goal. Why coding? What does your teen want to do with it? What can they do with it?
So, here are a few example projects that combine a lot of what has already been explained above with languages and tools.
Speaking of games, any game player is familiar with the famous side-scroller, made popular by titles like Super Mario Bros., Double Dragon, and others. And how about the endless runner? Sonic Dash and Super Mario Run are newer examples, made popular as mobile apps. With Java, 2D jump physics, and more, teens can make their own side-scrolling endless runner!
Switching gears to Augmented reality, AR is an interactive experience where digital objects are placed in a real-world environment in real-time. Recently, Augmented Reality technology has boomed due to applications and games that have made it more accessible to everyone.
Teens interested in creating their own AR games with C# can look to the massively-popular Pokémon Go for inspiration. Other AR app examples include Snapchat’s filters, and visualization experiences like IKEA’s Place app, which allows shoppers to virtually place furniture they’re considering in their homes (or, within/on top of photos of their homes) to see how it looks!
And then how about a game built with machine learning? Experiments with Google is a rabbit hole of fun, and one of the things you might come across is this drawing game where a neural network guesses what you’re drawing. It’s pretty amazing how accurate the guesses are, even when you’re terrible at drawing like me!
Last, for a hands-on, competitive endeavor, how about a little battle bot action? With VEX Coding Studio and VEX C++ (the robotics coding language), teens can customize and wire a robot base, and then put it through user-piloted obstacle course challenges and mazes, or stacking and object-moving activities, and more.
For teens, the time to code is now
Something can’t be called cliche if it’s accurate, that’s my rule. So, seriously, if teens want to be able to get all they can out of learning to code, the time is now. Jumping in today will allow them to reap maximum benefits from all that coding has to offer.
And there is good news and bad news. The bad news is that opportunities to learn to code aren’t just going to fall into anyone’s lap. Teens who get up and go to school, then to baseball practice, and then home every single day may not ever be exposed to a coding opportunity.
The good news, though, is that opportunities are plentiful, but they need to actively searched for. Perhaps it’s an online coding course over the weekend, or a weeklong coding camp during the summer. You can even get the ball rolling by downloading a coding app, or watching a YouTube tutorial.
Either way, best of luck! Here are a few additional resources to help your teen get started.
In-person coding courses and programs
- Coding camps
- Advanced Minecraft Modding with Java
- Roblox coding classes
- Code Apps for Amazon Alexa and Google Assistant
- Cybersecurity and Encryption
- Hackathon: Team-Based App Creation with Unity