English
Related papers

Related papers: Catalogs of C and Python Antipatterns by CS1 Stude…

200 papers

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

An introductory programming course (CS1) is an integral part of any undergraduate curriculum. Due to large number and diverse programming background of students, providing timely and personalised feedback to individual students is a…

Computers and Society · Computer Science 2017-02-03 Rajdeep Das , Umair Z. Ahmed , Amey Karkare , Sumit Gulwani

Bad smells have been defined to describe potential problems in code, possibly pointing out refactoring opportunities. Several empirical studies have highlighted that smells have a negative impact on comprehension and maintainability.…

Software Engineering · Computer Science 2021-07-21 Elder Vicente de Paulo Sobrinho , Marcelo de Almeida Maia

In this work, we developed an algorithm for detecting code quality issues in the templates of online programming tasks, validated it, and conducted an empirical study on the dataset of student solutions. The algorithm consists of analyzing…

Software Engineering · Computer Science 2023-04-26 Anastasiia Birillo , Elizaveta Artser , Yaroslav Golubev , Maria Tigina , Hieke Keuning , Nikolay Vyahhi , Timofey Bryksin

The new capabilities of generative artificial intelligence tools Generative AI, such as ChatGPT, allow users to interact with the system in intuitive ways, such as simple conversations, and receive (mostly) good-quality answers. These…

Human-Computer Interaction · Computer Science 2024-10-14 Matin Amoozadeh , Daye Nam , Daniel Prol , Ali Alfageeh , James Prather , Michael Hilton , Sruti Srinivasa Ragavan , Mohammad Amin Alipour

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

Motivated by DNA based data storage system, we investigate the errors that occur when synthesizing DNA strands in parallel, where each strand is appended one nucleotide at a time by the machine according to a template supersequence. If…

Information Theory · Computer Science 2024-05-06 Ziyang Lu , Han Mao Kiah , Yiwei Zhang , Robert N. Grass , Eitan Yaakobi

Novice programmers face numerous barriers while attempting to learn how to code that may deter them from pursuing a computer science degree or career in software development. In this work, we propose a tool concept to address the…

Software Engineering · Computer Science 2021-02-12 Austin Z. Henley , Julian Ball , Benjamin Klein , Aiden Rutter , Dylan Lee

High-performance computing systems (HPC) provide powerful capabilities for modeling, simulation, and data analytics for a broad class of computational problems. They enable extreme performance of the order of quadrillion floating-point…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-11-01 Saurabh Hukerikar , Christian Engelmann

Code generation aims to synthesize code and fulfill functional requirements based on natural language (NL) specifications, which can greatly improve development efficiency. In the era of large language models (LLMs), large code models…

Software Engineering · Computer Science 2024-05-01 Chaozheng Wang , Zongjie Li , Cuiyun Gao , Wenxuan Wang , Ting Peng , Hailiang Huang , Yuetang Deng , Shuai Wang , Michael R. Lyu

Hands-on cybersecurity training allows students and professionals to practice various tools and improve their technical skills. The training occurs in an interactive learning environment that enables completing sophisticated tasks in…

Cryptography and Security · Computer Science 2023-07-21 Valdemar Švábenský , Jan Vykopal , Pavel Čeleda , Kristián Tkáčik , Daniel Popovič

Modern language models (LMs) have been successfully employed in source code generation and understanding, leading to a significant increase in research focused on learning-based code intelligence, such as automated bug repair, and test case…

Software Engineering · Computer Science 2023-10-30 Xinyu She , Yue Liu , Yanjie Zhao , Yiling He , Li Li , Chakkrit Tantithamthavorn , Zhan Qin , Haoyu Wang

An important, yet largely unstudied, problem in student data analysis is to detect misconceptions from students' responses to open-response questions. Misconception detection enables instructors to deliver more targeted feedback on the…

Machine Learning · Statistics 2017-03-31 Joshua J. Michalenko , Andrew S. Lan , Richard G. Baraniuk

The popularity of Python has risen rapidly over the past 15 years. It is a major language in some of the most exciting technologies today. This popularity has led to a large ecosystem of third-party packages available via the pip package…

Cryptography and Security · Computer Science 2021-02-15 Aadesh Bagmar , Josiah Wedgwood , Dave Levin , Jim Purtilo

Maintaining consistency between code and documentation is a crucial yet frequently overlooked aspect of software development. Even minor mismatches can confuse API users, introduce new bugs, and increase overall maintenance effort. This…

Software Engineering · Computer Science 2026-04-22 Tobias Kiecker , Jan Arne Sparka , Martin Reuter , Albert Ziegler , Lars Grunske

Programmable robots are engaging and fun to play with, interact with the real world, and are therefore well suited to introduce young learners to programming. Introductory robot programming languages often extend existing block-based…

Software Engineering · Computer Science 2022-08-30 Florian Obermüller , Robert Pernerstorfer , Lisa Bailey , Ute Heuer , Gordon Fraser

Generative AI models, specifically large language models (LLMs), have made strides towards the long-standing goal of text-to-code generation. This progress has invited numerous studies of user interaction. However, less is known about the…

Human-Computer Interaction · Computer Science 2024-07-09 Sydney Nguyen , Hannah McLean Babe , Yangtian Zi , Arjun Guha , Carolyn Jane Anderson , Molly Q Feldman

Deep Learning (DL) models to analyze source code have shown immense promise during the past few years. More recently, self-supervised pre-training has gained traction for learning generic code representations valuable for many downstream SE…

Software Engineering · Computer Science 2023-06-07 Yangruibo Ding , Saikat Chakraborty , Luca Buratti , Saurabh Pujar , Alessandro Morari , Gail Kaiser , Baishakhi Ray

The lexical and syntactic disparities among different programming languages (e.g., Java and Python) pose significant challenges for multi-language software engineering tasks such as cross-language code clone detection and code retrieval,…

Software Engineering · Computer Science 2026-05-11 Junhao Chen , Jingxuan Zhang , Jian He , Yixuan Tang , Weiqin Zou

Software engineers make use of design patterns for reasons that range from performance to code comprehensibility. Several design patterns capturing the body of knowledge of best practices have been proposed in the past, namely creational,…

Software Engineering · Computer Science 2019-01-11 Luis Cruz , Rui Abreu