Almost two years ago, we started developing the very first version of CodeGrade as part of a course in our Computer Science bachelor at the University of Amsterdam. The idea for a blended learning tool to improve programming education emerged from our own frustrations as students and teaching assistants at the university. We thought the feedback we got on our assignments, if we even got any feedback at all, was inadequate and did not effectively made us learn from our mistakes. Later, as teaching assistants, we found out that the amount of overhead and lack of efficient and code-specific tools made it almost impossible to provide sufficient feedback or to check for plagiarism.
After finishing the first version of CodeGrade for the Software Engineering course - which looked completely different (read unattractive) and only had basic functionalities - the University of Amsterdam became interested in actually using the tool in their first-year programming courses in fall 2017. With financial support from the University of Amsterdam, we continued to develop CodeGrade in close collaboration with the teaching staff at the University of Amsterdam. In that year we had, amongst other things, completely redesigned CodeGrade, added the Filesystem with support for automated grading, and added an integrated Plagiarism detection system. CodeGrade finally started to take shape and look better, and the teaching staff loved it!