Coding for Homeschoolers - The Ultimate Guide for Parents

Coding for Homeschoolers: The Ultimate Guide for Parents

 

Computer programming, otherwise known as coding, has become a hot topic in the homeschool community. While coding is currently offered in a small fraction of traditional schools, homeschooling provides a unique and conducive environment for computer science instruction.

 

Teaching coding can be challenging for homeschool parents, including those with engineering backgrounds. There are many homeschool curriculum options to consider, and a number of important decisions to make regarding homeschool computer science curricula, kids coding languages, and academic approach.

 

In this guide, we provide homeschool parents with the answers to some of the most common questions that we encounter running a successful kids coding academy, and we attempt to provide homeschool programming advice that will help them avoid some of the most common pitfalls in teaching K-12 computer science.

 

Kids Coding

Why should we teach homeschool programming?

 

There are a number of important reasons why you might consider building computer programming into your homeschool curricula.

 

  • First, by the year 2020 there will be an estimated 1 million unfilled computer programming positions in the United States alone. The reason? There simply will not be enough engineers to fill the demand.
  • Second, computer related disciplines make up over 60% of projected new jobs in STEM (Science, Technology, Engineering, and Math).
  • Third, computing occupations are among the highest-paying jobs for new graduates.
  • Fourth, coding teaches vocational skills that are immediately relevant in today’s job market.
  • Fifth, coding builds skills in a number of important areas including math, science, problem solving, teamwork, project based learning, creativity, digital arts, and more.
  • Sixth, computer science and technology currently impacts nearly every vocation from medicine to law, from teaching to farming, from political science to business management, and from construction to marketing.

Coding for Homeschoolers - The Ultimate Guide for Parents

 

What age is appropriate for homeschool coding?

 

Coding can be taught to homeschool students as early as age 5. With the youngest learners, using drag and drop or age appropriate text based coding classes is best. You may want to begin with some free resources such as Code.org to explore and see if your child develops an interest, and then seek out some of the paid options if time and finances allow. You may also want to consider Sphero and  Osmo for younger kids who respond well to a tactile, drag and drop approach.

 

Roblox Studio

 

How can I teach coding if I don’t have engineering experience?

 

Coding for Homeschoolers - The Ultimate Guide for Parents

 

Even if you don’t have a background in computer science, it’s never too late to learn. Taking coding courses alongside your child can be fun and intellectually stimulating for parents. It will also provide practical value for you as a homeschool educator and as a general user of technology. Some homeschool parents opt to take their child’s courses in advance so that they can troubleshoot common issues and bugs.

 

coding for homeschoolers

 

Another option is to outsource your computer science classes to local “brick and mortar” or online academies. There are a number of excellent local classes in many cities throughout the world, and a growing number of self-paced online courses that can teach your child how to code – on your schedule. Some online courses even include support including screen-share with real engineers that can help you solve issues and tackle bugs. (We list a number of best-in-class online courses that you might want to consider later in this article).

 

General Homeschool Coding Tips

 

Coding for Homeschoolers - The Ultimate Guide for Parents

Tip #1: Make it fun!

 

In our eyes, making it fun is the number one rule in teaching computer science to kids. Not all curriculum provides share our view. Many, in fact, still use the “Hello World” method in which students learn to print the words “Hello World” on a screen. The problem with this approach is that many kids find this boring and turn away from coding – sometimes forever. We recommend staying away from curricula that is too rigid and academic, and to focus instead on fun, project-based courses that match your child’s interests. Some kids will want to build a video game. Other students might have an idea for an app. Still others might want to build their own webpage.

 

At CodaKid, we prefer to teach coding by building video games and apps as they provide students with a fun and interactive way to learn coding concepts. Many youth coding clubs and academies are starting to move in this direction. Another fun way to learn coding is through robotics. There are an increasing number of new robotics classes and DIY products that we will list in our curriculum section below. Please let us know if you’ve found other good ones for us to review as we will be updating this guide with the latest products and services.

 

Tip #2: Enroll in local or online classes

Coding for Homeschoolers - The Ultimate Guide for Parents

 

It is well known that Mark Zuckerberg, CEO of Facebook, had a computer programming tutor starting in middle school. While one-on-one tutoring with a quality computer science tutor is an excellent way to learn, it can be very expensive and is not affordable for many families. You may also consider searching out group classes as well as online courses that provide live support with real engineers. The best academies and online courses will have well crafted lesson plans that build sequentially on concepts like Booleans, Conditionals, Variables, Methods, and more.

 

Tip #3: Join or Start a Homeschool Coding Club

 

