Week 2 (5/27/24 - 5/31/24)
This week was more focused on finishing our code for the first autograder. There were a lot of errors that stemmed from reading the output of test solutions incorrectly. However, we were able to finish writing all the test cases and were able to get the expected outputs. We did notice some issue with how our autograder would grab the output of the code but this was adressed with our mentor. We moved into the next step which is to perform code review with our Professors. They gave us comments regarding formatting and potential bugs that we had to address. It’s been going back and forth to make sure we grab all issues with our code. Also, I was able to get started on the next autograder, which is more of an individual task now. The online course this week has mostly focused on performing more literature review and finding good parts of scientific papers.
I have read two papers this week as well:
- “An automatic grading system for a high school-level computational thinking course” by Sirazum Munira Tisha, Rufino A. Oregon, Gerald Baumgartner, Fernando Alegre, and Juana Moreno.
This paper focused on designing a system that could help instructors grade code that had visual/graphical output. The researchers noted that it would be difficult to grade the output, so they focused on grading the actual code. They focused on designing a system to grade the “elegance” of a student’s code, which focuses on aspects like lines, variables, strings, etc. This system performed well in classifying a student’s code as elegant or non-elegant. It was shown that this helped the instructors focus more on grading the output as they had a system to help grade the actual code.
- “Generating data-driven hints for open-ended programming.” by Price, Thomas W., Yihuan Dong, and Tiffany Barnes.
This paper focused on creating an algorithm that could give hints to students working on open-ended coding assignments. There are autograders that can give hints to students as feedback but they don’t typically work well on open-ended assignments. The researchers built an algorithm that was based on the Hint Factory, a system that uses student data to generate hints. This new algorithm focused on analyzing smaller parts of a student’s code and then used that data to generate hints for the overall assignment. The algorithm performed well on an open-ended assignment but much work is still needed.