或许你也听说了:在全球热门开源代码库 GitHub 最新公布的一份统计报告中,微软名列“对开源贡献人数最多的组织(Organizations with the most open source contributors)”榜首——在过去的 12 个月中,有 16,419 位来自微软的程序员为 GitHub 开源社区贡献了自己的力量。
这份报告中的数据来自于 GitHub 上的公开信息,鉴于有些开发者会以匿名方式贡献代码,所以具体数字并不绝对。但这足以证明,在微软内部,拥抱开源,已经成为自上而下的普遍共识。
微软全球执行副总裁兼云计算与企业事业部负责人 Scott Guthrie
“微软爱 Linux”
2014 年 10 月 20 日,出任微软公司首席执行官不久的萨提亚 ∙ 纳德拉第一次公开宣示了微软对 Linux 和开源世界的新感情。事实证明,微软的确是付出了真爱。过去两年,从微软智能云 Azure 到 Windows 10,从开发工具到数据库平台,“把 Linux 放在重中之重”,已经成为微软内部人人皆知的准则。
作为微软未来三大远见的核心,微软智能云 Azure 为 Linux 以及开源开发工具、语言、运行环境提供了一个开放、灵活的云计算平台。从全球到中国,Azure 已经加入了对 Red Hat Enterprise Linux、Cloud Foundry、FreeBSD 、CentOS 等开源技术的官方支持。目前,在中国运行的 Azure 上,有超过一半的虚拟机运行的都是Linux。
今年 3 月,微软在推出新一代 SQL Server 2016 的同时,宣布将在 2017 年中推出面向 Linux 的 SQL Server——这是微软旗舰数据库产品问世 20 多年来,首次登陆 Linux 系统。在提供满足关键任务运行的性能、业界领先的总体拥有成本(TCO)、最高水平的安全性的同时,还允许客户以低成本随时访问本地和云端数据的弹性数据库——这让 SQL Server 真正成为一个能在 Windows Server 与 Linux 系统之间、在用户的本地数据中心和云环境之间无缝衔接的数据平台。
投身开源社区,发掘多样化可能
开源社区是极为多样化的世界,在 GitHub 上只有 2% 的开源项目能得到社区开发者的关注并从中脱颖而出。要拥抱开源,微软必须面对前所未有的多样性——过去专注于 Windows 的微软如今必须要学习、了解、支持多样化的开源技术。为此,微软的技术专家与各大开源社区保持着经常性的技术交流,并积极主动地提供技术更新与支持——活跃在 GitHub 上的 16,419 人就是其中的代表。
“通过与各种开源社区的积极互动,我们希望以微软的技术创新、开发工具、Azure 云平台助力开源技术与项目的发展、应用和推广,帮助开发者与用户利用多样化的技术创造多样化的机遇与可能 。”微软亚太研发集团首席运营官、微软亚太科技有限公司董事总经理、微软中国云计算与企业事业部总经理申元庆介绍说。
2014 年 10 月,微软开放技术作为核心初创成员,联合中国支持开源的企业、社区及个人开发者共同成立了开源社;今年 1 月开源社正式成为开放源代码促进会(OSI)联盟成员;微软亚太研发中心开源技术部高级开发经理梁莉,被推选为 FreeBSD 基金会董事。通过积极参与开源社区建设并贡献技术力量,微软已经在国内外开源社区中赢得了广泛的认可。
开源开发工具和架构,创造跨平台机遇
跨平台开发正在成为主流,微软免费推出的跨平台 Web 和云开发代码编辑器 Visual Studio Code 支持多达 30 多种编程语言,为跨平台开发者带来了极大的便利。其中,微软在 JavaScript 基础上开发的开源语言 TypeScript 已被谷歌采用,作为 Angular 2.0 网页框架的编程语言,Visual Studio Code 也成为 Angular 团队使用的主要代码编辑器。
微软收购 Xamarin 并将其与 Visual Studio 全面整合,包括免费的 Visual Studio Community 版,以及供 Mac 用户免费下载的 Xamarin Studio Community 版用户均能从中获益。现在开发者可以用 C#语言为 iOS、Android、Windows 开发原生体验的应用——在大幅降低跨平台开发技术成本的同时,也提高了项目与代码管理的效率。Xamarin 的 Mono Project 和 SDK 包括运行时、类库和命令行工具也已开源,开发者和企业可以无后顾之忧地利用.NET 运行时为移动、桌面或者云环境开发软件、嵌入设备或游戏引擎。
自 2014 年宣布.NET 开源起,微软就在全力推动.NET Core 运行时的跨平台发展,让广大开发者可以在 Windows 以外的系统环境中,延续他们在.NET 技术上的投入和积累。专为开源、跨平台设计的.NET Core 现已成为 GitHub 上人气很高的项目。一个月前,微软宣布 PowerShell 开源并支持 Linux。现在,Windows 和 Linux 系统用户和应用开发者可以平等地体验到丰富的交互式脚本语言带来的便利,过去各自为政的 Windows 和 Linux 开发团队也可以快乐地携手工作了。
进化中的微软智能云,为中国带来更多开源机遇
“我们要让更多人享受到微软的产品和创新技术——而且是以人们所习惯的方式。”微软全球执行副总裁兼云计算与企业事业部负责人 Scott Guthrie 在他的博客中写道。
“以人们习惯的方式”体现了萨提亚 ∙ 纳德拉出任 CEO 以来,微软最显著的一个变化——今天的微软会从全球各地开发者、用户、合作伙伴的现实需求出发,以积极的改变和投入,全力满足生态系统健康发展的多样化需求。
为了满足“人们习惯的方式”,微软智能云 Azure 在落地中国之后,进行了大量“接地气”的创新与改造。其中,去年 9 月上线的 MySQL Database on Azure 就是个典型——它是 Azure 云平台上第一个由微软提供的MySQL 数据库服务,而且是由微软中国云计算创新中心(CCIC)为满足中国用户需求主导开发的。自上线以来,MySQL Database on Azure 已经服务于光明网、欧莱雅、云图微动、游族、观致汽车等超过 300 家客户。
在微软中国团队的不懈努力下,微软智能云 Azure 也在与时俱进,通过不断加大对开源的支持,为本土生态圈合作伙伴带来更多创新的可能。微软智能云 Azure 近期新增的开源服务和功能包括:
- MySQL Database on Azure 全面开放 5.7 版本支持:5.7 版本是目前 MySQL 最新的版本,在某些场景下性能提升明显,同时完善了一些功能,包括对原生 JSON 数据格式支持、内置 JSON 函数、增加对 GIS 支持等。
- Azure 正式支持 Cloud Foundry:开源 PaaS 平台 Cloud Foundry 简化了云计算应用程序构建、测试、发布和扩展的过程,支持 Java、Node.js、Python、PHP、Go、Ruby 等多种开发语言并可在各主要公有云和私有云平台上运行。由世纪互联运营的 Microsoft Azure 正式支持 Cloud Foundry,为广大企业用户提供了极大便利,使其能有效、快捷地管理和发布云计算应用程序。
- Azure 正式支持红帽云访问:由世纪互联运营的 Microsoft Azure 已正式支持红帽企业 Linux(Red Hat Enterprise Linux)。利用红帽云访问(Red Hat Cloud Access)服务,红帽企业 Linux 客户可以把已经拥有的红帽订阅转移到 Azure 上,并得到相应的技术支持和保持与红帽的业务关系。
- FreeBSD 虚拟机正式上线:FreeBSD 是一个卓越的开源操作系统,具备优异的网络和存储性能,因此成为诸多 ISP 的选择,许多顶尖虚拟设备厂商基于 FreeBSD 构建产品。微软和 FreeBSD 社区紧密合作,在由世纪互联运营的 Microsoft Azure 上正式发布 FreeBSD 虚拟机镜像,并承担镜像的制作、测试和更新。这不仅为 Azure 的开源操作系统集合增添新成员,也为 ISP 和虚拟设备厂商登陆 Azure 提供了基础操作系统的选择。
- CoreOS 虚拟机正式上线:CoreOS 是基于 Linux 内核的、为容器而生的系统平台。由世纪互联运营的 Microsoft Azure 是中国第一个官方支持 CoreOS 的公有云平台。国内开发者和企业用户将可以在 Azure 上轻松搭建、管理安全、灵活、可信的 CoreOS Linux 集群,并在其上运行他们的应用服务。同时,CoreOS 也提供了对于混合云的支持,用户可以在跨越云和本地设备的混合环境中部署运行 CoreOS Linux 集群。
从微软智能云 Azure 到 Windows 10,从 Xamarin 到.Net Core,再到全球各地的开源社区,微软正在以前所未有的开放胸怀,主动拥抱多元化的开源世界。今天,更加积极、开放的微软,带来了更具创新、活力的技术、产品、服务、平台,也给全球开发者和企业用户带来了更广泛的选择与灵活性。
一个既熟悉又陌生的微软,正在用实际行动告诉你:拥抱开源,微软是认真的。