With most educational topics in school, parents have typically had prior experience taking classes themselves or are aware of the natural progression in subjects like mathematics, science and reading. Unfortunately, for most parents, they don’t have a lot of experience with technology based topics.
In addition, most formal courses of study in technology begin at the collegiate level and have not yet migrated down to elementary, middle and high school.
For those who have studied technology or work within technology fields (sales, marketing, etc..), there is a bit more familiarity. However because coding and engineering design classes aren’t offered in most schools, most of the parents we talk to realize the importance of learning technology. But, they are not quite sure how to get their kids started.
As an education technology company that has taught these subjects to kids with a wide variety of experience and expertise, we thought it would be helpful to put together a guide on what you can expect from various topic areas that your kids might be exposed to within technology.
There are a lot of potential coding class topics that your kid can study. Our hope is that this guide will help to demystify things for parents as they make this important decision.
Visual based languages - In working with visual based languages, the key design feature is to prevent roadblocks of grammar and syntax that can trip some developers up when they work with text-based languages.
Visual based languages are often ideal for developing fluency through repeated practice in the underlying logic and design of algorithms used in computer programming. Users can often get significant exposure to loops, conditional statements, variables and functions when making programs using visual based languages.
In addition, the combined editor and compiler that is built into these languages allows students to get rapid feedback on whether or not their programs are working. One of the primary complaints of visual based languages is that they oversimplify programming. However, I think this perspective is only because they excel with their user interface and design to the point where students misunderstand that ‘real’ programming must be done using a text based language. Visual based languages are excellent for those who are just getting started on their technology journey.
Video Game Design - When designing video games, the most important thing to know is that your child will be learning about events and actions. Considering this from the perspective of a video game player, she is looking to be challenged as she progresses through the various levels within the game.
As a result students need to understand how to develop a series of interrelated actions that will be enjoyable for the player while remaining true to the theme of the game. In addition, lots of thought will be given to the characters that are created and the environments these characters are placed within.
Most video game design platforms are built on top of existing text based language. For example, in Unity you can utilize C# and Lua in Roblox when building game functionality.
Virtual Reality/Augmented Reality - Virtual Reality/Augmented Reality are conceptually similar to video game design. However, the key difference is the environment must be designed to be much more immersive and interactive. With virtual reality especially, a user will be putting on a headset or other hardware device to have full immersion into an environment. In traditional game design, you are only thinking about how the characters that are created will engage/interact with the environment developed.
For virtual reality applications, you also have to think about how the immersed user or player of the game will interact with the environment. Will they want to glance at the stands as they are racing a car? Will they want pull over to the side of the road, get out of the car, and touch the grass? This nearly infinite number of user possibilities is what makes designing in virtual reality/augmented reality so difficult but also extremely satisfying.
Mobile App Development - Most of us are familiar with mobile applications because we have them downloaded onto our smart phones. This can be mobile applications like Pandora for listening to music or Citibank for access our banking information while on the go.
While there are similarities between web development and mobile development, the key difference is that you have to make a user interface and user experience that is mobile friendly. In practice, this means that the viewing screen must adjust to a smaller screen and buttons can’t be too close to each other so that they aren’t inadvertently pushed.
As a result, many mobile app development platforms are designed with their viewing screens to simulate that of a mobile phone. This enables developers to immediately see how their design choices impact the mobile user interface.
Website Development - We all visit websites on nearly a daily basis. For some of us, we check stock quotes using Yahoo Finance. Others of us might catch up on the latest stories using Google News. There are millions and millions of websites that are available across the web.
In order to develop the skills to design websites, the developer must consider the user journey. What information is the user looking for. You also have to consider how to technical structure the website so you can be found by users of search engines. This includes designing the site to load quickly and to provide useful information that answers customers questions.
3D Modeling & Printing - For those who are designing products, learning to model in 3 dimensions can be very helpful. 3D modeling can enable engineers and designers to see potential issues before they send a design to production.
In 3D modeling, one learns how to create products that are structurally sound to prove whether or not a design is going to work. These powerful software platforms include the ability to measure dimensions and angles.
Digital Design - Using powerful visual software, designers create movies, animations and stunning visual images. From learning how to caption to movies to understanding different animation techniques (squash and stretch), digital designers learn a very in demand skill. The rapid explosion of web and mobile content have consumers desiring visually appealing websites, mobile applications and videos. In order to excel, students have to be detail oriented and extremely patient to mix the art and science necessary to enable consumers to enjoy what they see.
Data Science - As computing power has increased, the amount of data being created on a daily, weekly, monthly and annual basis has exploded. Due to this rapid growth in the amount of data, it becomes important to derives insights from datasets so that key decisions can be made.
Since datasets are so large, one needs to have a way of confirming the data sufficiency and then analyzing the data to figure out how different relationships change based on the variables under consideration.
Text-based languages - Many of the interactions with technology that we experience on a daily basis are based on millions of lines of code. Text-based languages form the foundation of our technologically advanced world. Those who are able to program in these languages often have a sound understanding of foundational computer programming concepts like loops, variables, functions, classes and conditional statements. They are also knowledgeable on using text editors to write their code and then compiling their programs to run on a given web or mobile platform. In addition, they also develop fluency in debugging and troubleshooting their programs by either manual inspection when something doesn’t work as intended or deconstructing error messages when the program won’t run at all.
Robotics - One of the great intersections between hardware and software development is in the field of robotics. Boston Robotics is one of the most exciting companies within the space. Their videos that they develop human-like robots that can run, jump and open doors have given us insight into what these machines are capable of.
When students are learning robotics, one of the key skills to develop is the proper structural integrity of the machine. From there, they learn the programming of the software behind controlling the robot. Options for control include movement, sound and sensing.
Similar to visual based languages, many of the popular robotics programming interfaces are visual in nature. This once again removes the typical hurdle that most emerging programmers can encounter with syntax and grammar.
Circuits - Understanding how electricity flows is very enticing for a lot of students. Whether device is battery powered or it is connected to a power outlet, we are all exposed to the outputs of electricity on a daily basis.
One way for students to gain a better understanding of how electricity works is through the study of circuits. Using breadboards along with simple wires, resistors and light emitting diodes (LED) goes a long way to educating students on electricity.
By experimenting with changing resistors and seeing how the light either gets brighter or dimmer is instructive.
Platforms: Raspberry Pi
Computer Building - Desktop and laptop computers are all around us. Most of us use a computer at-home or at-work. Our children also tend to have access to computers at-home and at-school. Due to this widespread exposure, students often wonder how these devices work.
In courses on this topic, they will often be exposed to the different elements of computers - motherboard, monitor, memory chips, wi-fi, and USB inputs. By seeing these elements deconstructed from the typical form factor, students can gain a better appreciation of this hardware.
There can also be discussion on how the operating system pairs with the hardware to run programs and applications.
Drones Similar to robots, students learn how to program a physical object to move. Drones are typically created to be lightweight and have engines that enable them to fly in the air and also hover in place.
One of the main challenges when learning how to program drones is getting them to perform tasks accurately given the additional challenge of conditions that are present in the air.
We hope this guide has been helpful. Our goal was to illustrate that there are a lot of different options out there for students who are interested in diving into the wonderful world of technology. From software to hardware and those that mix both disciplines, there is something for every interest imaginable.
One of the key principles when your child is just getting started is have them work with a topic that they enjoy. For some kids, that will be Minecraft Modding and for others that will be a visual based language like Scratch.
As they work with a platform that they enjoy and build their confidence with building projects they will begin to develop their confidence and ultimately a curiosity about how technology truly works.
From there, they can begin to branch out and explore other topics of study or continue gaining depth in their initial path.
Within the education technology, there is much to explore and new platforms are being introduced all the time. If you think about your child’s learning as a journey, the main goal is to develop their internal motivation and drive to learn more. This is typically less about a near term goal such as learning Python.
Instead true motivation often comes from when they learn enough about technology platforms to want to bring one of their own ideas to life. That’s when they will really begin to develop the breadth and depth necessary to success in building with technology.