Topics

Topic Filter

Topic Filter

Categories Filter

Categories Filter

Loading full-text search…

1.02 Variables and Data Types

Declare and use primitive types (int, double, boolean) to store different kinds of data.

1.03 Expressions and Output

Write arithmetic expressions following operator precedence and print results to the console.

1.09 Method Signatures

Identify return types, method names, and parameters from method signatures to understand what a method does and what it needs.

1.11 Math Class

Use Math.abs(), Math.pow(), Math.sqrt(), and Math.random() for calculations.

1.12 Classes & Objects

Understand that objects are instances of classes with data and methods.

1.15 String Manipulation

Create strings, concatenate them, and use methods like length(), substring(), indexOf(), and equals().

2.02 Boolean Expressions

Write yes or no questions in Java with the relational operators ==, !=, <, >, <=, and >=.

2.03 if Statements

Make one way and two way decisions with if and if-else, and see exactly which lines run.

2.04 Nested `if` Statements

Chain decisions with else if and put an if inside another if to handle three or more cases.

2.05 Compound Boolean Expressions

Combine conditions with &&, ||, and !, follow the precedence rules, and use short circuit evaluation safely.

2.06 Comparing Boolean Expressions

Prove two Boolean expressions are equivalent with truth tables and De Morgan's Laws, and compare objects correctly.

2.07 while Loops

Repeat code while a condition is true, trace loop control variables, and avoid infinite and off by one loops.

2.08 for Loops

Use the three part for loop header, convert between for and while, and count iterations exactly.

2.11 Nested Iteration

Put a loop inside a loop to build grids and patterns, and count exactly how many times the inner body runs.

2.12 Informal Run-Time Analysis

Count statement executions from loop headers, multiply nested counts, and compare which version of a loop does less work.

3.01 Abstraction and Program Design

Use data and procedural abstraction and break big behaviors into smaller methods to keep programs simple.

3.01 Variables and Assignments

Model a UESL game maker with variables, types and assignments in Python and College Board pseudocode.

3.02 Data Abstractions

Model a UESL game maker with lists, indices and data abstraction in Python and College Board pseudocode.

3.02 Impact of Program Design

Design reliable programs that guard against bad input, and weigh their social, ethical, and intellectual property impacts.

3.03 Anatomy of a Class

Break a class into instance variables, constructors, and methods, and choose public or private access for each.

3.04 Constructors

Learn what Java constructors are, why they exist, and how to write one to initialize objects.

3.04 Strings

An in-depth, three-cycle lesson on Python strings — indexing, slicing, methods, and formatting — framed as a signal-interception mission.

3.05 Boolean Expressions

Learn, trace, and apply Boolean expressions in Python through SFI backend validation.

3.05 Method Writing

Read method headers, write void and returning methods, and call them to check their results.

3.06 Conditionals

Build a condition out of a comparison, give every condition both answers, and order an elif chain so no branch is unreachable.

3.07 Nested Conditionals

Learn nested conditionals through student accounts, homework, meals, and sports.

3.08 Iterations

Use Python for loops, while loops, continue, and break to process repeated data.

3.08 Scope and Access

Know where a variable is visible, spot a shadowed instance variable, and use private fields with public accessors and mutators.

3.09 Developing Algorithms

Compare, trace, and build algorithms in Python and College Board pseudocode, using problems from our capstone nonprofit, Safe Passage Heals.

3.10 Lists

This is the comprehensive lesson for Big Idea 3.10, Lists. Made by Nitya Kasse, Vanshika Keswani, Hsu-Cheng Lin.

3.14 Libraries

Learn how to import and use Python libraries (modules).

3.15 Random Values

Generate, trace, and apply random values in Python through SFI backend QA testing.

3.17 Algorithmic Efficiency

Compare ways to find books and see how algorithmic work grows with a library catalog.

3.9 this Keyword

Teach about the this keyword in Java and how to use it in code.

