Computer Science for All — Computer Not Required

It’s time to debunk the myths! Computer science is for everyone! You don’t need to be a guy, you can’t be too young or too old to start learning, and you don’t even need a computer to begin!

Students do, however, need hands-on, minds-on opportunities to learn how computer scientists think, and to use “computational thinking” skills to solve problems, develop solutions and innovate. These skills are important to success in school and beyond, and to the nation’s economy. That’s why the White House, along with the U.S. Department of Education and other federal agencies, launched the Computer Science for All initiative. 

A supportive 21st CCLC program environment offers an ideal setting for helping students explore computer science and develop computational thinking skills. The opportunities you help to provide can be especially important to students traditionally underrepresented in computer science, such as girls and young women, socioeconomically disadvantaged students, students of color, English learners and students with disabilities. 

Whether you’re a novice or a tech guru, the high-quality, research-based resources described below provide a great place to get started. Be sure to check out the downloadable guide, “Computational Thinking: Why It Matters,” which can help you think about selecting and structuring activities to use in your program. These high-quality computer science resources can be used by stakeholder groups such as parents, students, teachers and out-of-school time educators. 

21st CCLC practitioners:

You can choose from a wide range of computer science teaching materials, with something for every age or grade level. 

Parents and families:

Motivate children to learn computer science by encouraging them to explore high-quality learning resources on their own or in school. You can also use free online curricula to directly engage them in activities that are educational and fun. As you explore the resources on this page, you’ll find information about programs like The Foos and ScratchJr, which make learning computer science fun for ages 5-7, and Creative Computing, which offers entertaining and educational content for learners of all ages. For families without home computers, there are great interactive games and activities that cultivate computational thinking and can be set up with readily available household materials.

Elementary school students:

If you think a child is too young to start learning computer science, think again. The earlier a child starts with computational thinking, the more natural it becomes. There are resources that target elementary school students. Even the youngest students can explore fundamental principles of computer science, like pattern recognition, in fun and interactive ways that allow them to play as they learn.

Middle school students:

Computer science education can help young people express themselves by making games, music, animations and other projects. Once they learn basic concepts, they can move on to more advanced materials to build on what they know using detailed learning materials. As their computer science skills develop, they can learn how to make their own mobile phone apps, build their own websites, create games and animated videos, or even design and build their own electronic gizmos.

High school students:

Learning computer science is a great way for students to complement their high school education and prepare for college and career. Advanced Placement Computer Science Principles courses like The Beauty and Joy of Computing, CodeHS, and Mobile CSP teach the foundational concepts students need to succeed, and help them explore how computers have shaped the world we live in. Other resources can inspire and excite students as they create games and animations or build their own websites.

^^Back to Top


Ready to hit the “Start” key? 

Check these links for resources and ideas:

Computer Science Learning Resources for All

Note: Resources that are relevant to more than one of the sections below are listed in those sections for ease of reference. Except where noted, these resources are free. Resources are organized alphabetically.

Ready-to-Use Resources for 21st CCLC Educators

Afterschool Alliance has materials for teaching computer science, including links to curricula and professional development opportunities. 

Exploring Computer Science provides a curriculum developed by the National Science Foundation for teaching computer science to K-12 students; it’s free to users who sign up and log in to the site. 

CodeHS features a free computer science curriculum, plus the option to access more advanced features with paid accounts. 

Code.org offers introductory computer science modules for K-5 students. 

Creative Computing features a full curriculum that can be used for teaching computer science in K-12 classrooms. 

Mobile CSP offers an Advanced Placement Computer Science Principles curriculum built around developing applications for mobile devices such as tablets and smartphones. 

ScratchJr gives educators an introductory computer science curriculum for K-2 students. 

Teaching Kids Programming includes computer science lesson plans and learning materials for middle and high school students.  

The Beauty and Joy of Computing offers an Advanced Placement Computer Science Principles curriculum developed by the University of California, Berkeley. 

<< Back

School-Day Resources 21st CCLC Practitioners Can Adapt 

Alice is educational software that teaches students computer science as they create animated movies and games. 

Black Girls CODE organizes workshops and afterschool programs to inspire and empower girls of color to participate in computer science. 

Bootstrap simplifies web development, helping students learn computer science by designing their own websites. 

