There are unique activities that help children explore computer science and programming while combining them with their other skills, talents and passions such as art, story-telling, teaching, and math concepts learnt in school. These are suitable as school-year activities to spend a few hours each week, or to dive deep into over the summer vacation.

Robotics at home

Children aged eight and older can explore robotics in the comfort of their home for half the cost of a full-day summer camp. Start off with buying a LEGO EV3 Mindstorms kit from Amazon or craigslist. Then, use the free Fun with Beginner LEGO Mindstorms Robotics Udemy course to learn how to build and program basic robots. Once the child is comfortable with the robots and programs in that course, and has some basic knowledge of Python, graduate to Python for EV3. Invest in a good “tackle box” to store the 600 pieces of the kit. Take care if there are pets or children under three in the household.

Build a Website

Start small. Find an online course or tutorial that includes projects where you build a few websites. Then, create a website on a topic that you care about. Approach local service providers or businesses who do not have a website and build one for them. Check Nextdoor for really small or individual-owned businesses like dog-sitters, school drop-off services, and music teachers.

Teach coding

Our local libraries are mostly saturated with coding classes taught by children, but do not get discouraged. This is your chance to get creative! There may be children younger than you who like to learn coding 1-1 with an older kid. Talk with local afterschool providers to see if you can teach coding 1-2 hours a week.

Write an e-book

Really. You can write about anything related to computer science. Don’t worry that everything’s already been written about. Start simple. If you have spent a lot of time developing a Python program you are proud of, write about that program: how you started, the challenges, and a line by line guide to your program. Another idea: most of the programming exercises on the internet are aimed at middle-schoolers and older children. You can write an ebook that has 25-50 or even 100 programming problems for children 8-11 years old. As a child, you know what topics interest other children. Use that knowledge to create programming problems that appeal to young children. Check out these two websites to get you started: http://programmingbydoing.com/  https://repl.it/community/classrooms/20690

Learn how to use Github

Github hosts “code repositories”, collections of code for projects. Many of the repositories are “open source”, and can be viewed and downloaded by anyone. To begin learning, create an account with your parent’s approval. Use google to find a beginner’s guide or tutorials for using Github. Learn how to create a repository, fork/copy other code repositories, and browse through the repositories of young programmers like you. As you learn how to use Github, you might discover that there is no one comprehensive Github guide for children. Write one yourself!  Develop a “Getting start with Github” guide for other young programmers.

Contribute to Open Source projects

OSS – Open Source Software is source code that is freely available for use or modification by users and developers. Contributing to Open Source is a good activity to try after you are a little familiar with Github. There are many ways in which you contribute, not just writing code. Google Code-in is a great way for beginners to learn about Open Source. Look up their past year’s tasks and how children 13-17 years old completed tasks in coding, documentation/training, research, testing and design.
Update in summer 2020: Google Code-in has ended after 10 years of operation.

Bring ACSL to an elementary school near you

The American Computer Science League organizes computer science contests for elementary, middle and high school students. While you can participate in their contests yourself, try something different too – bring ACSL to an elementary school near you. Learn about the four ACSL elementary division contest topics and use the resources they provide to teach those topics to 3rd-6th graders. This activity is fun to do with a few friends and the help of one adult to fill out the paperwork and supervise the tests.  Start small. Get in touch with your 4th grade or 5th grade teacher and see if you can start by teaching the students in her classroom. This will help you give back to the community, develop leadership and organization skills, and above all you will experience the joy of teaching about computer science to younger children.

In addition to computer science and programming, you have other interests–combine these interests with computer science. And you don’t have to wait for summer to come along or join an expensive camp. You can get started now with projects here and there. Whether you are in the midst of your school year or relaxing in the summer, there are many things out there you can do on your own to explore the world of computer science and programming.