微软官宣:史上最贵开发工具 75亿美金收购GitHub

微软副总裁红衣主教Scott Gu今天的一封邮件结束了这笔软件历史上最大收购案,微软给全球开发人员的开源代码仓库GitHub投入了75亿美金,确保这一平台的持续健康发展。


640?wx_fmt=png


GitHub为啥愿意被收购?


“软件工程这个事情,从来就不是一笔好生意!”,如果现在谁还想去靠搭建一个代码托管服务赚钱,那最好还是别了。不知道还有人记得有一家叫做GitCafe的公司么?加上Coding.net和开源中国的码云,这算是国内复制GitHub模式的三个很成功的创业公司了,结果是GitCafe被Coding.net收购,Coding.net收到腾讯投资。当然,Coding.net 算是成功的案例,但是从这个套路你也可以看出,一家以代码托管作为主要服务内容的公司,它的生存状态如何?当然,GitHub作为全球最大的代码托管平台,国内这些复制者是无法望其项背的,每年1个多亿的订阅收入也是真金白银。但是作为一家商业运作的公司,就算社区再有情怀,也还是要解决大米白面的问题。


摆在GitHub面前的问题是,趁现在热度还在,我是卖掉还是上市?GitHub为什么不选择上市呢?那我们再拿一家类似的公司来做类比,澳大利亚的Atlassian在2015年完成了IPO,而且在上市当天就大涨28%,为啥GitHub不能走这条路呢?而且bitbucket做的还远不及GitHub呢?要回答这个问题,你首先要搞清楚软件工程这件事情,到底怎样才能成为一个生意。任何的软件公司都需要软件工程工具,这些工具以代码管理为基础,加上工作跟踪,项目管理,测试,构建和发布基本上才能构成一个完整的工具链。软件工程工具要发挥作用,只有成为工具链才可以。这里面的基础组件本身是很难独立对整个研发团队产生价值的,源代码管理(VC)系统又恰恰是一个技术难度极高,运营成本也很高的基础设施类服务,这种东西是典型的“求之不得,弃之不舍”的系统,用户一般很不愿意为这个东西本身付费,其实你看看全世界还有多少用老旧的svn在管理源代码的公司就知道我在说什么了。所以,如果一家公司想要靠软件工程工具生存,就必须要打造工具链,这件事情已经被多家公司证明,IBM的Rational产品线,HP的QC产品,微软的TFS/VSTS和Altassian的全家桶都是围绕这个思路来赚钱的。


再回过头来看看GitHub你应该能明白我在说什么了,虽然GitHub有超高的人气,但是盈利能力,特别是持续的盈利能力一直是他的短板。这些年GitHub也不是没有努力过,2017年发布的Marketplace就是最好体现,但是比较一下Altassian的插件市场和VSTS的Marketplace的发展就可以看出其实GitHub一点都不努力。Altassian从一开始就坚持打造工具链和开放体系,VSTS从2015年开始打造插件生态;而GitHub的各种集成和插件其实存在许久,而GitHub直到2017年才有官方的插件市场,这足以说明GitHub的管理层对自己的发展方向其实一直不够明确也不够认真,甚至显得很任性。


微软为什么要收购GitHub?


其实微软对GitHub窥视许久,这是尽人皆知的事情。微软的生意其实是一个生态的生意,而开发者社区一直都是微软赖以生存的根本之一。微软开发者工具Visual Studio产品线一直被列为微软内部的战略级产品,这一点在微软整个的发展史上从来没有被动摇过,无论这个产品本身是否赚钱,微软都愿意为它投入大量的资源。所以你要说这个世界上谁最懂得开发者,那必须是微软。就算鲍尔默这位最近经常被大家诟病的前CEO也是一位极其推崇开发者的CEO,我本人是亲身体会过他高喊着Developer Developer Developer跳上讲台的那种气势,以及他讲起开发者的重要性的那种激情的。2014年萨提亚接过CEO一职后也一样延续微软打造开发者社区的传统,只不过他换成了一种开放的方式,与这个世界的发展趋势吻合,也成功挽救了微软。