4.01 Data Collection

Explore how data is collected, evaluate ethical tradeoffs, and consider privacy, consent, bias, and responsible data use.

4.03 Array Creation and Access

Create one-dimensional arrays, initialize values, access elements by index, and avoid invalid array positions.

4.04 Array Traversals

Learn to traverse arrays with for, while, and enhanced for loops while avoiding off-by-one bounds errors.

4.06 Using Text Files

Read and process text files with Java, handle lines of input, and close file resources safely.

4.07 Wrapper Classes

Use wrapper classes to convert between primitive values and objects, parse data, and work with useful constants and methods.

4.08 ArrayList Methods

Use ArrayList methods to add, remove, replace, access, and measure elements in a resizable collection.

4.09 Transversing ArrayLists

Traverse ArrayLists with index-based and enhanced for loops while safely accessing and updating collection elements.

4.13 Implementing 2D Algorithms

Implement 2D array algorithms — traverse a grid in row-major order, search for a value and its location, accumulate sums/counts/averages, and track a running maximum while walking the array.

4.14 Linear Search Algorithms

Implement linear search algorithms on arrays and ArrayLists — return the index of a match, search by condition instead of equality, respect a partially-filled array's true size, and reason about best/worst case.

4.15 Sorting Algorithms

Trace and implement sorting algorithms that arrange array values into ascending or descending order.

4.16 Recursion

Learn recursion through a mission countdown, call-stack tracing, factorial fuel calculations, and launch-code checksums.

4.17 Recursive Searching and Sorting

Apply recursion to searching and sorting problems by defining base cases, smaller subproblems, and results that combine while unwinding.

Account Creation

Learn how to create and manage course-required accounts, including a Portfolio Website, GitHub, Slack, and LinkedIn, while protecting your Personal Identifiable Information (PII).

Account Creation

Learn how to create and manage course-required accounts, including a Portfolio Website, GitHub, Slack, and LinkedIn, while protecting your Personal Identifiable Information (PII).

Agile Teams

Establishing Scrum Teams and programming habits in the classroom.

Anatomy of a Spring Boot Project

A discussion of key elements in a Java Spring Boot backend project. This includes preparing a project for deployment.

Anatomy of GitHub Pages

Learn the Files and development work flow of GitHub Pages. This includes working with you home page, theme, markdown, and more.

Anatomy of Python Flask

A discussion of key elements in a Python Flask backend project. This includes preparing a project for deployment.

API Controller

A short reference for Spring REST controllers and API endpoints.

Arrays

Learn about arrays in JavaScript, including how to create, access, and manipulate them.

Awareness

First line of defense from foreign invaders

Backend UI

An overview of backend UI for Flask Jinja

Bias Detector

Second line of defense from foregin invaders

Bias Sort

Final line of defense from foregin invaders

Big Six — Interactive World

An interactive game world covering all six Big Six lessons with NPC interactions and quizzes.

Booleans

An intro to booleans using Code Runner

Cookie Clicker Lesson

Choose what you want to learn about the workings of the Cookie Clicker game - how the local storage works, the OOP strucutre, or collaborative programming with your team.

D292 Task 4: Test Plan for an E-Learning Solution

Plagiarism lesson. Students will develop a comprehensive test plan to evaluate the effectiveness and usability of their e-learning solution, ensuring it meets learning objectives and user needs.

Data Abstraction!

How Data Abstraction is used in Programming

Deploy on AWS

This notebook will guide you step-by-step on how to configure your AWS instance and run Docker container in order to deploy your backend.

Flask Apis

Introduction to APIs and how to use them with flask + activity

Friends of the Poway Library 2026–27

CSP 2026–27 capstone continuing the Friends of the Poway Library prototype with a searchable bookstore catalog, events, newsletters, volunteer and donation pathways, community history, and library-themed games.

Frontend UI

A short reference for connecting a frontend to Spring Boot.

Functions

