DIGITAL LIBRARY
DIY PROGRAMMERS’ LMS
University of Debrecen (HUNGARY)
About this paper:
Appears in: INTED2020 Proceedings
Publication year: 2020
Pages: 3009-3013
ISBN: 978-84-09-17939-8
ISSN: 2340-1079
doi: 10.21125/inted.2020.0889
Conference name: 14th International Technology, Education and Development Conference
Dates: 2-4 March, 2020
Location: Valencia, Spain
Abstract:
People wishing to test their coding skills, whether they are learning it, teaching it, or doing it as a hobby, like to use portals where they can view and download programming questions as well as submit their answers, which the system runs and grades therefore giving instantaneous feedback to the user [1-5]. Here the idea is that every exercise has a set of unit tests (input-output pairs) associated with it, which all have to pass in order for a solution to be marked as correct. More advanced systems allow for a range of correct solutions, using checkers.

This is a great tool for beginner programmers, since they only have to write one program, and keep modifying it until all tests pass. However, different users may have different requirements, which these portals may not fulfil. For a competition [4,5] or an exam [2,3] we can only see whether a solution was correct, and which inputs failed. A beginner may need more. They would like to see why their solution was incorrect, for which inputs, and what their program should have returned in those cases. We cannot expect a single system to fulfil all such requirements. This prompted the redesign of the ProgCont system [3], originally designed at the University of Debrecen, by adding modules so that fitting these together new portals could be formed on demand for different purposes.

We involved numerous students in this process, and due to the breadth of the redesign, multiple final projects have been completed on this topic. The development of the whole system’s back-end - which is responsible for the testing - stayed the lecturer’s responsibility, as this requires the most programming knowledge, and is directly connected to the faculty’s servers. All student development concerned the front-end, though all of these can be thought of as a three-tier system, with its own storage as the faculty does not wish to be responsible for the GDPR regulations on the user interface. Therefore the management of locally installed front-end systems and the creation of the question-bank are left to the lecturer of the university or the high-school, which gives them extra responsibility but also the freedom to create questions and exercise sheets fit for their requirements and needs, and can have full control over what tests can be accessed by local users at any given time.

In this article, we present our system, the possible use-cases, detailing the ones that are implemented as well as introducing our further plans. We show how a lecturer can create their own questions and exercise sheets, which they can use in lectures and extracurricular activities.

References:
[1] Mester - online programming question bank, https://mester.inf.elte.hu, 2017
[2] Bíró - online programming exam site, https://biro.inf.elte.hu, 2015
[3] ProgCont - online programming exam site, https://progcont.hu, 2011
[4] Project Euler, https://projecteuler.net, 2001
[5] Advent of Code, https://adventofcode.com, 2015
Keywords:
Programming, LMS, auto-assessment, study group.