Fun Ways to Teach Kids Programming

Teaching children how to program (or code if you insist) has become a big deal lately. Everyone is jumping on this bandwagon, so we though we better hop on as well. Because of all the attention that this topic gets, there is lots of great material that kids can use to learn to code that is pretty fun and also educational at the same time. We have found some of the best websites, books and apps to help kids (ages 10+) to become the most awesome programmers in the history of the world.

computerdog1

*If  you are looking to teach younger kids how to program check out our post on how to teach kids ages 5-9 to code.

The Best Websites for Kids to Learn Programming

  • Alice (ages 10+) is a 3D programming environment that makes it easy for kids to create an animation for telling a story, playing an interactive game, or a video to share on the web. Alice is a little trickier than Kodu or Scratch so might want to check out this Alice tutorial  if your kids aren’t familiar with this type of platform.
  • The Khan Academy Computer Science Platform for kids (ages 11+) Are computer science tutorials from the wonderful Khan Academy that show students how to explore, create  and share their own computer programs.
  • Code Academy is a series of courses to help you master a topic or language related to programming. It’s a pretty clever site and is lots of fun to use. It is super simple to us and users can earn badges for completed lessons . Oh and it is free.
  • Another option to check out is Tynker. Designed for kids in 4th to 8th grades, Tynker is an easy-to-learn, user friendly visual programming language. This introductory course covers basic programming concepts including creating scenes, playing sounds, moving characters, conditionals and repetition, animation, handling keyboard and mouse events, pen drawing, collision detection, keeping score and more.

Popular Programming Languages Made Easy for Kids


If you are looking for a specific language to teach your kids there are a few sites that cater to this. Here are a few that we found.

  • Pygame is a set of Python modules designed for writing games. Pygame allows you to create games and multimedia programs in the python language. Be sure to check out Pygame’s extensive list of tutorial resources. According to the Pygame site Pygame is” highly portable and runs on nearly every platform and operating system. Pygame itself has been downloaded millions of times, and has had millions of visits to its website.”
  • SmallBasic (ages 10-16) from Microsoft is a friendly development environment that is based on .NET and can be applied to other .NET programming languages like Visual Basic.
  • Kids Ruby is a fun and easy way to learn Ruby for kids. This software has very kids friendly graphics and is very easy to follow. You can download this software for Windows or Mac OS or they also have a complete KidsRuby OS based on Ubuntu that you can download.
  • Hackety Hack teaches the basics of the Ruby programming language from the ground up. No previous programming experience is needed.  Ruby is used for all kinds of programs, including desktop applications and websites. Hackety Hack uses the Shoes toolkit to make it really easy and fun to build graphical interfaces. Several lessons and example programs are provided, showing you how to make all kinds of fun things.
  • PHP For Kids has tutorials that will teach you kids  PHP, HTML, CSS  and MYSQL, that are all helpful for making websites. PHP is a free programming language that can add dynamic content to a webpage. PHP is a simple language that can be learned quickly, and can prepare you for other programming languages as well as provide you with useful problem-solving skills.
  • Java For Kids is a course for kids and beginner programmers using the very easy-to-use JUDO windows program instead of the dos command line interface. This course takes a hands-on approach using lots of exercises and a minimum of theory.

Books to help Kids Learn to Program


There are a decent amount of books available to learn to code that are specially aimed at kids. Some of the titles to look out for are Scratch 2.0 Programming for Teens by Jr. Jerry Lee Ford, Programming Video Games for the Evil Genius by Ian Cinnamon, Learn to Program by Chris Pine, and Super Scratch Programming Adventure! by The LEAD Project.

One book that is highly recommended is Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande, this is a fantastic book to introduce kids to programming concepts. We mentioned this book in our post about teaching kids ages 5-9 to code but it is worth mentioning again because it really is a great introduction to programming (using python) for kids.

Apps to Help Teach Kids to Program


Hakitzu teaches kids “the JavaScript language through controlling mighty battle robots in a dangerous sport of the future. Use your new found coding ability to plan your moves, code your robot warriors and execute your path to victory. Learn to code or prepare to be hacked!”

 

Read More: How to Teach Kids to Make Apps (Sort of)

 

photo credit: wrumsby via photopin cc

 

Teach Kids to Code

It is actually pretty crazy the amount of stuff that is available to teach kids ages 5- 9 to program (or to code if you prefer) once you really start to look. Since the topic is a little vast, we are going to try to break it down for you by finding the best languages for kids, fun websites, books, and interesting apps that will all help kids learn how to program.

small__2638393907
*If you are looking for resources to help kids ages 10+ learn to code check out our post on programming for older kids.