对于这样一家生存在开发者社区上的公司来说,收购GitHub是一件太自然不过的事情,无论是完善本身的开发者工具体系,还是在Azure云计算周围打造一个更加坚固的社区土壤,这都是一笔好生意,更何况要价50亿美金的Github比起之前那些收购来说便宜多了。至于Github是否自己能赚钱,就变得不那么重要了。这样以来Github可以继续任性情怀下去,微软可以让开发者们happy,同时加强自己的云生意的来源。

至于那些叫嚣着马上删号移库的开发者来说,我觉得你们要么太现实要么太风骨,太把自己当回事,太把开源当阳春白雪了。开源闭源都只是一种商业模式,最终的目的一定是商业公司的盈利,个人开源可以全凭一时任性,公司开源就一定有套路在背后;开源公开库本来就是建立在“互相利用”的社区精神之上的,你担心个啥呢?也许你是私有库,担心微软偷了你的算法去改进自己的AI,你觉得一家美国上市公司会冒这种法律风险吗?75亿都花了,给你个零头你卖不?所以呢,如果你正忙着迁移自己的github repo,那我劝你还是别干这行了,直接去寺里面领个名号比较适合你这种要风骨不要米饭的。你的格局也就如此了。


再来说说VSTS和GitHub的关系,很多人觉得这2个产品会是对立关系,其实那只能说明太不了解它们了。VSTS是无限量免费私有库,GitHub是无限量免费公有库,他们刚好互补,微软收购了Github只会进一步加强VSTS里面其他功能对开发者的吸引力,比如提供VSTS CI/CD 与Github更为直接的集成,让敏捷看板等工具更好的支持Github的Repo和Issue系统等等。总之,软件工程工具链更加丰富和完整,对社区对微软都是利大于弊。


最后说说中国开发者,国内的开发者社区这些年有一种很恶劣的风气,就是唯互联网是从,唯谷歌苹果是从,唯Java是从,只要谈到微软那就是封闭,版权。其实我们就仅仅比较微软和谷歌,微软从1995年就在中国设立了研发和技术支持中心,在国内运作开发者社区,给高校和学生免费提供大量资源,与政府合作提供大量资源支持各地的软件产业。谷歌又做了什么呢?除了很有风骨的拍屁股走人,这么多年你有见过谷歌为中国开发者特地做过什么吗?问问那些开发Android系统的开发者就知道了,问问那些做前端的需要使用Google Fonts的开发者你也就知道了。你可以把这些都归功于GFW,但是作为一家真正懂得开发者的公司,他是有能力也是可以做出改变的 … 微软为了解决国内开发者下载nuget包的问题可以在国内搭建服务器,为了让国内开发者更好的访问VSTS,可以迅速决定在香港部署新节点。这些才是一家重视开发者的公司应该做的事情。


640?wx_fmt=jpeg


把一个开发者热爱的社区交给一家懂得和尊重开发者的工程师运营的公司总好过交给一家由律师运营的公司,你说是这个道理吧?


来自微软技术大会2018的几则重磅消息


640?wx_fmt=png


2018年10月26日,上海——在2018微软技术暨生态大会(Microsoft Tech Summit)上,微软宣布围绕 Visual Studio 和 Visual Studio Code 开发平台提供一系列新功能与服务,并对 Azure DevOps 研发云进行整合升级,通过 Visual Studio 开发平台与微软研发云的相互融合,为全球开发者打造更加高效、快捷、智能化、协作化的云开发体验。


支持 Java 和 Python 的 Visual Studio Live Share 协作服务


640?wx_fmt=png


为了进一步提升团队开发者协同工作的效率,微软在 Visual Studio 及 Visual Studio Code 中增加了 Visual Studio Live Share 服务,让多名开发者在同一个项目中进行实时协作。用户在编写代码和调试程序时只需发送一个 URL 网址,就能邀请他人参与协作,而且无需重新设置开发环境或安装任何附加包,即可在统一的环境中进行同步编程协作。这项服务在 Windows、Mac、Linux 等不同平台之间协作。


IntelliCode 人工智能辅助编程


640?wx_fmt=png


微软推出 Visual Studio IntelliCode 智能代码辅助开发服务,能够根据开发者个人喜好,定制自动完成代码、模板,识别重构中的遗漏、误用变量、非规范变量名,还能对代码进行自动化分析和审核。


是的,作为一名微软开发者,我们只会拖拽控件儿和用AI写代码儿!!


适用于物联网和智能边缘的自动机器学习能力(Auto ML)


