Lesson 2: Create PT - Make a Plan

Overview

This lesson uses the Create PT Survival Guide as the backbone for a series of activities to ramp up to doing the actual Create PT. It contains activities to help students understand the algorithm and abstraction requirements of the task, as well as activities to help them narrow down and brainstorm ideas for their actual project.

The lesson concludes by providing students with resources to make a plan to complete the task staring in the next lesson.

Purpose

There are no new CS concepts covered in this lesson. It is a review of the processes and requirements of the Create Performance Task before students begin working on it individually.

Agenda

Getting Started (5 mins)

Activity (70 mins)

Wrap-up (10 Minutes)

View on Code Studio

Objectives

Students will be able to:

  • Describe the elements and purpose of the Create PT
  • Describe the scoring guidelines for the Create PT
  • Evaluate sample Create PT components by applying the scoring guidelines

Links

Heads Up! Please make a copy of any documents you plan to share with students.

For the Teachers

For the Students

Teaching Guide

Getting Started (5 mins)

Discussion Goal

Goal: The purpose of this discussion to warm up students' brains and recall the elements of the Create PT. Students should start thinking about choices in light of what they have to do for the Create PT, rather than simply out of interest or "coolness." Hopefully, the two go hand in hand.

In particular we'll looking to understand the algorithm and abstraction requirements so that students select appropriately scoped projects.

Prompt: Based on our review of the Create PT yesterday...

  • What are the main things you have to do for the Create PT?
  • What should you do first?

Teaching Tip

Use the Grumpy Cat Exemplar: Consider referring back to the "Grumpy Cat" exemplar Create PT included in the previous lesson either as part of this review or as a reference during the remainder of the lesson.

Discuss: Let students call out the things they remember. Make this a quick review just to remind them of what was covered in the previous lesson.

A few of the things you need to do:

  • Write a program
  • Individually write code for an algorithm and abstraction
  • Make a video of your code running
  • Answer written responses
  • Make a PDF of your code

What should you do first?

  • Pick and scope down your project

Activity (70 mins)

Introduce The Create PT Survival Guide

Remarks

Today we will use the Create PT Survival Guide to dig in a little deeper with the Create PT. The beginning of the packet has a number of quick activities that help get us in the right mindset for thinking about and doing the task so you are ready to hit the ground running.

The guide is intended to be useful throughout the entire process of completing the actual Create Task as well.

Distribute: Create PT - Survival Guide 2019/2020

Read Overview (page 1): Have students read the Create PT Overview section of page 1.

  • The information about the task itself should not be news if you've already reviewed the Create PT
  • Focus on the suggested process and timeline on page 1

Teaching Tip

The Is It a Good Algorithm page contains information useful for the Does it count? activity. Some of the advice like the "parent and two children" (selected and included) portion of algorithms might be hard to understand in the abstract. You could still review it first and then revisit after going through the examples.

Alternatively, you could just dive into the Does it count? activity and tell students that all the information they need to make judgements about the algorithm code segments is contained page 2.

Algorithms on the Create PT (20 mins)

Is It a Good Algorithm? (page 2)

Prompt: The Create PT requires you to write and describe an algorithm in your program. Based on what we learned yesterday looking at scored samples, and the criteria listed here, what are the characteristics of that algorithm?

  • Give students time to read
  • Allow students to chat with a neighbor
  • Highlight the evaluation criteria specifically listed in the Survival Guide
  • It is not necessary to do a whole group discussion here - this is just a kick off.

Transition: To get our brains moving we're going to look at some submissions for the algorithms and discuss whether they're good choices.

Activity: Does It Count? - Algorithm Edition (pages 2-4)

Discussion Goal

Goal: We want students to understand that in looking at the code an AP reader is looking for very specific things - it's a checklist. Familiarity with that checklist helps when planning your own project.

Don't worry or wallow too much in the gray areas of some of the examples - they are intentionally borderline to show where the border is. Students should try to be safely over that border.

Use the Create PT Survival Guide - KEY for commentary on individual algorithms.

Prompt: Using what we just discussed about your algorithm choices and the scoring guideline provided, determine for each algorithm whether it would get the point and why.

Have students individually take 5-10 minutes to look at the set of selected algorithms and respond about whether those algorithms would earn a point, and why.

Discuss and Review Have students share and compare their responses with a classmate. Afterwards lead a discussion based on the patterns you see. You'll likely want to review the following points from the Survival Guide

  • The "parent and two children" model for a complex algorithm - (main + 2 sub-algorithms)
  • What counts as mathematical and logical concepts

Abstraction on the Create PT (20 mins)

Is It a Good Abstraction?

Teaching Tip