For a Fun and Easy Intro to Coding try these Kid Friendly Platforms:

Kodu (ages 7 +) lets kids create games on the PC and XBox using a simple visual programming language. Young children who have no design or programming skills can use Kodu to make games. Before you get started make sure you watch the introductory videos and also check out the in game tutorials by going to ‘Lessons’ and start with the first tutorial and follow the prompts. There is also this official guide to Kodu that can help your kids work through site.

Scratch (ages 8+) is a programming language that makes it easy for kids to create their own interactive stories, animations, games, music, and art and then share what they have made on the web. It was created by the Lifelong Kindergarten Group at MIT. The site has a great Getting Started pdf and also some video tutorials you can check out before you get going or check out this really good book to help your kids work through the site.

Robomind is a simple programming language designed to help kids learn the basics of computer science by programming their own robot. This gives kids an introduction to programming techniques, and helps them learn about logic and robotics.

Books to help Kids Learn Programming

Hello World! Computer Programming for Kids and Other Beginners is a great book to help teach kids how to program. This book introduces the basics of computer programming through Python, it is good for ages 9 +. This is probably the most popular and most recommended book for teaching kids to program. There are lots of great reviews around for it and it is highly recommended.

The next book we would recommend is a fiction story book called Lauren Ipsum that was written by an engineer who works for Facebook. It is a fairy tale that seeks to introduce children ages 5-12 to the concepts of computer science.

Apps that Teach Kids Programming

  • Move the Turtle. Programming for kids (ages 8+) teaches children the basics of programming including the notions of loops, procedures, variables and conditional instructions. Wired’s GeekDad reviewed this app and said of it “Move the Turtle is a bargain at $2.99, and is a great introduction to programming for kids (and adults who like turtles). I highly recommend it for all kids, whether or not they want to get into programming. The kind of thinking required to solve the tasks in the app is important for everyone to learn, for every field of study.”
  • Daisy the Dinosaur (ages 5-9) is a free iPad app that teaches the basics of computer programming like basics of objects, sequencing, loops and events.
  • Kodable is a free educational iPad game offering a kid-friendly introduction to programming concepts and problem solving. For kids ages 5 and up.
  • Cato’s Hike: A Programming and Logic Odyssey wants to teach kids and young children basic programming skills. The younger ones will obviously enjoy solving levels using simpler coding techniques but the hope is the older ones will pick up more advanced concepts like loops and branching as well as even more advanced concepts like a basic stack or memory.

 

 

photo credit: t0msk via photopin cc

 

 

Simple Electronics and Circuitry for Kids

This is a good time to be a kid who is interested in electronics and circuits or a parent who wants to help get their kids interested. Partly thanks to Kickstarter campaigns and the DIY/Maker Electronics movement there are some amazing toys, online videos, and books that can give even very young kids a chance to learn about how things work and are wired up that didn’t exist a few years ago in a safe and fun way.

littlebitsgirl
 

In the past kids didn’t really start to learn about electric circuits until middle school age, but because of toys like Snap Circuits and littleBits this is changing very quickly. To help parents who are looking for some super fun electronic resources we have rounded up all the best stuff that can help kids learn about simple electronics and circuitry.

Websites to help Kids Learn about Electronics and Circuits


Here are some of our favourite sites that can show beginners how to get some hands on experience:

  • Adafruit Industries is a great place for anyone to learn about electronics. There are videos, tutorials, forums, online question sessions and kits you can buy to get started. It covers everything you need to know about DIY electronics. Highly recommended.
  • EEME is a neat idea for kids ages 7-12 who are interested in learning about electronics. Your kids get sent a kit with an electronic project they have to put together in it each month while also following an online video curriculum.
  • SparkFun is another site that sells electronic kits that has a really good tutorial section on their site.
  • Make you probably already know about this site but it is still worth mentioning since they have a very extensive video section. Make can be a little overwhelming because of the amount of info that is available. If you are looking for a simple project that is okay for kids try this video.

Electric Circuit Toys, Tools and Kits for Kids


There are some amazing toys available that can help get kids excited about electronics, circuitry and electrical engineering. If you are just starting out and are looking for something very basic you can try the insanely popular Snap Circuits. They are kits that have snap-together parts allowing kids to build electrical projects in an easy and safe way. They have a lots of different types of kits with a huge range of prices. Another good beginner toy that could help kids get interested in circuits is Roominate. Roominate is a dollhouse that lets kids experiment with wiring a room or a dollhouse.

Along the same lines as Snap Circuits, but slightly more complicated is littleBits. littleBits is an open source library of electronic modules that snap together with magnets, it is often described as LEGO but with electronics.

