CS Principles 2019-2020

Resources

Unit 1 - The Internet

Lesson 1: Personal Innovations
Resources Preparation

For the Teachers

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 Preparation

For the Teachers

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 Preparation

For the Teachers

For the Students

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

For the Teachers

For the Students

Lesson 5: Binary Numbers
Resources Preparation

For the Teachers

For the Students

Lesson 6: Sending Numbers
Resources Preparation

For the Students

Lesson 7: Sending Text
Resources Preparation

For the Teachers

For the Students

  • Access to journals, paper, or other places that students can write down systems for the main activity.
  • Section prepped to use Internet Simulator in Code Studio.
  • Optionally print copies of ASCII Reference Sheet or prepare to project it
Lesson 8: The Internet Is for Everyone
Resources Preparation

For the Students

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

For the Teachers

For the Students

Lesson 10: Routers and Redundancy
Resources Preparation

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 Preparation

For the Teachers

For the Students

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

For the Teachers

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 Preparation

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 Preparation

For the Students

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

Unit 2 - Digital Information

Lesson 1: Bytes and File Sizes
Resources Preparation

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.
  • KEY Bytes and File Sizes
Lesson 2: Text Compression
Resources Preparation

For the Teachers

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 Preparation

For the Teachers

For the Students

Lesson 4: Encoding Color Images
Resources Preparation

For the Teachers

For the Students

Lesson 5: Lossy vs. Lossless Compression
Resources Preparation

For the Students

Lesson 6: Rapid Research - Format Showdown
Resources Preparation

For the Students

Unit 3 - Intro to Programming

Lesson 1: The Need for Programming Languages
Resources Preparation

For the Students

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

For the Students

Lesson 3: Creativity in Algorithms
Resources Preparation

For the Students

Lesson 4: Using Simple Commands
Resources Preparation

For the Students

  • Practice the levels yourself so you're familiar with the challenges.
  • Familiarize yourself with opening remarks and comments for background knowledge.
Lesson 5: Creating Functions
Resources Preparation

For the Students

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

For the Students

Lesson 8: Creating Functions with Parameters
Resources Preparation

For the Students

Lesson 9: Looping and Random Numbers
Resources Preparation

For the Teachers

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 Preparation

For the Students

Unit 4 - Big Data and Privacy

Lesson 1: What is Big Data?
Resources Preparation

For the Students

Lesson 2: Finding Trends with Visualizations
Resources Preparation

For the Students

Lesson 3: Check Your Assumptions
Resources Preparation

For the Students

Lesson 4: Rapid Research - Data Innovations
Resources Preparation

For the Students

Lesson 5: Identifying People With Data
Resources Preparation

For the Students

  • Familiarize yourself with the external web sites and tools involved in this lesson.
  • KEY Research Yourself
Lesson 6: The Cost of Free
Resources Preparation

For the Students

Lesson 7: Simple Encryption
Resources Preparation

For the Teachers

Lesson 8: Encryption with Keys and Passwords
Resources Preparation

For the Teachers

For the Students

Lesson 9: Public Key Cryptography
Resources Preparation

For the Teachers

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
  • KEY Multiplication + Modulo

Lesson 10: Rapid Research - Cybercrime
Resources Preparation

For the Students

Unit 5 - Building Apps

Lesson 1: Introduction to Event-Driven Programming
Resources Preparation

For the Students

Lesson 3: Building an App: Multi-Screen App
Resources Preparation

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 Preparation

For the Students

Lesson 5: Building an App: Clicker Game
Resources Preparation

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 Preparation

For the Students

Lesson 7: If-statements Unplugged
Resources Preparation

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.
  • KEY Will it Crash?
Lesson 8: Boolean Expressions and "if" Statements
Resources Preparation

For the Students

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

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.

  • KEY Compound Conditionals (optional)
Lesson 10: Building an App: Color Sleuth
Resources Preparation

For the Students

Lesson 11: While Loops
Resources Preparation

For the Teachers

For the Students

Lesson 12: Loops and Simulations
Resources Preparation

For the Students

Lesson 15: Processing Arrays
Resources Preparation

For the Students

Lesson 16: Functions with Return Values
Resources Preparation

For the Students

AP Explore PT Prep

Lesson 1: Explore PT - Review the Task
Resources Preparation

For the Teachers

For the Students

Lesson 2: Explore PT - Make a Plan
Resources Preparation

For the Students

Lesson 3: Explore PT - Complete the Task (8 hours)
Resources Preparation

For the Teachers

For the Students

AP Create PT Prep

Lesson 1: Create PT - Review the Task
Resources Preparation

For the Teachers

For the Students

Lesson 2: Create PT - Make a Plan
Resources Preparation

For the Teachers

For the Students

Lesson 3: Create PT - Complete the Task (12 hrs)
Resources Preparation

For the Teachers

For the Students

Post AP

Lesson 1: Introduction to Data
Resources Preparation

For the Teachers

For the Students

  • Teacher Setup for Google Forms (see Teacher Setup in Teaching Guide)
Lesson 2: Good and Bad Data Visualizations
Resources Preparation

For the Students

Lesson 3: Making Data Visualizations
Resources Preparation

For the Students

Lesson 4: Discover a Data Story
Resources Preparation

For the Students

Lesson 7: Tell a Data Story
Resources Preparation

For the Students