Carpenter - AP Computer Science Principles (Section Tues 6)

Instructor
Anne Carpenter
Department
Technology
Terms
2019-2020 School Year


Assignment Calendar

Course Description

 

Class Title:

AP Computer Science Principles

Code:

HCS500

Text:

Code.org

Rating:

5

Prerequisite:

Computer Skills, Intro to Computer Science or permission of the instructor

Grade:

9­-12

Fees:

Approx $94 for the AP Exam

Max:

15

Can be repeated? No

Meets 2x/Week

 

Description: The curriculum for this course follows the criteria required from the Advanced Placement College Board Program. AP Computer Science Principles will utilize code.org’s curriculum through independent and group work in class and at home to learn about computer science. Students must have regular access to a computer and reliable internet to successfully complete this course. Computer Science Principles introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world. More than a traditional introduction to programming, it is a rigorous, engaging, and approachable course that explores many of the foundational ideas of computing so all students understand how these concepts are transforming the world we live in. This course is an entry level AP course and is appropriate for all high school students. Summer homework may be required.

Posts

Week of February 24: AP Computer Science Principles

What We Did:

  • Wrapped up our PT Create
  • Talked about test taking strategies for our take home exam 

What to Work On:

  • Any unfinished work (you have been told what needs to be turned in- and you can also check Infinite Campus) 
  • Quiz 5 (https://apclassroom.collegeboard.org/)
  • Practice Test- AP Diagnostics Exam- give yourself a two hour window to complete this exam 
  • Finish your PT Create
    • Program code
    • Answer questions
    • Video of program running 

What We Plan to Do Next Week:

  • 5.4: Controlling Memory with Variables 
  • 5.5: Building an App: Clicker Game 
  • (Homework) 5.6: User Input and Strings
  • (Homework) Review: Data and Information- reading and questions

Week of February 17: AP Computer Science Principles

What We Did:

  • Continue working on PT Create
  • Students need to submit: 
    • Program Code
    • Written Response
    • Video of code running

What to Work On:

  • PT Create
  • ** This is a big review for the exam.  We will start getting these regularly until the exam on May 15th** Abstraction Review
    • Reading
    • Questions 
  • Quiz #4 (https://apclassroom.collegeboard.org/

What We Plan to Do Next Week:

  • Wrap up PT Create 
  • Students should have spent approx. 12 hours on this project (6 in class)

Week of February 10: AP Computer Science Principles

What We Did:

  • Explore Create Task 
  • Looking at prior submissions and annotated rubrics 
  • Going over the rubric 
  • Beginning our task 

What to Work On:

  • Any unfinished work from before
  • Work on your code for your Create Task 

What We Plan to Do Next Week:

  • Keep working :) We have two more classes to complete this.  You will also need to do work at home. 
  • We will be submitting:
    • Program code
    • Video of program running
    • Written responses

Week of February 3: AP Computer Science Principles

What We Did:

  • See email that was sent home

What to Work On:

  • 5.1: Buttons and Events
    • Use Design Mode to user interface (UI) elements to a screen.
    • Create a simple event-driven program by creating user-interface elements with unique IDs and attaching event handlers to them.
    • Recognize debugging and responding to error messages as an important step in developing a program.
    • Debug simple issues related to event-driven programming
  • 5.2: Multi-Screen Apps
    • Write a simple event-driven program that has multiple screens.
    • Recognize debugging as an important step in developing a program.
    • Use console.log to debug simple issues related to event-driven programming.
  • 5.3: Building an App: Multi-Screen App
    • Develop and design a plan for multi-screen application
    • Collaborate with a "thought partner" during the implementation of a project
    • Create a multi-screen application in App Lab using simple UI elements and event handling
  • Online Quiz- login at apclassroom.collegeboard.org

What We Plan to Do Next Week:

  • Begin our Performance Task: Create 

Week of January 27: AP CSP

What We Did:

  • Wrapped up Unit 4: Big Data and Privacy
  • Unit reflections, assessments 

What to Work On:

  • Any unfinished work
  • Since the December break students need to have turned in 4.3-4.10 
  • The homework assignments were: 4.3, 4.4, 4.7, and 4.10
  • Weekly Quiz
    • Students will begin to get weekly "quizzes".  The questions come from the College Board question bank of AP CSP questions.  
    • login at: https://apstudents.collegeboard.org/
    • Scoring- students will receive 8 questions a week and be given a score out of 5 points.  

What We Plan to Do Next Week:

  • Begin Unit 5: Building Apps
  • 5.1: Event Driven Programming
  • 5.2: Multi-Screen Apps
  • 5.3: Building an App: Multi-Screen App 

Grading Reminder