If you are looking for something that is more challenging than the snap together type kits you could try either the Elenco 130-in-1 Electronic Playground and Learning Center or the Electronic Playground 50-in-one which are electronic learning kits. These are made by the same company that makes Snap Circuits.

The next step beyond the electronic learning kits would be the Arduino. The Arduino is basically a small circuit board that combined with some software can make electronics projects interactive.  If you want to learn a bit what the Arduino is all about have a look at this video that gives a really good introduction to the Arduino and what you can do with it. Arduino Sets are big with the maker movement and so there are lots of different types of sets around available from places like Makershed.

Circuits and Electricity Videos for Kids


There are plenty of videos for beginner electronic and circuitry for kids or students that are available on YouTube. If you are looking for something a little different you can try Adafruit’s Circuit Playground webisodes that explain circuit breakers, electrical currents and amperes in episode 1 A is for Ampere and how batteries make electricity and how to make a lemon battery in episode 2 B is for Battery.

Another online show that is neat for kids is Sylvia’s Super Awesome Maker Show. This is a really fun web show that features the multi-talented Sylvia, who shows kids how to do maker projects at home, some of which involve circuitry and adding electrical elements.

Online Games


There are a few free fun online games for kids who are learning about electricity and circuits you can find a simple game here or check out Woodland Resources who have an extensive list of electricity and circuit games and activities.

Fun Books


There are lots of fun books that go step by step through experiment having to do with electricity and circuits. A few to look out for are:

  • Experiments with Electricity by Salvatore Tocci goes over what is electricity, how to build an electric circuit, what are conductors and insulators, how to build a switch and also how to make a magnet.
  • Young Discoverers: Batteries, Bulbs, and Wires by David Glover has lots of experiments or projects ranging from building a basic battery-connected circuit to a do-it -yourself burglar alarm, that will help kids learn about the principles of electricity.
  • Safe and Simple Electrical Experiments by Rudolf F. Graf has more than 100 projects and experiments that are a fast and reliable way of learning basic principles of electricity with a focus on static electricity, magnetism, and current electricity and electromagnetism. No special or expensive materials are required and this book has detailed instructions and illustrations.

Another option to help kids learn about electronics and circuitry is to have them read a fictional book with an exciting story line. A couple of books to check out are:

  • Nick and Tesla’s High-Voltage Danger Lab by Bob Pflugfelder and Steve Hockensmith is a very cool book that has two children fictional characters who love science and electronics. In the book they have adventures where they build 9-volt burglar alarms, electromagnets, and mobile tracking devices. The neat part of the book is that it has instructions and blueprints for five different projects that the characters in the book do.
  • Arduino Adventures: Escape from Gemini Station (for ages 8+) by James Floyd Kelly and Harold Timmis is a fun introduction to the Arduino microcontroller. Using a fictional storyline kids can learn how to install and configure Arduino’s programming language and learn about LEDs, Resisters, and other basic components as well as build and test electronic circuits involving bread boarding and basic wiring.

If you have any great resources to help kids learn about simple electronics and circuitry please let us know in the comment

 Read More: Fun Ways to Teach Kids Programming

photo credit: littleBitsElectronics via photopin

Teach Your Kids to Make Apps (Sort of)

You have probably seen lots of news stories about kids who are as young as 7 developing iPhone and Android apps and maybe you started wondering “Why isn’t my kid doing that”?  Unfortunately, it’s not necessarily an easy thing to make an app.

While it is super awesome if kids are interested in actually creating technology and not just playing with it, before we get going we’d like to give a little warning about how much work it actually takes to make an app. If you look closely at the stories of kids who are developing games and applications there is usually a programmer parent or at minimum a parent who is involved in IT in some way. The kids who are doing this are generally kids who have been introduced to computer programming at an early age; so while, yes, it is possible for kids to make apps, in all likelihood if your kids are super keen to create their own programs and games they will need someone (parent, teacher, relative) who can help them with some of the more difficult parts of creating something (especially if they want to do it from scratch or are using a third party platform).

appprogrammer
 

Anyway, since there are kids out there who have done it, we thought we’d have a bit of a look to see what resources are out there that can give children some guidance.

Where to Start

There are three ways to go here depending on what your kids know and what kind of application they are trying to create:

  1. If your kids have no computer programming knowledge and have no interest in trying to learn any programming, but they still want to make something cool, then they should probably start off with an app creation tool.
  2. If your kids know some programming and are motivated and open to learning more, then they would most likely be best trying a third party platform.
  3. If your kids are really good programmers, super motivated to learn new stuff and are not afraid of a challenge then they just might be able to create something from scratch.

