或许你没有使用过LinkedIn,但如果你曾经访问过Wikipedia、Tumblr或者Twitter,也或许你曾用Mozilla(火狐浏览器)浏览网页,那么你就是LinkedIn代码的受益者了。
LinkedIn的工程师们开发了、并至今依然在维护着Apache Kafka messaging program项目,不仅在LinkedIn内部运用广泛,自从将Apache Kafka项目开源和免费授权(使用)后,例如Twitter、Tumblr、Netflix和Pinterest(更多Apache Kafka用户)都成为了Apache Kafka项目的受益者。
可能有人会感到迷惑,为何巨头公司们会热衷于将代码贡献到开源社区?事实上,任何人都可以成为开源项目的贡献者和受益者,任何人都可以通过例如GitHub或者Apache软件基金会等途径参与到开源代码的贡献、调试、下载和分享中。
那么,商业公司如何从开源项目中盈利?难道他们不担心会将自己的秘密项目曝光?为何浪费时间去和开源社区打交道,如果只专注于自己的核心赚钱业务难道不是更好吗?
以下Readwrite记者Lauren Orsini收集到的一些开源社区参与者的反馈。在她看来,所有的开源参与者都应该感谢以下五家公司给整个开源界带来的贡献。
Square
总雇员数不超过700人,移动支付公司Square是名单里规模最小的公司了,但给开源社区的贡献是卓越的。
据Square CTO Bob Lee的说法,Square已经将超过60个项目提交到开源社区,贡献了25万行左右的代码。
Square贡献的开源项目中最火的是哪一个?或许是Picasso,作为Square开源的一个用于(Android)系统下载和缓存图片的项目,目前已经广泛应用于New York Times,Paypay,Ouya,Spotify和更多应用中。
在Square CTO Bob Lee看法,正是因为Square公司规模小,因此将代码开源更具积极意义。与其将内部有限的开发资源都投入到通用问题的处理上,不如将其贡献给开源社区并与外部海量的开发者协作(重构和持续发展这些项目)。这种做法同样适用于和Square一样,集中精力完善业务上的特性产品,而减少耗费在通用基础架构上的时间。
Google能够列在开源贡献名单Top5里的原因,并不是它所贡献的开源项目数量,而是胜在质量和规模。举例来说,Android和Chrome只是单个的开源项目,但围绕它们构建了庞大的生态圈,基于它们(平台)上所开发的插件和应用数量惊人。
Square CTO Bob Lee同样认为,Google的开源平台不仅可以引发出一波开源项目,还可以带动该开源项目的持续发展,例如Square Dagger新库,它就是一种针对Android和Java的快速依赖注入器”,该库的源码已经发布在GitHub上。
目前Google对Dagger的贡献甚至已经超过了Square,现在Dagger也已经是一款免费的软件。
对于长期致力于疯狂赚钱的Google来说,投身于开源社区的主要诉求并不是索取回报,而在于社区建设本身。Google Android开源项目经理Christopher Katsaros表示。例如Google s Summer of Code,就是Google主办,旨在激励大学生为开源项目做出贡献的项目,目前已经为开源社区贡献了5千万行代码。
多谢LinkedIn开源Kafka这样的高吞吐量分布式消息系统,目前,LinkedIn已经通过80余个不同的项目为开源社区贡献了超过50万行的代码。是什么推动了LinkedIn持续投身开源,LinkedIn首席工程师Jay Kreps认为,这将有助于产品保持高标准并引发人们的关注。
“要鼓励优秀,你必须公开化!”Jay Kreps认为,工程师和其他人群一样,如果每个人都在关注(我们的产品),我们就必须让它看起来很优秀。
LinkedIn所用的所有内部工具都将开放出来给任何人使用,只要它不和公司的商业计划直接相关,任何人都可以免费读到这些项目的代码。
让任何事情都成为秘密武器并不是我们热衷的有效战略,Kreps补充到,内部的(工具和技术)信息并不需要成为我们的竞争优势。
相反,坚持开源策略是最好的技术招聘广告。开源能够在一定程度上LinkedIn是一家优秀公司,外部的人能看到我们的每一行代码并参与贡献。很多LinkedIn招聘到的人都说这是他们加盟的重要原因。
My ReadWrite作者Matt Asay此前有文章认为,Facebook已经成为全球最大的开源公司,甚至超越了传统的Linux界的RedHat。
从创业时起,Facebook从头到尾都是构建在开源(技术)基础上,离开开源就没有Facebook。软件工程师Jordan Delong在Facebook开源Folly标签库后给出了这样的结论。Folly是Facebook的一个开源C++11组件库,它提供了类似Boost库和STL的功能,包括散列、字符串、向量、内存分配、位处理等,用于满足大规模高性能的需求。这也是Facebook为何通过开源各种工具并积极回馈开源社区的原因。
令Facebook在开源贡献榜脱颖而出的另一个原因是,它是唯一一家将整个数据中心全开源的公司。Open Compute是一个庞大的开源工程,它使得数据中心的每一个组件完全透明化,从供电系统到服务器。
Facebook还是在开源界贡献持续时间最长的公司,与其他大量仅在开源界活跃三四年甚至更短的公司相比,Facebook从2006年+链接就开始谈论开源精神并坚持至今,即使不论Facebook在开源界贡献的代码数量,它的这份坚持精神都令其他公司望其项背。
Twitter在开源社区的贡献是显著的,甚至其贡献的某些开源项目在一定程度上比Twitter本身带来的影响力更大。
用Bootstrap举例,它起始于Twitter内部的一个小工具,最初的目的是让它看起来更漂亮。但自从Twitter在两年半前将Bootstarp项目贡献给开源社区后,它现在已经到达了一个新的高度。目前有成千上网的开发者利用Built with Bootstrap和Bootstrap Expo创建应用。
随着Bootstarp 3.0的发布,Twitter开源负责人Chris Aniszczyk宣布将其完全贡献给开源社区。Bootstrap已经不再是Twitter控制下,大量的贡献并非来自Twitter自身。
Chris Aniszczyk说看到一个开源项目的腾飞是如此令人兴奋,但他也坦言Twitter坚持开源策略的另一个目的是为了“掌控未来”,这也是为什么Twitter最近向开源社区推出CocoaSPDY的原因,CocoaSPDY作为针对iOS和Mac OS X平台的SPDY开发包,可加快HTTP请求。
通过致力于SPDY的努力,能推进整个工业界的方向。人们将支持SPDY,使得网络更快,使Twitter的用户体验更快。这不仅仅只是Twitter的战略方向,而是整个业界推进的方向,最终目的都是为了提高用户体验。
每家公司为开源做贡献或许都有其诱因。但通过CocaSPDY这样的项目,最终对于用户的结果是一样的。它将使得在线用户体验更好。
本文来源:不详 作者:佚名