During programming courses at high school, it sometimes happens that students lose their motivation for work, as the results of the programming are mostly visible as text on the screen. By using robots in a classroom, we enable the students to see the results of their work on reality – a robot, which they can see, and which shows “in the reality”, if the programming has been done correctly. From this point of view, programming can also be fun.
Firstly, robots can be used in theoretical lessons for the demonstration of programming functions or just for executing a simple code. The teacher, instead of compiling and executing a code on computer, uses programming interface and uploads program on microcontroller on a robot and then executes it. When new examples of a code are shown, students can see, e.g., the results of the executed code in robot's movement or signaling, etc. During such theoretical lessons, students remember much more and it is easier for them to transfer the acquired knowledge into practical lessons.
Secondly, during practical lessons, students work on practical real-world examples, create a program and test it on robots. Robots can be used from the very first beginning of a programming courses, for easy examples, such as turning “on and off a LED” or to make a robot move. As programming codes evolve, more and more practical examples can be used.
Teacher can invent a scenario for a set of lessons where students solve complex problems, using decomposition into smaller parts, and by solving each part and combining solutions into a final program. Using this kind of approach, collaboration between students is also important. Teacher can create teams of students. Teams get a problem to solve and can compete between each other. Inside each team, members create a list of tasks to be done and each member picks a task that he or she will accomplish. This is similar to the work of a real programming team in a software company.
Benefits of using robots in classes:
- Students see what is the purpose of each theoretical lesson, when the programs are demonstrated on a real example (robot)
- Using visualization of theoretical lesson content is easily remembered
- “Learn by doing” – practical lessons include active student's involvement and with such approach, gathered knowledge is more comprehensive
- Working on real problems in teams involves collaboration; consequently, students also enhance their communication skills
- Students acquire useful knowledge and skills. They are better prepared for a real-life challenges when will they be working in a company
- Using robots reinforces skills, such as critical thinking and problem solving. Students learn to think creatively
- Last but not least, students get a high level of motivation for further courses