English
Related papers

Related papers: From Bugs to Breakthroughs: Novice Errors in CS2

200 papers

Answer Set Programming (ASP), a modern development of Logic Programming, enables a natural integration of Computing with STEM subjects. This integration addresses a widely acknowledged challenge in K-12 education, and early empirical…

Computers and Society · Computer Science 2022-08-08 Zach Hansen , Hanxiang Du , Wanli Xing , Rory Eckel , Justin Lugo , Yuanlin Zhang

Software Engineering as an industry is highly diverse in terms of development methods and practices. Practitioners employ a myriad of methods and tend to further tailor them by e.g. omitting some practices or rules. This diversity in…

Software Engineering · Computer Science 2018-09-25 Kai-Kristian Kemell , Anh Nguyen-Duc , Xiaofeng Wang , Juhanki Risku , Pekka Abrahamsson

Program decomposition is essential for developing maintainable and efficient software, yet it remains a challenging skill to teach and learn in introductory programming courses. What does program decomposition for procedural CS1 programs…

Software Engineering · Computer Science 2024-11-19 Georgiana Haldeman , Judah Robbins Bernal , Alec Wydra , Paul Denny

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.…

In the challenging field of introductory programming, high enrollments and failure rates drive us to explore tools and systems to enhance student outcomes, especially automated tools that scale to large cohorts. This paper presents and…

Software Engineering · Computer Science 2023-10-17 Andrew Taylor , Alexandra Vassar , Jake Renzella , Hammond Pearce

To broaden participation, competitive programming contests may include beginner-level problems that do not require knowledge of advanced Computer Science concepts (e.g., algorithms and data structures). However, since most participants have…

Computers and Society · Computer Science 2024-05-27 Mrigank Pawagi , Viraj Kumar

A substantial fraction of the time that computational modellers dedicate to developing their models is actually spent trouble-shooting and debugging their code. However, how this process unfolds is seldom spoken about, maybe because it is…

Computational Engineering, Finance, and Science · Computer Science 2022-11-04 Ester Comellas , Jean-Paul Pelteret , Wolfgang Bangerth

Programming is about automation in a wide variety of domains. Developing itself is one of those. As a side-effect, progress in automated coding may make people less willing to learn computer programming. This could become an issue, if the…

Programming Languages · Computer Science 2026-05-01 Attila Egri-Nagy

The recent, widespread availability of Large Language Models (LLMs) like ChatGPT and GitHub Copilot may impact introductory programming courses (CS1) both in terms of what should be taught and how to teach it. Indeed, recent research has…

Computers and Society · Computer Science 2024-06-25 Annapurna Vadaparty , Daniel Zingaro , David H. Smith , Mounika Padala , Christine Alvarado , Jamie Gorson Benario , Leo Porter

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

One source of software project challenges and failures is the systematic errors introduced by human cognitive biases. Although extensively explored in cognitive psychology, investigations concerning cognitive biases have only recently…

Software Engineering · Computer Science 2022-03-22 Rahul Mohanani , Iflaah Salman , Burak Turhan , Pilar Rodriguez , Paul Ralph

When teaching Programming and Software Engineering in Bachelor's Degree programs, the emphasis on creating functional software projects often overshadows the focus on software quality, a trend that aligns with ACM curricula recommendations.…

Immediate feedback has been shown to improve student learning. In programming courses, immediate, automated feedback is typically provided in the form of pre-defined test cases run by a submission platform. While these are excellent for…

The widespread establishment of computational thinking in school curricula requires teachers to introduce children to programming already at primary school level. As this is a recent development, primary school teachers may neither be…

Computers and Society · Computer Science 2021-11-04 Luisa Greifenstein , Isabella Graßl , Gordon Fraser

There are countless reasons cited in scientific studies to explain the difficulties in programming learning. The reasons range from the subject's complexity, the ineffective teaching and study methods, to psychological aspects such as…

Computers and Society · Computer Science 2020-06-26 Alberto Simões , Ricardo Queirós

Vector programming is an important topic in many Introduction to Computer Science courses. Despite the importance of vectors, learning vector programming is a source of frustration for many students. Much of the frustration is rooted in…

Data Structures and Algorithms · Computer Science 2019-06-28 Marco T. Morazán

This study investigated the essential of meaningful automated feedback for programming assignments. Three different types of feedback were tested, including (a) What's wrong - what test cases were testing and which failed, (b) Gap -…

Human-Computer Interaction · Computer Science 2019-10-09 Qiang Hao , Jack P Wilson , Camille Ottaway , Naitra Iriumi , Kai Arakawa , David H Smith

The growing number of students enrolling in Computer Science (CS) programmes is pushing CS educators to their limits. This poses significant challenges to computing education, particularly the teaching of introductory programming and…

Software Engineering · Computer Science 2024-12-19 Zhiyu Fan , Yannic Noller , Ashish Dandekar , Abhik Roychoudhury

Large Language Models (LLMs), such as GitHub Copilot and ChatGPT have become popular among programming students. Students use LLMs to assist them in programming courses, including generating source code. Previous work has evaluated the…

Artificial Intelligence · Computer Science 2025-04-22 Emir Catir , Robin Claesson , Rodothea Myrsini Tsoupidi

Failure studies are important in revealing the root causes, behaviors, and life cycle of defects in software systems. These studies either focus on understanding the characteristics of defects in specific classes of systems or the…

Software Engineering · Computer Science 2022-09-23 Paschal C. Amusuo , Aishwarya Sharma , Siddharth R. Rao , Abbey Vincent , James C. Davis