{'fraction_non_alphanumeric': 0.020174848688634835, 'fraction_numerical': 0.0013449899125756557, 'mean_word_length': 5.174273858921162, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Using Virtual Programming Lab to improve learning programming: The case of Algorithms and Programming

Programming is one of the basic skills that students must acquire. However, learning to program is not an easy task. Also teaching programming is an arduous but challenging task, requiring close follow‐up and constant and meaningful feedback. So the main question is: how can we help teachers and students to achieve these goals? We identified a tool that can be useful to this purpose. That is Virtual Programming Lab (VPL), a Moodle plugin that allows students to submit their code and get prompt feedback without the teacher's intervention. In order to test this concept, an experiment was performed with several classes of beginner programming students, in two editions of Algorithms and Programming course unit of the degree in Informatics Engineering lectured at the Informatics Engineering Department at the School of Engineering, Polytechnic Institute of Porto. The students were challenged to test their assignments in VPL with a set of test values previously defined by the teachers. After the experiments, we used surveys to gather the involved students' and teachers' opinion, and more than 70% of the students answered that they considered the VPL an added value for the teaching–learning process. The dynamics verified in the classes, the general opinion of the teachers, and the acceptance and participation of the students allow to classify the experience as positive.