OER.ai

← CS Fundamentals — Course D

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:

  1. Move one square right
  2. Fill in square with color
  3. Move one square right
  4. Move one square down
  5. 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.