English
Related papers

Related papers: Code Code Evolution: Understanding How People Chan…

200 papers

Large scale analysis of source code, and in particular scientific source code, holds the promise of better understanding the data science process, identifying analytical best practices, and providing insights to the builders of scientific…

Machine Learning · Computer Science 2020-09-01 Ge Zhang , Mike A. Merrill , Yang Liu , Jeffrey Heer , Tim Althoff

By bringing together code, text, and examples, Jupyter notebooks have become one of the most popular means to produce scientific results in a productive and reproducible way. As many of the notebook authors are experts in their scientific…

Software Engineering · Computer Science 2019-06-13 Jiawei Wang , Li Li , Andreas Zeller

Code changes are an integral part of the software development process. Many code changes are meant to improve the code without changing its functional behavior, e.g., refactorings and performance improvements. Unfortunately, validating…

Software Engineering · Computer Science 2025-02-25 Lars Gröninger , Beatriz Souza , Michael Pradel

The quality of scientific code is a critical concern for the research community. Poorly written code can result in irreproducible results, incorrect findings, and slower scientific progress. In this study, we evaluate scientific code…

Software Engineering · Computer Science 2026-03-25 Shun Kashiwa , Ayla Kurdak , Savitha Ravi , Ridhi Srikanth , Angel Thakur , Sonia Chandra , Jonathan Truong , Michael Coblenz

Refactoring is a maintenance activity that aims to improve design quality while preserving the behavior of a system. Several (semi)automated approaches have been proposed to support developers in this maintenance activity, based on the…

Software Engineering · Computer Science 2019-05-20 Rodrigo Morales , Foutse Khomh , Giuliano Antoniol

Software visualization helps to comprehend the system by providing a vivid illustration. The developers, as well as the analysts, can have a glance over the total system to understand the basic changes over time from a high-level point of…

Software Engineering · Computer Science 2021-08-16 Fazle Rabbi , Nishat Tasnim Niloy , Nadia Nahar , Md. Nurul Ahad Tawhid

Computational notebooks -- such as Jupyter or Colab -- combine text and data analysis code. They have become ubiquitous in the world of data science and exploratory data analysis. Since these notebooks present a different programming…

Software Engineering · Computer Science 2022-07-20 Derek Robinson , Neil A. Ernst , Enrique Larios Vargas , Margaret-Anne D. Storey

Understanding neural networks is challenging in part because of the dense, continuous nature of their hidden states. We explore whether we can train neural networks to have hidden states that are sparse, discrete, and more interpretable by…

Machine Learning · Computer Science 2023-10-27 Alex Tamkin , Mohammad Taufeeque , Noah D. Goodman

The understanding of visual analytics process can benefit visualization researchers from multiple aspects, including improving visual designs and developing advanced interaction functions. However, the log files of user behaviors are still…

Human-Computer Interaction · Computer Science 2023-12-05 Zekun Wu , Shahin Doroudian , Aidong Lu

We examine "vibe coding": an emerging programming paradigm where developers primarily write code by interacting with code-generating large language models rather than writing code directly. We present the first empirical study of vibe…

Human-Computer Interaction · Computer Science 2025-10-06 Advait Sarkar , Ian Drosos

Context: Software systems are in continuous evolution through source code changes to fixing bugs, adding new functionalities and improving the internal architecture. All these practices are recorded in the version history, which can be…

Software Engineering · Computer Science 2020-01-17 Leandro Ungari Cayres , Bruno Santos de Lima , Rogério Eduardo Garcia

Computational notebooks (e.g., Jupyter, Google Colab) are widely used for interactive data science and machine learning. In those frameworks, users can start a session, then execute cells (i.e., a set of statements) to create variables,…

Databases · Computer Science 2025-03-12 Zhaoheng Li , Pranav Gor , Rahul Prabhu , Hui Yu , Yuzhou Mao , Yongjoo Park

Computational notebooks are widely used for data analysis. Their interleaved displays of code and execution results (e.g., visualizations) are welcomed since they enable iterative analysis and preserve the exploration process. However, the…

Human-Computer Interaction · Computer Science 2023-03-08 Haotian Li , Lu Ying , Haidong Zhang , Yingcai Wu , Huamin Qu , Yun Wang

Developers often refactor code to improve the maintainability and comprehension of the software. There are many studies on refactoring activities in traditional software systems. However, refactoring in data-intensive systems is not well…

Software Engineering · Computer Science 2022-02-08 Biruk Asmare Muse , Foutse Khomh , Giuliano Antoniol

ELOQUENT is a set of shared tasks that aims to create easily testable high-level criteria for evaluating generative language models. Sensemaking is one such shared task. In Sensemaking, we try to assess how well generative models ``make…

Computation and Language · Computer Science 2025-07-17 Pavel Šindelář , Ondřej Bojar

Computational notebooks, widely used for ad-hoc analysis and often shared with others, can be difficult to understand because the standard linear layout is not optimized for reading. In particular, related text, code, and outputs may be…

Human-Computer Interaction · Computer Science 2025-02-25 Yanna Lin , Leni Yang , Haotian Li , Huamin Qu , Dominik Moritz

Developers in data science and other domains frequently use computational notebooks to create exploratory analyses and prototype models. However, they often struggle to incorporate existing software engineering tooling into these…

Human-Computer Interaction · Computer Science 2021-03-30 Micah J. Smith , Jürgen Cito , Kalyan Veeramachaneni

Understanding software design practice is critical to understanding modern information systems development. New developments in empirical software engineering, information systems design science and the interdisciplinary design literature…

Software Engineering · Computer Science 2017-01-17 Paul Ralph

While AI innovation accelerates rapidly, the intellectual process behind breakthroughs -- how researchers identify gaps, synthesize prior work, and generate insights -- remains poorly understood. The lack of structured data on scientific…

Artificial Intelligence · Computer Science 2026-01-09 Jiachen Liu , Maestro Harmon , Zechen Zhang

Data science and machine learning provide indispensable techniques for understanding phenomena at scale, but the discretionary choices made when doing this work are often not recognized. Drawing from qualitative research practices, we…

Computers and Society · Computer Science 2022-03-15 Scott Allen Cambo , Darren Gergle