This lesson explains JavaScript functions.

GitHub

This guide will assists as we work through the class together — this is not comprehensive as we will evolve on GitHub collaboration together!

GitHub Pages

This page will teach you how to set up GitHub Pages using the VSCode online editor.

GitHub Pages Hacks

Objective is to be able to work fully with Notebooks, Submenus, and Anatomy to create your own personal interest blog.

Hints

Submodule 2 of Hints Mini-Quest

Hints

Submodule 2 of Hints Mini-Quest

HTML, CSS, and JS Kernels

This page will teach you how to use HTML, CSS, and JavaScript kernels in Jupyter Notebooks.

Iterations

An intro to iterations using Code Runner

Java Kernel

This page will teach you how to set up your Java kernel in Jupyter Notebooks.

Java Spring Hacks - Sprint 1 Final

Full-stack project using Spring Boot API, JPA, and POJO backed by your OCS system ideation. Individual project, team integration.

Jekyll Themes - Deep Dive

Builds upon the first lesson of Jekyll Themes to ensure understanding, and has questions to test your knowledge,. Jekyll Themes willbe crucial, so it is important to understand it.

Learning Habits

Establishing pair/trio learning habits in the classroom. This will extend to other forms of collaboration, such as group work and team projects.

Lesson Planning

Review this outline as a guide to assist in planning and teaching JavaScript lessons.

Live Review (Pair/Trio/Group)

Anytime during a Sprint is an opportunity to showcase accomplishments to the teacher. Each week there is a formative Checkpoint meeting, the last week of the Sprint includes a summative live review meeting.

Los Angeles

Submodule 2 of Backend Development Mini-Quest

Mathematical Expressions in JavaScript

Read, write, and evaluate JavaScript mathematical expressions with operators, variables, precedence, and comparisons. Created By Adeeb, Rithvik, Ahmad, and Joseph.

Media Literacy Vault

Enter the vault code with numbers gathered through the mission to get your Media Literacy certificate

Microblog Article

A new way to have others engage with your articles through microblogging.

Nested Conditionals

Learn about Nested Conditionals using Code Runner

Object Literals

Learn about Object Literals and how they can be used in games.

OCS Assignments System

Students are extending the OCS assignment lifecycle from creation through submission, analytics, and grading. The system supports inserting rubrics directly into assignments, providing immediate AI evaluation, and assigning student-generated lessons for peer review and grading. After initial automated evaluation, live review sessions follow, allowing students and graders to discuss challenges, successes, and the work. A grader assignment view supports this process by giving graders a place to review submissions, record observations, and provide an overall assessment. The work integrates OCS interfaces with the Java/Spring backend, AWS S3, and AWS RDS/SQL, moving assignment data, student activity, scores, and feedback into a shared system rather than separate tools and spreadsheets.

OCS Grid Grammar

Lay out lab data with the OCS grid grammar so it is responsive and theme aware, without writing any CSS.

Oncology and Kids

Capstone project creating an interactive and educational website for cancer patients and families, with community support, learning modules, and games.

Operating System and Tools Setup

Significant setup is required for development tools to support the Operating System, JavaScript, Python, Java, Jupyter Notebooks, and more. This is the first step in the development process.

Plagiarism TDD plan and ceremony (Sample)

In the Plagiarism Prevention Quest we will use Test-Driven Development (TDD) and enable a Feedback Plan, Ceremony to introduce a "Quest sytle" project. Student will have similar Test ceremony at N@tM for their projects.

Pong Game Development Masterclass - Debugging

Master Game Development with Interactive Pong - Learn Canvas API, Game Loops, and Advanced JavaScript - Task

Poway Scripps Rotary Club

CSP capstone helping the Poway Scripps Rotary Club improve their website with cleaner UI, galleries, and improved navbar and search features.

Poway Veterans Organization 2026–27

