Unit 1: Day 3

START DATE:DUE DATE:STATUS:Open

Tasks

3.1 Computing Science History Contest

  • See doc in Shared Activities Folder (1.1 & 1.3 - Year 1 Theory)
  • The doc contains 11 major developments in the history of computing. This is designed to NOT be researched. Students are to guess what decade the event took place in.
  • If awarding prizes, give 2 points for being correct and 1 point for being off by one decade.

3.2 What the World Will Look Like with Driverless Cars

● Watch No Lights, No Signs, No Accidents [2:33]

3.3 Discuss Embedded Processors and Driverless Cars

  • talk about the evolution of smart devices
  • with the History of Tech project in mind, do a profile of today’s car
  • 25-50 processors in average car (The Globe and Mail, 2016)
  • Discuss V2V communication protocols. Why is it hard to get many companies from across the world working together.

Note to Teachers on the History of Tech Project

This project can be replaced entirely with the new AP Explore Teacher Resources Activities 1 and 2 or you can develop a hybrid approach as I have done. Both the AP and my History activity are expected to take the equivalent of 2-3 class periods. It is recommended that you complete the AP Explore Teacher Resource before completing the exam. The AP Explore Teachers Resource requires an official AP account. The link can be found here.

3.4a Project

  • Introduce the History of Tech Project OR AP Explore Teachers Resource Activity 1
  • Instructions for this assignment can be found in the Shared Activity Folder (1.1 & 1.3 - Year 1 Theory)
  • Students are to choose a Computing Innovation that interests them. It encourages them to look at how Computer Science influences that topic.
  • Just get them thinking about the topics today
  • Show sample presentation from last year

OR

3.4b What Makes Something a “Computer Innovation”?

  • Use the AP Explore Teachers Resource handout called Evaluating a Computing Innovation. The History of Tech Project requires a Computing Innovation. The AP Explore Teachers Resource requires an official AP account. The link can be found here.
  • Discuss why some things like an RFID Tag itself is non-computing but the device that reads them (and unlocks a door, for example) is.

3.5 Basic Programming Concepts

  • All programs have an Input-Processing-Output type structure
  • AP CSP Essential Knowledge
    • Program input is data sent to a computer for processing by a program. Input can come in a variety of forms, such as tactile, audio, visual, or text.
    • Inputs usually affect the output produced by a program.
    • Input can come from a user or other programs.
    • Program output is any data sent from a program to a device. Program output can come in a variety of forms, such as tactile, audio, visual, or text.
    • Program output is usually based on a program’s input or prior state (e.g., internal values).
    • A code statement is a part of program code that expresses an action to be carried out.
  • Sometimes these things happen sequentially, other times the processing is Event Driven
  • AP CSP Essential Knowledge
    • Sequencing is the application of each step of an algorithm in the order in which the code statements are given.
    • Sequential statements execute in the order they appear in the code segment.
    • In event-driven programming, program statements are executed when triggered rather than through the sequential flow of control.
    • An event is associated with an action and supplies input data to a program.
    • Events can be generated when a key is pressed, a mouse is clicked, a program is started, or by any other defined action that affects the flow of execution.
  • Discuss what inputs, outputs, processing and events we have seen so far
  • Today we will add the press of a key on a keyboard as an event that triggers the input

3.6 Ex3_Rainbow Line - Intro to Drawing and Mouse Functions

  • Slowly demonstrate the use of Random in various places.
  • Add the mousePressed() function to clear the screen
  • Comment and uncomment the background line in the draw function to change the visual

Unit 1 - Example 3 - Rainbow Line

let lineY = 50;

function setup() { 

    let sketch = createCanvas(600, 600); 

    sketch.parent("mycanvas");

    background(255, 255,0); }

}

function draw (){

  //background(255, 255,0); 

  stroke( random(255), random(255), random(255) ); line(50, lineY, mouseX,mouseY);

  lineY = lineY + 2; 

  if(lineY>400){ 

  lineY = 0; 

  } 

  fill(random(255), random(255), random(255)); 

  circle (random(400), random(400), random(100)); 

  }

//end draw function 

mousePressed(){ 

  background(255, 255,0);

}

3.7 Using the P5 Reference Page to Learn About Enhancements

  • Look at https://p5js.org/reference/ (also accessible within the P5 editor by choosing Help... Reference)
  • Go to the Shape subsection and look up and experiment with:
    • RECT - add rounded corners to a square
    • TRIANGLE - Add a triangle
    • RECTMODE and ELLIPSEMODE - experiment with how these effect your shapes
    • ARC - warning, these are hard to use

Additional AP CSP Outcomes Covered in This Lesson

  • IOC-1.A.1 People create computing innovations.
  • IOC-1.A.2 The way people complete tasks often changes to incorporate new computing innovations.IOC-1.A.3Not every effect of a computing innovation is anticipated in advance.
  • Using random number generation in a program means each execution may produce a different result.


Continue to Unit 1: Day 4 »