Catalogs of C and Python Antipatterns by CS1 Students

04/02/2021
by   Yorah Bosse, et al.
0

Understanding students' programming misconceptions is critical. Doing so depends on identifying the reasons why students make errors when learning a new programming language. Knowing the misconceptions can help students to improve their reflection about their mistakes and also help instructors to design better teaching strategies. In this technical report, we propose catalogs of antipatterns for two programming languages: C and Python. To accomplish this, we analyzed the codes of 166 CS1 engineering students when they were coding solutions to programming exercises. In our results, we catalog 41 CS1 antipatterns from 95 cataloged misconceptions in C and Python. These antipatterns were separated into three catalogs: C, Python, and antipatterns found in code using both programming languages. For each antipattern, we present code examples, students' solutions (if they are present), a possible solution to avoid the antipattern, among other information.

READ FULL TEXT
research
04/14/2019

From Theory to Systems: A Grounded Approach to Programming Language Education

I present a new approach to teaching a graduate-level programming langua...
research
06/27/2019

Investigating Compilation Errors of Students Learning Haskell

While functional programming is an efficient way to express complex soft...
research
12/09/2022

Python client for Isabelle server

We contribute a Python client for the Isabelle server, which gives resea...
research
12/06/2021

Hyperstyle: A Tool for Assessing the Code Quality of Solutions to Programming Assignments

In software engineering, it is not enough to simply write code that only...
research
03/01/2021

PHIDL: Python CAD layout and geometry creation for nanolithography

Computer-aided design (CAD) has become a critical element in the creatio...
research
03/30/2022

Error Identification Strategies for Python Jupyter Notebooks

Computational notebooks – such as Jupyter or Colab – combine text and da...
research
05/19/2011

A Multiple-Choice Test Recognition System based on the Gamera Framework

This article describes JECT-OMR, a system that analyzes digital images r...

Please sign up or login with your details

Forgot password? Click here to reset