Lesson Plan
Code.org

Text Compression

For Teachers 9th - 12th
The second lesson in a unit of 15 introduces pupils to text compression. The class begins with discussing how they already use text compression when sending text messages. Pairs learn more about the subject as they work to compress a...
Lesson Plan
Code.org

Encoding and Sending Formatted Text

For Teachers 9th - 12th
Introduce your class to encoding text. Pairs work together to create a protocol to send text prior to learning ASCII encoding. Groups then collaborate to send and translate ASCII codes creating a formatted text message. 
Lesson Plan
Code.org

HTTP and Abstraction on the Internet

For Teachers 9th - 12th
Introduce your class to the layers of abstraction of the Internet with a instructional activity on the HTTP protocol. Pupils review previous lessons on levels of the Internet, then investigate new high levels by examining the...
Lesson Plan
Code.org

The Need for Programming Languages

For Teachers 9th - 12th
LEGO see if you can recreate my design. Individuals build an arrangement from LEGO blocks and write directions for someone else to follow in order to recreate the arrangement. Pairs then swap directions and try to...
Lesson Plan
Code.org

The Need for Addressing

For Teachers 9th - 12th
You sunk my battleship via the Internet? Groups of three play a modified game of Battleship using the Internet Simulator. Team members determine how to address messages, so each player knows who the message is for, and refine their text...
Interactive
Khan Academy

Challenge: Mouse Tracker

For Students 6th - Higher Ed
Create a small but useful little program that allows you move a dot with your mouse and see the coordinates change as the mouse moves.  Starting with a dot that moves with the mouse, add to this program the text of the points...
Lesson Plan
Google

Friends: Texting Story

For Teachers 5th - 9th
Sometimes it's okay to text in school. Young computer scientists work in the Scratch program to write a text message conversation among friends. They use different sprites within the program to represent each side of the conversation to...
Interactive
Khan Academy

Challenge: My Favorite Foods

For Students 6th - Higher Ed
Create a list of your favorite foods while you practice writing text in JavaScript. Use fill, textSize, and text functions. This is a quick activity that helps solidify basic skills. Expand with additional challenges...
Interactive
Khan Academy

Project: Ad Design

For Students 6th - Higher Ed
Let your young programmers' creativity and programming knowledge shine with this culminating activity. Coders put together everything they know about using text commands, drawing, and animation to create a unique ad. This activity could...
Activity
Computer Science Unplugged

Twenty Guesses—Information Theory

For Teachers 4th - 8th
How do we determine how much information to include and what can be left out? By playing a game of 20 questions, the class generates the best strategies for finding a number. They then move on to guessing the next letter in a short...
Lesson Plan
Code.org

Lossy Compression and File Formats

For Teachers 9th - 12th
I'm compressed. Groups do a rapid research of different file types to determine what kind of compression the formats use and how it works. They share their information with the rest of the class until everyone has all the information for...
Lesson Plan
Computer Science Unplugged

You Can Say That Again! – Text Compression

For Teachers 4th - 12th
Compression, the process computers use to store information, is the focus of a resource that presents two different stories that describe the concept of compression by eliminating repeated letters and replacing them with a...
Lesson Plan
Code.org

Encoding B and W Images

For Teachers 9th - 12th
Imagine drawing with zeros and ones. The third lesson in a unit of 15 introduces the class to creating black and white images. Pairs get together to create an encoding scheme in order to make these images. They move on to a...
Activity
Computer Science Unplugged

Treasure Hunt—Finite-State Automata

For Teachers 4th - 12th
Introduce your class to the concept of finite-state automata with an activity that asks individuals to try to map their way to Treasure Island by taking different routes though an island chain. Each island has two ship sailing...
Lesson Plan
Microsoft

Final Independent Project

For Teachers 6th - 8th
Finally ... the final project. As a culminating activity for the nine-part Intro to CS with MakeCode unit, scholars create a program within Minecraft that incorporates skills from the unit. They consider how to survive in the wild and...
Lesson Plan
Microsoft

Variables

For Teachers 6th - 8th
You won't want to replace the resource with anything else. Future computer scientists use Minecraft to learn about variables in computer coding. They engage in several activities to master the variable code block, then apply it in an...
Lesson Plan
Curated OER

Coding History

For Teachers 10th - Higher Ed
Students study the topic of codes in Computer Science. They research it history, divisions in the field and its applications. The lesson also includes a brief overview of the information technology theory.
Interactive
Khan Academy

Practice: Using While Loops

For Students 6th - Higher Ed
Test your knowledge of loops with this short online quiz about using the while statement in JavaScript code. Get five questions correct in a row and you're done!
Lesson Plan
Code.org

Algorithms Detour - Minimum Spanning Tree

For Teachers 9th - 12th
This optional lesson introduces the class to the idea of a minimum spanning tree. The activity focuses on determining an algorithm that will find the most efficient path in a network to transfer data. 
Lesson Plan
Code.org

User Input and Strings

For Teachers 9th - 12th
Pupils learn to apply strings in computer science. They master two new user interface elements and also use string type data to represent ASCII characters. Finally, individuals create an app for Mad Libs in the eighth lesson of the series.
Lesson Plan
Code.org

Bytes and File Sizes

For Teachers 9th - 12th
A bite of bits. The first lesson in a unit of 15 introduces the class to the byte. Pupils learn about other standard units for measuring file sizes, develop an understanding of relative sizes and the kind of units used to measure...
Lesson Plan
Code.org

Introduction to Arrays

For Teachers 9th - 12th
How can you store lists in a computer program? The 16th installment of a 21-part unit introduces arrays as a way to store lists within a variable. Individuals program a list of their favorite things—adding interest to the activity.
Lesson Plan
Code.org

Keys and Passwords

For Teachers 9th - 12th
Scholars explore the relationship between cipher keys and passwords and as they learn more about the Vigenere cipher and continue to read from the book Blown to Bits in the seventh lesson of the series. They conduct an activity where...
Lesson Plan
Code.org

Introduction to Conditional Logic

For Teachers 9th - 12th
On one condition ... explore how to use conditionals within conditionals. Scholars apply conditional statements to improve upon the app they built during a previous lesson. They also learn about nested conditionals in the 11th lesson of...