WIP: Common Programming Mistakes by Students in an Introductory Embedded Systems Course

This work-in-progress innovative practice paper describes programming mistakes commonly made by students in an introductory embedded systems course and explains them using an antipattern framework. Students in introductory programming courses make mistakes in their code resulting in compile-time and run-time errors that may be difficult to understand as novice programmers. Error messages and debugging tools may not offer much help to novice programmers. Recent work in programming education is using language-specific antipatterns to characterize common errors. Antipatterns (mistakes or errors) can be identified in student code, and students then receive tutorial-oriented feedback to explain the error in terms familiar to them from the course. Software tools are automating the process of providing feedback to students about antipatterns found in their code. In this paper, we describe the study being conducted to identify and classify common antipatterns in C code written by students in an introductory embedded systems course. Antipattern data are being collected from the literature, inspection of student code, and instructor, teaching assistant, and student observations and interviews. Relevant and understandable feedback for each antipattern is also being collected and composed. We are also interested in how antipatterns by students evolve over time, the effect of feedback, and how different development environments support feedback to students. This paper summarizes preliminary results of the study, including several embedded C antipatterns, code examples, and feedback. This work has the potential to improve embedded system teaching and learning. The focus on novice programmers highlights the need for specialized educational tools for this group of students and the potential to further personalize individual learning.

Authors

Institutions

Publication Details

Published
2024-10-13
DOI
https://doi.org/10.1109/fie61694.2024.10893556
Citations
1
Primary Topic
Experimental Learning in Engineering
Type
article
Field-Weighted Citation Impact
0.32
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

WIP: Common Programming Mistakes by Students in an Introductory Embedded Systems Course

Diane T. Rover, Fana Teffera, J. Robertson
1 citations
Experimental Learning in Engineering
0.32
article

WIP: Common Programming Mistakes by Students in an Introductory Embedded Systems Course

Diane T. Rover, Fana Teffera, J. Robertson
article en
1 citations

Abstract

This work-in-progress innovative practice paper describes programming mistakes commonly made by students in an introductory embedded systems course and explains them using an antipattern framework. Students in introductory programming courses make mistakes in their code resulting in compile-time and run-time errors that may be difficult to understand as novice programmers. Error messages and debugging tools may not offer much help to novice programmers. Recent work in programming education is using language-specific antipatterns to characterize common errors. Antipatterns (mistakes or errors) can be identified in student code, and students then receive tutorial-oriented feedback to explain the error in terms familiar to them from the course. Software tools are automating the process of providing feedback to students about antipatterns found in their code. In this paper, we describe the study being conducted to identify and classify common antipatterns in C code written by students in an introductory embedded systems course. Antipattern data are being collected from the literature, inspection of student code, and instructor, teaching assistant, and student observations and interviews. Relevant and understandable feedback for each antipattern is also being collected and composed. We are also interested in how antipatterns by students evolve over time, the effect of feedback, and how different development environments support feedback to students. This paper summarizes preliminary results of the study, including several embedded C antipatterns, code examples, and feedback. This work has the potential to improve embedded system teaching and learning. The focus on novice programmers highlights the need for specialized educational tools for this group of students and the potential to further personalize individual learning.

Iowa State University (US)
Openalex Percentile: Top 32%
Experimental Learning in Engineering
0.32
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

WIP: Common Programming Mistakes by Students in an Introductory Embedded Systems Course — Diane T. Rover, Fana Teffera, et al. · (2024) | TGRS Research Map | TGRS