CS Fundamentals Unplugged

A list of all of unplugged lessons for you to use in your classroom.

You can teach the fundamentals of computer science, whether you have computers in your classroom or not!

Try using these lessons as a stand alone course or as complementary lessons for any computer science course.

https://code.org/curriculum/unplugged


CS Fundamentals Unplugged

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! Try using these lessons as a stand alone course or as complementary lessons for any computer science course.

Ages 6+, English only

Each of these activities can either be used alone or with other computer science lessons on related concepts.Curriculum Book | Answer Keys

Concept Lesson Curriculum Video Additional Resources
Algorithms

Happy Maps

Course 1, Lesson 1
(age 4+)

At the root of all computer science is something called an algorithm. The word “algorithm” may sound like something complicated, but really it’s just a list of instructions that someone can follow to achieve a result.

Lesson Plan | Teacher Video

https://youtu.be/hrnhiKAQ1_k
Algorithms

Move It, Move It

Course 1, Lesson 2
(age 6+)

This lesson will help students realize that in order to give clear instructions, they need a common language. Students will practice controlling one another using a simple combination of hand gestures.

Lesson Plan | Teacher Video

https://youtu.be/VGi2bnRFqzM
Algorithms

Real Life Algorithms: Plant a Seed

Course 1, Lesson 6
(age 6+)

In this lesson, students will relate the concept of algorithms back to everyday real-life activities by planting an actual seed. The goal here is to start building the skills to translate real-world situations to online scenarios and vice versa.

Lesson Plan | Teacher Video

https://youtu.be/FHsuEh1kJ18
Algorithms

Graph Paper Programming

Course 2, Lesson 1
(age 8+)

By « programming » one another to draw pictures, students will begin to understand what programming is really about. The class will begin by having students instruct each other to color squares in on graph paper in an effort to reproduce an existing picture.

Lesson Plan | Teacher Video

https://youtu.be/Y_paSrH2ffw See Lesson in Action
Algorithms

Real-Life Algorithms: Paper Planes

Course 2, Lesson 2
(age 8+)

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

Lesson Plan | Teacher Video

https://youtu.be/AWqo8Gxtrjs See Lesson in Action
Algorithms

Dice Race

Course 3, Lesson 10
(age 9+)

In this lesson, students will relate the concept of algorithms back to everyday 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.

Lesson Plan | Teacher Video

https://youtu.be/wQpgBCKivAs
Algorithms

Tangrams

Course 4, Lesson 1
(age 10+)

This lesson shows us something important about algorithms. If you keep an algorithm simple there are lots of ways to use it. If you want to make sure everyone ends up with the same thing, then your algorithm needs more detail.

Lesson Plan | Teacher Video

https://youtu.be/xZlKyTwQZv8
Binary

Binary Bracelets

Course 2, Lesson 14
(age 8+)

Binary is extremely important to the computer world. The majority of computers today store all sorts of information in binary form. This lesson helps to demonstrate how it is possible to take something that we know and translate it into a series of ons and offs.

Lesson Plan | Teacher Video

https://youtu.be/3S2YfoO4_CM See Lesson in Action
Binary

Binary Images

Course 4, Lesson 17
(age 10+)

Though many people think of binary as strictly zeros and ones, our previous courses taught students that information can be represented in a variety of binary options. This lesson takes that concept one step further as it illustrates how a computer can store even more complex information (such as images and colors) in binary, as well.

Lesson Plan | Teacher Video

https://youtu.be/dzHlZV53VfY
Computational Thinking

Computational Thinking

Course 3, Lesson 1
(age 10+)

For this activity, no instructions are provided. Instead, students will use examples of what imaginary players have done to figure out how to play the game. This lesson gives students the opportunity to practice the four arts of computational thinking (decomposition, pattern matching, abstraction, and algorithms) in one cohesive activity.

Lesson Plan | Teacher Video

https://youtu.be/TlAaklrolA0 See Lesson in Action
Computational Thinking

Computational Thinking with Monsters

Accelerated Course, Lesson 3
(age 10+)

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).

Lesson Plan

https://youtu.be/injJWiSA0pw
Conditionals

Conditionals with Cards

Course 2, Lesson 12
(age 9+)

We don’t always know ahead of time what things will be like when we run our computer programs. Different users have different needs, and sometimes you will want to do something based off of one user’s need that you don’t want to do with someone else.

Lesson Plan | Teacher Video

https://youtu.be/UymN4lTL50s See Lesson in Action
Crowdsourcing

Crowdsourcing

Course 3, Lesson 19
(age 8+)