We make a big deal about not selecting onEvent as an abstraction because it is the major pitfall of students using event-driven programming like we use in App Lab. While there is technically a function involved, it is not a named function and not one the student decided they needed to manage complexity. Using onEvent, some like to say, is not a "deliberate act of abstracting" it's just how the language deals with event-handling.

There are other abstractions allowed - like data abstractions, using lists in particular - but it's so easy and common practice to make functions in app lab to handle certain problems it's low hanging fruit for the Create PT.

Prompt: The Create PT requires you to write and describe an abstraction in your program. Based on what we learned yesterday looking at scored samples, and the criteria listed here, what are the characteristics of that algorithm?

  • Give students time to read
  • Allow students to chat with a neighbor
  • Highlight the evaluation criteria specifically listed in the Survival Guide
  • It is not necessary to do a whole group discussion here - this is just a kick off.

Transition: To get our brains moving we're going to look at some submissions for the abstraction and discuss whether they're good choices.

Activity: Does It Count? - Abstraction Edition

Discussion Goal

Goal: Similar to the algorithm section, we want students to understand that in looking at the code an AP reader is looking for very specific things - it's a checklist. Familiarity with that checklist helps when planning your own project.

Again, don't worry or wallow too much in the gray areas of some of the examples - they are intentionally borderline to show where the border is. Students should try to be safely over that border.

Use the [KEY] Create PT - Survival Guide 2019/2020 for commentary on individual abstractions.

Prompt: Using what we just discussed about your abstraction choices and the scoring guidelines provided, determine for each abstraction whether it would get the point, why, and whether you can determine whether it manages complexity.

Give students individually 5-10 minutes to look at the list of abstraction selections and write down their judgements about whether it should earn the point, why and whether it manages complexity.

Discuss: Have students share and compare their responses. Afterwards lead a discussion based on the patterns you see. You'll likely want to review the following points from the Survival Guide

  • onEvent does not count as a student-developed abstraction
  • Any function you defined and wrote yourself can earn the point for row 7
  • To justify that a function helps manage complexity you must be able to demonstrate how/where you call that function from two different places in your code or, if it has a parameter, call it with different values.

"Narrow it Down" (15 mins)

Discussion Goal

Goal: Understand it doesn't have to be a big project; The create PT is about demonstrating something you already know how to do.

The biggest thing we're trying to guard against is students' eyes being bigger than their stomachs. We want to encourage students to be creative and start build whatever they want, but temper that with the realities of the Create PT...

  • It doesn't need to be a big project
  • Your job is to demonstrate that you know how to program something and identify certain aspects of it.
  • There are no points for coolness or prettiness
  • If you want to do something big, just get it started for the Create PT and come back to it afterward.

Prompt: Read the "Narrow It Down" section of your survival guide. Be ready to discuss:

  • What are the key takeaways from this section?
  • What questions do you have?

Discuss: Have students share their thoughts. The most important points to note:

  • The written responses are the most important part of the Create PT.
  • It's OK to submit an incomplete project so long as it has a working feature you can show in your video and contains an algorithm and an abstraction
  • Most ideas can and should be narrowed down before you start
  • You shouldn't be doing a lot of work in Design Mode.
  • You need to worry about the code that makes your program work, not making your initial screens perfectly lined up or attractive.

Teaching Tip

You might consider doing a jigsaw here. Have students pick one of the scenarios to do and come together to discuss afterward.

Practice Narrowing It Down

Prompt: With a partner go through these three example project proposals. For each one practice narrowing down the features of the project and identifying the core algorithm.

Give students 5-10 minutes to look at the three projects and start to jot down their own ideas.

Discuss: Have students share and compare their responses. Afterwards lead a discussion based on the patterns you see. You'll likely want to review the following points from the Survival Guide:

  • Many projects have sub parts, each of which could stand on its own as a PT
  • You should be able to easily see an algorithm opportunity within at least one of the sub parts -- if you can't, not a good choice.
  • For any project idea it should be relatively easy to scope it down to one or two things that will be totally acceptable for the Create PT

Bring It All Together (15 mins)

Prompt: Read the "Bring It All Together" section of your Survival Guide. Be ready to discuss:

  • How should I go about selecting my project?

Discuss: Have students share their thoughts. The most important points to note:

  • You don't actually have that much time to work!
  • When you start, you should have an idea about what the algorithm will be.
  • Start with a narrowly scoped project, start working right away on the core parts of it.
  • Don't try to learn new programming skills during the PT - do something you know how to do now.
  • Get to the written responses as quickly as you can.

Teaching Tip

Do you need to plan for abstraction?. You probably don't need to plan for abstraction explicitly - if following the practices of this course, something will emerge that you can use.

Brainstorm Project Ideas

Discussion Goal

Goal: Students should exit this brief activity with (1) a basic idea of what they're going to do for their project and (2) confidence that they can do it.

