arrow
Return

Refactoring in Computational Notebooks

delete2023-04-26
delete0
delete
OA
AI
E
Eric S. Liu *
D
Dylan A. Lukes
W
William G. Griswold
DOI:10.1145/3576036delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Due to the exploratory nature of computational notebook development, a notebook can be extensively evolved even though it is small, potentially incurring substantial technical debt. Indeed, in interview studies notebook authors have attested to performing ongoing tidying and big cleanups. However, many notebook authors are not trained as software developers, and environments like JupyterLab possess few features to aid notebook maintenance. As software refactoring is traditionally a critical tool for reducing technical debt, we sought to better understand the unique and growing ecology of computational notebooks by investigating the refactoring of public Jupyter notebooks. We randomly selected 15,000 Jupyter notebooks hosted on GitHub and studied 200 with meaningful commit histories. We found that notebook authors do refactor, favoring a few basic classic refactorings as well as those involving the notebook cell construct. Those with a computing background refactored differently than others, but not more so. Exploration-focused notebooks had a unique refactoring profile compared to more exposition-focused notebooks. Authors more often refactored their code as they went along, rather than deferring maintenance to big cleanups. These findings point to refactoring being intrinsic to notebook development.
Keywords:
Computational notebooks
end-user programming
refactoring

Journal

A
ACM Transactions on Software Engineering and Methodology
IF:
6.2
Papers:
1.2K
Citations:
3.4K

Organization

University of California System cover
University of California System
Scholars:
37.7W
Papers: 33.8W
Citations: 6.6K
Cited Papers

Cited Papers

DEMOCRATIC DATABASES: SCIENCE ON GITHUB
errNATURE
IF48.5
err2016-10-03
err56
errOAAI
errPerkel, Jeffrey
errShare
errSave
Physical volcanology of Tseax Volcano, British Columbia, Canada
err2020-05-12
err0
errOAAI
errYannick Le Moigne; Glyn Williams-Jones; Kelly Russell; Steve Quane
errShare
errSave
Non destructive detection of brown heart in ‘Braeburn’ apples by time-resolved reflectance spectroscopy
err2011-01-01
err0
errOAAI
errMaristella Vanoli; Anna Rizzolo; Maurizio Grassi; Andrea Farina; Antonio Pifferi; Lorenzo Spinelli; Bert E. Verlinden; Alessandro Torricelli
errShare
errSave
Hemofiltration in ex vivo lung perfusion—a study in experimentally induced pulmonary edema
err2016-02-01
err0
errOAAI
errTobias Nilsson; Christoffer Hansson; Andreas Wallinder; Carl-Johan Malm; Martin Silverborn; Sven-Erik Ricksten; Göran Dellgren
errShare
errSave
errShare
errSave
Spontaneous symmetry breaking in spinor Bose-Einstein condensates
err2013-11-19
err0
errOAAI
errM. Scherer; B. Lücke; J. Peise; O. Topic; G. Gebreyesus; F. Deuretzbacher; W. Ertmer; L. Santos; C. Klempt; J. J. Arlt
errShare
errSave
Five selfish reasons to work reproducibly
err2015-12-08
err59
errOAAI
errMarkowetz, Florian
errShare
errSave
BY JUPYTER, IT ALL MAKES SENSE
errNATURE
IF48.5
err2018-10-30
err220
PREAI
errPerkel, Jeffrey M.
errShare
errSave
researcher View more