Date Published: January 25, 2019
Author: Feiya Luo
Contributors: John Hampton, Ruohan Liu, Wei YanMaya Israel

This summer, I implemented a research study that used the Dash robotics to teach science and coding at a local elementary school summer camp. I had kids in my classes from different school districts in the Southeastern part of the United States. In the last class, I asked the kids how they liked learning coding and science, and besides showing enthusiasm, two kids asked me if I could do the research study again at their school, one said she was really sad that the class was coming to an end, and one was proud because her parents were going to buy her a Dash robot as a birthday gift.

This enthusiasm is a common phenomenon after most coding/computing lesson these days. As much as there are heated discussions on how to integrate computer science (CS)/computational thinking (CT) in school curriculum, such effort is only in research stage, CS/CT integration is still far from being systematically adopted or implemented by school districts. What this means to students is that they may opt in a research study where they can practice coding for a few weeks, and when the research study ends, they immediately lose access to the resources. Large school districts that have adopted CS for All grant students the luxury to progress in the CS/CT learning trajectory, but most parents (with or without necessary resources at home) and teachers from smaller and less resourced schools and districts are left with the question of how to continue supporting their kids who are now hooked on coding.

At our CTRL (Creative Technology Research Lab) weekly lab meeting this week, one of the topics that dominated the conversations was how to extend computer science/computational thinking beyond the classroom. And we decided to compose a blog post that introduces the various free coding/computing tools so that parents and their children can pick and choose among these resources.

Although we cannot possibly talk about all the resources and activities available to students, below are a few options organized based on affordances:

Block-based programming/coding with online access

There are two types of block-based programming/coding experiences that students can participate in. The first is a guided approach that provides step-by-step puzzles that students can work through that lead to more independent, exploratory projects. An example of one such tool is, which is a website with K-12 CS materials that anyone can access for free (Full course catalog). Users can pick any course to start with, and each course includes different lessons with instructions, video tutorials, unplugged activities, hands-on coding activities and feedback, etc. The website also tracks your progress in the course, making it easy for students to go through at their own pace. If you do not have a computer at home, definitely make use of the computers at public libraries. is very easy to access (just put in the URL), and each activity is fairly short and does not require too much time. Spend an hour or so every time on the lessons and keep track of where you leave off and come back to it next time you are there.

The other approach is a more open-ended experience that does not include guided exploration. If this is of interest, try Scratch. It is a project-based online platform where users can create their own stories, animations, etc. by coding different sprites and actions. Parents can refer to the Scratch Getting Started guide. Besides Scratch, Alice is also something that you can have your middle school children explore. Their website offers lessons, tutorials, and projects for Alice that allow self-paced and structured exploration. Whichever approach you choose, we hope that you and your children will find it fun and enjoyable.

Programming/coding with physical robotics and toolkits (also called tangible coding/programming)

If in any case, you (or your child) prefer a more tangible form of coding, there are several options with a range of price points.

Makey Makey is a tangible toolkit that learners can use to take everyday objects and turn them into touchpads and keyboard. It includes alligator clips, USB cable, the Makey Makey Board, and directions. With these, you can use your creativity to make games, music, and art.


Children programming Dash to perform tasks using the tow/push bar extension
Photo taken at Broward County Schools CS Education Week 2018


The Dash robotics kit allows learners to use the corresponding mobile app Blockly to make the robot dance, walk in mazes, react to sounds, etc. Dash is designed for anyone above the age of 5. It is also perfect for collaboration if you and your children are looking to spend some quality time together. Blockly also comes with puzzle-based coding tasks and their website houses lessons and curriculum whose scope and sequence align with’s Computer Science Fundamentals series.


Children attaching a fruit to Makey Makey probes to turn them into musical instruments
Photo taken during a teacher workshop in Champaign, IL.


Unplugged activities and resources

It is also possible to have your child learn something about computer science without a computer or any physical toolkits. is a great place with such resources. There are games, puzzles, and other activities that teach computer science without a computer and they can be just as engaging and fun.

There are unplugged activities within the courses, too. These are the embedded activities designed as transitions between lessons within a course. In the elementary courses, an unplugged activity usually contains a video that introduces a concept related to CS and a lesson plan with an agenda and support for teachers and parents.

Affordances at a glance:

Access from computersYesYesYes Yes
Access from mobile devicesYesYes YesYes
Requires software download  YesYes[1] 
Requires internet connectionYesYes[2]   
Free accessYesYesYes Yes
Tangible    Yes 
Resources (lessons, etc.) for parentsYesYesYesYesYes
Unplugged activitiesYes   Yes


  1. Need to download the 'Blockly' app
  2. There is a Scratch Desktop version that can be downloaded and run offline