Grades 2–3 reading level
CS Fundamentals — Course D
Adapted with AI from the original open resource by Code.org. Nothing is invented — only the reading level changes.
Course D
Course D is made for kids who read at about a third-grade level. Videos and hints help teach angles and other computer science ideas.
This course starts with a review. It brings back ideas from Courses A, B, and C. You will remember things like repeat loops (steps that happen again and again) and events (things that happen when something else happens, like a click).
You will also learn new things. You will learn about algorithms (a list of steps to do a job), nested loops (a loop inside another loop), while loops (a loop that keeps going while something is true), conditionals (steps that only happen if something is true), and more about events.
There are also lessons about being safe and smart online. This is called digital citizenship.
This course helps you build a strong base of ideas first. Then it opens the door to lots of fun new topics!
Journaling
In this course, you will write in a journal. A journal is like a notebook. You can use it to answer questions. You can also use it as scratch paper. It helps when you are building something, fixing a problem, or planning ahead. Later, you can look back at your journal to help you with harder problems.
Think Spot Journal – Student Handout
Debugging
Everyone who codes runs into problems. Even experts do! Finding and fixing these problems is called debugging. In fact, most of your coding time might be spent debugging! We give you a handy guide to help. You can look at the "Debugging" part of our teacher guide for more tips too.
Debugging Guide – Student Handout
Chapter 1: Sequencing
Lesson 1: Graph Paper Programming
Unplugged | Sequencing
In this lesson, you will "program" a classmate to draw a picture!
Lesson 2: Introduction to Online Puzzles
Skill Building | Sequencing
This lesson helps you practice skills you will need for this course.
Lesson 3: Relay Programming
Unplugged | Sequencing
Remember when you made drawings with code at the start of the course? Now you will do something like that again — but this time, with a team!
Lesson 4: Debugging with Laurel
Skill Building | Sequencing
Have you ever had a problem while coding? In this lesson, you will learn tricks for debugging — finding and fixing problems in your code.
Chapter Commentary: Sequencing
Chapter 2: Events
Lesson 5: Events in Bounce
Skill Building | Events
Have you ever wished you could play video games at school? Now you get to make your own!
Lesson 6: Build a Star Wars Game
Skill Building | Events
Feel the force! In this lesson, you build your own Star Wars game.
Chapter Commentary: Events
Chapter 3: Loops
Lesson 7: Loops in Ice Age
Skill Building | Loops
In this lesson, you use a repeat block to help Scrat get to the acorn in the best way.
Lesson 8: Drawing Shapes with Loops
Skill Building | Loops
Loops make it easy to draw cool pictures with the Artist tool!
Lesson 9: Nested Loops in Maze
Skill Building | Loops
Loops inside loops inside loops — what does that mean? This lesson shows you what happens when you build a nested loop.
Chapter Commentary: Loops
Chapter 4: Conditionals
Lesson 10: Conditionals with Cards
Unplugged | Conditionals
Play a game where you only earn points when a certain rule is true!
Lesson 11: If/Else with Bee
Skill Building | Conditionals
Now that you know about conditionals, use them to help Bee collect honey and nectar.
Lesson 12: While Loops in Farmer
Skill Building | Conditionals
Loops are so useful! This lesson teaches you a new kind of loop: the while loop.
Lesson 13: Until Loops in Maze
Skill Building | Conditionals
You can do amazing things with until loops!
Lesson 14: Harvesting with Conditionals
Skill Building | Conditionals
It's not always easy to know which conditional to use. This lesson gives you practice deciding.
Chapter Commentary: Conditionals
Chapter 5: Binary
Lesson 15: Binary Images
Unplugged | Binary
Learn how computers store pictures using a special language that has only two options: binary.
Lesson 16: Binary Images with Artist
Skill Building | Binary
Learn how to make pictures using only the numbers 0 and 1.
Chapter Commentary: Binary
Chapter 6: Digital Citizenship
Lesson 17: Digital Citizenship
Unplugged | Online Safety
Some information is not safe to share online. This lesson helps you learn what is safe to share, and what should stay private.
Chapter Commentary: Digital Citizenship
Chapter 7: End of Course Project
Lesson 18: Dance Party
End of Course Project
Time to celebrate! Program your own dance party that people can interact with.
Chapter Commentary: End of Course Project
If you want to use Code.org materials to sell something, please contact us.
Lesson 1: Graph Paper Programming
Overview
In this lesson, you "program" a classmate to draw pictures. This is a fun, easy way to learn big ideas in computer science. First, the class uses symbols to tell each other how to color squares on graph paper. The goal is to copy a picture exactly. If there's time left, you can even make your own pictures at the end.
Purpose
This activity builds thinking skills and gets you excited for the course. It also teaches big ideas you will use all through the course. You don't even need a computer to learn about sequencing (doing steps in order) and algorithms (lists of steps). This means everyone can learn, even if computers feel scary at first. In this lesson, you will learn how to make an algorithm and turn it into a program.
Agenda
- Warm Up (10 min): Introduction to Graph Paper Programming
- Main Activity (30 min): Practice Together, then The Students' Turn
- Wrap Up (15 min): Journaling / Flash Chat
- Optional Assessment (10 min): Extended Learning
Objectives
By the end, you will be able to:
- Turn a list of steps into a coded program
- Explain what's tricky about changing human words into machine instructions
Preparation
- (Optional) Watch the "Lesson in Action" video.
- Print one worksheet and one assessment for each student.
- Make sure every student has a journal.
Vocabulary
Algorithm – A list of steps to finish a task.
Program – An algorithm that has been turned into code so a machine can run it.
Teaching Guide
Warm Up (10 min): Introduction to Graph Paper Programming
In this activity, students give each other coded instructions. They try to make a drawing without seeing the original picture. This warm-up sets up the whole activity.
Watch: Watch one of these videos to see what robots can do:
- Asimo by Honda (3:58)
- Dancing Lego Robot (1:35)
Talk about it: How do robots know how to do things? Do they have brains like ours?
Guide the discussion toward this idea: people have to give robots exact instructions to make them do things.
Goal of the Discussion
Robots might seem like they act like people. But really, they only do what they are told to do — that's their programming. Students may think of movie robots that act very human. Push them to think of real robots too, like a Roomba (a robot vacuum) or a talking helper like Alexa.
Main Activity (30 min): Practice Together
Now you act as both the programmer and the robot! You color squares based on programs you write for each other.
You will need: A 4x4 grid (or graph paper with a 4x4 box marked off) and a picture worksheet.
These are the commands you can use:
- Move one square right
- Move one square left
- Move one square up
- Move one square down
- Fill in square with color
Say this: "Today, we are all going to program robots — and they're already in the room! It's you! We will write programs using symbols to help each other copy a picture. First, we'll practice together. I will be the robot, and you will be the programmers."
Show: Show the picture you want to copy, and a blank grid. Keep the instructions, grid, and picture all visible at once.
Try it: Here is a picture. Pretend the teacher is a robot with an ARM (Automatic Realization Machine). The robot only understands the five commands above.
Starting at the top-left corner, use your words to guide the robot's ARM.
Example commands the class might give:
- Move one square right
- Fill in square with color
- Move one square right
- Move one square down
- Fill in square with color
Write down each command as it happens, so everyone can see all the steps.
Say this: "You just gave me a list of steps to finish a job. In programming, that's called an algorithm. Algorithms are great because they're easy to understand. But what if the picture is much more complicated?"
Show: a harder picture. Start writing out the steps needed to copy it. Students will quickly see that writing every single step takes a long, long time — maybe 12 or more instructions!
Using Symbols
Now show students a list of symbols. Each symbol can stand for one whole instruction.
Talk about it: How could we use symbols to make our instructions shorter and easier?
Guide students to see that instead of writing out long sentences, we can use short symbols instead. For example, instead of writing:
"Move one square right, move one square right, fill in square with color"
...we could just write three symbols in a row!
Try it: Now have the class help you draw the bigger picture — but this time, using only symbols.
Teaching Tip
Some students like to write their program left to right, like reading a book. Others like to start a new line for each row of the grid. Either way is fine! What matters most is that other people in the group can follow along.
Original licensed under CC BY-NC-SA 4.0. This adaptation is provided free by OER.ai.