Tuesday, July 12, 2022

Summer Course Revisions: CS315 Game Programming

My recent blog post on the topic confirmed my recollection that I've been generally happy with the Game Programming class. I've just published the initial course site, which includes the first three project specifications. I expect these will be followed by a midterm and the final project, but I want to meet the students before I commit to that. I made some minor wording changes to the overview page but no policy changes. 

I did make one important change to the projects: I got rid of a race condition. The students will still be participating in checklist-based assessment, where I give them a checklist and then turn it back in to let me know what they did. They will also be using GitHub's Release feature, along with semantic versioning, to mark the end of each iteration of multi-iteration projects. Previously, however, these two requirements were at odds. The checklist was part of the README.md file, and the requirement to make a Release was one of the items. This means that a student had to choose one of the following:

  • Check the box before making the release, commit that change, and then make a release. This means that they have checked the box before doing the work, which is contrary to the idea of checklists.
  • Make a release, then check the box and make a commit. This means that the README.md file was not up to date in the release.
I puzzled over this a bit and, after some experimentation, decided that a good solution was to remove the project report (which includes the checklist) from the README.md file entirely. Instead, students will now be completing their project reports using the Wiki feature on GitHub. The wiki is still maintained in Markdown, which means I can keep the model wherein students download the checklists from the course page. However, it is not in the source repository but is actually a separate one alongside it, a fact that can be confirmed by cloning one of the wikis. 

The next Ludum Dare once again aligns with the second iteration of the second project. Like last year, then, I will be allowing students to either complete the second iteration as given or participate in Ludum Dare. Last year, this option was nested into the Project 2 Iteration 2 specification, which left it unclear exactly how it would be evaluated. I have pulled it out into its own heading and given it its own specifications. It will be interesting to see if students take this option.

No comments:

Post a Comment