CS Principles

Resources

Unit 1 - The Internet (Last update: May 2016)

Lesson 1: Personal Innovations
Resources Prep

For the Teacher

For the Students

  • Procure post-its or paper and tape
  • Procure poster paper for sharing innovations
  • Queue up CS is Changing Everything video
  • Setup section in Code Studio for this course
  • Have student sign-up link ready to share
Lesson 2: Sending Binary Messages
Resources Prep

For the Teacher

For the Students

  • Optional Print activity guide (see teaching tip)
  • One box of “maker supplies” for each student group. Example supplies include:
    • Small flashlights
    • Simple noisemakers such as bells, triangles, or whistles
    • Cups and string
    • Slinky
    • Legos
    • Colored paper
Lesson 3: Sending Binary Messages with the Internet Simulator
Resources Prep

For the Teacher

For the Students

  • Code Studio section setup (required for using Internet Simulator)
Lesson 4: Number Systems
Resources Prep

For the Teacher

For the Students

Lesson 5: Binary Numbers
Resources Prep

For the Teacher

For the Students

Lesson 6: Sending Numbers
Resources Prep

For the Students

Lesson 7: Encoding and Sending Formatted Text
Resources Prep

For the Teacher

For the Students

  • (Optional) Poster Paper
  • Markers or Crayons
  • Section prepped to use Internet Simulator in Code Studio.
Lesson 8: The Internet Is for Everyone
Resources Prep

For the Students

  • Copies of the activity guide to distribute (or distribute online)
Lesson 9: The Need for Addressing
Resources Prep

For the Teacher

For the Students

  • Copies of the Battleship game board for each student
  • Poster paper or methods/materials for students to present
Lesson 10: Routers and Redundancy
Resources Prep

For the Students

  • Review functionality of Internet Simulator with address fields as well as router / network tables
Lesson 11: Packets and Making a Reliable Internet
Resources Prep

For the Teacher

For the Students

  • Review functionality of Internet Simulator with transmission failure
  • Copies of the Activity Guide
Lesson 12: The Need for DNS
Resources Prep

For the Teacher

For the Students

  • MUST print out and have prepared IP Address Labels for students walking into class
  • Copies of Worksheet and Activity Guide
  • Familiarize yourself with the Getting Started activity and what you need to do
Lesson 13: HTTP and Abstraction on the Internet
Resources Prep

For the Students

  • Practice accessing the Developer Tools for the browser used in your classroom (see Worksheet for links to directions)
Lesson 14: Practice PT - The Internet and Society
Resources Prep

For the Students

  • Review the Practice PT and decide how students should present (see Lesson Plan)

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

Lesson 1: Bytes and File Sizes
Resources Prep

For the Teacher

For the Students

  • You should verify that you know how to look at the sizes of files on computers that your students are using (see activity).
  • For the getting started activity might want a Word processing program (such as MS Word) and plain text editor (such as Notepad or TextEdit) open and ready.
  • The teaching remarks and content corners in this lesson contain lots of little bits of history that you might choose to share at various points in the lesson.
Lesson 2: Text Compression
Resources Prep

For the Teacher

For the Students

  • Test out the Text Compression Widget
  • Review the teaching tips to decide which options you want to use
Lesson 3: Encoding B&W Images
Resources Prep

For the Teacher

For the Students

  • (Optional) Graph or grid paper for drawing pixel images by hand
Lesson 4: Encoding Color Images
Resources Prep

For the Teacher

For the Students

  • (Optional) Consider demonstrating the color pixelation widget instead of showing the video.
Lesson 5: Lossy Compression and File Formats
Resources Prep

For the Teacher

For the Students

  • Copies of File Formats Rapid Research worksheet for students
Lesson 6: Practice PT - Encode an Experience
Resources Prep

For the Students

  • Determine how you want to collect the project - digitally or on paper - and prepare to explain that to students
  • Determine what (if anything) you want to print for distribution to students
  • Review the “birthday party” example from the activity guide
Lesson 7: Introduction to Data
Resources Prep

