Computer Science Principles


Unit1: Introduction to Tools and Resources

The initial weeks focus on introducing Tools, Pair Programming, and the AP Resources that we plan to use throughout the year. At the end of Weeks 0-3, students will be exposed to blogging with GitHub Pages; developing with Jupyter Notebooks, Python, JavaScript, HTML, and Code.org AppLab; working with AP classroom and becoming familiar with Create Performance Task project requirements.

Week Plans Hacks(Todo) Tangibles
0 - Tools Setup
- Linux Shell and Bash
- VSCode, Python, Jupyter, ...
- Linux Shell and Bash
- College Board Pseudo Code
- Lists and search
1 - GitHub Pages
- Student GitHub Pages
- Just a quiz me and saaras made
- What we learned
2 - Plan for week 2
- Java Calculator
- Classic Snake Game
- Python tips and tricks for week 2
- JS Output w/ jquery
- What we learned
3 - Plan for week 3
- Python VCF parser code
- Killua
- LD_Preload trick 😈
- Tic Tac Toe Game
- Tangibles Week 3

Unit2: Introduction to Web Development

Websites are made up of several key parts. Frontend, Backend, Data and Deployment. The focus for these weeks is to enable students to perform the aspects of constructing and deploying a simple Website. There will be several lectures during this period to provide you with concepts on how to build a WebSite, including working with data from a backend server.

Week Plans Hacks(Todo) Tangibles
4 - CSP team test
5 - Web Programming Basics
- Python flask backend
- Tangibles Week 5
6
7 - 2.2 Data Compression, Images
- Homework problems Data Abstractions
- P2 Algorithms

Unit3: Web Application, Data, and N@tM

Student at teams need to build their own Website and Blog their understanding. The Website should include their own interests, but requires use of Python Flask and JavaScript programming. By the end of the Unit, students will be ready to start many of the technical coding aspects of Web Development, having established a Deployed Website. In November, the Trimester work will end with a project and student participation in Electives Department "Night at the Museum" (N@tM).

Week Plans Hacks(Todo) Tangibles
8 - Iteration Lesson
- Boolean Hacks
9 - Developing Algorithms
10 - Week 10 plans
- Developing Procedures
- Student Lesson Python Libraries
- Individual Review
- Quiz Corrections
11
12

Unit4: Algorithmic Programming

Trimester 2 begins with student teaching and a focus on algorithms. Each week a "Student Team" has a teaching assignment supported by College Board materials. Additionally, the Teacher is providing Career Tech mini-labs that correspond to one or more topics for the week. Use the two things together as you improve your learning experience, Frontend blog and Jupyter Notebooks.

Week Plans Hacks(Todo) Tangibles
13 - Computing Bias
- Student Teach - Legal and Ethical Concerns of Technology
- 4.1 - The Internet
14 - 5.1 Big Idea Beneficial and Harmful Effects Student Lesson
15 - 5.2 Digital Divide Student Lesson
16 - 5.4 Crowd-sourcing
- Quiz Corrections

Unit5: OOP and Databases

Trimester 2 continues with student learning OOP and immediately applying it to Databases. Each week a "Student Teams" will be working on frontend and backend elements for their Create Performance Task (CPT). GitHub pages will be focus of instruction for frontend, OOP in Python will be instruction provided to create a database which will help exceed every CPT requirement.

Week Plans Hacks(Todo) Tangibles
17
18 - Student Teach - SASS
19 - Night At the Museum
20 - Final Individual Review

Unit6: Create Performance Task (CPT) and N@tM

Trimester 2 concludes with student presenting their CPT project at N@tM. Each person within "Student Teams" will have their own specialty within the student project that satisfied all their Create Performance Task requirements. Student should be able to talk about design, coding, and present features of their portion of the system.

Week Plans Hacks(Todo) Tangibles
21
22
23
24

Unit7: Data Structures

This is the beginning of a college course following outline of CS113 Data Structures from Mira Costa CC. Topics, using Python, include searching, sorting, hashing, algorithms, analysis, object-oriented design, collections, lists, stacks, queues, trees, sets, dictionaries, and graphs.

Week Plans Hacks(Todo) Tangibles
25 - Individual Seed
- Team Seed
26 - MCQ 2020 Frequently Missed Questions
- MCQ missed questions
27
28 - Algorthmic Rhythm
29

Unit8: AP Weeks

Activities will be focused on supporting students in test preparations, including student teaching. Days that are not focused on test preparation will be focused on planning for year end project/portfolio.

Week Plans Hacks(Todo) Tangibles
30 - Data Structures
31
32

Unit9: Passion Project and N@tM

Presenting accomplishments for the year by creating a passion project for N@tM. This project will serve as the year end final exam.

Week Plans Hacks(Todo) Tangibles
33
34
35
36