English
Related papers

Related papers: An Inquisitive Code Editor for Addressing Novice P…

200 papers

Generative artificial intelligence poses new challenges around assessment, increasingly driving introductory programming educators to employ invigilated exams. But exams do not afford more authentic programming experiences that involve…

Computers and Society · Computer Science 2024-11-19 Suhas Kannam , Yuri Yang , Aarya Dharm , Kevin Lin

Novice programmers often struggle through programming problem solving due to a lack of metacognitive awareness and strategies. Previous research has shown that novices can encounter multiple metacognitive difficulties while programming.…

Finding and fixing errors is a time-consuming task not only for novice programmers but also for expert programmers. Prior work has identified frequent error patterns among various levels of programmers. However, the differences in the…

Software Engineering · Computer Science 2024-04-01 Atsushi Shirafuji , Taku Matsumoto , Md Faizul Ibne Amin , Yutaka Watanobe

AI coding assistants are now central to professional software development, yet their impact on how developers think about and practice security remains poorly understood. While prior work has documented vulnerability rates in AI-generated…

We asked students to explain the structure and execution of their small programs after they had submitted them to a programming exercise. These questions about learner's code (QLCs) were delivered at three occasions in an online and open…

Computers and Society · Computer Science 2021-07-06 Teemu Lehtinen , Aleksi Lukkarinen , Lassi Haaranen

Novice programmers often struggle to comprehend code due to vague naming, deep nesting, and poor structural organization. While explanations may offer partial support, they typically do not restructure the code itself. We propose code…

Software Engineering · Computer Science 2026-04-20 Subarna Saha , Alif Al Hasan , Fariha Tanjim Shifat , Mia Mohammad Imran

Cognitive biases appear during code review. They significantly impact the creation of feedback and how it is interpreted by developers. These biases can lead to illogical reasoning and decision-making, violating one of the main hypotheses…

Software Engineering · Computer Science 2024-07-02 Tobias Jetzen , Xavier Devroey , Nicolas Matton , Benoît Vanderose

Large-scale generative models enabled the development of AI-powered code completion tools to assist programmers in writing code. However, much like other AI-powered tools, AI-powered code completions are not always accurate, potentially…

Human-Computer Interaction · Computer Science 2024-11-12 Helena Vasconcelos , Gagan Bansal , Adam Fourney , Q. Vera Liao , Jennifer Wortman Vaughan

Producing high-quality code is essential as it makes a codebase more maintainable, reducing the cost and effort associated with a project. However, students learning to program are often given short, automatically graded programming tasks…

Computers and Society · Computer Science 2024-10-28 Etienne Naude , Paul Denny , Andrew Luxton-Reilly

Obfuscation is the action of making something unintelligible. In software development, this action can be applied to source code or binary applications. The aim of this dissertation was to implement a tool for the obfuscation of C and C++…

Programming Languages · Computer Science 2020-03-10 Dominik Picheta

Context. Code understandability is fundamental. Developers need to understand the code they are modifying clearly. A low understandability can increase the amount of coding effort, and misinterpreting code impacts the entire development…

Software Engineering · Computer Science 2024-07-16 Matteo Esposito , Andrea Janes , Terhi Kilamo , Valentina Lenarduzzi

Unreadable code could be a breeding ground for errors. Thus, previous work defined approaches based on machine learning to automatically assess code readability that can warn developers when some code artifacts (e.g., classes) become…

Software Engineering · Computer Science 2025-03-12 Antonio Vitale , Emanuela Guglielmi , Rocco Oliveto , Simone Scalabrino

In code comprehension experiments, participants are usually told at the beginning what kind of code comprehension task to expect. Describing experiment scenarios and experimental tasks will influence participants in ways that are sometimes…

Software Engineering · Computer Science 2023-09-19 Marvin Wyrich , Lasse Merz , Daniel Graziotin

As programmers write code, they often edit and retry multiple times, creating rich "interaction traces" that reveal how they approach coding tasks and provide clues about their level of skill development. For novice programmers in…

Machine Learning · Computer Science 2026-04-16 Alexis Ross , Megha Srivastava , Jeremiah Blanchard , Jacob Andreas

Context: Writing Clean Code understandable by other collaborators has become crucial to enhancing collaboration and productivity. However, very little is known regarding whether developers agree with Clean Code Principles and how they apply…

Software Engineering · Computer Science 2022-08-16 Kevin Ljung , Javier Gonzalez-Huerta

Program errors can occur in any type of programming, and can manifest in a variety of ways, such as unexpected output, crashes, or performance issues. And program error diagnosis can often be too abstract or technical for developers to…

Software Engineering · Computer Science 2025-01-07 Zhenyu Xu , Victor S. Sheng

Recruiting professional programmers in sufficient numbers for research studies can be challenging because they often cannot spare the time, or due to their geographical distribution and potentially the cost involved. Online platforms such…

Human-Computer Interaction · Computer Science 2021-03-09 Anastasia Danilova , Alena Naiakshina , Stefan Horstmann , Matthew Smith

Code completion has become a common practice for programmers during their daily programming activities. It aims at automatically predicting the next tokens or lines that the programmers tend to use. A good code completion tool can…

Software Engineering · Computer Science 2023-01-11 Chaozheng Wang , Junhao Hu , Cuiyun Gao , Yu Jin , Tao Xie , Hailiang Huang , Zhenyu Lei , Yuetang Deng

Parsons problems are a type of programming activity that present learners with blocks of existing code and requiring them to arrange those blocks to form a program rather than write the code from scratch. Micro Parsons problems extend this…

Human-Computer Interaction · Computer Science 2024-05-31 Zihan Wu , David H. Smith

An important goal for programmers is to minimize cost of identifying and correcting defects in source code. Code review is commonly used for identifying programming defects. However, manual code review has some shortcomings: a) it is time…

Software Engineering · Computer Science 2018-09-13 Balwinder Sodhi , Shipra Sharma