This arrangement gave students little to be motivated about, particularly when they found assignments to be boring or inapplicable to real life situations. As a result, student teams are active in the design of relatively sophisticated and highly motivating tasks from day one. At the beginning of the semester, students form seven or eight teams of three. The teams meet in a computer lab and are responsible for collaboratively designing software that directs the robot to perform various tasks. A mini-competition is held every two weeks to assess progress and to encourage new approaches to solving problems that teams may be encountering.
Groups also submit weekly code reviews and status reports.
In addition to the hands-on projects, students read textbooks, listen to lectures, and write explanations of their lab work in order to prepare for exams. The course typically culminates with a final competition, such as Robo-Hoops. An undergraduate intern assists student teams with technical knowledge and group management skills. While previous methods for teaching this course were found to be dry and contrived, students find robot design to be motivating and compelling. In effect, they become more involved and more enthusiastic about the course work.