CS Principles 2017

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: Encoding and Sending Formatted Text
Resources Preparation

For the Teachers

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 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

  • Copies of the Battleship game board for each student
  • Poster paper or methods/materials for students to present
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 Teachers

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 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

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

For the Teachers

For the Students

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

For the Teachers

For the Students

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

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 Preparation

For the Teachers

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 Preparation

For the Students

Lesson 9: Check Your Assumptions
Resources Preparation

For the Teachers

For the Students

Lesson 10: Good and Bad Data Visualizations
Resources Preparation

For the Students

Lesson 11: Making Data Visualizations
Resources Preparation

For the Teachers

For the Students

Lesson 12: Discover a Data Story
Resources Preparation

For the Students

Lesson 15: Practice PT - Tell a Data Story
Resources Preparation

For the Students

Unit 3 - Algorithms and 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 Teachers

For the Students

Lesson 3: Creativity in Algorithms
Resources Preparation

For the Teachers

For the Students

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

For the Students

  • 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

  • Review functions in the "Turtle toolbox to assist in debugging code
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: Rapid Research - Data Innovations
Resources Preparation

For the Students

Lesson 3: Identifying People With Data
Resources Preparation

For the Teachers

For the Students

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

For the Teachers

For the Students

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

For the Students

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

For the Teachers

For the Students

  • Explore the Vigenere Cipher Widget in Code Studio
  • Familiarize yourself with the "howsecureismypassword.net" site.
  • (Optional) Print out worksheets (links in Code Studio)
Lesson 7: 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
Lesson 8: Rapid Research - Cybercrime
Resources Preparation

For the Teachers

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 Preparation

For the Students

  • Review the Practice PT

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 Teachers

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 Preparation

For the Students

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

For the Teachers

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 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

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

For the Students

AP Explore PT Prep

Lesson 1: Explore PT: Review the Task (1 hr)
Resources Preparation

For the Students

Lesson 2: Explore PT: Make a Plan (1 hr)
Resources Preparation

For the Teachers

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 (1 hr)
Resources Preparation

For the Students

Lesson 2: Create PT: Make a Plan (90 mins)
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