For the Teacher

For the Students

  • Review the Data Tools Resources for this lesson (including Excel support)
  • Teacher Setup for Google Forms (see Teacher Setup in Teaching Guide)
Lesson 8: Finding Trends with Visualizations
Resources Prep

For the Students

Lesson 9: Check Your Assumptions
Resources Prep

For the Teacher

For the Students

Lesson 10: Good and Bad Data Visualizations
Resources Prep

For the Students

Lesson 11: Making Data Visualizations
Resources Prep

For the Teacher

For the Students

Lesson 12: Discover a Data Story
Resources Prep

For the Students

Lesson 13: Cleaning Data
Resources Prep

For the Students

  • Prepare data collected from survey to share with students. Ensure that a “Teacher only” master copy is kept safely somewhere.
  • Student partners will carry through the next lesson and Practice PT. You may wish to select these pairs beforehand.
  • Review the Data Tools Resources for this lesson (including Excel support)
Lesson 14: Creating Summary Tables
Resources Prep

For the Students

  • Review Data Tools Resources (including Excel support)
  • Familiarize yourself with the tutorials about making pivot tables in Code Studio.
  • Ensure sutudents have access to the dataset they cleaned in the previous lesson.
Lesson 15: Practice PT - Tell a Data Story
Resources Prep

For the Students

Unit 3 - Algorithms and Programming (Last update: June 2016)

Lesson 1: The Need for Programming Languages
Resources Prep

For the Teacher

For the Students

  • Blocks for the class (~5 per team/student)
  • Paper for recording instructions
Lesson 2: The Need for Algorithms
Resources Prep

For the Teacher

For the Students

Lesson 3: Creativity in Algorithms
Resources Prep

For the Teacher

For the Students

  • Playing cards for students
  • Decide which parts of the activity guide to print out
Lesson 4: Using Simple Commands
Resources Prep

For the Teacher

For the Students

  • Familiarize yourself with opening remarks and comments for background knowledge.
Lesson 5: Creating Functions
Resources Prep

For the Teacher

For the Students

  • Review student-facing instructions in Code Studio
Lesson 6: Functions and Top-Down Design
Resources Prep

For the Teacher

For the Students

Lesson 7: APIs and Using Functions with Parameters
Resources Prep

For the Teacher

For the Students

  • Review functions in the “Turtle toolbox to assist in debugging code
Lesson 8: Creating Functions with Parameters
Resources Prep

For the Teacher

For the Students

  • Review functions in the “Turtle toolbox to assist in debugging code
Lesson 9: Looping and Random Numbers
Resources Prep

For the Teacher

For the Students

  • Set up the room for computer use
  • Plan how you want students to watch the video on loops
Lesson 10: Practice PT - Design a Digital Scene
Resources Prep

For the Teacher

For the Students

Unit 4 - Big Data and Privacy (Last update: October 2016)

Lesson 1: What is Big Data?
Resources Prep

For the Teacher

For the Students

Lesson 2: Rapid Research - Data Innovations
Resources Prep

For the Teacher

For the Students

Lesson 3: Identifying People With Data
Resources Prep

For the Teacher

For the Students

  • Familiarize yourself with the external web sites and tools involved in this lesson.
Lesson 4: The Cost of Free
Resources Prep

For the Teacher

For the Students

  • Review the reading
  • Review the teaching tips related to group work
Lesson 5: Simple Encryption
Resources Prep

For the Students

  • Examine both versions of the widget
Lesson 6: Encryption with Keys and Passwords
Resources Prep

For the Teacher

For the Students

  • Explore the Vigenere Cipher Widget in Code Studio
  • Familiarize yourelft with the “howsecureismypassword.net” site.
  • (Optional) Print out worksheets (links in Code Studio)
Lesson 7: Public Key Cryptography
Resources Prep

For the Teacher

For the Students

This lesson will likely take two days to complete. Preparing for these activities the first time will take some time. Once you’ve been through it once, the activities actually go quicker than you might expect.