Code Academy helps educators put together clubs that teach students computer science through making websites and other projects. 

Computer Science K-8: Building a Strong Foundation provides an overview of how to implement computer science education in K-8 classrooms. 

Computer Science Unplugged offers ideas for games and activities that can teach students computational thinking without the use of computers. 

CS First provides materials to help teachers organize computer science clubs with themes like sports, video games and music. 

Cubetto engages young students in computer science education using robotic blocks and toys. This computer science learning tool might require an investment of school or district resources. 

FIRST Robotics is an organization that applies computer science skills by having teams of students create their own robots and enter them in competitions. 

Girls Who Code helps to set up computer science clubs for girls in grades 6-12.  

Khan Academy teaches students how to make games and animations, as well as how to create websites. 

Kibo is designed for teaching children ages 4-7 computer science with robotic blocks and toys. This computer science learning tool might require an investment of school or district resources. 

MIT App Inventor teaches students computer science as they develop applications for mobile devices.  

Raspberry Pi offers a simple, low-cost computer for students, plus educator training, information and community forums. 

Scratch helps students learn computer science through creating games and animations. 

The Foos, which turns learning computer science into a game, was developed for young children but can be explored and enjoyed by learners of all ages. 

Tynker for Sphero teaches computer science using a programmable robotic ball. This computer science learning tool might require an investment of school or district resources.  Tynker companion site for teachers

<< Back

Resources Students and Families Can Explore Together

4-H Robotics helps students learn applied computer science in programs that work with local volunteers and corporate supporters. 

Alice is educational software that teaches computer science to children as they create animated movies and games. 

Black Girls CODE organizes workshops and afterschool programs to inspire and empower girls of color to participate in computer science. 

Code.org offers introductory computer science modules for children in grades K-5. 

Computer Science K-8: Building a Strong Foundation provides an overview of computer science learning opportunities for children in grades K-8. 

Computer Science Unplugged offers ideas for games and activities that can teach computational thinking without the use of computers. 

Creative Computing offers ideas and lesson plans to help children of all ages use computer science to express themselves and explore their interests. 

Cubetto engages young children in computer science education using robotic blocks and toys. This computer science learning tool might require an investment of school or district resources. 

FIRST Robotics is an organization that applies computer science skills by having teams of students create their own robots and enter them in competitions. 

Girls Who Code helps to set up computer science clubs for girls in grades 6-12. 

Kibo is designed for teaching children ages 4-7 computer science with robotic blocks and toys. This computer science learning tool might require an investment of school or district resources. 

MIT App Inventor teaches children computer science as they develop applications for mobile devices. 

Raspberry Pi is a simple, low-cost computer children can program to perform a wide variety of tasks. 

Scratch helps children of all ages learn computer science through creating games and animations. 

ScratchJr has computer science learning materials for children in grades K-2. 

The Foos, which turns learning computer science into a game, was developed for young children but can be explored and enjoyed by learners of all ages. 

Tynker for Sphero teaches computer science using a programmable robotic ball. This computer science learning tool might require an investment of school or district resources.  Tynker companion site for teachers

<< Back

Resources Students Can Explore on Their Own

Alice is educational software that teaches children computer science as they create animated movies and games. 

Black Girls CODE organizes workshops and afterschool programs to inspire and empower girls of color to participate in computer science. 

Bootstrap simplifies web development, helping users learn computer science by designing their own websites. 

CodeHS features a variety of computer science courses for high school students. Access to online curricula is free, with the option to access more advanced features with a paid account. 

Girls Who Code helps to set up computer science clubs for girls in grades 6-12. 

Khan Academy teaches students how to make games and animations, as well as how to create websites. 

MIT App Inventor teaches computer science through developing applications for mobile devices. 

Mobile CSP offers an Advanced Placement Computer Science Principles curriculum built around developing applications for mobile devices such as tablets and smartphones. 

Raspberry Pi offers a simple, low-cost computer students can program to perform a wide variety of tasks, plus examples of projects from other users. 

Scratch helps users learn computer science through creating games and animations. 

The Beauty and Joy of Computing offers an Advanced Placement Computer Science Principles curriculum developed by the University of California, Berkeley. 

The Foos, which turns learning computer science into a game, was developed for young children but can be explored and enjoyed by learners of all ages. 

<< Back