Using competitions to motivate students is a well-known practice that has proved to be successful. Nevertheless, grading students only through their results in the competition could unfairly limit the range of grades that each student can get: regardless of the quality of the different teams participating, one student must necessarily win the tournament, another must be second, and so on until the last place. In fact, player rankings are relative assessments that are conditioned by the performance of every student. In this paper, we propose solving this issue by making students do a code review before betting on the competition. By betting, the grade of students depends both on the performance of their own solution and the one they bet on. This way, grades represent not only coding skills, but also code analysis skills, widening the attainable range of grades and allowing for a fairer grade distribution. As a result, students that are not so proficient in coding are rewarded if they demonstrate they can do a good analysis of the source code written by others, which is a very valuable skill in the professional world. We provide a case study in an undergraduate course, showing positive results.
- code review
- goftware development