时间:2018-06-14 来源:互联网 浏览量:
过去曾有段不短的时间,微软将自由软件视为仇敌,不仅伸入黑手污染相关源代码,借此植入微软知识产权陷阱或破坏其生态,甚至还曾收买政客,直接对政府单位施压。
而 6 月初,微软以 75 亿美元的天价收购全世界最大的开源平台 GitHub ,虽然很大程度是为了向开源社群示好,同时也要推动新一代 Windows on Arm 应用生态的开发,但过去微软的作为仍深植人心,因此收购行动很自然的被认为居心不良,广大的开源社群使用者也纷纷发起了抵制的行动。
图 | 微软对开源社群示好 (图源:NAVIN RIYAZ)
GitHub 是全球最大的开发者社交平台,微软以维持自主性说服 GitHub 出嫁自2008年4月上线的GitHub,根据统计,截至今年 3 月份,其用户数量达 2800 万,并为以 Java、Python 和 C++ 等编程语言开发的软件托管了 8000 万个源代码存储库;NASA 等公共机构,以及 Google、苹果、亚马逊等大型科技公司也均在 GitHub 上有业务。
而相较其源代码分享与代管、分享功能,GitHub 更像是“开发者的社交平台”,不仅人气旺,吸金效果更是一流。GitHub 的盈利模式主要有三种:代码托管服务、数据沉淀和云存储、以及企业猎头招聘社区。创办人克里斯·万斯特拉斯(Chris Wanstrath)曾表示,每年光订阅的收入就能超过2亿美元,其中更有超过 1.1 亿美元来自企业服务营收。
GitHub之所以在数个买家中间选择微软,一方面是微软的出价有竞争力,另一方面也与纳德拉对开源社区的支持有关。
据 CNBC 报道,就在交易敲定前几周,谷歌也在与 GitHub 谈判,但最终没能成交,知情人士称这表明微软出价更高。另外一位参与此次交易的人士透露,微软出价高达 GitHub 年营收的 25 倍,换言之,GitHub 的实际年营收可能在3亿美元左右。
GitHub 创始人、前 CEO Wanstrath 并不只是一心赚钱,他对为开发者提供免费的工具抱有热忱。而纳德拉对于被收购后 GitHub 制定的愿景得到 Wanstrath 认可,微软在收购声明中表示“ GitHub 将坚持开发者第一的原则,并将保持独立运营,为所有开发者提供一个开放平台。”
更早被微软收购的 LinkedIn 在很大程度上保持了独立,对于 GitHub 来说是个不错的先例。不过,现任 CEO 确认,GitHub 最终将成为微软产品部门的一部分。
图 | LinkedIn CEO Jeff Weiner, 微软 CEO Satya Nadella,和 LinkedIn 创始人Reid Hoffman(图源:wired)
微软收购 GitHub 是为了增加对开发者的吸引力其实收购 GitHub 对微软而言,已经是不得不做的选择。
这要从微软的软件生态说起。微软有两种软件体系,一种是传统的应用程序,也就是标准的 X86/X64 应用程序,可在标准桌面环境下进行操作,基本上只兼容传统 X86 处理器。而另一种应用程序,则是 UWP ,也就是 windows 10 的通用应用程序。通用应用可以跨平台,在各种设备上使用统一的布局设计、统一的功能交互等,速度更快,架构更新,带给用户更加统一的使用体验。
其实,微软一直想要扩大自己的平台基础,并通过 UWP 软件的引入,来解决不同架构处理器之间的应用兼容问题。然而初代 Windows on Arm 架构因性能羸弱,销售状况不佳,加上当初的 Windows 8 操作系统的使用体验奇差无比,开发者对 UWP 应用的开发也缺失兴趣。
初代 Windows on Arm 失败,而如今 Windows on Arm又卷土重来,高通也积极配合微软推出更高性能的 Snapdragon 850 芯片,通过硬件性能的大幅强化来改善使用体验,但关键的环节,也就是能原生支持 Arm 架构的 UWP 应用仍然少之又少。
截至目前为止,即便推出已有数年之久,UWP 应用可能仅有数万款左右,而微软也因为应用数量过少,选择不再公开相关的数量统计,避免自曝其短。相比之下,Android 平台或 iOS 平台的原生应用都有近百万的数量,落差极大。Windows 10 PC 用户虽然有数亿的规模,但多数用户仍旧习惯使用传统X86原生程序,亦使得 UWP 应用的推广极为困难。
但如果要把 Windows 推广到其他如Arm之类的处理器平台上,UWP 应用是未来必走的一步。为加速 UWP 应用程序发展,微软不仅提出开发奖金鼓励开发者投入开发相关 UWP 应用,而且在关闭自有的源代码代管平台 CodePlex 之后,为了配合 2018 年 Arm 架构重返 Windows 的计划,要让开发者有更好的源码代管服务,毅然决然收购GitHub这个全球最大的开放源码代管平台。这一举动不仅鼓励开发者开发UWP应用,更是对开源社群示好,以期彻底改变过去微软对开源生态自私自利、且极不友善的既定印象。
但目前看起来,开源社群对微软仍不谅解,在确定微软将收购 GitHub 之后,纷纷发起抵制行动,但为何微软这么不受开源社群欢迎?
开源社群厌恶微软始于鲍尔默的偏执2001 年,时任微软 CEO 的史蒂夫鲍尔默 (Steven Ballmer) 曾公开表示:" Linux 是一种毒瘤",他还指责,开放源代码最常用的 GNU GPL 许可授权协议最终会要求所有软件都开放源代码,届时软件厂商都将受到严重的利益与知识产权方面的侵害。
GPL 是广泛使用的免费软体授权条款,主要目的是用来保证终端用户得自由运行,学习,共享和修改软件。该授权条款最初由GNU项目的自由软体基金会 (FSF)的理察·斯托曼(Richard Matthew Stallman)撰写,并授予电脑程序的收件人自由软体定义的权利。
GPL 是一个 Copyleft 授权条款,与 Copyright 相反,使用 GPL 源代码修改的衍生软件作品只能以相同的 GPL 许可条款分发,不能闭源。而与之相对的是 BSD 授权,此授权许可就可允许软件开发者使用基于 BSD 授权的源代码来设计自己的开源软件,同时也可以闭源使用。
另外,根据华尔街日报的报道,微软在 2001 年便影响美国国防部关于开源软件的报告、设立全球游说团体阻止各国政府偏好开源软件的立法;同时该公司也请出多位国会议员要求新成立的“美国国土安全部”不要赞助部分开放源代码软件的研究。
微软甚至通过直接赞助国会议员的举动,来影响国家对开源软件政策的支持态度,当时拿微软最多献金的民主党众议员 Adam Smith ,就曾公开发函给美国国家网络安全主管,表示基于 GPL 授权协议开发的软件将对创新和安全带来严重威胁 ----当然,我们都知道事实正好相反。
然而极为反对自由软件与开放源代码的微软,却曾被揪出当初微软电邮服务 Hotmail 所使用的系统使用的就是开放的 BSD 源代码,一时之间,微软如过街老鼠,成为开源社区公敌。
而微软另一个令人诟病的地方,是窜改 Java 的许多指令与接口,创造出具有微软特色、不兼容标准 Java 虚拟机的 JVM,后来 Java 原始知识产权的拥有者 Sun 公司对微软提出控诉,控告其非法修改 Java 源代码,结果是微软认输和解,并彻底停止相关自有 JVM 的开发。
这种一边诋毁开源社区,一边又享受开源成果,甚至还篡改原始开源兼容精神的作法,让微软在开源社区的风评一直非常低迷。
彻底拥抱开源仍难获社群信任,GitHub确定被收购后用户爆出走潮而鲍尔默离职,萨蒂亚·纳德拉(Satya Nadella)上任后,微软改变过去的作法,转而拥抱开源社区,不仅贡献庞大的源代码,更开放PowerShell、Visual Studio Code和Microsoft Edge Java引擎 ,以及.NET 开发工具与深度学系工具包CNTK。微软还与Canonical合作将Ubuntu引入Windows 10,并加入当初鲍尔默口中的最大毒瘤之一:Linux 基金会。
图 | 微软加入 Linux 基金会 (图源:Techcrunch)
自从四年前纳德拉出任 CEO 以来,微软在其带领下一贯支持开源软件、拥抱程序员工具,希望在第三方开发者群体中间重塑形象,获得他们的信任。
然而,这并没有明显改善微软在开源社区的评价,毕竟大多数人认为微软的开源目的是寻求社群之力来改善自家封闭软件的数量与生态经营,是为了商业上的需求而开源,并非真心信任开源模式。
虽然微软方面强调,GitHub 今后的运营会保持原有风格,以开发者至上,保持独立运作。但大批对开源精神有著极高坚持的开发者仍深恐微软伸入黑手,染指开发者的心血并无偿占为己用,因此积极为自己的项目另寻新家。虽然目前微软还没有准备开始提高费用并掠夺数据的迹象,但对一个以分散化为傲的社区拥有绝对的所有权,让许多开发者难以接受。
知名的比特币核心开发者 Wladimir van der Laan 更直接发表评论,表示BTC存储库应该转移其他代管平台。
GitHub 最大的竞争者 GitLab 则是趁机推出”搬家优惠项目”,只要原本四分之一的价格,就可享受一整年的源代码代管服务,但前提是要在太平洋时间 6 月 6 日晚上 12 点前,从自己的 Twitter 账号发一篇包含 #movingtogitlab 的文章,并将文章链接发送给 Gitlab 。该公司收件后,便会将相关文件发送给使用者。而开发者需在 6 月 30 日,完成迁移订单。
图|数据迁移至GitLab的需求目前仍无止息迹象。
而截至目前为止,GitLab因这波搬家潮迎来了远多于平日10倍以上的源代码库迁移请求,该公司也表示已经准备扩充系统规模,好安置这些逃难而来的源代码难民。