当西非埃博拉疫情在2014年7月加速来袭时,Caitlin Rivers开始收集关于受感染人群的数据。当时还是计算流行病学专业博士生的Rivers想建立疫情扩散模型。为此,她会每天下载PDF格式的更新数据,并且将数字转换成计算机可读的表格。这些数据由遭到埃博拉病毒重创的各国卫生部发布。不过,Rivers并未将这些文档据为己有,而是把它们发布到GitHub.com上。这是一个广受欢迎的 站,旨在就软件代码开展协同工作。Rivers觉得,发布的内容可能会吸引那些对埃博拉疫情最新信息感兴趣的人。“我想,如果我需要它,其他人也会。”
Rivers是对的。其他研究人员开始下载这些数据并为该项目作贡献。在某些日子,第三方会赶在Rivers前面下载并转换各国卫生部的数据,然后将其加载到GitHub存储库。其他人会创建程序脚本,从而对数据进行简单的错误检查,比如确保每天的患者数量是合理的。当开始该项目时,Rivers是美国弗吉尼亚理工学院暨州立大学的博士生,如今则是陆军公共卫生中心的流行病学家。
成立于2008年的GitHub目前拥有约1500万用户,并且正成为一个日益受欢迎的 站,以供研究人员共享、维护和更新科学数据集以及代码。澳大利亚麦考瑞大学生态学博士后Daniel Falster表示,“当我们开始使用GitHub时,它简直让人称奇。现在,我们做每件事情时都会用到它。”Falster的生物质和异速生长数据库聚集了来自176项研究的关于植物大小的各项指标,并且被存放在GitHub上。“开放的生命之树”项目也是如此。其旨在汇编已发表的不同系统发育树,以建立一棵总的“生命之树”。该项目利用GitHub储存数据文档和发表记录,并且接收来自第三方的最新数据集。
目前已有足够多的 站致力于数据分享。不过,GitHub专门为透明、开放的合作而建,因为它利用版本控制软件追踪对代码或数据做出的每一个改变。这意味着大规模、分布式的程序员团队能在 络上共同开展一个项目,而用户可通过文件的版本记录进行实时回看,并在每个改变出现时,看到它是由谁以及处于何种目的做出的。程序员可复制存储库以试验新想法;有用的改变会被并入主项目,其他改变则被忽视或者随后被回滚。
GitHub依靠的软件工具被称为Git。2005年,Git由编码员Linus Torvalds创建,旨在管理开源操作系统Linux的开发。Linux是一个涉及上千名独立程序员的大型项目。“Git被用于对源代码进行精细的逐行监控。”GitHub项目经理Arfon Smith介绍说,虽然它不是唯一可用的版本控制软件,却是最流行的软件之一。
数据共享是开放科学的核心要求,而研究人员能在他们希望的任何地方共享数据集。培训研究人员使用数据的非营利性机构——“数据木工”执行董事Tracy Teal表示,即便不使用GitHub.com,科学家也应当考虑利用Git或者类似工具记录对数据集和数据处理脚本做出的改变。而对学习使用Git和GitHub感兴趣的研究人员可借助很多 络资源:和GitHub 一样,Codecademy提供免费的交互式教程。科研计算技巧 站——“软件木工”创始人Greg Wilson则在今年1月合著了一本操作手册。同时,很多程序员和生物信息学家在使用Git,因此他们可以总是被寻求帮助。
虽然有很多其他工具存在,但Git和GitHub在科学家中拥有一个忠诚的粉丝群。开放的生命之树”项目成员、加州大学默塞德分校进化生物学家Emily Jane McTavish表示,它们是必不可少的资源。“如果没有它们,我不知道该怎么活下去。”(宗华编译)
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!