For novice coders, grasping the concept that one command, or block, causes one robot behavior, and how the robot will only do exactly what you tell it to do, is not something that happens immediately. While a student can walk from their desk to the door, the robot needs to know how many steps to take, where to turn, how much to turn, and what order to do those actions in. This sequencing is at the heart of computer science, and can be a big hurdle for students who are trying to wrap their heads around learning a new programming language and a new robot all at the same time.
To help support this learning, there is a built-in Button Coding Project that functions like the Touch buttons on VEX 123. Using the Button Coding interface, students can code the AIM Robot to carry out a sequence of basic movements, in a specific order, to accomplish a task. They can start to build their understanding of basic sequences and of breaking a task down into its component steps (the foundation of decomposition) without having to open VEXcode.
Here’s a video showing the Button Coding project in action -
There are a lot of really cool features that make this project extra special:
- The counter in the center Start button counts up with each button press! This is a great way to keep track of how many steps you’ve added to your project. It also counts up as the project is executed! This is a really helpful visual, especially for debugging. Not sure where your project went wrong? Watch for the number of the behavior.
- The Buttons highlight as the project is executed also, giving an additional visual cue to connect the individual button presses, or commands, to the behavior of the robot.
- Button Coding is additive, so you don’t have to code the entire path at once. You can go partway, see where you end up, and then determine the necessary next steps to complete the task.
While Button Coding, students have a limited number of commands as well. So they won’t get distracted or overwhelmed by all of the blocks in the Toolbox, and can instead stay focused on the path they’re trying to drive. However, the Kicker feature is still active! In this video, the AIM Robot will pick up a ball along the path and kick it to the wall.
The possibilities for ways to use Button Coding with students of any age as a great introduction to coding are really exciting to me, and I hope they are to you too! What do you think?