Study Blog 4/23
My progress through CSP
- MCQ Reflection
- Total Score: 59/67
- Missed Topics:
- Improved Topics:
- Reoccurring Topics:
- New Topics:
- Topic 1.4 (Skill 4.C: Identify and Correct Errors)
- Topic 2.1 Binary Numbers (Skill 2.B: Develop and Implement Algorithms)
- Topic 3.8 Iteration (Skill 2.B: Develop and Implement Algorithms)
- Topic 3.9 Developing Algorithms (Skill 1.D: Evaluate Solution Options)
- Topic 3.12 Calling Procedures (Skill 3.B: Develop Programs that Incorporate Abstractions)
- Topic 5.5 Legal and Ethical Concerns (Skill 5.E: Evaluate the Use of Computing Based on Legal and Ethical Factors)
- Topic 5.6 Safe Computing (Skill 5.D: Describe the Impact of Gathering Data)
MCQ Reflection
Total Score: 59/67
- Time spent: 02:48:34
- Previous Score: 53/66
Missed Topics:
- 1.4
- 3.1
- 3.12
- 5.5
- 5.6
- 3.8
- 3.9
Improved Topics:
- 2.3
- 3.1
- 3.17
Reoccurring Topics:
- 1.4
- 3.1
- 3.12
- 5.5
- 5.6
New Topics:
- 3.8
- 3.9
Missed Questions:
Topic 1.4 (Skill 4.C: Identify and Correct Errors)
- Score: 5/7
- Q64, Q66
- Takeaways:
Evaluate all options. I have a general idea of the answers because I got at least one question correct, but I need to be more careful when evaluating the second option and should read all choices rather than finding an option and moving on. Review questions 16, 39, 54, 58, 67, because I got those right, and rewatch 1.4 Daily AP Videos 1-3.
Topic 2.1 Binary Numbers (Skill 2.B: Develop and Implement Algorithms)
- Score: 4/5
- Q11
- Takeaways:
No need to convert everything to binary; you can just evaluate the triplet using process of elimination.
Topic 3.8 Iteration (Skill 2.B: Develop and Implement Algorithms)
- Score: 6/7
- Q18
- Takeaways:
Make sure you’ve clicked the right option.
Topic 3.9 Developing Algorithms (Skill 1.D: Evaluate Solution Options)
- Q15
- Takeaways:
Program A initializes i to 1. Inside the loop, it prints i and then increments i. The loop terminates when i is greater than 10, which occurs after 10 is printed. Program A prints 1 2 3 4 5 6 7 8 9 10. Program B initializes i to 0. Inside the loop, it increments i and then prints i. The loop terminates when i equals 10, which occurs after 10 is printed. Program B prints 1 2 3 4 5 6 7 8 9 10.
Topic 3.12 Calling Procedures (Skill 3.B: Develop Programs that Incorporate Abstractions)
- Q60
- Takeaways:
This code segment creates newList1, containing the unique elements from list1, and newList2, containing the unique elements from list2. These two lists are combined to form bothList. Any elements that appear in both lists are removed from bothList to form uniqueList. The correct count is the difference between the lengths of bothList and uniqueList. For example, assume that list1 contains [10, 10, 20, 30, 40, 50, 60] and list2 contains [20, 20, 40, 60, 80]. The first line of code creates newList1, which contains [10, 20, 30, 40, 50, 60]. The second line of code creates newList2, which contains [20, 40, 60, 80]. The third line of code creates bothList, which contains [10, 20, 30, 40, 50, 60, 20, 40, 60, 80]. The fourth line of code creates uniqueList, which contains [10, 20, 30, 40, 50, 60, 80]. Since bothList contains 10 elements and uniqueList contains 7 elements, the correct result 3 is assigned to count.
Topic 5.5 Legal and Ethical Concerns (Skill 5.E: Evaluate the Use of Computing Based on Legal and Ethical Factors)
- Q51
- Takeaways:
Creative Commons licensing allows copyright owners to specify the ways in which their works can be used or distributed. This allows individuals to access or modify these works without the risk of violating copyright laws.
Topic 5.6 Safe Computing (Skill 5.D: Describe the Impact of Gathering Data)
- Q48
- Takeaways:
Phishing is a technique that is used to trick a user into providing personal information. In this case, the user is tricked into providing a username and password to an unauthorized individual posing as a technical support specialist.
Plan:
Revise AP Daily Videos and Read Fiveable Study Guides on:
- 1.4
- 3.1
- 3.12
- 5.5
- 5.6
- 3.8
- 3.9
Struggled Past Topics Topics: These are the areas I consistently missed or had trouble with across multiple exams:
1.4 – Identifying and Correcting Errors: I need to be more careful when evaluating all the options instead of jumping on the first one that looks right. Even though I did okay, I missed a couple of questions due to rushing.
3.1 – Variables and Assignments: This came up again as a weakness. Even though I improved a bit, I still missed some questions here, which shows I haven’t fully nailed the basics.
3.12 – Calling Procedures: I misunderstood the logic in a code segment that involved list operations. I need to review this more deeply, especially the flow of data through function calls.
5.5 – Legal and Ethical Concerns: I missed a question on Creative Commons. I understood the general idea but didn’t apply it properly in context.
5.6 – Safe Computing: I got a phishing question wrong. It was a simple mistake, but it highlights the need to pay more attention to real-world computing impacts.
New Topics I Missed: These topics are new to my list of errors, so I clearly need more exposure to them:
3.8 – Iteration: I clicked the wrong option — probably just a misclick, but I’ll still go back and double-check I’m confident here.
3.9 – Developing Algorithms: I got confused between two very similar programs. I need to slow down and trace code more carefully.
Topics I Improved In: These were previously weak areas where I saw a noticeable improvement:
2.3 – Logical Operators: I’ve clearly done some good work here — I’m now consistently getting these right.
3.1 – Variables and Assignments: I’ve improved, but I’m not out of the woods yet.
3.17 – Lists and Traversals: Happy to see growth here — I’ve become much more confident navigating list structures.
Plan Going Forward: To strengthen my performance, I’ll focus on reviewing:
1.4, 3.1, 3.12, 5.5, 5.6, 3.8, and 3.9
I’ll rewatch the AP Daily Videos, especially for 1.4 (Videos 1–3), and read through the Fiveable Study Guides for each topic I missed. I’ll also revisit the questions I got wrong and the ones I got right but felt unsure about, to solidify my understanding.
_________________________________________
Prior to this exam, I purchased an AP Computer Science Principles Prep Book, which I studied in addition to the lessons we went over. The book details the Major AP CSP concepts and I found it really helpful, I spent a lot of time on this MC and that’s because I don’t feel really confident in the topics and I was distracted. I spent lots of time second guessing myself. So going forward I will take more practice tests, such as the ones included in the book.
🔷 April 24 (Thursday): CPT Day — All in One Go 🔥 Heavy-lift day. Get everything done and submitted.
Hour Breakdown (Extended to 2 hours today only if needed)
Write CPT Written Response (30 min)
Write your response to 2a: Clearly describe the overall purpose of your program and what it does. Then explain what the function you wrote does in the context of that purpose.
Write your response to 2b: Identify one piece of data your program stores. Explain how it is stored, and how it is used to impact program behavior.
Code & Screenshot Segment (15 min)
Select a code segment that shows your function. Make sure it’s clearly named, uses parameters and returns a value if possible.
Take a clean screenshot of it (use cropping to avoid distractions).
Write CPT 2c: Code Segment Explanation (15 min)
In a new section, write your 2c explanation, walking through the function line by line. Clarify how it uses parameters and returns results.
Write CPT 2d: Development Process (15 min)
Describe the problem you were trying to solve. Talk about a specific difficulty you faced, how you tried fixing it, and what you learned in the process.
Make the Video (20 min)
Use Screencastify, Loom, or Zoom to screen record you running your program.
Narrate while you click through: show input → show output → explain briefly what’s happening.
Keep the video under 1 min. Save as .mp4.
Submit the Entire CPT (15 min)
Upload written responses, video, and code to AP Digital Portfolio.
Double-check file formats. Submit. Screenshot confirmation.
🔷 April 25 (Friday): Refresh With Pseudocode & Design Watch Khan Academy’s lesson on the programming process and pseudocode (10 min).
Work through 3 pseudocode examples using if-statements and user input (20 min).
Do a short FRQ (from AP Classroom or review book) that tests your understanding of program design (30 min).
đź”· April 26 (Saturday): Data & Binary Systems Review how text and images are stored as binary (10 min).
Convert a few binary numbers to decimal and vice versa (15 min).
Watch a short video on lossy vs. lossless compression (5 min).
Answer 6 practice MCQs on data storage and compression (30 min).
🔷 April 27 (Sunday): Metadata, Bias & Big Data Ethics Watch Khan Academy’s clip on metadata and big data (10 min).
Read an article (or notes) about algorithmic bias and misuse of data (10 min).
Reflect in writing: How can large datasets be biased? How would you fix it? (10 min)
Answer 6 MCQs on ethical data use, privacy, and big data (30 min).
🔷 April 28 (Monday): Internet Fundamentals Watch videos on how the Internet works — focus on IP, TCP, and DNS (15 min).
Sketch a diagram of how a packet travels through the internet (10 min).
Practice 5 MCQs about protocols, fault tolerance, and redundancy (20 min).
Briefly review SSL/TLS and how HTTPS keeps data secure (15 min).
🔷 April 29 (Tuesday): Boolean Logic & Conditionals Watch Khan Academy’s video on Boolean expressions and logic (10 min).
Trace 3 sample code snippets using if-else statements (20 min).
Practice 5 MCQs on conditional logic and control flow (15 min).
Read a sample FRQ using logic and identify the abstraction (15 min).
đź”· April 30 (Wednesday): Loops and Iteration Review for-loops and while-loops with visuals (10 min).
Trace nested loop code by hand (15 min).
Write your own loop that counts or processes a list (15 min).
Answer 5 MCQs focused on iteration and control (20 min).
🔷 May 1–7: Deep Dive into Programming + Impact May 1 (Thu): Lists and Strings Learn how to create, access, and modify list elements (15 min)
Write code that loops through a list and filters it (15 min)
Practice 6 MCQs on lists, strings, and indexing (30 min)
May 2 (Fri): Functions & Parameters Review how functions are defined and used (10 min)
Write one function with parameters and a return value (15 min)
Do a FRQ that asks you to explain a function’s behavior (20 min)
Watch Khan Academy abstraction video (15 min)
May 3 (Sat): Algorithm Thinking Review search algorithms (linear and binary) with a Khan video (10 min)
Solve a sorting problem by tracing through code (15 min)
Practice 8 MCQs about search, sort, and algorithm efficiency (35 min)
May 4 (Sun): Abstraction & Debugging Identify abstraction layers in 3 code examples (15 min)
Debug faulty logic in a nested function (15 min)
Complete 1 FRQ where you must describe an abstraction (30 min)
May 5 (Mon): Cybersecurity & Phishing Watch Khan Academy’s lesson on cybersecurity threats (10 min)
Read a real-life case of a phishing scam or password breach (10 min)
Complete 6 MCQs about encryption, SSL, and digital certificates (40 min)
May 6 (Tue): Mini MCQ Test Take 35 timed multiple-choice questions in one sitting (45 min)
Review 5 mistakes in detail and summarize why you missed them (15 min)
May 7 (Wed): Ethics, Open-Source & Impacts Watch a video on intellectual property and open-source licenses (10 min)
Review digital divide and accessibility case studies (20 min)
Practice 5 MCQs and 1 FRQ on computing impacts (30 min)
🔷 May 8–14: Final Review & Exam Conditioning May 8 (Thu): Review Big Idea 3 – All Programming Create a cheat sheet for all syntax: conditionals, loops, functions, lists (20 min)
Practice FRQ focused on all four constructs together (20 min)
Trace two logic problems with nested control structures (20 min)
May 9 (Fri): Review Big Idea 2 – All Data Create summary notes on types of data, data storage, compression, and privacy (20 min)
Do 6 mixed MCQs on binary, metadata, and data visualizations (20 min)
Complete 1 FRQ on data collection + analysis (20 min)
May 10 (Sat): Review Big Ideas 1, 4 & 5 – Development & Networks Watch recap of creative development, testing, and debugging (10 min)
Draw a mind map of Internet systems: packets, TCP/IP, DNS (15 min)
Practice 5 MCQs + 1 FRQ combining program design + internet (35 min)
May 11 (Sun): Full-Length Practice MCQ Test Take the full 70-question AP-style MCQ test in one sitting (70 min)
Mark every question by Big Idea. Note top 3 weak areas.
May 12 (Mon): Focused Target Review Spend 30 minutes reviewing your 3 weakest areas using Khan videos and notes
Redo 10 practice questions from each (30 min)
May 13 (Tue): Final Concept Recap Make a full-page study sheet with key terms, examples, and big ideas (30 min)
Test yourself with Quizlet or Anki decks (30 min)
May 14 (Wed): Light Day – Brain Cool Down Skim your notes, review your CPT one last time for confidence (20 min)
Mentally rehearse test day (pacing, mindset, skipping vs. guessing) (20 min)
Sleep early and stay off screens after 9 PM (20 min)
🔷 May 15 (Thu): AP Exam Day! 🎯 Eat breakfast, arrive early, bring ID + pencils
Manage time wisely: aim for ~1 minute per question
Flag hard questions, don’t dwell — keep moving
You’re ready. You’ve earned this. Crush it 💥
Big Idea / Unit Weight on MCQ Section
- Creative Development 10–13%
- Data 17–22% (MISSED)
- Algorithms and Programming 30–35% (MISSED)
- Computer Systems and Networks 13–18%
- Impact of Computing 21–26% ____________________________________________________ What I’ll Do Going Forward: 🎯 Skill 2.B: Implement and Apply an Algorithm This skill is all about writing and tracing algorithms — loops, conditionals, procedures, and how data flows through them. If you’re missing questions here, it’s often due to either not fully understanding control flow or making assumptions about how code executes.
What I’ll Do Going Forward: Practice Tracing, Not Just Solving:
I’ll force myself to trace at least 5 new College Board-aligned multiple-choice questions a day by hand before choosing an answer.
For each line of code, I’ll write out what the variable values are — especially in loops and nested conditionals.
Code the Algorithm Myself:
I’ll recreate tricky MCQ questions in Python or Snap!, then tweak values and conditions to see how the behavior changes.
I’ll also write similar algorithms myself (e.g., “Create a program that finds the first repeated element in a list”).
Use CodeHS or Replit Challenges:
I’ll do 10–15 min daily of short algorithmic challenges that involve iteration, logic, and list manipulation. The key is to implement, not just read.
AP Daily Rewatch — Especially 3.8 and 3.9:
I’ll rewatch the videos and pause at each step to mentally simulate what the code is doing before it plays out.
🎯 Skill 3.B: Use Abstraction to Manage Complexity This skill tests your ability to understand and use procedures/functions, parameters, and variables to reduce repetition and isolate functionality — basically, clean code principles.
What I’ll Do Going Forward: Focus on Function Design:
I’ll practice taking messy code and refactoring it into a clean function with parameters. (e.g., Instead of repeating code to filter data, write a reusable filterList(data, condition) function.)
I’ll analyze AP problems and ask: What can be abstracted here into a reusable piece?
Deep Dive into 3.12 (Calling Procedures):
I’ll work through questions involving multiple procedures, especially ones that manipulate lists or pass parameters.
I’ll diagram input/output for each function in these questions to better understand data flow.
Reverse-Engineer MCQs:
For every function-based MCQ I get wrong, I’ll rewrite the question into a full program, run it, and experiment with changing arguments or the function definition to see what breaks.
Fiveable + AP Classroom Videos:
I’ll watch AP Daily 3.12 again and take notes on when and why a procedure is called — not just how.
I’ll read the Fiveable summaries and practice identifying where abstraction fails — i.e., when it’s not used and the code becomes hard to read.