(APCSP) AP Computer Science Principles Practice Test

โ–ถ

What Is the APCSP Create Task?

The AP Computer Science Principles Create Performance Task is worth 30% of your AP score. It's not a test you sit for on exam day โ€” it's a project you complete independently and submit for scoring. The College Board uses your project and a written response to evaluate your programming skills and your ability to explain your own code.

The Create Task requires you to design and build a program that solves a problem, creates something interesting, or does something useful. You write the code, then you answer written prompts explaining what the program does, how a specific algorithm works, and how you developed and tested it. College Board scorers evaluate your submission against a detailed rubric โ€” and the rubric doesn't care how impressive your project looks. It cares about whether your code and your explanations meet specific criteria.

Choosing the right Create Task idea makes everything easier. The wrong idea โ€” too simple, too complex, or not yours โ€” creates problems that compound as the deadline approaches. Here's how to pick a topic that works.

What Makes a Good APCSP Create Task Idea

Before we get to specific ideas, you need to understand what the scoring rubric actually evaluates. There are six row criteria:

Good Create Task ideas are ones where you can naturally and authentically hit all six rows. Ideas that are too simple often fail on managing complexity (the list doesn't actually simplify anything). Ideas that are too complex run over the two-hour time limit. The sweet spot is a program with moderate complexity that naturally requires a list, a procedure with a parameter, and some decision logic.

Start Free APCSP Practice Test

APCSP Create Task Ideas That Work Well

Here are categories of projects that tend to score well, along with the reasons each works:

Quiz or trivia game. A quiz application is one of the most reliable Create Task ideas. You store the questions and correct answers in a list. You write a procedure that takes a question index as a parameter and displays the question (that's your parameterized procedure). You use iteration to loop through questions and selection to check whether the answer is correct. Testing is straightforward: you can test with a correct answer and an incorrect answer as your two cases. This covers all six rows naturally.

To-do list or task tracker. Users can add items, mark them complete, and view their list. The list is your data structure. A procedure to add or display items takes the item or index as a parameter. You use iteration to display all items and selection to check whether an item is complete. This is clean, testable, and has clear purpose.

Simple calculator or unit converter. A multi-function calculator (scientific calculator, unit converter between different types) is a solid choice if you add a list of conversion factors or operation names. The list part is slightly less natural here, so make sure you're using a list of values that the program actually iterates through โ€” not just storing them as variables.

Text-based adventure game. A choose-your-own-adventure style game works well. Store the story choices and outcomes in a list. Write a procedure that takes a choice as a parameter and determines the outcome. You'll have natural selection (branching story paths) and you can demonstrate testing by showing two choices that lead to different outcomes.

Grade calculator or GPA tracker. If you're good with numbers, a grade calculator that accepts assignment scores (stored in a list), computes averages, and outputs letter grades covers all the criteria. A procedure that takes a list of scores and returns the average is your parameterized procedure. Selection handles grade thresholds. Testing is easy: one input that produces a passing result, one that fails.

Simple inventory or collection tracker. A program that tracks a collection (books, video games, music) where users can add items, search, or filter. The collection is stored in a list. A search or filter procedure takes a search term as a parameter. Iteration goes through the list; selection finds matches.

Password strength checker or text analyzer. A program that takes user text input and analyzes it โ€” checking password strength, counting word frequency, or finding patterns. Store the criteria or words in a list. Write a procedure that takes a string as a parameter. This often demonstrates algorithm logic clearly, which helps on the algorithm implementation row.

Ideas That Commonly Fail โ€” And Why

Avoid these pitfalls when choosing your topic:

Projects without a meaningful list. If your program doesn't naturally use a list, you'll force one in awkwardly โ€” and scorers can tell. Every program that uses a list must use it to accomplish something the program actually does. A list of colors you never iterate through doesn't count.

Copying from a tutorial. The Create Task requires the code to be substantially your own. Programs that closely follow a tutorial โ€” even if you type them yourself โ€” run the risk of being flagged. The video and written responses also require you to explain the code in your own words; if you didn't write it yourself, that's hard.

No visible functionality. Your video must show the program running and doing something. A program that's mostly backend logic with no visible output is hard to demonstrate. Make sure there's something to show.

Projects that are too ambitious. You have a limited amount of time, and the task must be completed independently. An AI-powered game engine or a full web application backend is out of scope. Keep it to a program that you can realistically build, debug, and explain completely.

How to Turn an Idea Into a Scored Submission

Once you've chosen your idea, map it to the rubric before you write a line of code. Ask yourself:

  1. What list will I use, and how does it make my program simpler?
  2. What parameterized procedure will I write? What does the parameter change about what it does?
  3. Where are the sequencing, selection, and iteration in my procedure?
  4. What two test inputs will I use, and what are the expected outputs?

Write these answers down. This isn't just a planning exercise โ€” it becomes the outline for your written response. If you can't answer all four questions before you start coding, revise your idea until you can.

When you code, keep the rubric visible. After you've written your procedure, test it with your two cases and document what happens. Screenshot your output or record a short demo as you go โ€” you'll need this for the video.

The written response is where many students lose points even when their code is good. Be specific. When they ask you to describe your list and how it manages complexity, don't just say "it stores data" โ€” explain what data, how the program uses it, and why the program would be harder to write without the list. That's what the rubric is looking for.

The APCSP exam's programming questions on the multiple choice section also connect to these concepts. Working through the APCSP program design and development practice sets builds the underlying knowledge that makes writing and explaining your Create Task code easier.

What programming language should I use for the APCSP Create Task?

You can use any programming language accepted by your teacher โ€” Python, JavaScript, Scratch, App Inventor, and Java are all commonly used. The College Board doesn't specify a language. Most students use whatever language they've learned in class. Python is popular for its readability and the ease of demonstrating list operations, loops, and conditionals.

Does my APCSP Create Task project have to be original?

Yes. The project must be substantially your own work. You can get ideas from tutorials or examples, and you can use code libraries, but the core program โ€” especially the list and the parameterized procedure โ€” must be your own creation. If you're submitting work that closely mirrors a tutorial, you risk academic integrity issues. College Board's scoring readers are experienced with common tutorial-based submissions.

How long does the APCSP Create Task video need to be?

The video must be 1 minute or less and must show the program running. It should demonstrate the program's input and output, and ideally show the list and your key procedure in action. There's no minimum length โ€” a clear 45-second video is fine if it demonstrates everything the rubric requires. File size must be under 30 MB.

Can I work with a partner on the APCSP Create Task?

No. The Create Task must be completed independently. You can brainstorm ideas with classmates, but you cannot share code, co-write procedures, or submit the same program as another student. Each student submits their own unique program and written response. Teachers cannot help you write the code or the responses โ€” they can explain requirements and answer general questions.

What if my APCSP Create Task program doesn't work perfectly?

A buggy program that you can explain fully often scores better than a polished program you can't explain. The rubric evaluates whether your code meets specific structural requirements and whether your written response accurately describes it โ€” not whether the program is commercially polished. Fix critical bugs if you can, but don't sacrifice your written response quality trying to perfect the code.

How does College Board score the APCSP Create Task?

Trained College Board readers score your submission against a 6-row rubric, awarding 1 point per row for a maximum of 6 points. They look at your code, your video, and your written responses together. Each row has specific criteria โ€” for example, Row 3 requires that your list manages complexity (not just stores data). Scoring is holistic per row: if you meet the criteria, you get the point; if you don't, you don't.

Making the Most of Your Create Task

The Create Task is the part of AP CSP that you have the most control over. Unlike the exam, you can iterate, revise, and test your submission before you turn it in. That's an advantage โ€” use it.

Start early. Students who begin their project in the first week it's assigned consistently produce better submissions than students who wait. The extra time lets you debug thoughtfully, write a clear response, and record a clean video rather than scrambling through all three the night before it's due.

Pick a project you actually find interesting. The written responses are easier to write when you genuinely understand and care about what your program does. If you're forcing yourself to work on a topic you don't understand, the explanation will feel forced too โ€” and scorers notice.

And don't neglect the AP exam. The Create Task is 30% of your score, but the exam is 70%. The APCSP networks and internet and data and analysis practice sets cover the content you'll see on the multiple-choice section. Both parts matter โ€” prepare for both.

โ–ถ Start Quiz