# data[].attributes.attachment_link.readable_text
1,718,111,282

Hours of Code Served

A global movement in 180+ countries.

16,524 events registered so far in 2023.

Your class or group can join millions around the world doing the Hour of Code! Registration for the annual Computer Science Education Week celebration begins in October. Though, Hour of Code is available year-round.

Register your Hour of Code

# data[].attributes.attachment_link.description
Use computer science to explore and learn about AI!

# data[].attributes.attachment_link.readable_text
We've compiled a list of all of our unplugged lessons for you to use in your classroom. Now you can teach the fundamentals of computer science, whether you have computers in your classroom or not!

We refer to lessons in which students are not working on a computer as "unplugged." Students will often work with pencil and paper or physical manipulatives. These are intentionally placed kinesthetic opportunities that help students digest complicated concepts in ways that relate to their own lives.

Unplugged lessons are particularly useful for building and maintaining a collaborative classroom environment, and they are useful touchstone experiences you can refer to when introducing more abstract concepts. Each of these activities can either be used alone or with other computer science lessons on related concepts.

Ages 4+, English only

Course

Lesson Plan

Concept

Video

Loops

Impacts of Computing

Course C

Sequencing

Loops

C.15 - Binary Bracelets
*Supplies: Markers. Optional - 18 black/18 white beads, 1 pipe cleaner per student
Binary is extremely important in the world of computers. The majority of computers today store all sorts of information in binary form. This lesson helps demonstrate how it is possible to take something from real life and translate it into a series of ons and offs.

Binary

Impacts of Computing

Digital Citizenship

Course F

Variables

For Loops

The following lessons are organized by concept and can be found in earlier versions of our CS Fundamentals courses. Additional resources you may want to consult as you plan to use these lessons include:

Digital Citizenship
Crowdsourcing

*Common Sense Education has a full Digital Citizenship Curriculum that includes many unplugged activities.

Functions

Functional Suncatchers
In this lesson, students will make a suncatcher out of string, beads, and a special charm. The students will follow a series of repetitive steps, then be asked to identify certain sets of "skills" that are duplicated several times. Once those skills are defined, they will be called from a main program and the whole beautiful process of creation will be recorded on a single sheet of paper. The final program will be geared toward the entire class, whatever their type of string, beads, and charms. To effectively allow for this, students will need to "abstract out" the details of their specific materials and create vague terms for an individual's supplies. This use of generic placeholders is a wonderful introduction to variables.

Lesson Video
See Lesson in Action
Activity Answer Key Assessment Answer Key

Algorithms

Dice Race
In this lesson, students will relate the concept of algorithms back to real-life activities by playing the Dice Race game. The goal here is to start building the skills to translate real-world situations to online scenarios and vice versa.

Computational Thinking

Computational Thinking with Monsters
With nothing but paper and markers, students will learn the four steps of computational thinking. After a brief introduction, students should be split into groups where they will have to create directions for other students to draw a specific monster (from a catalog of pre-selected monsters). The entire task must be decomposed, then teams will analyze all monsters in the catalog for patterns, abstract similar details from the monsters, then use that information to create an algorithm (directions) for another team to draw a certain monster. Teams will then switch algorithms with another group and draw the monster based on what that algorithm indicates. Is the drawing what the original team intended?

Persistence

Building a Foundation
New and unsolved problems are often pretty hard. If we want to have any chance of making something creative, useful, and clever, then we need to be willing to attack hard problems even if it means failing a few times before we succeed. In this lesson, students will be building a structure with common materials. The structure will be tested on its ability to hold a textbook for more than ten seconds. Most students will not get this right the first time, but it's important they push through and keep trying.

Abstraction

Mad Glibs
Abstraction is one of the most important skills for a computer scientist to understand. It simplifies problems and prevents unnecessary repetition. A good coder uses abstraction just about every time she creates a program. This activity will have your students analyze stories for differences so that they can abstract them away. Those abstracted stories become templates for fun and crazy new ones.

Variables ​

# data[].attributes.attachment_link.description
We've compiled a list of all of our unplugged lessons for you to use in your classroom. Now you can teach the fundamentals of computer science, whether you have computers in your classroom or not! We refer to lessons in which students are not working on a computer as "unplugged."

# data[].attributes.attachment_link.description
CS Unplugged is a collection of free teaching material that teaches Computer Science through engaging games and puzzles that use cards, string, crayons and lots of running around.

# data[].attributes.attachment_link.title
Activities for Students - NASA Jet Propulsion Laboratory

# data[].attributes.attachment_link.description
Explore Earth and space with these STEM activities, projects, videos and games for kids and students from NASA-JPL.

# data[].attributes.attachment_link.readable_text
By Amy Cowen on November 27, 2023 4:00 PM
Planning an hour of code with students for Computer Science Education Week? Try these projects and activities to help students explore computer coding now and after!
It's easy for students to get started learning about computer programming and video game and app design. Basic coding involves writing an algorithmic set of steps that tell a computer exactly what to do. No matter what language or programming environment will be used, learning to write effective instructions for a computer involves breaking things down into logical and orderly steps and understanding an if/then mentality that a computer uses to perform specific tasks based on certain criteria.

We've got suggestions below for more than 15 experiments kids can do to explore computer coding at all levels, including introductory options that don't even require a computer! Many of these activities are short and can work well for an hour of code. Many of these can also be easily adapted for remote and asynchronous learning.