Utilize your local homeschool association to locate coding clubs and groups. If you can’t find one – start your own! Alternatively, you may try to get a group of like-minded homeschoolers together to take a group class at a coding academy or with a computer science tutor. One rule of thumb is to be careful about having too wide an age range in your group. Teens will tend to be much faster typers and will often become bored or frustrated if placed in a class with younger, slower students. Younger kids also stand the risk of becoming intimidated or frustrated when placed with older, more experienced students.

 

coding for homeschoolers

 

Tip #4: Find a mentor

 

Many engineers enjoy volunteering and you might be surprised at how many might be willing to mentor your son or daughter either online or in-person. Interaction with an experienced developer can be invaluable and many times can be performed over Skype or other free video conferencing and screenshare solutions.

 

What is the best programming language for kids?

 

Coding for Homeschoolers - The Ultimate Guide for Parents

For homeschool parents who are interested in text based programming classes, one of the first decisions that you will need to make is what language your child will learn. At our academy, many well-educated and savvy parents read about hot up-and-coming programming languages like Python and JavaScript, and want to expose their children to as many of these languages as possible. (As we noted earlier, we believe that it is best to deep dive into one language if possible). Many times your child’s interests will direct your choice.

 

Our developers at CodaKid built a handy interactive quiz that might help you identify some languages that you may want to consider.

 

For example, if your student is interested in Minecraft Modding, then Java or JavaScript will be the language you will likely choose depending upon course and platform. Conversely some of the best DIY robotics kits use Arduino. If your child is interested in building a website, you will want to consider HTML and CSS, and if she is interested in building apps you might want to consider a language like JavaScript.

 

At CodaKid we focus on Java for our Minecraft coding classes, and we use helper files to reduce some of Java’s more difficult commands. We have found a highly effective way to teach Java as an introductory language, and kids’ natural passion for Minecraft provides them with the extra motivation to learn complex concepts like Booleans, conditional, loops, variables, and methods – all concepts that can be found in nearly every other programming language. Java also happens to be the current language of the Computer Science AP exam. 

 

JavaScript is also one of our favorite languages. While a must-learn tool for front-end developers, it has become one of the hottest languages in the world due to the increasing popularity of its server-side language (node.js). JavaScript was used to make PayPal and a massive number of front-end websites. Below is a screenshot of the mobile game app that CodaKid’s online students learn to build from the ground in our Game Programming with JavaScript course.

 

Coding for Homeschoolers - The Ultimate Guide for Parents

Another language that has come into vogue particularly at the university level is Python. Python is a scripting language that many consider one of the easiest to learn. Python was used to make YouTube, Instagram, and Spotify, and you can even use it to build a website using Django, a popular web framework.

 

What are some coding concepts that my child might learn in homeschool computer classes?

 

There are many coding concepts that are found in nearly every programming language with some minor differences in syntax. Below we have given you two common coding concepts that are found in nearly every language. For ease of illustration, we have written this in pseudo code.

 

Conditionals

 

Conditional statements allow a computer program to execute a certain section of code based on whether a condition is true or false. Java uses Boolean values to evaluate these conditions. One of two Boolean values (True or False) is returned when an expression is evaluated by the computer.

 

Here is a snippet of code that sets a daytime or nighttime texture depending upon the time of day in Minecraft:

 

conditional

 

In the above example, if it is daytime, the computer will use a texture to make the Minecraft world appear as though it is daytime (sun, visible clouds, shadows, etc). If it is not daytime (indicated by the “else” command), the computer will use nighttime assets.

 

coding for homeschoolers

 

Loops

 

Another common coding concept that can be learned through Minecraft coding is called a Loop. In this example, a “While Loop” continually performs a command while a particular condition is true, and discontinues the command when the condition is no longer true.

 

Here is an example of how a While Loop might appear in Minecraft coding:

 

loop

 

In this loop, a player will be able to fire arrows as long as the number of arrows in her arsenal is greater than zero. Once the number of arrows becomes zero, the condition returns a false value (because the number of arrows is not greater than zero) and no arrows can be fired.

 

Homeschool Computer Science Curricula Recommendations

 

There are a number of free and paid options that can give homeschool children a world class coding education in the comfort and convenience of home.

 

Scratch (Free)

 

Coding for Homeschoolers - The Ultimate Guide for Parents

 

MIT Media Labs Scratch is a fun, closed platform that teaches coding concepts while allowing students to build fun games through an easy and intuitive drag and drop interface. Google CS created some well-crafted lesson plans that families can use that include pacing guides. Best of all, other students’ Scratch projects and their “code” are freely available, and it is fun and educational to study how 2D games like Asteroids, Galaga, PacMan, and more were created. Scratch also allows students to add their own art, animations, sound effects, voice-over, and music, making it a dynamic and flexible educational tool. Scratch does not provide student support at this time.

 

Code.org (Free and Paid)

 

Coding for Homeschoolers - The Ultimate Guide for Parents

