In my Game Development II class today, we were learning about the Math class in Java. Of course, this quickly went off topic as I had to explain, again, the importance of math in game development. Once I got the train back on the track and made it through my demo, I explained what the exercises were. I had four different examples of coding using the Math class. I put the students into groups of four and assigned each student one of the exercises.
The students were temporarily relieved that they were only going to have to code one of the four, but that feeling of relief didn’t last long. The students were instructed to explain their exercise to the other group members. I had told the class that they would be presenting an exercise, but it would not be theirs. I would randomly pick an exercise that they had not personally coded to present to the class and I would grade the entire group on how well the presentations went. The chorus of groans was loud and students were asking why was I doing this to them.
I had told them that they were pretty good at getting code to work, but their commenting skills within the code was lacking. I added that if you cannot explain the code and how it works to one of your teammates, do you really understand what you are doing. The students completed the coding portion before lunch and I told them after lunch they would have time to explain the code to the rest of the team. The students came back from lunch and were quickly huddling around each team members project as they explained what was happening in the code. Once the students started to get off track, I announced it was time to start presenting.
I didn’t want to spend the rest of the class period with student rehashing out the same example over and over again so I picked one student for each example. The example they used was my answer key without the comments explaining the code. This threw the presenters off because when they were taught the exercise from a team member, the focus was on using the comments to explain the code and not looking at the code itself. The presenters rebounded well once they took a breath and looked at the code. In the end, they did a good job presenting the exercise.
My goal today wasn’t to trip up the presenters. It was to get the students to be more effective in commenting their code because they had been getting lazy as of late. The second goal was to get the students to understand what the code actually does and to explain it to someone else so that they understand it. I could have done this differently by checking the comments more thoroughly in the code and ask more questions during a presentation, but this gave the students an opportunity to teach and communicate to their peers on a topic outside of the normal high school student conversation.