Grading reminder: This year we have begun to put “Missings” into the Infinite Campus Gradebook if student’s work is not turned in at the time we grade.  We were asked to do this by the office. I will make a note if a student is absent or if something is incomplete. I always welcome my students to keep working on their assignments if they are unhappy with the grade they earned.  The goal is to learn and keep growing their skills, so I’m happy if they’d like to go back and make improvements to their work. If a student is absent, I will send home missing work and they need to let me know when they’ve “turned it in” in their folder online via email.  Missings can be changed easily and do not have to be the final grade if the students re-submits or turns in their work for the first time if they were sick. We want students to understand what happens if they don’t complete work, which is why we have been asked to put in the missings.  And like I said, this can be changed easily once students hand in their work. At the end of the semester students will be told a date in advance for when grades will be finalized. This will give them time if they have any missing assignments to complete them and turn them in. While my goal is for students to learn, it is also a goal for students to stick to deadlines, be responsible for their work, etc. I would highly encourage them to stay up to date with their assignments. Please let me know if you have any questions about this. 

Week of January 20: AP Computer Science Principles

What We Did:

  • Lesson 4.8: Encryption with Keys and Passwords
    • Explain the relationship between cryptographic keys and passwords.
    • Explain in broad terms what makes a key difficult to “crack.”
    • Reason about strong vs. weak passwords using a tool that shows password strength.
    • Understand that exponential growth is related to an encryption algorithm’s strength.
    • Explain how and why the Vigenère cipher is a stronger form of encryption than plain substitution.
    • Explain properties that make for a good key when using the Vigenère Cipher.
  • Started lesson 4.10: Rapid Research- Cyber Crime
    • Explain the characteristics of a phishing attack
    • Explain how a DDoS attack works
    • Describe how one computer virus works
    • Research and describe a cyber attack found in the news
    • Reason about the threats posed by, and methods of recourse for, various types of cyber attacks
    • Describe plausible storage, security, or privacy concerns for particular pieces of data

What to Work On:

  • Finish 4.10: Rapid Research
  • Any other unfinished work
  • Unit 4 reflections online in Code.Org 
  • Look back and make sure you have completed everything from the break for homework and everything since we’ve come back to school-- 4.3-4.10 (homework was: 4.3, 4.4 4.7, 4.10) 

What We Plan to Do Next Week:

  • Please bring your binder and all of your papers to class
  • 4.9: Public Key Cryptography
  • Unit 4 wrap up, reflections, assessment questions

AP Computer Science Principles- Week of January 13

  • 4.5: Identifying People with Data
    • Explain privacy concerns that arise through the mass collection of data
    • Use online search tools to find and connect information about a person or topic of interest.
    • Explain how multiple sources of data can be combined in order to uncover new knowledge or information.
    • Analyze the personal privacy and security concerns that arise with any use of computational systems.
  • 4.6: The Cost of Free
    • Explain how and why personal data is exchanged for use of free software.
    • Explain some of the privacy and economic tradeoffs involved in the collection and use of personal data.
    • Describe the ways and reasons organizations collect information about individuals.
    • Read and critically evaluate a data privacy policy.

What to Work On:

  • 4.7: Simple Encryption
    • Explain why encryption is an important need for everyday life on the Internet.
    • Crack a message encrypted with a Caesar cipher using a Caesar Cipher Widget
    • Crack a message encrypted with random substitution using Frequency Analysis
    • Explain the weaknesses and security flaws of substitution ciphers
  • Students had homework over the break. Please be sure 4.3 and 4.4 were completed and turned in 

What We Plan to Do Next Week:

  • 4.8: Encryption with Keys and Passwords
  • 4.9: Public Key Cryptography
  • (homework) 4.10: Rapid Research- Cybercrime

Winter Break Work

AP Computer Science Principles has some homework over the break.  The students were given the lessons in class, but it can also be found in the Google Drive folder.  Students need to complete lessons 4.3 and 4.4.  Please let me know if you have any questions.  

Week of December 9: AP Computer Science Principles

What We Did:

  • Unit 3 wrap up and Unit 3 assessment
  • Go back through units 1, 2, and 3 to make sure everything is submitted
  • One thing to keep working on is staying up to date with all work 

What to Work On:

  • 3.10 is due on Tuesday, December 17th 
  • Any other unfinished work- check Infinite Campus (all students have been kept up to date with what’s missing and were given a hand out of everything last week)
  • Students must email me when they submit something in their Google Drive folders to let me know it’s been turned in
  • Please let me know if you have any questions 

What We Plan to Do Next Week:

  • 4.1: What is Big Data? 
  • 4.2: Finding Trends with Visualizations 
  • (homework) 4.3: Check Your Assumptions
  • (homework) 4.4: Rapid Research: Data Innovations 

Week of December 2: AP Computer Science Principles

