English
Related papers

Related papers: Scaffolding Progress: How Structured Editors Shape…

200 papers

Introductory programming courses aim to teach students to write code independently. However, transitioning from studying worked examples to generating their own code is often difficult and frustrating for students, especially those with…

Computers and Society · Computer Science 2023-12-01 Xinying Hou , Barbara J. Ericson , Xu Wang

Context: Software programs can be written in different but functionally equivalent ways. Even though previous research has compared specific formatting elements to find out which alternatives affect code legibility, seeing the bigger…

Software Engineering · Computer Science 2023-06-02 Delano Oliveira , Reydne Santos , Fernanda Madeiral , Hidehiko Masuhara , Fernando Castor

Structured merge tools exploit programming language syntactic structure to enhance merge accuracy by reducing spurious conflicts reported by unstructured tools. By creating and handling full ASTs, structured tools are language-specific and…

Software Engineering · Computer Science 2024-07-29 Guilherme Cavalcanti , Paulo Borba , Leonardo dos Anjos , Jonatas Clementino

When programming students encounter errors in their code, compiler messages or static analysis output often provide limited guidance, particularly for novice programmers. Personalized feedback from instructors can be effective but does not…

With the recent advances in AI programming assistants such as GitHub Copilot, programming is not limited to classical programming languages anymore--programming tasks can also be expressed and solved by end-users in natural text. Despite…

Software Engineering · Computer Science 2024-12-18 Ruchit Rawal , Victor-Alexandru Pădurean , Sven Apel , Adish Singla , Mariya Toneva

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. Code smells, which are recurring anomalies in design or style, have been extensively researched in professional code. However, their significance in block-based projects created by novices is still largely unknown. Block-based…

Software Engineering · Computer Science 2025-07-24 Ricardo Hidalgo Aragón , Jesús M. González-Barahona , Gregorio Robles

The blocks editor, such as the editor in Scratch, is widely applied for visual programming languages (VPL) nowadays. Despite it's friendly for non-programmers, it exists three main limitations while displaying block codes: (1) the…

Human-Computer Interaction · Computer Science 2016-05-04 Sheng-yi Hsu , Yuan-fu Lou , Chuen-tsai Sun

Open-ended programming increases students' motivation by allowing them to solve authentic problems and connect programming to their own interests. However, such open-ended projects are also challenging, as they often encourage students to…

Human-Computer Interaction · Computer Science 2021-04-27 Wengran Wang , Archit Kwatra , James Skripchuk , Neeloy Gomes , Alexandra Milliken , Chris Martens , Tiffany Barnes , Thomas Price

Structure or projectional editors are a well-studied concept among researchers and some practitioners. They have the huge advantage of preventing syntax and in some cases type errors, and aid the discovery of syntax by users unfamiliar with…

Human-Computer Interaction · Computer Science 2021-07-20 Maryam Hosseinkord , Gurleen Dulai , Narges Osmani , Christopher K. Anand

Proof Blocks is a software tool that provides students with a scaffolded proof-writing experience, allowing them to drag and drop prewritten proof lines into the correct order instead of starting from scratch. In this paper we describe a…

Computers and Society · Computer Science 2022-12-20 Seth Poulsen , Yael Gertner , Benjamin Cosman , Matthew West , Geoffrey L. Herman

Modern programming languages, such as Python, support language features from several paradigms, such as object-oriented, procedural, and functional. Research has shown that code written in some paradigms can be harder to comprehend, but to…

Software Engineering · Computer Science 2025-11-12 Samuel W. Flint , Jigyasa Chauhan , Niloofar Mansoor , Bonita Sharif , Robert Dyer

Teaching the software engineers of the future to write high-quality code with good style and structure is important. This systematic literature review identifies existing instructional approaches, their objectives, and the strategies used…

Software Engineering · Computer Science 2025-02-26 Sara Nurollahian , Hieke Keuning , Eliane Wiese

Neurodiverse learners often require reading supports, yet increasing scaffold richness can sometimes overload attention and working memory rather than improve comprehension. Grounded in the Construction-Integration model and a contingent…

Computation and Language · Computer Science 2026-04-03 Soufiane Jhilal , Eleonora Pasqua , Caterina Marchesi , Riccardo Corradi , Martina Galletti

The goal of our study is to evaluate the effect on program comprehension of three factors that have not previously been studied in a single experiment. These factors are programmer expertise (expert vs. novice), programming task…

Human-Computer Interaction · Computer Science 2016-08-16 Jean-Marie Burkhardt , Françoise Détienne , Susan Wiedenbeck

What factors impact the comprehensibility of code? Previous research suggests that expectation-congruent programs should take less time to understand and be less prone to errors. We present an experiment in which participants with…

Software Engineering · Computer Science 2013-04-29 Michael Hansen , Robert L. Goldstone , Andrew Lumsdaine

While teaching introductory programming courses for over a decade in reputed institutions we have experienced that several factors play significant role in developing problem solving skills and program development skills in students. There…

Computers and Society · Computer Science 2015-06-30 Biswajit Saha , Utpal Kumar Ray

The incorporation and adaptation of style guides play an essential role in software development, influencing code formatting, naming conventions, and structure to enhance readability and simplify maintenance. However, many of these guides…

Software Engineering · Computer Science 2024-08-28 Pablo Roberto , Rohit Gheyi , José Aldo Silva da Costa , Márcio Ribeiro

Whether it be source code in a programming language, prose in natural language, or otherwise, text is highly structured. Currently, text visualizations are confined either to _flat, line-based_ decorations, which can convey only limited…

Human-Computer Interaction · Computer Science 2025-12-18 Sam Cohen , Ravi Chugh

Python, one of the most prevalent programming languages today, is widely utilized in various domains, including web development, data science, machine learning, and DevOps. Recent scholarly efforts have proposed a methodology to assess…