CSP 2026–27 capstone continuing the Poway Veterans Organization redesign with guided assistance, volunteer onboarding, an AI support chatbot, and accessibility-first improvements for veterans and community members.

Python Kernels

This page will teach you how to use Python kernels in Jupyter Notebooks.

Python/Flask Backend Infograph

As your development journey continues, it's time to go behind the scenes. Flask is a lightweight, flexible web framework for Python that makes it easy to build web applications and APIs. Unlike larger frameworks.

Python/Flask Backend Infograph

As your development journey continues, it's time to go behind the scenes. Flask is a lightweight, flexible web framework for Python that makes it easy to build web applications and APIs. Unlike larger frameworks.

Python/Flask Backend Infograph

As your development journey continues, it's time to go behind the scenes. Flask is a lightweight, flexible web framework for Python that makes it easy to build web applications and APIs. Unlike larger frameworks.

San Diego

Stop 1: San Diego — “Connecting to the Data Field”

San Francisco

Submodule 3 of Backend Development Mini-Quest

SASS Buttons Grammar

Explore the Open Coding Society button grammar through living examples.

SASS Inputs

Learn the OCS SASS input grammar and refactor hardcoded input styles into reusable classes.

SASS Toggles

Explore SASS syntax for toggles and learn what they are.

Seattle

Submodule 4 of Backend Development Mini-Quest

Seattle

City Four of Food - Seattle

Setting up utterances

Learn how to set up utterances for your blog. Utterances is a tool that allows you to have comments on your blog posts.

SFI Foundation 2026–27

CSP 2026–27 capstone continuing the SFI Foundation prototype with searchable motorsports safety standards, ML-assisted discovery, equipment detection, personal gear tracking, and staff tools.

Strings

Strings using Code Runner

Submodule 1

Key 1 of AI Usage Mini-Quest about AI functionality

Submodule 2

Submodule 2 of AI Usage Mini-Quest

Submodule 3

Submodule 3 of AI Usage Mini-Quest about Prompt Engineering

Submodule 4

Submodule 4 of AI Usage Mini-Quest

Submodule 4

Submodule 4 of AI Usage Mini-Quest of Generating the Itinerary

Tools and Equipment Setup

Tech has reshaped our lives, from the internet to the smartphone in your pocket, or the advent of AI. This course is opening new technology possibilities by equipping you with the developer tools that are the keys to boundless technology possibilities.

Tools and Equipment Setup

Tech has reshaped our lives, from the internet to the smartphone in your pocket, or the advent of AI. This course is opening new technology possibilities by equipping you with the developer tools that are the keys to boundless technology possibilities.

Tools and Equipment Setup

Tech has reshaped our lives, from the internet to the smartphone in your pocket, or the advent of AI. This course is opening new technology possibilities by equipping you with the developer tools that are the keys to boundless technology possibilities.

Tools and Equipment Setup

Tech has reshaped our lives, from the internet to the smartphone in your pocket, or the advent of AI. This course is opening new technology possibilities by equipping you with the developer tools that are the keys to boundless technology possibilities.

Truth Scanner

Third line of defense from foregin invaders

Unit 2 FRQ Practice

Write AP style methods that use selection and iteration, check them against built in tests, and learn what the FRQ rubric rewards.

Unit 2 Quiz

Sixteen multiple choice questions covering Boolean expressions, selection, iteration, String algorithms, nested loops, and run-time analysis, plus two coding challenges.

Unit 3 Quiz

Test your Unit 3 knowledge of class design, constructors, methods, object references, and scope.

Variables

HTML Domain and Variables lesson

VSCode Setup

A key to learning in this class is understanding how to make a GitHub Pages project. This guide will setup and run the project. At the end, you will have a portfolio Website that can be used for blogging classroom learnings and progress.

Work Submission & Grading System

An AI-graded pipeline (Gemini API) for MC, FRQ, and GitHub Issue submissions, storing every score and feedback the way the existing game-submission spreadsheet does today, in a database admins can browse.