Computer Science Pinciples


Sprint1: Tools and Software Development Processes

By the end of Weeks 0-3, students will have gained practical experience in blogging, coding with Jupyter Notebooks, and GitHub Pages; learning will begin with Linux, Python, Markdown, HTML, and JavaScript. Students will establish a foundation using essential tools and software development processes to support their coding journey.

Illustration
    

+-----------------+ | Laptop, OS | | Tool Setup | +-----------------+ | | VS Code, Markdown, Jupyter Notebook (.ipynb), JavaScript (.md, .html) v +-----------------+ | VS Code, Develop| | Code Editor | +-----------------+ | | Write code, make, run localhost, test, debug v +-----------------+ | VS Code, Git | | Version Control | | +-----------------+ | | Commit local versions, comment, track changes v +-----------------+ | VS Code, Project| | GitHub Sync | +-----------------+ | | Push changes to cloud Repository v +-----------------+ | GitHub, Collab | | Shared Code | +-----------------+ | | Review Actions, Jekyll build v +-----------------+ | GitHub Pages | | Showcase Project| +-----------------+


Week Code, Code, Code Tools and DevOps Collaboration
0 - Tools and Equipment Overview
- Build a Student Page
- Pair Programming
1 - Presentation Plan
- Linux Shell and Bash
2 - JS Calculator
- Digital Divide
- Crowdsourcing
3

Sprint2: Web Development Layers

During Weeks 4-7, students will delve into the layers used in Web Development. They will learn about the key components that make up websites, including the Frontend, Backend, and Data layers. The main focus of this Sprint is to empower students to explore the development and deployment of a simple website. Throughout this period, there will be several lectures that provide ideas and concepts on how to build different components of a website, including sending and receiving data from a backend server.

Illustration
    

+---------------+ | GitHub Pages | | Design, Layout| | Frontend | +---------------+ | | User presentation, style | Actions v +--------------+ | JavaScript | | Logic/Events | +--------------+ | | JS Functionality, interactivity | Sends API request/response v +----------------+ | AWS EC2 Server | | Python / Flask | | Backend | +----------------+ | | Python Server-Side Processing | Analysis, Computation, and Models | Communicate with Data Services v +----------------+ | AWS Services | | Store Data | +----------------+


Week Code, Code, Code Tools and DevOps Collaboration
4 - Legal and Ethical Concerns
- Agile Methodology
5 - JS Itunes API
- 2.1 Binary
- Flask/Python Repo and App
- 1.1-1.4 Team Test
- Student Teaching Tri1
6 - JS Basics
- Python/Flask User Database Introduction
- JS Basics Test
- Passion Project Tri1
7 - Alien World Background
- Algorithms
- Boolean If
- PP Ideation CheckPoint

Sprint3: Web Application, Data, and N@tM

Student teams need to build their own Website, and individuals need to blog their learnings. The team Website should include interests but also requires the use of Python Flask and JavaScript programming. By the end of the Sprint, students will be ready to start many of the technical coding aspects of Web Development; having established a Deployed Website, Frontend, and Backend. In November, the Trimester will end by presenting the team project at the Electives Department "Night at the Museum" (N@tM).

Week Code, Code, Code Tools and DevOps Collaboration
8 - Data Abstractions
- P1 Iteration
9 - Developing Algoritms
- List and Search
- API, Data Strategies
10 - Developing Procedures
- Libraries
- Simulations
11 - Passion Project - My Contributions
- College Board Learning and Corrections
- My Understanding of Psuedocode
12

Sprint4: Warm-up Data Abstraction Project, Computer Systems, Networks, Impact of Computing

Trimester 2 will begin with a Mini-project, CPT warmup. Great projects begin with frontend style. This project will focus on frontend; using SASS, JavaScript, interacting with user events, and representing Binary Algorithm(s). Student Teaching during this period will be preparing for College Board MCQ.

Week Code, Code, Code Tools and DevOps Collaboration
13 - Binary Logic | CPT | Requirements
14 - Big Idea 4.1 The Internet
- Big Idea 4.2 Routing | 4.3 Computing
- P5 The Internet
- P5 Routing and Computing
15 - 4.2 & 4.3 Routing and Computing
- Big Idea 5.1 Beneficial and Harmful Effects
- Big Idea 5.2 Digital Divide
- Benefitial and Harmful Effects
- InternetLesson
16 - Binary Logic | Key Indicators | Retrospective
- Big Idea 5.3 Computing Bias
- Big Idea 5.4 Crowdsourcing
- Computing Bias

Sprint5: Create Performance Task (CPT) kickoff, CPT design and development

Trimester 2 continues with CPT project design and development. The big focus is on frontend/backend for data, databases, and login.

Week Code, Code, Code Tools and DevOps Collaboration
17 - Innovation, CPT Project
- Big Idea 5.5 Legal and Ethical Concerns
- Big Idea 5.6 Safe Computing
- Safe Computing
18 - JWT Login (python/flask)
- Database CRUD Operations
19 - Python/Flask Model, Tools, Jinja2
- Introduction to SASS
20 - SASS Javascript Login and Signup Page
21 - Logic Gate Game

Sprint6: N@tM and Create Performance Task (CPT) video and presentations. MCQ Exam Practice.

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

Week Code, Code, Code Tools and DevOps Collaboration
22 - Course Descriptions
23
24 - Individual Seed

Sprint7: Data Structures and Data Science

This is the beginning of a college course following the 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 Code, Code, Code Tools and DevOps Collaboration
25
26 - MCQ 2020 Frequently Missed Questions
27
28
29

Sprint8: 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 Code, Code, Code Tools and DevOps Collaboration
30 - Plans for features for collegeboard submission
31
32 - Collegeboard MCQ 2021

Sprint9: 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 Code, Code, Code Tools and DevOps Collaboration
33 - Plans for features for collegeboard submission
34 - Algo-rythmic Dance
35
36 - Fantastic Data-Structure Blog