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.
- 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 Cups Ideas - Manipulatives per group.
- Make sure each student has a Think Spot Journal - Reflection Journal.
For the Teacher
- My Robotic Friends - Teacher Prep Guide
- My Robotic Friends - Video
- My Robotic Friends - Symbol Key
- Stacking Cups 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 Cups 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.