Jupyter 笔记本中的代码重复与复用
软件工程
2020-05-29 v1 人机交互
摘要
重复自己的代码可以加快软件编写速度。这种便利性对于计算笔记本的用户尤其有价值。重复使得笔记本用户能够快速检验假设并对数据进行迭代。在本文中,我们探究计算笔记本中代码重复发生的程度、方式及来源,并识别代码复用面临的潜在障碍。计算笔记本领域的先前工作描述了开发者复用与重复的动机,但未揭示复用发生的程度或他们在复用代码时遇到的障碍。为弥补这一空白,我们首先分析了 GitHub 仓库中 Jupyter 笔记本所含的代码重复,随后开展了一项关于代码复用的观察性用户研究,参与者使用笔记本解决特定任务。我们的发现表明,样本中的仓库平均自我重复率为 7.6%。然而,在我们的用户研究中,极少有参与者重复自己的代码,而是倾向于复用来自在线资源的代码。
引用
@article{arxiv.2005.13709,
title = {Code Duplication and Reuse in Jupyter Notebooks},
author = {Andreas Koenzen and Neil Ernst and Margaret-Anne Storey},
journal= {arXiv preprint arXiv:2005.13709},
year = {2020}
}
备注
Accepted as a full paper at the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) 2020