Let’s start with the easy stuff first.

How Kids Can Make an App With Little or no Programming Knowledge

If your kids don’t want to learn to program then they are going to need to find an app creation tool (aka app creator, app maker, app builder, or brochureware) that can help them make the type of product that they want. An app creation tool is basically a program or a type of software that allows non-programmers to easily create software with programming features. They are usually quite easy to use and you can get something created quickly.

Some of the things to keep in mind if your kids are using an app creation tool: they won’t have the kind of control over the app that they would if they were building from scratch, they won’t able to produce complex features or design and the app may not run as quickly or as smoothly on slower devices or older phones.

There are lots of authoring tools to choose from, (many more not included in this list). The following all claim to allow their users to create apps without writing any code.

  • Game Salad  is an app creator that lets non-programmers develop games for iPhone and Android devices using drag and drop features.
  • AppMakr is a DIY platform to create content-based apps for iPhone, Android, and Windows Phone with no programming
  • Gamemaker allows you to create many types of computer games without the need to write a single line of code. It allows users to make the game in Gamemaker and then redistribute on multiple platforms including iOS and Android.
  • Stencyl helps you create iOS and Flash 2D games quickly with or without coding.
  • Construct2  allows users to build 2D games without any coding that are then exported or converted to iOS or Android.
  • App Inventor for Android  helps kids or adults create mobile applications for Android-powered devices without writing any code.
  • Buzztouch allows anyone to create an iPhone app in a few minutes without special knowledge or software. These are mostly aimed at small business owners but if kids want to create a non-game based application they can give it a try.
  • iBuildApp is a site that lets you make iPhone, iPad, Android or HTML5 mobile apps for free.

Resources:

Search on YouTube for tutorials for the app creation tool your kids might want to use. There are lots of video resources for each of the sites

If your kids are non-programmers but are interested in learning a bit more about the whole mobile applications process, check out Book 1: Diving In – iOS App Development for Non-Programmers Series.

How to Teach Kids who have Some Programming Skills to Build Apps

If your kids have a good amount of programming knowledge but aren’t hard-core programmers,  there are a number of third party platforms or frameworks that are a great option for kids to try out if they are trying to create something new. Most of the kids who have created apps have used these platforms in one way or another. Your kids won’t have the kind of control that they would if they were building from scratch, but realistically they are the best option for kids.

By using a third party platform kids can create their mobile applications in a relatively easy programming language to learn or one they already know (HTML, JavaScript) and then the code is deployed and adapted to run on iOS and Android.

Some of the Third Party Platforms to consider:

  • Phonegap lets its users program in HTML, CSS and JavaScript that can then be converted to Android and iOS using a JavaScript API. This is ideal for kids who may have strong skills in web development and who want to begin to move into mobile development.
  • AppceleratorTitanium is similar to Phonegap in that it supports HTML, CSS, and JavaScript, as well as supporting PHP, Ruby & Python for Desktop apps. Once everything is coded in one or more of these languages it is then deployed to Android and iOS.
  • Corona SDK is a mobile 2d game development framework that uses Lua as its programming language. Lua is considered by many programmers to be an easy programming language to learn and in some cases ideal for kids to use. Here is a great list of tutorials on how to use Corona.
  • Cocos 2d iphone is a framework for building 2D games, demos, and other graphical/interactive applications. It is based on the cocos2d design: It uses the same concepts, but instead of using Python, it uses Objective-C.
  • Unity 3d helps its users create interactive 3D games that can be converted to different platforms. Unity 3D would be a good choice for a kid who is very advanced with programming, but not wanting to build a game from scratch. Have a look at tutorials to help get started.

Resources

There are a number of really good online tutorials that can be helpful if kids are looking to improve their coding skills. Try Code Academy, Code School HTML/CSS or TeamTreehouse. You can also try Make Games with Us which has an in-browser Xcode simulator and tutorials that are very useful.

How to Help Kids Make an iOS app From Scratch

iOS
We would not recommend kids actually trying to create a mobile applications from scratch since it is pretty hard for even seasoned programmers, but who knows what some kids might be able to accomplish so we thought why not put in some info just in case.

There isn’t much point in us trying to explain exactly how to make an app from scratch since it is such a big undertaking. There are lots of sites that can give you much better information on that than we can. Instead, here are some things to consider if your kids really want to develop something from scratch:

  • They need to have a good understanding of Object Oriented Programming (OOP); knowledge of a programming language like Java or C++ is highly recommended.
  • They will need a Mac computer.
  • They will have to pay $99 to join Apple’s iOS developer program before you can submit an app to the App Store.
  • They will need to download xCode Apple’s Software Development Kit (this is free).
  • They will need to learn the Cocoa framework which is an Apple specific development environment.
  • They will need to learn Objective C