Suggested Prep for Day 1 (Steps 1-3)

  • Prepare the Cups and Beans demonstration (you need cups and beans)
  • Understand the modulo thought experiment with pictures of clocks
  • (Optional) Paper copies of “multiplication + modulo” activity guide

Suggested Prep for Day 2 (Step 4 + wrap up)

  • Practice using the “modulo clock”
  • Practice and Prepare for the using and demonstrating the public key crypto widget
Lesson 8: Rapid Research - Cybercrime
Resources Prep

For the Teacher

For the Students

  • Review the video
  • Review annotated responses to terminology at end of lesson for wrap up
Lesson 9: Practice PT - Big Data and Cybersecurity Dilemmas
Resources Prep

For the Students

  • Review the Practice PT

Unit 5 - Building Apps (Last Update: December 2016)

Lesson 1: Introduction to Event-Driven Programming
Resources Prep

For the Students

Lesson 2: Multi-Screen Apps
Resources Prep

For the Students

  • Review levels that explain concepts, decide if you would like to demonstrate them or have students read/do on their own.
Lesson 3: Building an App: Multi-Screen App
Resources Prep

For the Students

  • Print project planning guides (see student documents).
  • Review the lesson plan to decide how many days of class time you want to use for this mini-project.
  • Decide how peer review will work (anonymous or not).
Lesson 4: Controlling Memory with Variables
Resources Prep

For the Students

Lesson 5: Building an App: Clicker Game
Resources Prep

For the Students

  • Decide whether you want to introduce the activity guide at the beginning of the lesson or the end.
  • Familiarize yourself with the Clicker Game and rubric, decide how to organize peer review.
Lesson 6: User Input and Strings
Resources Prep

For the Students

Lesson 7: If-statements unplugged
Resources Prep

For the Teacher

For the Students

  • Decide whether or not to print the “Will it Crash?” Activity Guide for students (it’s ~6 pages, but nice to have on paper. There are digital alternatives, though)
  • Decide how students will review the first two code studio pages - see teaching tips.
  • Budget time: the main activity is working through the problems in the “will it crash?” activity - keep in mind that the last problem ask students to write code which may take time as well.
Lesson 8: Boolean Expressions and "if" Statements
Resources Prep

For the Students

Lesson 9: "if-else-if" and Conditional Logic
Resources Prep

For the Teacher

For the Students

  • Decide whether to use Compound Conditionals worksheet. (Best to use after students have learned about if-else-if and Boolean Operators AND, OR and NOT).

    • Note: The first page of the worksheet should be distributed separately.
  • Review code studio levels and associated teacher’s notes.

Lesson 10: Building an App: Color Sleuth
Resources Prep

For the Students

Lesson 11: While Loops
Resources Prep

For the Teacher

For the Students

Lesson 12: Loops and Simulations
Resources Prep

For the Students

Lesson 13: Introduction to Arrays
Resources Prep

For the Students

Lesson 15: Processing Arrays
Resources Prep

For the Students

Lesson 16: Functions with Return Values
Resources Prep

For the Students

Lesson 17: Building an App: Canvas Painter
Resources Prep

For the Students

Lesson 18: Practice PT - Create Your Own App
Resources Prep

For the Students

Unit 6 - AP Performance Tasks (Last Update: January 2017)

Lesson 1: Tech Setup: Your AP Digital Portfolio and other tools
Resources Prep

For the Teacher

For the Students

Lesson 2: Create PT Prep: Reviewing the Task
Resources Prep

For the Teacher

For the Students

Lesson 3: Create PT Prep: making a plan
Resources Prep

For the Teacher

For the Students

Lesson 4: Create PT: complete the task
Resources Prep

For the Teacher

For the Students

Lesson 5: Explore PT Prep: reviewing the task
Resources Prep

For the Teacher

For the Students

Lesson 6: Explore PT Prep: making a plan
Resources Prep

For the Teacher

For the Students

Lesson 7: Explore PT: complete the task
Resources Prep

For the Teacher

For the Students