Lesson 11: Mini-Project - Captioned Scenes
45 minutes
Overview
After a quick review of the code they have learned so far, students start working on their next creative project of the unit. Using the problem-solving process as a model again, students define the scene that they want to create, prepare by thinking of the different code they will need, try their plan in Game Lab, then reflect on what they have created. They also have a chance to share their creations with their peers. The open-ended nature of this lesson also provides flexibility for the teacher to decide how long students should spend on their work, depending on the scheduling demands of the particular course implementation.
Question of the Day: How can we use Game Lab to express our creativity?
Standards
AP - Algorithms & Programming
- 2-AP-11 - Create clearly named variables that represent different data types and perform operations on their values.
- 2-AP-13 - Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs.
- 2-AP-17 - Systematically test and refine programs using a range of test cases.
- 2-AP-19 - Document programs in order to make them easier to follow, test, and debug.
Agenda
Objectives
Students will be able to:
- Use a structured process to plan and develop a program.
Preparation
- Check the "Teacher's Lounge" forum for verified teachers to find additional strategies or resources shared by fellow teachers
- If you are teaching virtually, consider checking our Virtual Lesson Modifications
Links
Heads Up! Please make a copy of any documents you plan to share with students.
For the teachers
- Mini-Project - Captioned Scenes - Slides
For the students
- Captioned Scenes - Rubric
- Problem Solving with Programming - Resource
- Sprite Scene Planning - Activity Guide
Teaching Guide
Warm Up (5 minutes)
Review
Prompt: Write down as many blocks as you can remember from Game Lab. Make sure you know what each one does, especially the inputs, or parameters, for each of the blocks.
Share: Allow students to share out what they remember as a group review.
Discussion Goal: The goal of this discussion is to review the different blocks and skills that students have learned. As students talk about the different blocks, try to steer the conversation into how they can be used creatively, to link to the main topic of the day.
Remarks
You've learned how to do some really great things since our last mini-project in Game Lab. Today you'll have a chance to put them all together to make an interesting scene to share with the world. That means instead of trying to recreate someone else's idea, you're going to get to come up with an idea of your own, so it's time to get creative!
Question of the Day: How can we use Game Lab to express our creativity?
Facilitating Mini-Projects: Mini-Projects act as checkpoints in the curricula and cover the subset of skills students have seen so far in the unit. They are designed for 1-2 days of implementation as a way to check-in with how well students understand the course content so far. You may decide to extend these projects as a way to support or challenge students, which could allow you to revisit difficult concepts or support students who may have missed lessons and are trying to catch up. However, we recommend deciding this ahead of time and being firm with students about how much time they have for each project - otherwise, it's easy for projects to drag-out to multiple days and for student's work to spiral beyond the scope of this project.
Activity (35 minutes)
Distribute: Pass out copies of the activity guide. Students should use this worksheet to guide them through the Problem-Solving Process and plan out the captioned scene they create at the end of this lesson.
Optional Transition You can choose to either send students to Code Studio to see an example of a captioned scene in level 1 or display the example in the slides.
Facilitating Group Projects: If students are working in pairs or small teams to complete projects, consider showing these two videos to the class:
Depending on your goals with this project, consider having teams complete a Student Guide to Team Planning, which reinforces the message in the video
Step 1: Define - Describe Your Scene
Circulate: As students fill out a description of the captioned scene they want to create, circulate the room to ask students about their ideas and help guide them to make sure they are thinking of how they are going to use sprites and text to meet the project requirements.
Step 2: Prepare - Design Your Image
As students answer questions about the design of their captioned scene, continue to ensure that they are thinking about implementing sprites and text. After they have completed their designs, ensure that they can identify which blocks will be needed for the different features of their scene.
Scoping Student Projects: Students may ideate projects that are beyond the skills they currently have or that would take longer than the allotted time to implement. Rather than asking students to choose a different project, consider asking students to imagine a more scaled-down version of their initial idea. As an analogy, if a student's initial idea is the "Run" step, imagine a less intense version that represents what the "Walk" step would look like. If necessary, you can keep going back further to a "Crawl" step as well.
Digging Deeper: This is sometimes referred to as the Minimal Viable Product - you can learn more about this process and adapt it into your project strategies by reading this article: Making Sense of MVP by Henrik Kniberg
Step 3: Try - Develop Your Scene
Remarks
Many of you are ready to start creating your programs. One thing that could make this challenging is the blank screen effect: unlike previous levels, you won’t have any starter code or direction on what to create. This means you might not be sure what exactly you’re supposed to do, or you might run into bugs you need to fix which can be frustrating. Luckily, we can also use the problem-solving process to help with these types of projects as well!
Distribute: Hand out a copy of the Problem Solving with Programming to pairs of students. Encourage students to look over the guide.
Display: Show the slide with the problem solving process graphic.
Remarks
If you feel stuck or you’re not sure what to do next, remember you can always follow the steps of the problem-solving process to define your next step, prepare for what you want to code, try it out, then reflect on whether or not it solved your problem.
Circulate: Encourage students to use the steps in the Problem-Solving Process for Programming when they get stuck or are unsure of what to do next.
Not all bullets in the Problem Solving Process will be applicable to every problem a student has. Instead, encourage them to pick one or two from each category to try each time they are stuck
After you have checked the designs, allow students to log into Code Studio and code their programs.
Transition: Send students to Code Studio.
Scaffolded Project: The tasks for this mini-project are broken down for students with each level focusing on a particular part of the project (background, sprites, text, etc). Encourage students to follow the instructions in each level, focusing on one task at a time.
Debugging Strategies: As students design and implement their own project ideas, they may find themselves with new bugs that they need to untangle and you may find yourself looking at completely unfamiliar code as students look for help troubleshooting their errors. To help smooth out the debugging experience, consider the following strategies:
- Review the Teacher Guide to Debugging for some common questions and strategies to help support students in debugging their code
- Have students follow the steps in the Student Guide to Debugging and use the Bug Report Quarter-Sheets as an initial step in the debugging process. This helps students prepare and communicate their issue before asking for help.
- If students haven't seen it yet, consider showing the Debugging Video to the class to reinforce debugging best practices.
Digging Deeper: Consider supplying students with an object to talk to as part of the debugging process. This is sometimes known as Rubber Duck Debugging - you can learn more on the website https://rubberduckdebugging.com/
Gallery Walk
Allow students to walk around the room and see the pictures that each of their classmates has coded. Celebrate all of the different ideas that students were able to implement with the same basic code.
You may choose to formalize this process by having each student write down one positive quality of each project, or having students "draw names" to comment on one particular classmate's work.
Use the project rubric attached to this lesson to assess student mastery of learning goals.
Wrap up (5 minutes)
Journal
Question of the Day: How can we use Game Lab to express our creativity?
Prompt: What was one especially creative way you saw someone else use the blocks today?
Share: Have students share out what they appreciated about their classmates' projects. You may want to do this "popcorn" style, with each student who responds choosing the next person to share.
Discussion Goal: This discussion should serve as a celebration of what the students have accomplished. As students share out what they have seen, encourage them to learn from each other and ask questions if they were not sure how to do something. Highlight how students were able to do very different things with the same tool.
This work is available under a Creative Commons License (CC BY-NC-SA 4.0).
If you are interested in licensing Code.org materials for commercial purposes contact us.