AP Computer Science Principles


week 15: Dec 11 - Dec 15

week 14: Dec 4 - Dec 8


week 13: Nov 27 - Dec 1


week 12: Nov 20 - Nov 22

week 11: Nov 13 - nov 17



week 10: Nov 6 - 9

week 9: Oct 30 - Nov 3


week 8: Oct 23 - Oct 27

Explore Task: The harmful effect has to be tied to the intended purpose of the innovation.  That is why hacking can be a security/privacy concern, but not a harmful effect.  Likewise high cost can not be considered a harmful effect.


week 7: Oct 16 - Oct 20

week 6: Oct 10 - Oct 13

  • Complete Explore Task (Practice Version) - final versions are due on Tue Oct 10
    - it is possible to finish up the artifact in class, depends on how you are creating it...
    - create a folder within your google drive folder to contain your work for this task & begin...
    - at least 2 of your online sources must be dated after Apr 30, 2017

  • View: Rob's Video on Compilers

  • Complete: Greedy
    - constants, a do/while loop, modulo, and the round() function will help you with this task
    - needs check50, style50 and submit to GitHub

  • View: Tommy's Short on Loops
  • Complete: Evens (a practice program)
    _ just run a style50 when complete

  • CS50 Chapter 1: Loops
  • CS50 Chapter 2: Compilers
  • CS50 Chapter 2: Functions
  • CS50 Chapter 2: Arrays and Strings


week 5: Oct 2 - Oct 6

  • Homework: Do some reading about microchip use in humans - then create a blog post with the following:
    - at least three positive, and at least 3 concerns about the potential of this technology
    - add a paragraph with your thoughts on how this technology will proceed in the future - what do you think of it and what are your predictions, based in part on evidence in the articles your read
    - due Tue Oct 3

  • Hackathon - Nov 4th in Burlington, MA at MS HQ
    - www.hacknehs.com

  • Review: Explore Examples
  • Reference College Board: AP CSP Student Task Guidelines
  • Begin: Explore Task (Practice Version) - progress will be graded on Thursday .... final versions are due on Tue Oct 10
    -create a folder within your google drive folder to contain your work for this task & begin...
    - at least 2 of your online sources must be dated after Apr 30, 2017

  • Complete: modulo.c practice
  • Demo: do_while loop code (in class)

  • Complete: skittles.c
    - this is an older cs50 problem so you only need to run it through style50 and leave it in your workspace for me to view
    - you will need an additional header file, the rand() function, use of modulo, and boolean decision making to complete this task


week 4: Sep 25 - Sep 29

  • Register: College Board & this class
  • Continue with 3_D printing

  • View: Floppy Disk video (in class)

  • Complete: data_types.c (in class - will demo first)
    - finished version will prompt the user for the following information, and then print the results

    char (single character)
    string (name or phrase of characters)
    int (single number - no decimals - less than 10 digits)
    long long (single number - no decimals - less than 20 digits)
    float (decimal)
    - print once as the full size
    - print again and limit it to 2 decimal places

  • Discuss: Integer Overflow & Imprecision

  • View: Vipul's short on variables
    - implement last example as inf_loop.c & be aware it will loop infinitely...
    - To force-exit a running program, press Ctrl + C from your keyboard

  • View: Doug's Video - operators

  • Complete: Fahrenheit
    - run style50, check50, and submit final version to the gradebook

  • Complete: escape.c

  • Challenge 1: clock.c - Ask a user to input the month, day and year using get_int(), and print it out in the format mm/dd/yy (e.g. 11/23/17). Month and day can also be single digits, so don't worry about formatting.

  • Challenge 2: sum.c - Using only one variable, take in 3 variables from the user as input, and return their sum.
  • Review: Explore Examples

  • Begin: Explore Task (Practice Version)
    - start by picking out your topic - we will discuss these before proceeding

  • CS50 Chapter 1: Operators


week 3: Sep 18 - Sep 22

  • Office Hours: Tue & Thu this week
    - bring your questions, make up work, or just general confusion and we will accomplish wonders

  • If you should find yourself caught up - start thinking about the Explore Task
    - we will be completing a practice task soon so find a topic that works but that you won't use for the real assignment - I can give you topics to choose from if that helps
    - review the directions in the AP CSP Student Task Guidelines

  • Field Trip: Friday Sep 22
  • Choose an item to 3_D print

  • Join CS50.me (you will need a git hub account too)

  • View: David's Lecture (hello world, string.c)
  • View: David's Lecture (binary)
  • View: David's Lecture (ASCII)

  • Complete: Binary worksheet (in class)
  • Play: Binary Game (Cisco version)
  • Play: Binary Game
  • Complete: Binary_Decimal Practice (in class)

  • Complete: CS50 - "Hello World"
  • Complete: string.c (from the video)
    - you don't need to upload this to github as it is just practice but you should always run style50


week 2: Sep 11 - Sep 15

week 1: Sep 5 - 8

  • Homework: 3 Things
  • Homework: Blog Post - Tech Spotlight - due Mon Sep 11
    In no more than 600 words, expound on a piece of technology with which you are familiar and that you might use everyday. It needn't be a piece of hardware; software, websites, and the like are perfectly fine too. Explore it in depth. Assume for the purposes of this assignment that your audience is someone who has no prior knowledge about the technology. 
    Consider these questions:
    What is this technology called?
    What does it do?
    How does someone use this technology?
    How is its quality of performance commonly measured? (e.g. in megabytes (MB), gigahertz (GHz), etc.)
    How does the recent news about the technology change the product or service?
    What older form of technology does it replace, if any?
    How has this technology impacted your life, for better or worse? How has this technology impacted society at large, for better or worse?

  • Discuss: Class Expectations & Course Overview
  • Review: Work Rubric
  • Review: Academic Honesty Policy
    - Be sure I have editing permission when you share it
  • Review: Email Etiquette
  • View: Computer Science is Changing Everything
  • Review: Computer Hardware
  • Discussion: What defines a computer? Break into groups for this
  • View: Landfill Harmonic
    -  think about how computing has global impacts and really does change the world in significant ways

  • Reference Sheet: Computers and Computing
  • Reference Sheet: Bits and Bytes