Prompt: Come up with two example project ideas. List some simple information about each project so that a partner can give you some feedback on your idea.

Give students 5-10 minutes to look at the three projects and start to jot down their own ideas.

Share: Have students share their first-draft ideas with a partner and list feedback on the right-most column of the activity. Afterwards they can confer with a partner about their ideas.

Discuss: Have students share and compare their responses. Have student think about starting to pick their own projects. When deciding on a project the answer to these questions should all be "yes".

  • You know what your algorithm is probably going be?
  • Can you do all the programming for this in about 6 hours?
  • Can you get to the algorithm within first 2 hours?
  • You feel like you know how to do most of the programming for this right now?

Wrap-up (10 Minutes)

Making a plan

Discussion Goal

Goal: the goal here is to have students start planning in earnest for the Create PT. Students should take seriously how they will allocate their time, and should think about how they probably want to maximize the amount of time they have to write the code and the written responses.

  • Turn to pages 11 and 12 of the survival guide
  • The pages are there to help you plan for doing your own Create PT.

  • The Create PT Process/Check-in Organizer is a place to take and categorize your notes and thoughts as you make your project.

    • This Create PT Check-In Organizer - High Resolution PDF is a copy of what's on page 11 and is better for print if you want to print it.
    • We will use this organizer to check-in after you've worked for a few hours.
    • If you can slot in answers to all the areas on the organizer, then you should be able to easily complete the written responses.
    • If you can't fill in some area that's an indication of where you should focus your next efforts.
  • The Create PT Completion Timeline is there as a template for a daily guide for completing the PT.

Review: pages 11 and 12 and add any initial notes or thoughts you have.

  • Have students review the suggested timeline and make edits or updates to the schedule that will work for your school situation.
  • Note: the 12 hours is a minimum. You may opt to give students more time if you wish, but you may not give them less.

Prompt:: Taking into account all the activities we did today plus what you know about the Create PT now, where do you expect you'll be spending most of your time? For which parts of the task should you maximize your time?

Give students a moment to think and share ideas with a partner.

Discuss: Have students share where they think most of their time should go.

  • Probably want to maximize writing, video, and code PDF time
  • Coding time that isn't focused on making your algorithm or abstraction is likely not well spent. It doesn't matter if your program "looks good" so long as it works!
  • Don't forget to allocate time to proofread for easy-to-make mistakes that will cost points, like forgetting to cite sources.
  • Use the response checklists in the survival guide to make sure you'll earn all the points.

Remarks

Now that we have methods and strategies for completing the task along with the beginnings of a plan, tomorrow we'll start the task in earnest.

Standards Alignment

View full course alignment

Computer Science Principles

1.2 - Computing enables people to use creative development processes to create computational artifacts for creative expression or to solve a problem.
1.2.1 - Create a computational artifact for creative expression. [P2]
  • 1.2.1A - A computational artifact is anything created by a human using a computer and can be, but is not limited to, a program, an image, audio, video, a presentation, or a web page file.
  • 1.2.1B - Creating computational artifacts requires understanding and using software tools and services.
  • 1.2.1E - Creative expressions in a computational artifact can reflect personal expressions of ideas or interests.
1.2.4 - Collaborate in the creation of computational artifacts. [P6]
  • 1.2.4C - Effective collaborative teams practice interpersonal communication, consensus building, conflict resolution, and negotiation.
  • 1.2.4D - Effective collaboration strategies enhance performance.
  • 1.2.4E - Collaboration facilitates the application of multiple perspectives (including sociocultural perspectives) and diverse talents and skills in developing computational artifacts.
  • 1.2.4F - A collaboratively created computational artifact can reflect personal expressions of ideas.
7.5 - An investigative process is aided by effective organization and selection of resources. Appropriate technologies and tools facilitate the accessing of information and enable the ability to evaluate the credibility of sources.
7.5.1 - Access, manage, and attribute information using effective strategies. [P1]
  • 7.5.1A - Online databases and libraries catalog and house secondary and some primary resources
  • 7.5.1B - Advanced search tools, Boolean logic, and key words can refine the search focus and/or limit search results based on a variety of factors (e.g., peer-review status, type of publication)
  • 7.5.1C - Plagiarism is a serious offense that occurs when a person presents another's ideas or words as his or her own. Plagiarism may be avoided by accurately acknowledging sources. 7.5.2 Evaluate online and print sources for appropriateness and credibility [P5]
7.5.2 - Evaluate online and print sources for appropriateness and credibility [P5]
  • 7.5.2A - Determining the credibility of a soruce requires considering and evaluating the reputation and credentials of the author(s), publisher(s), site owner(s), and/or sponsor(s).
  • 7.5.2B - Information from a source is considered relevant when it supports an appropriate claim or the purpose of the investigation