Lesson 5: Programming with Harvester
Overview
Students will apply the programming concepts that they have learned to the Harvester environment. Now, instead of just getting the character to a goal, students have to collect corn using a new block. Students will continue to develop sequential algorithm skills and start using the debugging process.
Purpose
In this lesson, students will develop debugging skills and will continue developing their programming skills.
Agenda
Warm Up (5 min)
Main Activity (30 min)
Wrap Up (5 - 10 min)
View on Code Studio
Objectives
Students will be able to:
- Translate movements into a series of commands.
- Identify and locate bugs in a program.
Preparation
- Play through the puzzles to find any potential problem areas for your class.
- Make sure each student has a Think Spot Journal - Reflection Journal.
- (Optional) Read Stevie and the Big Project and Unspotted Bugs storybooks with your class beforehand.
Links
Heads Up! Please make a copy of any documents you plan to share with students.
For the Students
- Feeling Faces - Emotion Images
Vocabulary
- Bug - Part of a program that does not work correctly.
- Debugging - Finding and fixing problems in an algorithm or program.
- Persistence - Trying again and again, even when something is very hard.
Support
Report a Bug
Teaching Guide
Warm Up (5 min)
Vocabulary
This lesson has three new and important vocabulary words:
- Bug - Say it with me: Buhh-g.
Something that is going wrong. An error.
- Debugging - Say it with me: Dee-bug-ing.
To find and fix errors.
- Persistence - Say it with me: Purr-siss-tense.
Not giving up. Persistence works best when you try things many different ways, many different times.
Debugging, Persistence, and Frustration
Discuss: Prepare students for today's online exercises by asking them what they would do if they thought they had a bug in their code. More specifically, what would they ask themselves?
- Was everything in the first step right?
- How about the second? Third?
- Where did my program go wrong?
- What does that tell me?
Prompt: Debugging can be frustrating! But persistence can help us get through it. What are some things we can do to persist through frustration?
Example responses:
- Count to 10
- Take deep breaths
- Journal about bugs we've found
- Talk to a partner about bugs
- Ask for help
Transition: Let your students know that frustration is part of coding. Everyone gets bugs! It's okay if they think they have a bug but they can't find or fix it right away. Using strategies like those listed above can help them persist through frustration and solve any problem!
Main Activity (30 min)
Online Puzzles
At this point, students should already be familiar with the programming environment. Some new things to look out for in this lesson are confusion about the debugging process or not remembering to use the pick corn
block when the harvester reaches corn.
Teacher Tip:
Show the students the right way to help classmates by:
- Don't sit in their chair
- Don't use their keyboard
- Don't touch their mouse
- Make sure the classmate can describe the solution before you walk away
Circulate: During online activities, the role of the teacher is primarily one of encouragement and support. In addition to the ideas listed in the last lesson, some more ideas on how to do this are:
- Remind students to use the debugging process before you approach.
- Have students describe the problem that they’re seeing. What is it supposed to do? What does it do? What does that tell you?
- Remind frustrated students that frustration is a step on the path to learning, and that persistence will pay off.
- If a student is still stuck after all of this, ask leading questions to get the student to spot an error on their own.
Transition: Have students grab their Thinkspot Journals and take a moment to leave lessons for themselves.
Wrap Up (5 - 10 min)
Journaling
Having students write about what they learned, why it’s useful, and how they feel about it can help solidify any knowledge they obtained today and build a review sheet for them to look to in the future.
Journal Prompts:
- What was today’s lesson about?
- Draw one of the Feeling Faces - Emotion Images that shows how you felt about today's lesson in the corner of your journal page.
- Draw a time you found a bug in your code.
- The Harvester
- 1
Student Instructions
Help the harvester pick the piece of corn!
Student Instructions
Use three move west blocks to get the harvester to the corn!
Student Instructions
Use three move north blocks to get the harvester to the corn! Don't forget to pick the corn at the end.
- Debugging with the Step Button
- 5
Student Instructions
Add one block to help the harvester pick the corn.
Student Instructions
Can you figure out what is wrong with this code? Help the harvester pick the corn!
Student Instructions
Try it yourself!
Student Instructions
You have to move in two directions to get to the corn! Help the harvester pick the right direction.
Student Instructions
Now the harvester needs to pick corn two times!
Student Instructions
Add two blocks to finish this puzzle!
- Challenge
- 12
Student Instructions
The harvester needs to pick all the corn! Do you see a pattern?
Student Instructions
Thank you for helping me!
Pick all the corn.
Student Instructions
Try it by yourself! Pick all the corn.
Student Instructions
Help the harvester pick corn!
Standards Alignment
View full course alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 1A-AP-09 - Model the way programs store and manipulate data by using numbers or other symbols to represent information.
- 1A-AP-11 - Decompose (break down) the steps needed to solve a problem into a precise sequence of instructions.