Lesson 1: Programming: My Robotic Friends
Algorithms | Debugging | Unplugged
Using a predefined symbol key, your students will guide one another to accomplish specific tasks without using any verbal commands. This segment teaches students the connection between symbols and actions, the difference between an algorithm and a program, and the valuable skill of debugging.
This unplugged lesson brings the class together as a team with a simple task to complete: get a "robot" to stack cups in a specific design. Students will work to recognize real world actions as potential instructions in code. The designing of precise instructions will also be practiced, as students work to translate worded instructions into the symbols provided. If problems arise in the code, students should work together to recognize bugs and build solutions.
Warm Up (5 min)
Main Activity (45 min)
Wrap Up (10 min)
Students will be able to:
- Gain understanding of the need for precision in coding.
- Learn how to recognize a bug and how to debug the malfunctioning code.
- Watch the My Robotic Friends - Teacher Video.
- Read My Robotic Friends - Teacher Prep Guide.
- Print out one My Robotic Friends - Symbol Key per group. This is "code" to be used.
- Paper Trapezoid Template - Manipulatives are provided if your class is not going to use cups.
- Print out one set of Stacking Cup Ideas - Manipulatives per group.
- Make sure each student has a Think Spot Journal - Reflection Journal.
For the Teacher
For the Students
- My Robotic Friends - Unplugged Video (download)
- My Robotic Friends - Symbol Key
- Stacking Cup Ideas - Manipulatives
- Think Spot Journal - Reflection Journal
- Algorithm - A list of steps to finish a task.
- Bug - Part of a program that does not work correctly.
- Debugging - Finding and fixing problems in an algorithm or program.
- Program - An algorithm that has been coded into something that can be run by a machine.
Warm Up (5 min)
Start by asking the class if anyone has heard of robotics. Has anyone seen a robot or touched one? Does a robot really “hear” you speak? Does it really “understand” what you say? The answer to the last question is: “Not the same way that a person does.”
Robots operate off of instructions, specific sets of things that they have been preprogrammed to do. In order to accomplish a task, a robot needs to have a series of instructions (sometimes called an algorithm) that it can read. Today, we are going to learn what it takes to make that happen.
If you feel that there is time, it might be helpful to do a quick example. Page 6 and 7 of My Robotic Friends - Teacher Prep Guide describe how to do a simple example before the main activity. This example could be up to 10 minutes in length.
Main Activity (45 min)
My Robotic Friends
While the robot is working on the stack make sure that the class knows:
- Programmers are not allowed to talk when the robot is working. This includes blurting out answers or pointing out when the robot has done something wrong.
- Programmers should raise their hand if they see a bug.
Display a copy of the My Robotic Friends - Symbol Key (or write the symbols on the board). Step to the side and tell the class that these will be the only six symbols that they will be using for this exercise. For this task, they will instruct their “robot” friend to build a specific cup stack using only the arrows listed on the My Robotic Friends - Symbol Key.
Group the class into pairings or groups of 3. Have the groups pick the first "robot" (there should be enough time for everyone to have their turn). Have the "robots" to leave the classroom until they are called back in.
Display Stacking Cup Ideas - Manipulatives to the rest of the class. Have each group choose which idea they would like the robot to do. Try to push for an easier idea for the first time, then choose a more complex design later on.
Let each group discuss how the stack should be built, then instruct each group to translate the algorithm into the symbols. Make sure each group writes down the symbol algorithm somewhere for the "robot" to read later.
Once the groups have all decided on their algorithms, ask the "robots" to come back in. We recommend continuing to display the My Robotic Friends - Symbol Key while the robots are building the stack so the student robot remembers what each command means.
This activity can be done in one large group, if your class feels uncomfortable with small groups.
If a student sees a bug and raises their hand, have the robot finish the instructions to the best of their ability. Afterward, have the students discuss the potential bug and come up with a solution. Continue repeating until the stack is built properly.
Once the stack is built, you can choose to repeat the activity again with another student robot.
Wrap Up (10 min)
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.
- What was today’s lesson about?
- How did you feel during today’s lesson?
- Draw a stack of cups that the robot made today.
- Draw a stack of cups that you would like a robot to make someday!
CSTA K-12 Computer Science Standards
AP - Algorithms & Programming
- 1B-AP-11 - Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.
- 1B-AP-13 - Use an iterative process to plan the development of a program by including others' perspectives and considering user preferences.
This list represents opportunities in this lesson to support standards in other content areas.
Common Core English Language Arts Standards
L - Language
- 5.L.6 - Acquire and use accurately grade-appropriate general academic and domain-specific words and phrases, including those that signal contrast, addition, and other logical relationships (e.g., however, although, nevertheless, similarly, moreover, in addition).
SL - Speaking & Listening
- 5.SL.1 - Engage effectively in a range of collaborative discussions (one-on-one, in groups, and teacher-led) with diverse partners on grade 5 topics and texts, building on others’ ideas and expressing their own clearly.
- 5.SL.1.b - Follow agreed-upon rules for discussions and carry out assigned roles.
- 5.SL.1.c - Pose and respond to specific questions by making comments that contribute to the discussion and elaborate on the remarks of others.
- 5.SL.4 - Report on a topic or text or present an opinion, sequencing ideas logically and using appropriate facts and relevant, descriptive details to support main ideas or themes; speak clearly at an understandable pace.
- 5.SL.6 - Adapt speech to a variety of contexts and tasks, using formal English when appropriate to task and situation.
Common Core Math Standards
MP - Math Practices
- MP.1 - Make sense of problems and persevere in solving them
- MP.2 - Reason abstractly and quantitatively
- MP.3 - Construct viable arguments and critique the reasoning of others
- MP.5 - Use appropriate tools strategically
- MP.6 - Attend to precision
- MP.7 - Look for and make use of structure
- MP.8 - Look for and express regularity in repeated reasoning
Next Generation Science Standards
ETS - Engineering in the Sciences
ETS1 - Engineering Design
- 3-5-ETS1-1 - Define a simple design problem reflecting a need or a want that includes specified criteria for success and constraints on materials, time, or cost.
- 3-5-ETS1-3 - Plan and carry out fair tests in which variables are controlled and failure points are considered to identify aspects of a model or prototype that can be improved.