Think Like a Computer - Coding Projects and Activities for Beginners

1. With the Mars Rover Obstacle Course activity, students create a set of instructions to guide a pretend rover through an obstacle course. Paper-based mazes are easy to create, easy to scale in difficulty, easy to gamify, and can be great for this kind of logic-based activity, too. These activities help reinforce the kinds of thinking involved in writing programs. (For a similar activity, see Program a Maze with Paper. For additional inspiration, see Paper Maze Programming: Start to Finish Computer Logic. We have a fun Gingerbread-themed version for December, too, in our Gingerbread STEM collection!)

2. The How do Self-Driving Cars Know What to Do? activity guides students in thinking about how self-driving cars can be programmed to autonomously respond to whatever situation arises. Students think through some of the common scenarios and events the car will encounter and write an algorithm that a driverless car could follow when navigating various road scenarios like stop signs, traffic lights, and roundabouts (traffic circles). This activity encourages discussion and brainstorming as students think about the science behind self-driving cars. The activity is part of our Autonomous Cars collection of STEM materials.

1. With the Program Your Own COVID-19 or Flu Simulator with Scratch activity, students use Scratch to make their own COVID-19 simulation tool. Once programmed, they can explore the impact of social distancing and branch out to add additional factors to their program.

2. With the Design a Game to Help Alzheimer's Patients project, students use Scratch (or another programming environment or language) to design and build a game to help improve or practice memory skills for people with Alzheimer's or dementia. ( Be inspired! See A Video Game Science Project to Help People with Alzheimer's.)

3. With the Save a Life! Teach Hands-Only™ CPR project, students use Scratch to design and program an interactive educational campaign. The example is to teach people about how to do Hands-Only ™ CPR, but students could use this project to design an informational project to raise awareness about any topic of interest.

4. With the Do Antibiotics Change Your Gut Microbiome? project, students use Scratch to make and use a model to see how environmental and genetic changes are related to the development of cancer.

Educators! For lesson plans to explore artificial intelligence, machine learning, and neural networks, see:

Programming Projects - Intermediate to Advanced

The following projects help students continue to develop their programming skills and explore new elements of coding.

1. 13. Hit Boxes: How Size Affects Score: the size and placement of hit boxes is important in game design and can be related to how easy or hard the game is to play.

2. 14. Making It Real: Incorporating Physics in Video Games: students who are serious about the realism in their game play will want to pay special attention to the role of physics in their game design.

3. 15. Crack the Code: Breaking a Caesar Cipher: learn what a Caesar cipher is and experiment using one by hand and then use code to see how quickly a computer can detect and crack this simple encoding strategy.

4. 16. Building Personal Medicine Apps to Help Patients: use MIT's App Inventor coding environment to design and create a useful app with real-world value. The sample program is for a medicine reminder app, but students can take the general premise and develop their own meaningful app.

5. 17. Password Security: How Easily Can Your Password Be Hacked?: use Python to write a program and see if you can use it to crack passwords of varying lengths and formats. Writing a program that can successfully guess our sample 6-character code is a challenge!

6. 18. Preventing SQL Injection Attacks: learn how SQL injection is used to insert malicious code into text fields on a website and then use that information to find a way to fix SQL injection vulnerabilities in a sample website.

Programming with Arduino - Physical Computing

With Arduino, students can explore programming and connect their programming with an unlimited range of robotics, electronics, and other circuit-building projects. The Introduction to Arduino lesson is designed to introduce students to physical computing (programming a microcontroller to interact with circuits).

The lesson is broken into seven activities (with videos!) that walk students through the basics of setting up the Arduino and interacting with circuit parts like LEDs, buttons, and resistors. The lesson can be used as an introduction to Arduino programming in preparation for more advanced Arduino projects or as a refresher.

Note: The Electronics Kit for Arduino contains the specialty parts to enable students to get started adding Arduino to their projects.

Artificial Intelligence and Machine Learning

Projects involving artificial intelligence (AI) and machine learning support students in exploring cutting-edge STEM that relates to many fields of science and engineering. With projects like the ones listed below, students can begin learning about various applications and algorithms for supervised and unsupervised machine learning, reinforcement learning, neural networks, and more.

Recognition for Student Coding Projects

Students entering coding projects in select science fairs may be recognized by Broadcom Coding with Commitment™, a program sponsored by Broadcom Foundation. To find out more about fairs at which Coding with Commitment awards are given, see the Science Fair Directory.

An Hour of Code

Computer Science Education Week is December 4-10, 2023. During #CSEdWeek, educators and families around the world encourage students to try coding, often with short, introductory "hour of code" activities that help students better understand what programming is all about. A simple activity or an hour of code might spark lasting interest!

See also:

Thematic Collections

Collections like this help educators find themed activities in a specific subject area or discover activities and lessons that meet a curriculum need. We hope these collections make it convenient for teachers to browse related lessons and activities. For other collections, see the Teaching Science Units and Thematic Collections lists. We encourage you to browse the complete STEM Activities for Kids and Lesson Plans areas, too. Filters are available to help you narrow your search.

You Might Also Enjoy These Related Posts:

# data[].attributes.attachment_link.title
25+ Coding Projects for Beginners and Beyond | Science Buddies Blog

# data[].attributes.attachment_link.description
Choose from 25+ projects and activities for students to learn more about coding and computer programming at all levels, including using Arduino and exploring artificial intelligence and machine learning.