AP Computer Science Principles Syllabus
Ms. Boyce Room 201 email: firstname.lastname@example.org
AP 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. With a unique focus on creative problem solving and real-world applications, AP Computer Science Principles prepares students for college and career.
This course focuses on seven Big Ideas that students will be tested on for the AP exam in May:
- Data and Information
- The Internet
- Global Impact
- Wired headphones or earbuds
- Student issued chromebook & charger
- Wireless or wired mouse (recommended)
- Beauty and Joy of Computing curriculum (bjc.edc.org)
- Snap! (snap.berkeley.edu/run)
Students will be graded on a combination of lesson activities, homework, projects, quizzes and tests.
The formula for grades: Points Earned/Points Possible = Grade
A= 90-100 B= 80-89 C= 70-79 D= 60-69 F= 0-59
There are two components that make up students’ grade on the AP Exam. One performance task and a multiple choice exam.
- Create applications from ideas performance task (30%)
- 74 question multiple choice exam (70%)
*A student’s AP score does not count toward their final grade in this course.
(1) Your Canvas page is broken down by modules. You may have multiple weeks in one module. Become familiar with your Canvas page. All assignments and lessons for the week will be posted by Monday morning (with a few exceptions) for your review. (2) Read the Weekly Overviews. This will alleviate many of your questions and will let you know the expectations for each day. (3) Utilize the question forums for clarification.
Virtual Class Meetings
It is very important that you attend virtual class meetings. For this class, we will use Canvas Conference until communicated otherwise. Be logged into our scheduled class meeting within the first five minutes of class. Content and duration of meeting will vary. Additional assignments may be made available to you only during our livestreams. Watch for Announcements in Canvas for virtual meeting updates.
Tests & Exams
An access code will be required for tests and exams. There may also be a limited window of time these assessments are available.
Absences and Missed Work
Since the entirety of this class is posted in Canvas, missed work due to absences is not a thing. All assignments are posted in Canvas and due dates are communicated in both written and verbal form way in advance of the due date.
Due dates are attached to every assignment in Canvas. I typically have “bulk” due dates where activities are all due at the end of the week. Extensions and late penalties are at my discretion, however, the student must communicate this to me in advance of the due date. No work will be accepted after we finish with the coinciding unit (see above for missed work policy).
There are a few assignments that require phone use, such instances will be clearly communicated to the student. Otherwise, phones should be put away in a book bag or purse before the bell rings. Phones should NEVER be on the table or in your lap. Students not adhering to this policy will have their phone confiscated and returned at the end of class for the first offense. Please reference the student handbook if you have any questions.
Use of the computer lab is a privilege. Students are expected to handle laptops and other equipment with care.
Food and Drink
Food and beverages are NOT permitted in the computer lab. Water may be had and placed on the floor with a secure lid. No liquid of any kind should be placed on the tables or near the computers.
Unit 1: Introduction to Programming
Students develop an interactive game they can install on their phones, generate a conversation between animated characters, create abstract art, and explore storytelling animation through sprite interaction (AAP); and in doing so, they learn to use pair programming and to create program documentation. (CRD) Students also investigate legal and ethical issues that arise in computing—especially with regard to data collection and privacy (IOC).
Unit 2: Abstraction
Students implement an algorithm for a guessing game using local and global variables; use abstract data types and list traversal to build a quiz app; create predicates to filter lists in order to solve a crossword puzzle; and use the modulus function and a higher order function to code mathematical functions (AAP). Students also investigate the history, purpose, laws, evolution, and enforcement of copyright (IOC).
Unit 3: Data Structures
Students explore complexity in a variety of contexts (maze navigation, fractal art, tic-tac- toe); use nested abstract data types and data I/O to develop a contact list app; and consider the beneficial and harmful impacts of robots and AI (CRD, AAP, IOC).
Practice AP Create Task
Students create a project of their own choosing as practice for the AP Create Task. They select and use a development process, plan and code their program, test their program for errors, write about their development process, and acknowledge any code developed by other people (CRD).
Unit 4: How the Internet Works
Students learn about how the Internet works, the benefits and vulnerabilities of fault- tolerant systems; cybersecurity practices such as public key encryption and individual level practices and software to keep data safe; digital data representation including binary representation; compression algorithms (CSN, IOC, DAT). They also consider the impact of the Internet on human communication and the workplace (CRD, IOC).
Unit 5: Algorithms and Simulations
Students learn about program efficiency through exploration of the binary and linear search algorithms; learn about sequential, parallel, and distributed computing and determine the contexts in which each are most useful; consider the contexts in which simulation is useful and implement a simple simulation; use Snap! data tools to generate knowledge from data (AAP, CSN, DAT).
AP Create Task
Students complete the AP Create Task (12 hours in class). Note: Units 1-5, the Practice Create Task, and the Create Task cover the CSP curriculum framework. Units 6-8 contain additional material that’s important to BJC including the abstraction hierarchy of how computers work, recursion and functional programming.
Unit 6: How Computers Work
Building on their understanding of abstraction and the way computers store data, students learn about the computer system abstraction hierarchy, with application software on top and transistors at the bottom.
Unit 7: Fractals and Recursion
Students deepen their experience with recursion and functional programming through drawing projects that use recursive commands, mainly fractals.
Unit 8: Recursive Functions
Students extend their understanding of abstraction and recursion through exploration of recursive functions: sorting lists (both selection sort and partition sort), Pascal's triangle, converting numbers to and from binary, finding the subsets of a set, and building several higher order functions from scratch.
The syllabus page shows a table-oriented view of the course schedule, and the basics of course grading. You can add any other comments, notes, or thoughts you have about the course structure, course policies or anything else.
To add some comments, click the "Edit" link at the top.