In this WIP Research to Practice paper, we explored the impact of integrating the university's learning management system and an automatic grading system in delivering a large-scale introduction to programming cou...
详细信息
ISBN:
(纸本)9781538611746
In this WIP Research to Practice paper, we explored the impact of integrating the university's learning management system and an automatic grading system in delivering a large-scale introduction to programming course in 2 consecutive quarters. Our initial approach utilizes an on-demand standalone automatic grading system and a separate assignment submission portal on Canvas. After evaluating our performance and specific student feedback, we integrated the assignment submission portal with the autograder system to provide a real-time objective assessment of assignments. The main improvement after enforcing assignment submission through the autograder (Stepik) was the noticeable improvement in the class average of assignment scores by 20.5% even though most of the test cases were hidden. Another interesting observation was the effect of our approach in decreasing the DFW rate to 12.5% from 46% and a considerable increase in the passing rate of female students, by 22%. We also noticed that in the second iteration of the course students who took the course as an elective were able to perform comparably and even better than students who took it as a requirement. It is also worth mentioning that using autograder helped students increase their code quality.
In this article we have presented the results of an empirical study which was carried out on 130 students in introduction to programming classes. Their initial preference, success rate, comprehension and subsequent pr...
详细信息
In this article we have presented the results of an empirical study which was carried out on 130 students in introduction to programming classes. Their initial preference, success rate, comprehension and subsequent preference were studied when dealing with programming tasks which could be solved using either iteration or recursion.
A typical CS1 class involves students working on solving programming problems. Before the pandemic, this occurred in a computer laboratory with a teacher who could quickly assist students having difficulty with their ...
详细信息
ISBN:
(纸本)9781450394338
A typical CS1 class involves students working on solving programming problems. Before the pandemic, this occurred in a computer laboratory with a teacher who could quickly assist students having difficulty with their work. Sometimes, there is a need for this intervention even without the student asking for help. An experienced teacher can sense the growing frustration of a student through their overall demeanor. A teacher can also watch how a student codes to provide quick hints to address potential problems. This kind of intervention is challenging to do in an online learning setting. A typical online meeting software provides a small and limited view of a student, often crowded with all the other students. As such, the visual cues of frustration can be easily lost in the noise. Not being able to see the student's code easily is also a problem. The system we are developing aims to create an online IDE that leverages gaze tracking and code logging to automatically identify these struggling students. In the first phase of the research, a learning model will be trained on students' gaze and code logs in line with their overall class performance. The second phase of the research will then use this model to predict the frustration level of student users. Collaboration and gamification strategies will be explored in the final stage of the research that would assist interventions of not just teachers but also classmates who are willing to help.
This Research-to-Practice Work in Progress (WIP) investigates the format of student assessment questions. In particular, the focus is on the relationship between student performance on open-ended, constructed-response...
详细信息
ISBN:
(纸本)9781728117461
This Research-to-Practice Work in Progress (WIP) investigates the format of student assessment questions. In particular, the focus is on the relationship between student performance on open-ended, constructed-response questions (CRQs) versus close-ended, multiple-choice-response questions (MCQs) in first-year introductory programming courses. We introduce a study to evaluate whether these different response formats return distinct or comparable results. In order to assess this, we compare and correlate student scores on each question type. Our focus is on assessments (exams and tests) in first-year classes. The paper investigates two first-year programming courses with a total of seven sections and approximately 180 combined students. The subject of the sequential set of courses is the procedural C programming language. Based on extant studies comparing student performance on MCQs to their performance on open-ended questions, we investigate whether MCQ scores predict CRQ scores. Preliminary results on the comparison between student performance on these two question formats are presented to assess whether MCQs produce similar results as CRQs, or whether MCQs yield unique contributions. Possible avenues for future work are also discussed.
The present work proposes the creation of a Virtual Reality tool that allows students to learn basic concepts of programming and computational thinking with the purpose that they enjoy the technology and feel motivate...
详细信息
ISBN:
(纸本)9781728103822
The present work proposes the creation of a Virtual Reality tool that allows students to learn basic concepts of programming and computational thinking with the purpose that they enjoy the technology and feel motivated to learn more. The tool is a Visual programming Language;the algorithms are formed by block-assembly, thereby solving one of the students' main problems, which are "syntax errors". In addition, the tool brings with it a set of level-ordered challenges aimed at teaching students basic principles of programming and logic (sequential programming, repetitive and conditional control structure), where at each level the student will learn the different concepts and behaviors of computational thinking. For the evaluations with the users we counted on the participation of 18 students between 12 and 15 years old coining from two public institutions of Rio de Janeiro. In these evaluations it was also considered to measure the sensation of immersion through Telepresence, Social Presence and Usability.
The reach of technology stretches across a wide variety of domains: from the health industry to entertainment and gaming. Software programming undoubtedly plays a major role in modern technology. Therefore, computer s...
详细信息
ISBN:
(纸本)9789819754403;9789819754410
The reach of technology stretches across a wide variety of domains: from the health industry to entertainment and gaming. Software programming undoubtedly plays a major role in modern technology. Therefore, computer science and programming education is of the utmost importance. In our research, we aim to investigate the best approaches and languages to be used to introduce programming to students and others wishing to learn to program. Indeed, there are numerous approaches to learning programming and lots of existing research regarding these approaches. There are also numerous programming languages and types of audiences. We highlight various methods that can be used to teach programming, and how those approaches can best be matched to different programming languages and audiences. We build upon existing research to reach conclusions, and we conduct our own survey that involves computer science students, computer science teachers, and software development professionals. Our goal is not to promote a certain approach or to promote a particular programming language. Rather, we find correlations and provide recommendations regarding which languages are most suitable for different approaches and audiences.
Computer programming courses are mandatory for many majors. However, the high rate of failures shows that students have difficulties in assimilating the topics. The objective of this research is to understand these di...
详细信息
Computer programming courses are mandatory for many majors. However, the high rate of failures shows that students have difficulties in assimilating the topics. The objective of this research is to understand these difficulties. Analyzing diaries filled out by students and interviews with instructors, we identified difficulties related to language and understanding and some strategies used to mitigate them. The analysis and understanding of the difficulties may support the creation of teaching strategies and tools to facilitate the teaching and learning of computer programming.
In today's teaching and learning approaches for first-semester students, practical courses more and more often complement traditional theoretical lectures. This practical element allows an early insight into the r...
详细信息
In today's teaching and learning approaches for first-semester students, practical courses more and more often complement traditional theoretical lectures. This practical element allows an early insight into the real world of engineering, augments student motivation, and enables students to acquire soft skills early. This paper describes a new freshman introduction course into practical engineering, which has been established within the Bachelor of Science curriculum of Electrical Engineering and Information Technology of RWTH Aachen University, Germany. The course is organized as an eight-day, full-time block laboratory for over 300 freshman students, who were supervised by more than 60 tutors from 23 institutes of the Electrical Engineering Department. Based on a threefold learning concept comprising mathematical methods, MATLAB programming, and practical engineering, the students were required to transfer mathematical basics to algorithms in MATLAB in order to control LEGO Mindstorms robots. Toward this end, a new toolbox, called the "RWTH-Mindstorms NXT Toolbox," was developed, which enables the robots to be controlled remotely via MATLAB from a host computer. This paper describes how the laboratory course is organized and how it induces students to think as actual engineers would in solving real-world tasks with limited resources. Evaluation results show that the project improves the students' MATLAB programming skills, enhances motivation, and enables a peer learning process.
Novice programmers, have diffucalties in understanding fundamental programming concepts and methods. In order to overcome these difficulties, several nethods have been proposed, such as programming mechanical construc...
详细信息
ISBN:
(纸本)9781934272114
Novice programmers, have diffucalties in understanding fundamental programming concepts and methods. In order to overcome these difficulties, several nethods have been proposed, such as programming mechanical constructions (educational robotics). In this paper we present a comparison between two programming environments for the LEGO robots, used in the teaching of programming to young pupils. Our results seem to suggest that probably, a text-based interface, such as BrickxCC, could be at least equally effective, if not more effective, as totally graphical interfaces, often used to introductory programming courses.
programming courses can be challenging for first year university students, especially for those without prior coding experience. Students initially struggle with code syntax, but as more advanced topics are introduced...
详细信息
ISBN:
(纸本)9798400706004
programming courses can be challenging for first year university students, especially for those without prior coding experience. Students initially struggle with code syntax, but as more advanced topics are introduced across a semester, the difficulty in learning to program shifts to learning computational thinking (e.g., debugging strategies). This study examined the relationships between students' rate of programming errors and their grades on two exams. Using an online integrated development environment, data were collected from 280 students in a Java programming course. The course had two parts. The first focused on introductory procedural programming and culminated with exam 1, while the second part covered more complex topics and object-oriented programming and ended with exam 2. To measure students' programming abilities, 51095 code snapshots were collected from students while they completed assignments that were autograded based on unit tests. Compiler and runtime errors were extracted from the snapshots, and three measures - Error Count, Error Quotient and Repeated Error Density - were explored to identify the best measure explaining variability in exam grades. Models utilizing Error Quotient outperformed the models using the other two measures, in terms of the explained variability in grades and Bayesian Information Criterion. Compiler errors were significant predictors of exam 1 grades but not exam 2 grades;only runtime errors significantly predicted exam 2 grades. The findings indicate that leveraging Error Quotient with multiple error types (compiler and runtime) may be a better measure of students' introductory programming abilities, though still not explaining most of the observed variability.
暂无评论