论文标题
一次性事件?黑客马拉松代码创建和重用的实证研究
One-off Events? An Empirical Study of Hackathon Code Creation and Reuse
论文作者
论文摘要
背景:黑客马拉松已成为团队在项目上合作并开发软件原型的流行活动。大多数现有研究的重点是在活动期间的活动,对黑客马拉松代码的演变有限。目的:我们的目的是了解黑客马拉松事件中使用和创建的代码的演变,特别是专门针对代码斑点,特别是,黑客马拉松团队重复使用预先存在的代码,开发了多少新代码,如果该代码后来使用了多少新代码,以及什么因素会影响重复使用。方法:我们从DEVPOST收集了有关22,183个黑客马拉松项目的信息,并从代码世界中获得了相关的代码斑点,作者,项目特征,原始作者,代码创建时间,语言和大小信息。我们通过识别所有包含在黑客马拉松期间创建的斑点并识别所有包含这些提交的项目的投入来跟踪代码斑点的重复使用。我们还进行了一系列调查,以便对Hackathon Code Evolution有了更深入的了解,我们将这些代码发送给了Hackathon参与者,他们的代码被重新使用,他们的代码没有重新使用,并重复了一些Hackathon代码的开发人员。结果:黑客马拉松存储库中的9.14%的代码斑点和8%的代码(LOC)是在黑客马拉松期间创建的,而大约三分之一的黑客马拉松代码在其他项目中都通过Blob Count和LOC重复使用。相关技术的数量和黑客马拉松的参与者数量增加了重用概率。结论:我们的研究结果表明,正如常识所指示的那样,黑客马拉松并不总是“一次性”事件,它们可以作为该领域进一步研究的起点。
Background: Hackathons have become popular events for teams to collaborate on projects and develop software prototypes. Most existing research focuses on activities during an event with limited attention to the evolution of the hackathon code. Aim: We aim to understand the evolution of code used in and created during hackathon events, with a particular focus on the code blobs, specifically, how frequently hackathon teams reuse pre-existing code, how much new code they develop, if that code gets reused afterward, and what factors affect reuse. Method: We collected information about 22,183 hackathon projects from DevPost and obtained related code blobs, authors, project characteristics, original author, code creation time, language, and size information from World of Code. We tracked the reuse of code blobs by identifying all commits containing blobs created during hackathons and identifying all projects that contain those commits. We also conducted a series of surveys in order to gain a deeper understanding of hackathon code evolution that we sent out to hackathon participants whose code was reused, whose code was not reused, and developers who reused some hackathon code. Result: 9.14% of the code blobs in hackathon repositories and 8% of the lines of code (LOC) are created during hackathons and around a third of the hackathon code gets reused in other projects by both blob count and LOC. The number of associated technologies and the number of participants in hackathons increase the reuse probability. Conclusion: The results of our study demonstrate hackathons are not always "one-off" events as common knowledge dictates and they can serve as a starting point for further studies in this area.