关于GitHub与开源协议的介绍
第十六期北大软微-八分量协同实验室学术沙龙活动继续展开。北京大学的沈晴霓教授、杨雅辉教授、方跃坚副教授、Trias胡志琳、李飞以及软微学院多位博士生、硕士生参与了此次沙龙。
随着计算机技术的高速发展,编程语言和程序的复杂度比过去都有了很大的改变,此前那种一两个天才程序员就能开发出一整套系统的时代一去不复返了。不管是编程大牛,还是初学代码的菜鸟,都离不开与他人交流协作,学习提高。
GitHub是一个基于网站和云的服务,主要用以帮助开发人员存储和管理他们的代码,以及跟踪和控制对代码的更改。因为GitHub的界面设计足够友好,任何人都能够免费注册和管理代码库,这使得GitHub特别受到开源项目的欢迎。
区块链的特点就是去中心化,从比特币开始,大多数区块链项目都是开源的,在GitHub上都可以找到源代码。比如大名鼎鼎的以太坊,据悉,以太坊核心团队人数不过百来人,但是却拥有多达25万的开发人员。ETH开发框架Truffle在2017年10月下载量超过了20万次。GitHub引用了22万次以太坊提交和1万4千个存储库。
同样作为广受欢迎的区块链项目,Trias自然也不例外,Trias上许多功能的源代码都在GitHub上予以开源。为了和北大软微实验室的师生们进一步合作交流,对具体问题进行分析讨论,李飞向北大师生们介绍了Trias在GitHub上的代码存储库。
李飞介绍说,Trias现在依然在控制着代码开源的节奏,一方面是配合Trias白皮书功能的完善,二是为了配合市场的宣传活动。
除了具体问题和功能的分类,李飞同时为不熟悉GitHub的同学做了一些基础介绍。比如比较了项目和仓库之间的联系和区别。用通俗的话来讲就是,每一个服务就是一个仓库,项目底下有多个仓库,相当于把项目拆成多个组件。
沈老师谈到,目前国内举办的很多所谓“国际”会议,在国外其实并没有多大影响力,即便有几个外国人出席,也是作为特邀嘉宾,而非外国技术团队主动要来参加。与此相对的,国外很多技术会议都是人声鼎沸,中外很多专家学者、技术大咖都比较积极,这才像是国际会议。这其中的差别,很值得我们去分析理解。
接下来方跃坚老师简要介绍了现在的开源软件和盈利模式。开源协议主要有以下几种:GPL协议、LGPL协议、BSD协议、MIT协议、Mozilla协议以及Apache协议。这其中,又以Apache协议使用最为广泛。
另外,我们需要辨析一个区别,就是开源和盗版;或者说,专利授权和开源协议。目前,绝大多数的开源软件都允许开源软件及其衍生软件被用于商业用途,这是没什么问题的,开源软件,通常只强调“这是我发明的”,而默许了别人以此谋利。而正版则享有法律的著作权和专利保护,其他人将其用作商业用途就会被认定为盗版,二者是有区别的。
方老师接下来对开源软件的七种盈利模式一一做出了介绍。七种模式分别是,多种产品线,技术服务型,应用服务托管,软、硬件一体化,附属品、品牌战略、服务至上,市场策略。篇幅所限,想要了解更多,可加入我们的社群进行讨论。
下一期的沙龙,将会根据此前的论文和热门技术,对密码学的优化方式、并行性等探讨,进行一系列的头脑风暴,并会择其有趣的部分进行开发供大家分析学习之用。
中国观察