Back

Create Performance Task — Lesson 1

divider

Introduction

This lesson introduces the AP CSP Create Performance Task (Create PT) with one goal: clarity. Students should leave understanding what the task is, what must exist in their code, and why simple + explainable beats impressive + confusing.

Create Performance Task

Lesson 1: What AP Actually Wants

Today’s goal: remove confusion, reduce anxiety, and make the task feel doable.

Today’s Plan

  • What the Create PT is (plain English)
  • What you submit
  • The Big Three required code elements
  • What doesn’t matter as much as you think
  • What counts as input
  • A minimum-viable mental model
  • Exit check

What is the Create PT?

You will build a small program of your choice and explain parts of it to prove you understand core computer science ideas.

This is an evidence task — not an “impress the grader” contest.

What You Submit

  • Program Code (your proof)
  • Video (shows input → output)
  • Written Responses (explain how your code meets requirements)

The grader typically does not run your program. They score based on what you clearly show and explain.

What the Grader Actually Sees

  • Your video
  • Your written responses
  • Your code

So your job is to make your evidence easy to find.

The Big Three Your Code Must Include

  • 1) A List (stores related data in a way that matters)
  • 2) A Student-Developed Procedure with a parameter
  • 3) An Algorithm inside that procedure with:
    • Sequencing
    • Selection (if)
    • Iteration (a while loop)

One strong procedure can satisfy multiple requirements.

Lists That “Count”

Counts when…

  • It stores multiple values over time
  • You use it meaningfully (read + update)
  • The program would be worse without it

Often doesn’t count when…

  • You use it once and forget it
  • It only holds one value
  • It could be replaced with 2–3 simple variables

Procedures That “Count”

  • It must be student-developed (not built-in)
  • It must have at least one parameter
  • It should do real work (not just “print one thing”)
  • It must be called in your program

Parameters help prove your procedure can handle different inputs.

What AP Means by “Algorithm”

AP’s algorithm requirement is about proving you can write logic — not about advanced math.

  • Sequencing: steps in order
  • Selection: decisions using if
  • Iteration: repetition with a while loop

The algorithm should live inside your procedure.

What Counts as “Input”?

Input is data that comes from outside the program and affects what it does.

  • Typing into a prompt or text field
  • Clicking a button / selecting a choice
  • Data from a file/dataset or sensor

For our “complete” demo today, we’ll use prompt().

What Doesn’t Matter as Much as You Think

Students over-focus on…
  • Fancy UI / graphics
  • Huge codebases
  • Complicated games
  • Extra features “just because”
What actually helps…
  • Easy-to-find evidence
  • Clear input → processing → output
  • One meaningful list
  • One strong procedure + algorithm

Simple and explainable beats impressive and confusing.

Minimum-Viable Mental Model

Example concept: Quiz / Survey Analyzer

  1. User responds to questions (input)
  2. Store responses in a list
  3. Call a procedure(parameter) to analyze
  4. Inside the procedure: while loop + if (algorithm)
  5. Display a result (output)

Micro-Activity (3–5 min): Evidence Spotting

With a partner, answer:

  • What could the list store in the quiz example?
  • What could the procedure parameter be?
  • Where would the while loop and if naturally happen?

You are not writing code yet — just locating evidence.

Common Traps (Preview)

  • Procedure has no parameter
  • List is used once and forgotten
  • Algorithm exists, but not inside the procedure
  • Video doesn’t clearly show input and output

Next lesson: “counts” vs “looks like it counts.”

Exit Ticket

Answer one prompt in 2–3 sentences.

Exit Ticket
Pick ONE to answer:
1) In your own words: what is the purpose of the list in a Create PT program?
2) Why does AP require a procedure with a parameter?
3) Name one thing students often overdo on the Create PT that doesn’t help their score.

'F' → Fullscreen

Objectives

  • icon Describe the Create Performance Task in plain English
  • icon Identify the Big Three required code elements (List, Procedure, Algorithm)
  • icon Explain what “input” means in a Create PT program
  • icon Recognize common Create PT traps before they happen
divider

Activity Tasks

  • icon During the micro-activity slide, write down your team’s answers for: list idea, procedure parameter, and where the while loop + if would go.
  • icon Complete the exit ticket (Slide 15) and submit it in your LMS / on paper.

Activity Extension: Minimal Example (Optional, 10–15 min)

If time allows, review the short example program below. This version includes real user input using prompt() and uses only while loops. Your goal is to identify exactly where each Create PT requirement appears.

Example Program (with input + while loops)

demo.js
// Create PT "Minimum Viable" Example (concept demo) — with input + while loops only
// LIST: stores user answers over time
let answers = [];
// INPUT: collect 3 answers from the user
let i = 0;
while (i < 3)
{
let response = prompt("Question " + (i + 1) + ": Type yes or no").toLowerCase();
answers.push(response);
i++;
}
// PROCEDURE (student-developed) with a PARAMETER
function analyzeAnswers(answerList)
{
let score = 0;
// ITERATION (while loop)
let index = 0;
while (index < answerList.length)
{
// SELECTION
if (answerList[index] === "yes")
{
score++;
}
index++;
}
// OUTPUT (return value)
return score;
}
// CALL THE PROCEDURE
let result = analyzeAnswers(answers);
// OUTPUT
console.log("You answered 'yes' this many times:", result);

Checklist

Where’s the Evidence?
✅ INPUT: prompt() gathers data from the user
✅ LIST: answers stores user responses over time
✅ PROCEDURE with PARAMETER: analyzeAnswers(answerList)
✅ ALGORITHM in the procedure:
- Sequencing (steps in order)
- Selection (if)
- Iteration (while loop)
✅ OUTPUT: console.log displays the result
  • icon Write the name of the list and the name of the procedure from the example.
  • icon Circle the line(s) that show selection and the line(s) that show iteration.
  • icon Underline the line(s) that show input and output.

Optional Homework: Safe Program Ideas

  • icon Write 2–3 program ideas that fit: input → list → procedure(parameter) with while loop + if → output.
divider

Reflection Questions

  1. Why might a “simple but clear” program score better than a “big but messy” program?
  2. Which of the Big Three (List, Procedure, Algorithm) do you feel most confident about right now? Which feels the most confusing?
  3. In your own words, what does it mean to “make the evidence easy to find” for a grader?
divider

Submission

Submit your exit ticket response (and the optional extension notes if assigned) to the appropriate dropbox.

Lesson Complete