In a previous publication we examined the connections between high-school computer science (CS) and computing higher education. The results were promising—students who were exposed to computing in high school were more likely to take one of the computing disciplines. However, these correlations were not necessarily causal. Possibly those students who took CS courses, and especially high-level CS courses in high school, were already a priori inclined to pursue computing education. This uncertainty led us to pursue the current research. We aimed at finding those factors that induced students to choose CS at high school and later at higher-education institutes. We present quantitative findings obtained from analyzing freshmen computing students' responses to a designated questionnaire. The findings show that not only did high-school CS studies have a major impact on students’ choice whether to study computing in higher education—it may have also improved their view of the discipline.
In programming problem solving activities, sometimes, students need feedback to progress in the course, being positively affected by the received feedback. This paper presents an overview of the state of the art and practice of the feedback approaches on introductory programming. To this end, we have carried out a systematic literature mapping to understand and discuss the main approaches for providing and evaluating feedback used in the learning of novice programmers in the problem solving activity. Thus, according to a formal protocol, an automatic search was performed for papers from 2016 to 2021. As a result, 39 studies were selected for the final analysis. As a result, we propose three different categorizations: the main approaches to providing feedback, the main methods used in the evaluation and the main aspects and effects of the evaluated feedback.
The contents taught in the programming subjects have a great relevance in the formation of computing students. However, these subjects are characterized by high failure rates, as they require logical reasoning and mathematical knowledge. Thus, establishing knowledge through the subject of algorithms can help students to overcome these difficulties and absorb the contents and skills required. Thus, this work aims to present and discuss the results of a second experiment on the application of a teaching plan composed of several active methodologies (Virtual Learning Environments, Coding Dojo, Gamification, Problem-Based Learning, Flipped Classroom and Serious Games) in an algorithms subject. Based on this experiment, it was evaluated whether there were learning gains compared to the learning acquired with the traditional method. Finally, an analysis was performed using the two-tailed Student-t approach, used for independent samples, which presented statistically significant results.
Background: Petri nets are a formal specification technique for modelling of control processes and modern flexible manufacturing systems. Interpreted Petri nets take into account input and output signals, allowing to apply them in any control system or even in control part of a cyber-physical system. Due to the fact that Petri nets are not used in the industrial practice, the students sometimes lack motivation to learn them. Contributions: In the paper we propose how to help students learn interpreted Petri nets with Minecraft (as a game-based learning). We show how interpreted Petri nets can be modelled in Minecraft and how they communicate with the surrounding environment via input and output signals to visualize control processes. The proposed approach has been validated experimentally among university students. Hypotheses: (1) Creating interpreted Petri net models with Minecraft helps to understand the basic principles; (2) Minecraft makes the course more attractive. Methodology: Students were divided into an experimental group (with game-based learning) and a control group (with traditional learning). The experimental group filled in a knowledge test twice (on the entry and on the exit) and a questionnaire. The control group filled in the same knowledge test at the end of the course. Findings: The observations confirm that the Minecraft-based teaching of interpreted Petri nets allows to gain better results in final tests, making at the same time the course more attractive and enjoyable.
Prior programming knowledge of students has a major impact on introductory programming courses. Those with prior experience often seem to breeze through the course. Those without prior experience see others breeze through the course and disengage from the material or drop out. The purpose of this study is to demonstrate that novice student programming behavior can be modeled as a Markov process. The resulting transition matrix can then be used in machine learning algorithms to create clusters of similarly behaving students. We describe in detail the state machine used in the Markov process and how to compute the transition matrix. We compute the transition matrix for 665 students and cluster them using the k-means clustering algorithm. We choose the number of cluster to be three based on analysis of the dataset. We show that the created clusters have statistically different means for student prior knowledge in programming, when measured on a Likert scale of 1-5.
Although Machine Learning (ML) has already become part of our daily lives, few are familiar with this technology. Thus, in order to help students to understand ML, its potential, and limitations and to empower them to become creators of intelligent solutions, diverse courses for teaching ML in K-12 have emerged. Yet, a question less considered is how to assess the learning of ML. Therefore, we performed a systematic mapping identifying 27 instructional units, which also present a quantitative assessment of the students’ learning. The simplest assessments range from quizzes to performance-based assessments assessing the learning of basic ML concepts, approaches, and in some cases ethical issues and the impact of ML on lower cognitive levels. Feedback is mostly limited to the indication of the correctness of the answers and only a few assessments are automated. These results indicate a need for more rigorous and comprehensive research in this area.
Due to technological advancements, robotics is findings its way into the classroom. However, workload for teachers is high, and teachers sometimes lack the knowledge to implement robotics education. A key factor of robotics education is peer learning, and having students (near-)peers teach them robotics could diminish workload. Therefore, this study implemented near-peer teaching in robotics education. 4 K10-11 secondary school students were teachers to 83 K5-6 primary school students. The intervention included 4 3-hour robotics lessons in Dutch schools. Primary school students completed a pre- and post-intervention questionnaire on their STEM-attitudes and near-peer teaching experience, and a report on their learning outcomes. Interaction with near-peer teachers was observed. After the lessons, a paired-samples t-test showed that students had a more positive attitude towards engineering and technology. Students also reported a positive near-peer teaching experience. Conventional content analysis showed that students experienced a gain in programming and robotics skill after the lessons, and increased conceptual understanding of robotics. The role the near peer teachers most frequently fulfilled was formative assessor. Near-peer teachers could successfully fulfil a role as an engaging information provider. This study shows that near-peer teachers can effectively teach robotics, diminishing workload for teachers. Furthermore, near-peer robotics lessons could lead to increased STEM-attitudes.