Unit 2 - Digital Information (Last update: May 2016)

Chapter 1: Encoding and Compressing Complex Information

Big Questions

  • Are the ways in which digital information is encoded more laws of nature or man made?
  • What kinds of limitations does the binary encoding of information impose on what can be represented inside a computer?
  • How accurately can human experience and perception be captured or reflected in digital information?

Enduring Understandings

  • 1.1 Creative development can be an essential process for creating computational artifacts.
  • 1.3 Computing can extend traditional forms of human expression and experience.
  • 2.1 A variety of abstractions built upon binary sequences can be used to represent all digital data.
  • 3.3 There are trade offs when representing information as digital data.

Week 1

Lesson 1: Bytes and File Sizes


In this lesson students are introduced to the standard units for measuring the sizes of digital files, from a single byte, all the way up to terabytes and beyond. Students begin the lesson by comparing the size of a plain text file containing “hello” to a Word document with the same contents. Students are introduced to the units kilobyte, megabyte, gigabyte, and terabyte, and research the sizes of files they make use of every day, using the appropriate terminology. This lesson foreshadows an investigation of compression as a means for combatting the rapid growth of digital data.

Lesson 2: Text Compression

Widget - Text Compression , Individual and Group Discovery

At some point we reach a physical limit of how fast we can send bits and if we want to send a large amount of information faster, we have to find a way to represent the same information with fewer bits - we must compress the data.

Lesson 3: Encoding B&W Images

Widget - Pixelation , Concept Invention , Individual Creation

In this lesson, students will begin to explore the way digital images are encoded in binary. The class begins by asking students to invent their own image encoding protocol in order to familiarize themselves with some of the subtle complications of encoding images, namely the need for other data, called metadata, that describes properties of the image necessary for rendering it. Students will learn about pixels, raster images, and what an image file format is. Students will encode binary image data using a widget in Code Studio.

Week 2

Lesson 4: Encoding Color Images

Widget - Pixelation , Individual Creation

In this lesson students are asked to consider how color is represented on a computer and to imagine how it might be encoded in binary. Students then learn about how color is actually represented on a computer - using the RGB color scheme - and create their own images in an new version of the pixelation widget that allows you use more than 1 bit per pixel to represent color information. After grappling with the prospect of possibly many bits just to represent a single pixel, students are shown how using hexadecimal allows us to represent many bits with fewer characters. Students use a new version of the pixelation tool to encode an image with color and create a personal favicon.

Lesson 5: Lossy Compression and File Formats


This lesson is mostly an investigation of different kinds of file formats that exist in the real world. The lesson begins with students exploring a mock “lossy” text compression scheme as a way to learn about “lossy” compression. Then we do a jigsaw “rapid research” activity in which pairs of student research a real image, text, or sound encoding file format and determine what kind of compression it uses and the theory behind it. This lesson also sets the stage for the practice Performance Task (Encode a Complex Thing) that follows this lesson.

Week 3

Lesson 6: Practice PT - Encode an Experience

Practice PT , Unplugged , Individual Creation

In this 2-day lesson, students will design their own way to encode a personal experience (such as attending a party, playing a game, etc). The project begins with students doing some top-down design to figure out the components and subcomponents of an experience that are encodable as binary information. Students then select a portion of the experience to flesh out into a a more detailed design. The project includes a written reflection questions similar to those students will see on the AP Performance Tasks. While students will complete this project individually, they will exchange feedback with a classmate at one point of the project.


This chapter will look and feel a lot like Unit 1, Chapter 1. It is in many ways a continuation of the concepts and activities around how to encode information. The difference now is that the information isn’t being encoded explicitly for the purpose of transmitting the data. Rather the focus on coming up with creative ways to encode types of information that less obviously lend themselves to binary encoding or discrete pieces of data at all.