Resources

Learning to use xCode, Cocoa and Objective C are not easy,  luckily there are a lot of resources kids can reference to try and get going.

How Kids Can Make an Android app from Scratch

Points to keep in mind before beginning to program for Android devices:

android

  • As with IOS programming, your child or student should have a strong programming background; knowledge of a programming language such as C++, Java, or PHP is highly recommended.
  • They can use a Windows, Mac or Linux computer.
  • They will need to download the Android software development kit (free).
  • They will need to learn Java.

Resources

Hopefully if your kids are curious about making apps, you were able to find something here. If you have any thoughts on kids doing app development or any tips for kids please leave a comment.

Read More: Simple Electronics and Circuitry for Kids

The Most Effective Way to Teach Kids HTML

Not surprisingly, there is no shortage of resources to teach HTML online. What is a little harder to find are resources to teach kids HTML (and CSS) that are simple and appealing. Since it is a relatively easy thing to learn and a good way to get kids interested in programming in general, we’ve found some really great websites, books and a few free online games that are perfect for teaching kids will get them building websites in no time at all.

htmfeature

Best Websites to Help Teach Kids HTML

There are lots of great websites available that are perfect for beginners; the hard part is narrowing it down. Some of the following sites have really good video lessons and tutorials that are okay for kids (younger kids will probably need parental assistance going through the material on these sites).

  • IPL2 for Kids have some easy and fun lessons to teach your kids HTML. This would be a good place to start as it talks about what HTML is and what are the rules, lots of stuff about different tags, how to link, CSS and more.
  • Learning HTML for Kids  has 12 easy lessons designed specifically for kids ages 10 and up. It is a step by step tutorial that is very well done.
  • HTML Goodies has another set of tutorials that is a great place to start. It goes into much more detail than Learning HTML for Kids but the information is laid out very clearly and this is a great resource.
  • Team Treehouse  is a subscription based website that has tutorials in lots of different programming languages. Not geared towards kids but beginners in general, the style of the videos were  playful and engaging enough that our 8 year old tester was very happy with the videos and keen to watch as many as she could. You can view some of the material on Team Treehouse for free including some of the introductory HTML videos here.
  • Another option is Code School.  Code School is an online learning platform that teaches a variety of programming and web design skills. Courses range from beginner to advanced levels and you get to earn rewards and badges as you learn. The courses use screencasts and interactive exercises and each course has at least five levels.
  • Code Pupil has an interactive HTML tutorial that is free and easy to do. You do a few lessons and then watch a video and are then asked to do another bit of code. It’s pretty good but if a younger child is doing this tutorial they will probably need a bit of adult guidance.
  • Code Academy (not to be confused with Code School or Code Pupil) is a very cool site that lets you learn coding interactively along with other people. It is very easy to get going on it and it is super fun as well.
  • Shining Star  is step by step guide for kids to teach them how to make a website using the example of making a page about a pet bunny. This is an older page but most of the information is still relevant.
  • The Neopets HTML Guide explains the basics of text, colors, adding images, links, and tables.
  • W3Schools is a very good HTML resource.  It’s simple it look good and is very clear and easy to use.
  • Hackasaurus is probably not for a newbie but would be fun for kids once they are starting to feel comfortable with HTML.

HTML Books for Kids

There are a number of books that are aimed at kids to help them make websites, but the ones that we found are a bit old and out of date. If you do want to get a HTML book we think your best bet would be to get a general beginner HTML book that you can work through with you kids. There is lots of choice as far as HTML books go and a lot of them have great reviews, but you want to get something that is geared to the beginner where the writing style isn’t too confusing for kids. The books that we have gone through the reviews of and had a look at ourselves and think would be a great choice for kids are:

Free HTML Games

We found a couple of online games around to help teach kids a bit of HTML. If you know of any others let us know and we would love to add them to our list.

  • Super Markup Man is a simple 2D game designed to help you learn how to organize HTML “markup” without actually writing any programming code. The same developer also has an andriod app called Super Easy HTML Practice Game.
  • CodeRacer from Team Treehouse is a game that teaches beginners how to code a basic website using HTML and CSS, and tests intermediate and advanced users on their programming skills.
  • The Isle of HTML This one is pretty old school but kids might get something out of it.

Sources:

  • StackOverflow
  • Amazon
  • Webmonkey