640?wx_fmt=png


面对智能云与智能边缘的世界,微软为开发者提供了能够更好驾驭人工智能与物联网的工具。微软在大会现场,首次演示了第一个芯片级云+端物联网安全连接管理方案,以及用来让云端智能运行于物联网设备的 Azure IoT Edge 服务如何将自动化机器学习(Auto ML)应用于物联网的场景 —— 通过在 Azure IoT Edge 运行时上部署 AI、数据转换、数据检查筛选等服务,并借助容器注册表、Edge 部署清单等服务,将其与云端 Azure IoT Hub、Azure Functions 服务、Cosmos DB 数据库及 Web App 服务相连,微软成功通过在边缘部署智能,实现了物联网设备的大规模、自动化管理。

 

Azure DevOps 研发云整合升级以及Visual Studio App Center 提供一站式跨平台移动应用开发体验

640?wx_fmt=png


面对 iOS、安卓系统移动应用的开发,Visual Studio 推出了App Center,将原来需要借助 Xamarin 的 HockeyApp、Xamarin Insights 及 Azure 应用服务完成的六项功能整合成为一项服务,显著提升了开发者面向iOS和安卓设备开发、测试、发布移动应用的自动化程度。借助 App Center,开发者可以在云端开发 Objective-C、Swift、Java、Xamarin 和 React Native 应用。App Center 能够自动对数千种设备进行适配测试、快速将应用发送给测试者或者直接发布到应用商店,并帮助开发者监测和收集故障报告,所有这些程序都能以自动化的方式高效完成。


源自 GitHub 的经验,成为微软研发云 Azure DevOps 服务学习的最佳蓝本。微软将 Azure Boards 电子看板、Azure Pipelines 流水线、Azure Test Plans 测试管理、Azure Artifacts 包管理、Azure Lab Services 实验室服务、Azure Repos 代码托管服务等六项服务整合为全新的 Azure DevOps 研发云服务,为开发者团队提供了全面覆盖计划、创建、编程、测试、部署、发布、托管、共享等各个环节,适用于任何语言、平台,并且能够与 GitHub 或者其它云平台对接部署的全套开发运维服务。


所有托管在GitHub上的开源项目均可以免费获得Azure DevOps Pipeline所提供的10条并发跨平台流水线,同时使用Windows, macOS或者Linux完成代码的自动化编译构建,自动化测试和自动化部署。


640?wx_fmt=png



对比测试显示,Azure DevOps 服务为企业开发运维的效率带来的根本性的变革:应用的部署频率提升46倍、对项目进行更改的开发周期减少了2555倍、更改失败率降低了7倍、平均恢复速度提升了2604倍——如此巨大的改变将大大加速应用市场化的速度,进而帮助企业实实在在地降低成本、增加收入。


.NET Core 3将提供全面跨平台开发


640?wx_fmt=png


.NET Core 为开发者提供了跨平台、云原生应用的理想开发平台,特别是即将发布的 .NET Core 3,能够全面支持从网页到云端、桌面、物联网、人工智能的全方位的跨平台部署。在大会现场,微软演示了 Windows 桌面在 .NET Core 3.0上运行的情况,充分展现了将其用于未来开发环境的无限可能。


微软宣布, Azure SignalR 服务正式商用。Azure SignalR 是一项里程碑式的全新服务,提供了 SaaS 级别的实时消息服务,能够以全托管形式提供,让用户无需为自运维及扩容等细节担心,服务原生支持 ASP.NET Core 的部署,能够与其他 Azure 服务相互整合,而且可在 Azure 全球多个区域提供。


同时.net core的性能在全球标准化测试组织的测试中超越竞争对手,20,000请求/每秒的处理速度,20倍于node.js的性能(1000请求/秒)。


640?wx_fmt=png

 

DevOps魔盒(devcloudX.com) 首秀完成


640?wx_fmt=jpeg


leansoftX.com 研发总监周文洋在这次技术大会上也为参会的小伙伴展示了DevOps魔盒这款产品。利用微软云所提供的Infra As Code能力,配合Azure DevOps Server所提供的自动化调度能力,DevOps魔盒可以为企业研发团队提供一键式环境创建和自助的管理能力;通过集成微信,为研发团队提供持续的实时反馈能力。


640?wx_fmt=png

640?wx_fmt=png


