您没有来错地!为了更好的发展,黑基网已于9月19日正式更名为【安基网】,域名更换为www.safebase.cn,请卸载旧的APP并安装新的APP,给您带来不便,敬请理解!谢谢

黑基Web安全攻防班
安基网 首页 IT技术 编程开发 查看内容

Google 教你如何“做”开源

2017-4-11 10:39| 投稿: lofor |来自: 互联网

摘要: 引言在2016年,IDG旗下网站ARN发表了一篇文章:展望2017年的顶级技术,将开源和人工智能、深度学习、虚拟现实、云计算安全一并列举为2017年的流行技术趋势。果不其然,2017年第一季度已经过去,回顾一下这个预测,某 ...

引言

在2016年,IDG旗下网站ARN发表了一篇文章: 展望2017年的顶级技术 ,将开源和人工智能、深度学习、虚拟现实、云计算安全一并列举为2017年的流行技术趋势。果不其然,2017年第一季度已经过去,回顾一下这个预测,某种程度上验证了这一预测:

  • GitHub 发布开源指南,旨在帮助人们利用开源,参与开源,治理开源。
  • AT&T、Alibaba加入Linux基金会。
  • Amazon 开源旗下深度学习框架MXNet,并捐赠给Apache基金会。
  • Google 捐赠给Apache下一代大数据框架Beam。
  • 在刚刚结束的云原生技术研讨会上,Linux基金会主席的Keynote讲到,Kubernetes 将会是下一个云计算中的Linux。
  • ......

不过,所有这些事件,均仿佛是为今天的事情作铺垫——Google为其开源建立了新家:opensource.google.com。

背景介绍:Google与开源

Google 对于开源的理解,在业界是独树一帜的。从2005年就成立了开源项目部(OSPO),并由业内对开源有深刻理解的Chris DiBona来主持工作。Google 或许并不是贡献代码最多的公司,在 Kubernetes 项目之前,Google的开源项目甚至是只有很小的贡献率、或者是强约束并非完全的开放(比如,Chrome和Android),但是它依旧在开源开发者圈具有强大的影响力(甚至有人说是最大的),这就是一旦彻底开放如Kubernetes这样的平台,就促使这个项目异常的成功。再说了,Google 除了项目之外,还创建过 Google Code,曾经一度是开源软件最大的代码托管的地方,以及大名鼎鼎的 Google代码夏令营(GSoC),虽然这些举措Google都没有大量的代码贡献,但是它促使世界各地的开发人员能够合作,从而编写更多的代码。

如果离开了开源软件,我们今天所看到的互联网将不复存在。 ———— Chris DiBona ,Google开源总监

除此之外,Google也通过诸如 软件自由保护 、 apache软件基金会 以及 其它的组织 来对开源项目和社区进行赞助。

同时,Google也是开源的受益者,从1998年最初的服务上线,Google的产品和服务都是架设在Linux等开源软件的基础之上的。当然Google是一家广告公司,至少不是一家纯粹的靠软件来盈利的公司,拥有非常多的优秀的计算机科学家和工程师,一如Google自家博客中介绍中所说:“从支撑服务的Linux内核到内部的文化,开源是Google做任何事都绕不过的。 ”

新站点的思路

负责人在博客上说道:新的站点成立,旨在将Google如何使用、发布和支持开源的所有事情放在一起。站点将以最大的深度和广度的展现Google对于开源的热爱!它不仅包含人们意料之中的:Google的程序、所支持的开源组织、以及长长的开源列表,而且还包括了意料之外的:Google是如何“做”开源的幕后策略。

由此看出,新的站点,成为了Google对待开源的统一入口和展示的地方,也就是Google的开源哲学和方法论的最大呈现。

帮助人们找到感兴趣的项目

开源意味着让人们更好的协同工作,开发更优秀的软件,让这个世界更加的美好! ———— Sarah Novotny, 项目经理

Google对于开源项目的态度,向来是“越多越好”,原因是无法实现知道那些项目会引起人们的兴趣,所以Google的开源部门就是帮助公司尽可能多的发布代码。这样的经过了多年以后,回过头来再看,Google已经发布了成千上万个开源项目,且有形形色色的许可协议,这些项目既有大型的产品,如 TensorFlow 、 Go 、 Kubernetes ,也有一些较小的项目,如 钢琴装饰灯 、 Neuroglancer 、 Periph.io ,其中有些是获得Google正式支持的、有些是试验性质的,而有些则只是为了好玩。所有的这些项目,都分散在超过100多个GitHub的组织和Google自托管的git服务上,以至于人们对于Google开源代码的规模和范围是模棱两可的,甚至被错误的低估。

为了给人们提供一个完整的Google开源项目图景,Google创立来 Google开源项目目录 ,在未来Google的开源项目部,会逐渐的将这个目录完善并对没个项目进行更为细致的描述,比如会举例说明,Google内部是如何使用的。

我们以 Kubernetes 的描述页为例,见识一下Google的用心之处,打开这个页面,在上面的条幅上展示了项目的名称和站点域名,在正文的左侧,分了三个章节,分别是:

  • Kubernetes的功能概要描述,所解决的问题,Kubernetes最初的灵感来源,以及简短的发展历史
  • Kubernetes 在Google内部是被如何使用的
  • 代码仓库,以及最为典型的GitHub质量评估:星星数量和被fork的次数。

而正文的右侧,则是一些归类、标签,以及所使用的编程语言,便于分门别类的查找。

这对于开发者而言,无疑会大大的提高查找自己感兴趣的项目的效率;而对于互联网或企业来说,研究Google怎么使用,会少走很多很多的弯路。是的,Google为这个世界贡献了很多分散的开源项目,有了这个权威的索引,让我们重新认识Google的开源项目的宏大,目前在编的项目超过2000多个。

Google是如何做开源的

开源从来就不仅仅是将代码开放这么简单,它还至少包括了社区和流程。参与到开源项目和社区,对于Google这样体量的公司是件非常具有挑战性的事情,在2014年,Google帮忙组件了 TODo Group ,这是一个众多商业公司组成论坛,讨论参与开源的最佳实践和协作。经过多年的累计,从讨论中收获很多灵感,借着发布新站点的机会,Google还一同发布了内部文档: Google 是如何做开源的 。

关于此文档,绝对值得业界借鉴,比如:

罗马从来就不是一天建成的,上述的这些规则也好,流程也罢,都是多年的经验积累,甚至有的是付出教训后学到的经验。这些未必适合所有人,(开源本身就是有很多的选择)所以这些文档并非是“how-to”指南,但是相信对于有心人是有很大的参考价值的。

结语

Google 似乎正在改变自己在业内的高冷形象,从 Kubernetes 的社区运营,再到今年即将参与RedHat Summit 2017,乃至这次新开源站点的建立,都在应验着开放战略,试图扳回在云计算市场的失利。再比如Spanner的服务、以及免费为开发者提供资源等具体的产品和服务。其中一定有商业因素的考量,但我们始终认为Google的信条,以及他对开源独特的理解,所以宁愿相信他的情怀:Google 开源项目部不仅仅是让Google的软件变得更好——他们更加热衷于通过开源改变世界。

让我们祝愿Google新的开源站点,百尺竿头更进一步!让所有的开发者、开源相关人员受益。

感谢郭蕾对本文的策划和审校。


小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册黑基账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本文由投稿者转载自互联网,版权归原作者所有,文中所述不代表本站观点,若有侵权或转载等不当之处请联系我们处理,让我们一起为维护良好的互联网秩序而努力!联系方式见网站首页右下角。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部