Code.org is more modern and slick than Scratch and features a closed platform environment designed for ages 6 and up. It has been featured by Hour of Code and is used by many public schools to teach introductory computer science. Code Studio has age appropriate modules using drag and drop interfaces with the option to write text-based code if desired. Code.org has also partnered with Minecraft, Tynker, CodeBattle, and others to create engaging modules that simulate the experience of creating games and apps. The strength of Code.org (aside from the fantastic fact that it’s free) is that they feature gamification, they have partnered with high-interest franchises such as Minecraft and Star Wars, and they have a well thought out sequential approach to teaching code. The downside is that you never quite experience the feeling of building something from the ground up and you always feel confined to a pseudo environment which seems to encourage drag and drop blocks rather than text. Code.org does not provide student support at this time.

 

Khan Academy (Free)

Coding for Homeschoolers - The Ultimate Guide for Parents

Salman Khan has created a series of well-produced videos that are designed to provide free education to the world. Backed by Bill and Melinda Gates Foundation, Khan Academy has begun a series on computer science that teaches JavaScript basics, HTML, CSS, and more. There are video tutorials on a number of topics ranging from making animations with JS, making webpages, making simple 2D games and visualizations with JS, and more. At this time, many of the tutorials do not contain videos, but instead provide text instructions and manuals better suited to high school and college students. We expect great things in the future from Khan Academy as they continue to build out their curricular platform. Khan Academy does not provide student support at this time.

 

Osmo Coding (Paid $29 – $189)

 

Coding for Homeschoolers - The Ultimate Guide for Parents

 

An innovative entrant into computer science education, Osmo Coding combines Legos, coding, and video games. Osmo teaches children computational thinking by using tactile magnetic blocks which allow the user’s character to navigate a series of challenges and puzzles in an iPad game. While the manual specifies that the product is designed for students ages 5 to 12, we think that Osmo is much better suited to younger ages of 5 to 8. We love that Osmo introduces a physical, tactile approach to coding instruction and expect great things from this company in the K-2 space.

 

CodaKid (Paid – $25 Monthly Subscriptions with Free Trial)

 

Coding for Homeschoolers - The Ultimate Guide for Parents

 

In our opinion, CodaKid has one of the strongest homeschool curriculums for coding. CodaKid has a wide variety of course options ranging from Scratch 3.0 to Minecraft Modding to Python Game Development and more. There is no resource that we’ve found that provides more hours content, and that also includes unlimited support should your child get stuck or need a helping hand. You can start with visual block basics, and move forward into exciting text-based coding projects that will challenge even the most advanced young coders.

 

If your child is interested in Minecraft, our Minecraft coding track will take her natural passion for Minecraft and channel it into a productive endeavor – Java programming. The academy now offers All Access subscriptions to Roblox Game Development with Lua, Game Programming with JavaScript, 3D Game Development with Unreal, Drone Programming with Arduino, Web Dev with HTML and CSS, Python Programming, and a Game Development with Unity series is on the way.

 

CodaKid’s goal is to teach kids ages 8 to 15 to write real code using professional grade programming tools, and to become independent programmers. One unique feature of the service is that CodaKid provides online support from a friendly team of engineers who answer questions and even do screen-share sessions with students as part of the service. 

 

At $25 per month for access to over 500 hours of students projects, we think it’s an exceptional deal for homeschool families. CodaKid’s teachers have all passed rigorous national background checks and are experts in the course content.

 

Sphero (Paid $19.99 – $139)

 

Coding for Homeschoolers - The Ultimate Guide for Parents

 

Sphero allows children to program toy robots using drag and drop, block based coding interfaces on your mobile device. Their Star Wars BB-8 robot as well as the original SPRK+ are sleek and modern, and are an excellent way to teach younger children computational thinking.

 

Drag and Drop vs Closed Platform vs Real Coding Tools

 

Drag and Drop

 

Drag and drop programming courses are the tricycles of coding.  They are designed to be fun and easy, but are also designed to be tools that you outgrow. Platforms like Code.org, Scratch, Tynker, and others believe that typing should not become an impediment in computer science education, and that kids can learn many of the same coding concepts through a more visual, tactile approach.

 

Closed Platform 

 

Some online coding courses such as Code.org and Khan Academy offer several text-based options in which students type code into their closed platform learning management systems. These courses will typically teach a coding language on a proprietary LMS to reduce the chances of student errors and to build a tightly-knit error messaging system that reduces the chance of bugs.

 

Real Coding Tools

 

Some programs such as CodaKid use real programming languages and professional grade coding tools. The advantage of this approach is that it gives students the experience of working with professional text editors and real languages. By teaching students real coding languages and using the same text editors that the professionals use, students learn valuable, transferable skills. The best courses also provide online support and screenshare from live engineers who walk students through solutions to their bugs and other issues.

 