同时,leansoftX.com团队还现场送出了60套Azure DevOps Server环境。


640?wx_fmt=gif




DevOps+LIVE直播

基于Azure DevOps的容器化流水线搭建


本次技术大会我们还完成 Azure DevOps Server 的动手实验,但是因为实验时间有限,很多小伙伴都没有能够完成整个实验。因此,我们将邀请leansoftX.com研发总监周文洋为我们通过DevOps+LIVE直播为大家再做一次分享。


直播时间

2018年10月31日 晚8点30分


报名方式

请扫描以下二维码进入注册页面


640?wx_fmt=png

原文地址: https://mp.weixin.qq.com/s/t7Y8m0auU-1B46RMT6VcGQ


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

640?wx_fmt=jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/319304.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# 中使用面向切面编程(AOP)中实践代码整洁

1. 前言最近在看《架构整洁之道》一书,书中反复提到了面向对象编程的 SOLID 原则(在作者的前一本书《代码整洁之道》也是被大力阐释),而面向切面编程(Aop)作为面向对象编程的有力补充,对实践整洁…

微软对开发者献真爱,全面支持开源,加速研发云升级

全球首秀:支持 Java 和 Python 的 Visual Studio Live Share 协作服务与 IntelliCode 人工智能辅助编程,适用于物联网和智能边缘的自动机器学习能力(Auto ML);Visual Studio App Center 提供一站式跨平台移动应用开发体…

Ocelot简易教程(七)之配置文件数据库存储插件源码解析

上篇文章Ocelot简易教程(六)之重写配置文件存储方式并优化响应数据 给大家分享了如何集成我写的一个Ocelot扩展插件把Ocelot的配置存储到数据库中。并没有对实现原理进行相应的阐述。今天抽空把实现的原理给大家说道说道。明白原理后,大家就可…

ASP.NET Core 2调用Azure云上的PowerBI报表展示

在开发企业应用中,报表功能是当之无愧的重头戏,如何将数据通过合适的报表呈现出来成为每个项目人员必需面临的问题。而找到一款合适的报表往往都需要考率价格、开发、风格、支撑等因素。那么,我在这里给大家介绍一款由微软提供的可视化报表工…

聊聊如何设计千万级吞吐量的.Net Core网络通信!

作者:大石头时间:2018-10-26 晚上 20:00地点:QQ群-1600800内容:网络通信,网络库使用方式网络库设计理念,高性能要点介绍首先看下面这张很具有代表性的图,2018年5月份做的测试。当时单服务器得到…

MonkeyFest2018 微软最有价值专家讲座

MonkeyFest2018微软最有价值专家讲座Monkey Fest 是一个一年一度由全球Microsoft Xamarin跨平台开发者发起的全球性社区活动,主要是推广在云、人工智能、大数据、移动开发等技术。本次活动同时在新加坡,美国,日本,加拿大&#xff…

2020牛客国庆集训派对day2 MATRIX MULTIPLICATION CALCULATOR

MATRIX MULTIPLICATION CALCULATOR 题意: 求两矩阵相乘 题解: 应该都学过把。。。矩阵相乘 矩阵相乘的前提是两个矩阵的列等于另一个矩阵的行 也就是cij∑aik*bkj 原理很简单注意格式,但是我遇到一个玄学问题。。。 就是卡格式了。。我人…

P3911 最小公倍数之和

最小公倍数之和 题目描述: 对于A1,A2…AN,求 ∑i1N∑i1Nlcm(Ai,Aj)\sum_{i1}^{N}\sum_{i1}^{N} lcm(Ai,Aj)∑i1N​∑i1N​lcm(Ai,Aj) 题解: 莫比乌斯反演,直接强推一波 推导过程我也是一知半解,大体如图…

终于明白了 C# 中 Task.Yield 的用途

最近在阅读 .NET Threadpool starvation, and how queuing makes it worse 这篇博文时发现文中代码中的一种 Task 用法之前从未见过,在网上看了一些资料后也是云里雾里不知其解,很是困扰。今天在程序员节的大好日子里终于想通了,于是写下这篇…

2018-2019 ACM-ICPC, Asia Seoul Regional Contest——A - Circuits