In computer science, we face some big, daunting problems. Challenges like finding large prime numbers or sequencing DNA are almost impossible to do alone. Adding the power of others makes these tasks managable. This lesson will show your students how helpful teamwork can really be.

Lesson Plan | Teacher Video

https://youtu.be/IqZMnfxqEfY
CT – Abstraction

Mad Glibs

Course 4, Lesson 5
(age 9+)

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.

Lesson Plan | Teacher Video

https://youtu.be/TctGRrUdkcc
Debugging

Relay Programming

Course 2, Lesson 9
(age 8+)

This activity will begin with a short review of Graph Paper Programming, then will quickly move to a race against the clock, as students break into teams and work together to create a program, one instruction at a time.

Lesson Plan | Teacher Video

https://youtu.be/l5MKkXbzOsk
Events

The Big Event

Course 1, Lesson 15
(age 5+)

Events are a great way to add variety to a pre-written algorithm. Sometimes you want your program to be able to respond to the user exactly when the user wants it to. That is what events are for.

Lesson Plan | Teacher Video

https://youtu.be/u0WV9shCoak
Functions

Functional Suncatchers

Course 3, Lesson 4
(age 8+)

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.

Lesson Plan | Teacher Video

https://youtu.be/d1MdyeXy0v0 See Lesson in Action
Functions

Songwriting

Course 3, Lesson 9
(age 8+)

One of the most magnificent structures in the computer science world is the function. Functions (sometimes called procedures) are mini programs that you can use over and over inside of your bigger program. This lesson will help students intuitively understand why combining chunks of code into functions is such a helpful practice.

Lesson Plan | Teacher Video

https://youtu.be/5iDCKkI6y2Y See Lesson in Action
Functions

Songwriting with Parameters

Course 4, Lesson 13
(age 8+)

One of the most magnificent structures in the computer science world is the function. Functions (sometimes called procedures) are mini programs that you can use over and over inside of your bigger program. This lesson will help students intuitively understand why combining chunks of code into functions is such a helpful practice.

Lesson Plan | Teacher Video

https://youtu.be/28ujn3adHBA See Lesson in Action
Internet

Internet

Course 3, Lesson 18
(age 8+)

In this lesson, students will pretend to flow through the Internet, all the while learning about Internet connections, URLs, IP Addresses, and the DNS.

Lesson Plan | Teacher Video

https://youtu.be/mFOUbqYv1Sc
Loops

Getting Loopy

Course 1, Lesson 12
(age 5+)

Loops are a handy way of describing actions that repeat a certain numbers of times. In this lesson, students will practice converting sets of actions into a single loop.

Lesson Plan | Teacher Video

https://youtu.be/JoKTqHCni0M
Loops – For Loops

For Loop Fun

Course 4, Lesson 8
(age 9+)

We know that loops allow us to do things over and over again, but now we’re going to learn how to use loops with extra structure built right in.

Lesson Plan | Teacher Video

https://youtu.be/mX857v5B4gE See Lesson in Action
Persistence

Building a Foundation

Course 1, Lesson 9
(age 4+)

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. This lesson teaches that failure is not the end of a journey, but a hint for how to succeed.

Lesson Plan | Teacher Video

https://youtu.be/eZqKqI8AvnA See Lesson in Action
Safety

Going Places Online

Course 1, Lesson 17
(age 6+)

In collaboration with Common Sense Media This lesson helps students learn that many websites ask for information that is private and discusses how to responsibly handle such requests.

Lesson Plan | Teacher Video

https://youtu.be/vUO7t92k4Xg
Safety

Your Digital Footprint

Course 2, Lesson 18
(age 6+)

In collaboration with Common Sense Media, this lesson helps students learn about the similarities of staying safe in the real world and when visiting websites. Students will also learn that the information they put online leaves a digital footprint or “trail.”

Lesson Plan | Teacher Video

https://youtu.be/rgbZAWnOWOo
Safety

Digital Citizneship

Course 3, Lesson 20
(age 8+)

In collaboration with Common Sense Media, this lesson helps students learn to think critically about the user information that some websites request or require. Students learn the difference between private information and personal information, distinguishing what is safe and unsafe to share online.

Lesson Plan | Teacher Video

https://www.youtube.com/watch?v=S7A2n1c3UiA
Variables

Envelope Variables

Course 4, Lesson 4
(age 10+)

Variables allow for a lot of freedom in computer science. This lesson helps to explain what variables are and how we can use them in many different ways. Use this activity before (or in conjunction with) the lesson on abstraction to really hit the idea home.

Lesson Plan | Teacher Video

https://youtu.be/DI7DprN4FtE

© Code.org, 2015. Code.org®, the CODE logo and Hour of Code™ are trademarks of Code.org.