Computer Science Lab Notebook
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 foundation using essential tools and software development processes to support their coding journey.
Illustration
+-----------------+ | Laptop, OS | | Tool Setup | +-----------------+ | | VS Code, Anaconda, Jupyter, Python v +-----------------+ | VS Code, Develop| | Code Editor | +-----------------+ | | Code, build, test, debug v +-----------------+ | VS Code, Git | | Version Control | | +-----------------+ | | Commit local versions, track change v +-----------------+ | VS Code, Project| | GitHub Sync | +-----------------+ | | Push changes to cloud Repository v +-----------------+ | GitHub, Collab | | Shared Code | +-----------------+ | | Actions, Jekyll build v +-----------------+ | GitHub Pages | | Showcase Project| +-----------------+
Week | Code, Code, Code | Tools and DevOps | Collaboration |
---|---|---|---|
0 | |||
1 | |||
2 | |||
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 Proccessing | Analysis, Computation, and Models | Communicate with Data Services v +----------------+ | AWS Services | | Store Data | +----------------+
Week | Code, Code, Code | Tools and DevOps | Collaboration |
---|---|---|---|
4 | |||
5 | |||
6 | |||
7 |
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 team project at the Electives Department "Night at the Museum" (N@tM).
Week | Code, Code, Code | Tools and DevOps | Collaboration |
---|---|---|---|
8 | |||
9 | |||
10 | |||
11 | |||
12 |
Sprint4: 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 | Code, Code, Code | Tools and DevOps | Collaboration |
---|---|---|---|
13 | |||
14 |
- P1 The Internet - P1 Fault Tolerance & Parallel and Distributed Computing |
||
15 |
- P1 Beneficial and harmful effects - P1 Digital divide |
||
16 |
- College Board MCQ Corrections |
- P1 Legal and Ethical Concerns - P1 Computing Bias - P1 Undecidable Problems - P1 Crowdsourcing |
Sprint5: 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 | Code, Code, Code | Tools and DevOps | Collaboration |
---|---|---|---|
17 | |||
18 | |||
19 | |||
20 |
- Trimester 2 Individual Review |
- Login Verification - Login - Sign up page |
Sprint6: 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 | Code, Code, Code | Tools and DevOps | Collaboration |
---|---|---|---|
21 | |||
22 | |||
23 | |||
24 |
Sprint7: 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 | Code, Code, Code | Tools and DevOps | Collaboration |
---|---|---|---|
25 |
- College Board MCQ Corrections - ML, Titanic Data - Individual Seed |
||
26 |
- MCQ 2020 Frequently Missed Questions - Data Structures Write Up |
||
27 | |||
28 |
- Night @ The Museum Project Timeline (Trimester 3)! |
||
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 | |||
31 | |||
32 |
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 | |||
34 | |||
35 | |||
36 |