coding for homeschoolers

 

What computer do I need to teach homeschool computer science?

 

This decision depends on what your child’s interests are and how you would like to approach your coursework.

 

Many online coding courses such as Code.org and Khan Academy are web-based and only require a high speed internet connection. Web-based courses do not require computers with much processing power and will typically run with nearly any computer manufactured in the last 4-5 years, including options like Google Chromebooks.

 

Providers of courses with real coding tools require a Mac or PC computer with a recommended 4G of RAM and a high speed internet connection. The benefit is that your child will learn how to code using the same professional grade tools and real coding languages used by major software companies around the world. At some point in your child’s computer science journey you will likely reach a time when he or she has a strong desire to use real programming environments and cutting edge tools. Some families decide to do this from the start, while others use web-based tools to begin and then transition to professional grade tools at a later time.

 

Considerations for Christian and other Religious Families 

 

Good news for homeschoolers is that every coding curriculum that we’ve analyzed is inherently child-friendly and wholesome. This being said, any software suite that allows a student to create characters and animations can also be used to create inappropriate content.

 

Conclusion

 

Computer science is on the rise in homeschool education circles, as many families are viewing CS as a new literacy that will be as important as math and science in tomorrow’s world.  There are many approaches to selecting suitable courses for K-12 students, and there are certainly no “one-size-fits-all” solutions.

 

If you might glean one take-away from this article, our advice would be:

 

Make. Coding. Fun.

 

Coding is not easy. Computer programming requires patience, persistence, and steadfast determination. If you implement a program incorrectly, kids can easily become  frustrated and discouraged. If your coding curriculum is implemented correctly, however, you can inspire students to build their skills and become budding young technologists.

 

We hope that you found Coding for Homeschoolers – The Ultimate Guide for Parents helpful!

 

Are there any other suggestions you would make on how to best set up coding courses for homeschool families?

 

10 Comments

  1. AvatarLaura Hewett on August 8, 2016 at 7:00 pm

    Awesome info, thank you so much for putting this together! Excited to try out some of the different coding options!

    • David DodgeDavid Dodge on October 14, 2016 at 9:58 pm

      Sorry for the late reply Laura! Glad you enjoyed it! David

  2. AvatarJennifer on April 10, 2017 at 3:17 am

    This is outstanding information! I am Gen x parent with no coding experience but recognize that my kids will need to have this skill to be competitive when they become adults. We homeschool and so it is important to both my husband and I that we get our children started sooner rather than later. We have 2 six year olds and an 8 year old and none have ever played minecraft. Do they need to play prior to joining codakids or can they learn simultaneously? Thank you!

    • David DodgeDavid Dodge on September 2, 2017 at 9:16 pm

      So very sorry for the late reply! Your kids can learn Minecraft and Minecraft coding simultaneously – but I think they’ll be even more motivated if they learn Minecraft first. Hope this helps!

  3. AvatarSara Ellen on May 22, 2017 at 5:57 am

    This is one of the best posts I’ve ever read. I have gone through other posts also and found some wonderful ideas and resources. It is a dream for homeschoolers to do computer programming and you are definitely helping them in various ways. Thanks! Keep up the good work.

    • David DodgeDavid Dodge on September 2, 2017 at 9:17 pm

      Thank you for your nice note!

  4. AvatarChristina Cavanaugh on November 27, 2017 at 10:34 pm

    I didn’t see Raspberry Pi mentioned. Where does that fit in to the above categories (for non-techie) parents like myself. I’m looking at the Blockly- based Dash robot and the Piper Computer Kit, Radpberry Pi edition. (Trying to make an intro to coding “fun”) Any insight would be helpful.

    • David DodgeDavid Dodge on December 8, 2017 at 1:21 am

      Hi Christina, I’ve heard good things about both Dash and Piper. Will include mention in next update. Visual block languages are great for young learners. We are big fans of Blockly and Scratch. However I recommend that you be prepped and ready – kids often want to build things that are only possible with text-based coding. Another thing that I’ve learned is that “fun” corresponds with what they are most interested in 🙂 Thanks for your note!

  5. AvatarC merkle on May 23, 2018 at 3:42 pm

    My 15 year old took a basic computer course last year but he would like to try coding. He would like to design apps or drone programming or work on apps for drones. Where would you suggest he start if he did codakid?

    • David DodgeDavid Dodge on October 10, 2018 at 8:29 pm

      Hello there! For a 15 year old I really like our Game Programming with Python and JavaScript tracks! You get to build a game from the ground up and gain experience with professional tools such as Atom and IDLE. Both of the languages are extremely popular and demand for both is growing quickly. Hope this helps!

Leave a Comment