A - Circuits 不难发现x坐标根本没用&#xff0c;只需要存储y坐标。 题目所求的两条直线y1ay_1ay1​a&#xff0c;y2b(a<b)y_2b\ (a<b)y2​b (a<b) 我们枚举y2by_2by2​b这条线&#xff0c;这条线一定可以是矩形的边界&#xff0c;于是我们扫描矩形边界差分计算当前…

aspnet core 2.1中使用jwt从原理到精通一

原理jwt对所有语言都是通用的&#xff0c;只要知道秘钥&#xff0c;另一一种语言有可以对jwt的有效性进行判断;jwt的组成&#xff1b;Header部分Base64转化.Payload部分Base64转化.使用HS256方式根据秘钥对前面两部分进行加密后再Base64转化&#xff0c;其中使用的hs256加密是h…

2020牛客国庆集训派对day3 Points

Points 题目描述 Jack and Rose are playing games after working out so many difficult problems. They together drew a “Haizi” tree to show their collaboration. “Haizi” tree is the same as the tree defined in graph theory. Now Jack would like to count t…

.NET Core微服务之路:利用DotNetty实现一个简单的通信过程

上一篇我们已经全面的介绍过《基于gRPC服务发现与服务治理的方案》&#xff0c;我们先复习一下RPC的调用过程&#xff08;笔者会在这一节的几篇文章中反复的强调这个过程调用方案&#xff09;&#xff0c;看下图根据上面图&#xff0c;服务化原理可以分为3步&#xff1a;服务端…

[译]ASP.NET Core中使用MediatR实现命令和中介者模式

在本文中&#xff0c;我将解释命令模式&#xff0c;以及如何利用基于命令模式的第三方库来实现它们&#xff0c;以及如何在ASP.NET Core中使用它来解决我们的问题并使代码简洁。因此&#xff0c;我们将通过下面的主题来进行相关的讲解。什么是命令模式?命令模式的简单实例以及…

.NET in Browser - Blazor

什么是BlazorBlazor 是一个实验性的. NET web 框架, 使用 C# 和 HTML 在任何浏览器中不需要插件即可运行 WebAssembly 程序集。什么是WebAssemblyWebAssembly是一种新的适合于编译到Web的&#xff0c;可移植的&#xff0c;大小和加载时间高效的格式&#xff0c;是一种新的字节码…

在碰撞中成长 - 北京银行的DevOps实践之路

2018年10/27日&#xff0c;在上海召开的微软年度最大规模的技术盛会—微软2018技术暨生态大会上&#xff0c;北京银行渠道系统负责人&敏捷团队负责人周兵女士和大家一起分享了北京银行的DevOps 实践转型经验&#xff0c;得到了大会听众的热烈评价和共鸣&#xff0c;会后众多…

2020牛客国庆集训派对day4 Emergency Evacuation

Emergency Evacuation 题意&#xff1a; 有n个人在不同的位置上&#xff0c;在最后面有一个出口exit&#xff0c;所有人都要逃离出去&#xff08;走出出口&#xff09;&#xff0c;且每个格子最多容纳一个人&#xff0c;当有人挡在前面时&#xff0c;后面的人必须停留&#x…

【活动(广州)】MonkeyFest2018 微软最有价值专家讲座

MonkeyFest2018微软最有价值专家讲座Monkey Fest 是一个一年一度由全球Microsoft Xamarin跨平台开发者发起的全球性社区活动&#xff0c;主要是推广在云、人工智能、大数据、移动开发等技术。本次活动同时在新加坡&#xff0c;美国&#xff0c;日本&#xff0c;加拿大&#xff…

互联网公司为什么普遍996而不是666

根据skinshoe wu的遭遇&#xff0c;解释一下互联网行业的12小时工作制以及996。题目说的有点绝对&#xff0c;这里先澄清一下&#xff1a;有的公司是10106&#xff0c;9106&#xff0c;10126&#xff0c;995&#xff0c;甚至955&#xff0c;007的都有&#xff0c;我只说大多数&…

IdentityServer4之JWT签名(RSA加密证书)及验签

一、前言在IdentityServer4中有两种令牌&#xff0c;一个是JWT和Reference Token&#xff0c;在IDS4中默认用的是JWT&#xff0c;那么这两者有什么区别呢&#xff1f;二、JWT与Reference Token的区别1、JWT(不可撤回)  JWT是一个非常轻巧的规范&#xff0c;一般被用来在身份提…