What We Did:

  • 3.8: Creating Functions with Parameters
    • Write functions with parameters to generalize a solution instead of duplicating code.
    • Identify appropriate situations for creating a function with parameters.
    • Use random numbers as inputs to function calls for the purpose of testing.
    • Add parameters to a function in an existing piece of code to generalize its behavior.
  • 3.9: Looping and Random Numbers
    • Use a loop in a program to simplify the expression of repeated tasks.
    • Identify appropriate situations in a program for using a loop.
    • Use random values within a loop to repeat code that behaves differently each time it is executed.

What to Work On:

  • Due: December 17th- 3.10: Practice PT: Design a Digital Scene
    • Write programs that address one component of a larger programming problem and integrate with other similarly designed programs.
    • Collaborate to break down a complex programming problem into its component parts.
    • Use code written by other programmers to complete a larger programming task.
    • Write responses to AP-style prompts
  • All Code.Org reflections and code studio work 
  • Any unfinished work 
    • Students will be given a print out of all of their work so they can see where they are at with their assignments (I've handed out two of them and will look for the other two students or put them in their family folder) 
    • All of the students have some missing assignments and/or assignments they may want to redo in order to earn more points and be sure they fully understand the concepts 
    • All work (with the exception of 3.10) is DUE FRIDAY, DECEMBER 13TH

What We Plan to Do Next Week:

  • Wrap up Unit 3 

** Class will be held on Tuesday, December 17th at normal time (even though other high school classes will not be in session).  With the AP exam and some struggles to get all the homework done we need all the time we can get to make sure the students are prepared for their exam and performance tasks in April and May.

AP Computer Science- Class meeting as usual December 17th

Our AP Computer Science Principles class will be meeting as usual on Tuesday, December 17th from 1:20-3:15pm.  This is when the elementary and middle school holiday events are happening at school and other high school classes have been ended.  However, since we are taking an externally assessed AP exam on May 15th we still need to meet the last week of classes before the holiday break.  Please let me know if you have any questions or meeting this day would be a problem.  Thank you for your support with this class! 

AP CSP- Week of November 18th

What We Did:

  • 3.4: Using Simple Commands
    • Use App Lab to write programs that create simple drawings with “turtle graphics.”
    • Create a program with a partner following the pair programming model
    • Explain different ways one might measure the efficiency of a program.
  • 3.5: Creating Functions
    • Recognize functions in programs as a form of abstraction.
    • Write a program that solves a turtle drawing problem using multiple levels of abstraction (i.e. functions that call other functions within your code).
    • Explain why and how functions can make code easier to read and maintain.
    • Define and call simple functions that solve turtle drawing tasks.

What to Work On:

  • 3.6: Functions and Top-Down Design 
    • Write a complete program with functions that solve sub-tasks of a larger programming task.
    • Explain how functions are an example of abstraction.
    • Use a “top-down” problem-solving approach to identify sub-tasks of a larger programming task.
  • 3.7: APIs and Using Functions with Parameters
    • Use parameters to provide different values as input to procedures when they are called in a program.
    • Use API documentation to assist in writing programs.
    • Define an API as the set of commands made available by a programming language.
  • Unfinished work-- students were given a notecard with all missing work 
  • All work is due Friday, December 13th 

What We Plan to Do Next Week:

  • 3.8: Creating Functions with Parameters
  • 3.9: Looping and Random Numbers
  • 3.10: Practice PT: Design a Digital Scene 

All work due December 13th, 2019

All of the work for the semester is due Friday, December 13th.  If you have any unfinished work or work you'd like to resubmit it must be done by Friday, December 13th. Nothing will be accepted after the deadline for this semester's grades.  Be sure to check Infinite Campus for grades and let me know if you have any questions.  

Week of November 11, 2019: AP Computer Science Principles

What We Did:

  • 3.1: The Need for Programming Languages
    • Assess the clarity of a set of instructions expressed in human language.
    • Create a set of instructions in human language for building a simple LEGO block arrangement.
    • Identify connections between the ability to program and the ability to solve problems.
    • Describe the ambiguities inherent in human language and the ways programming languages seek to remove those ambiguities.
  • 3.2: The Need for Algorithms
    • Trace programs written in the "Human Machine Language"
    • Develop an algorithm to find the smallest playing card in a row of cards
    • Express an algorithm in the "Human Machine Language"
    • Identify the properties of sequencing, selection and iteration the "Human Machine Language"
    • Evaluate the correctness of algorithms expressed in the "Human Machine Language"

What to Work On:

  • 3.3: Creativity in Algorithms
    • Develop an algorithm to solve a new problem with playing cards
    • Express an algorithm in the Human Machine Language
    • Identify Sequencing, Selection and Iteration in a program written the Human Machine Language
    • Describe the properties of the Human Machine Language that make it a "low level" language.
  • Unfinished work
  • Code.Org lesson reflections
  • Khan Academy 

What We Plan to Do Next Week:

  • 3.4: Using Simple Commands
  • 3.5: Creating Functions
  • Homework: 3.6: Functions and Top-Down Design