EN
国际技术交易联盟
国际技术交易联盟
首页 > 国际技术贸易 > 国际技术交易联盟 >

构建有利于科技经济融合的创新组织——案例27:GitHub平台(开源平台)

2020-09-04 11:09:14     浏览数量:  

机构概况
GitHub是一个面向开源及私有软件项目的托管平台,于2008年上线。截至目前,除了Git代码仓库托管及Web管理界面以外,还提供订阅、讨论组、文本渲染、在线文件编辑器、代码片段分享等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub的用户活跃度很高,在开源世界里享有盛名,形成了一种社交编程文化。目前,其注册用户已超过350万,其中不乏Rubyon Rails、jQuery、python等知名开源项目。

作为一个代表性的开源社区,GitHub存在着大量的知识和广泛的知识共享。2019年,GitHub在其年度大会上宣布,计划将所有开源代码档案存储在挪威斯瓦尔巴特群岛的一座废弃矿井里,并通过建立副本来确保档案安全。GitHub将采用挪威 Piql AS公司制造的缩微胶卷进行存储,据称这种胶卷在正常条件下能够保存750年,在寒冷、干燥、低氧的洞穴里能够保存2000年。GitHub平台上1万个最受关注和最受欢迎的项目及开源代码的缩微胶卷则将被复制并存储在牛津大学博德利图书馆。此外,GitHub还将与微软Microsoft公司合作,通过使用飞秒激光将开源代码写入石英玻璃盘片,对其进行存档。


运行机制
一是社会化的项目开发机制。GitHub的功能主要包括Watch、Star、Fork、Issue、Pull Request等。Watch是指社区中用户想要关注某一个人或者某一个项目库而使用的功能,Watch之后可以对某一个项目或者人产生的动态进行实时地跟踪,相当于一般社交媒体的关注;Star相当于收藏功能,用户Star某一个项目库后就可以在Star界面找到收藏的项目;Fork是将某一个项目拷贝到自己的库中,也是对原项目进行了一个分支,Fork后可以对该项目进行任何的修改;Issue是对项目的BUG或者项目改进等讨论的地方,相当于一个研讨房间;Pull Request是某一用户对项目进行了修改后,可以向原项目发起请求,将修改合并到原始项目中,这种协同开发的功能比传统的邮件方式更加的方便。


GitHub项目开发机制如下图所示,在社区中,一位用户对自己感兴趣的一个项目进行Fork,将该项目库拷贝到自己的库中,该用户对这个项目进行了一些修改,添加了某些新的功能,或者说发现了该项目存在的BUG,然后进行了Pull Request,这个Pull Request提交给原项目开发的团队,当然这个申请是公开于社区的,只要关注了该项目的人,都能够看到,然后这个申请可以创建一个Issue,项目核心成员和整个社区的外部人员都可以就该请求进行讨论,经过严格的谈论和审查之后,如果原项目团队认为这个改进的建议是优质的,那么就可以接受Pull Request,将修改融入到原项目中。这就是GitHub中最为核心的运行机制,在GitHub社区中,超过一半的开源项目都使用Pull Request来进行合作。在这样的运行机制中,存在着复杂的知识流转的体系,包括项目团队内部的知识流转,项目团队与外部人员的知识流转和整个社区中知识的流转。

图 1 GitHub的社会化项目开发机制
 
二是虚拟社区中的知识流转机制。用户在GitHub上获取到自己感兴趣或者有需要的某个程序功能时,将该库Fork后对现有的知识学习总结并加以自己的思考,便是知识内化的一个过程。对该项目关注或感兴趣的用户可以利用Pull Request和Issue进行讨论,用户或许会发现该项目存在的某些缺陷或者Bug,也可能会根据自己独有的知识,对项目进行了改善或者添加新的功能。在讨论中不断地交换知识、完善知识,实现了隐性知识的交流,最终实现了知识的转化,这就是开源社区中知识社会化的表现。在这种知识流转的社会化过程中,用户得到一个隐性知识后进行编程化,是一个简单的知识外化的过程;得到显性知识后,原项目组可以选择将该显性知识与原项目进行合并,组合得到一个新的显性知识,这就是GitHub开源社区中知识组合的表现。

图 2 GitHub的整体知识流转机制
 
三是项目小组内部工作模式。在开发小组内部,成员通过静态虚拟进程获取项目的基础显性知识,例如数据库和项目基础代码。这一过程不涉及知识发送者和知识接收者之间的交互,并且由于传输过程的静态性质,它可以独立于知识发送者和知识接收者之间的知识交流过程。在项目组内的规范面对面进程中,包括了知识发送者与知识接收者之间知识流转和小组成员与项目交互中的知识流转。

图 3 GitHub的项目小组内部知识流转机制
 
知识发送者与知识接收者之间的流转是在通用知识流转模型的基础上演变的。包括了五种要素:知识发送者、知识流转对象、知识流转媒介、知识接收者、需求环境。知识发送者将项目核心的内容、知识以及自身的经验知识传递给知识接收者,知识流转对象就是指的这些知识,即代码等等。知识流转媒介指的开源社区中的某些功能、工具,例如Pull Request以及Issue讨论等功能。知识接收者在GitHub这样一个环境中,能够更好地学习知识。知识发送者是经验丰富的开发人员,作为知识来源,会付出大量的机会成本和时间,因此负责项目的统领工作。而作为知识接收者,缺乏经验的开发人员不仅可以从中学习到很多开发项目的知识,还能学习实践和解决问题的方法。

网址
https://github.com
【返回列表】
上一篇:构建有利于科技经济融合的创新组织——案例28:比利时微电子研究中心IMEC(创新平台) 下一篇:构建有利于科技经济融合的创新组织——案例26:美国Mass Challenge加速器

中国国际科技交流中心版权所有    京ICP备05019987号-13/19

欢迎您! 您是本站的第 1562209 位访客!