微软2020开源回顾:止不住的挨骂,停不下的贡献

喜欢就关注我们吧!

2020年,Linus Torvalds 开启“飚骚话”模式,言语不再激烈。看到“大喷子” Linus 都有机会变慈祥,料想微软近年来主动拥抱开源并示好的行为应该能改变他人的看法。

然而事实并非如此,虽然微软积极投身开源多年,却始终难以避免挨骂。做得不好,看客加大力度开喷;做了好事,看客变着花样来骂。这不是罔顾事实,有图为证:

上面是“微软探索 LTO+PGO 以优化 Linux 内核”资讯中,用户在评论区的留言截图。事实上,微软在2019年发布 WSL2 时就已经将真正的 Linux 内核“安进”了 Windows 10,它作为 Linux 内核的重度使用者,想必会遇到更多更复杂的场景,微软愿意分享自己优化内核的经验称得上是一件好事,却被质疑成在“捣乱”、“祸害”。

微软做好事尚且落得如此待遇,做得不好等待它的只会是网友毫无情面的火力全开。去年5月,微软在 Build 2020 大会发布了新的软件包管理工具 WinGet,并宣布将其开源。就在 WinGet 发布之后不久,开源软件包管理工具 AppGet 项目作者 Keivan Beigi 发文宣布 AppGet 项目“死亡”,矛头直指微软的 WinGet 抄袭了 AppGet。网友们理清事情的来龙去脉后咬定微软抄袭石锤,然而微软虽然承认了 AppGet 的贡献并表达了谢意,但并没有对整件事情表达歉意。

于是有网友毫不留情地开启嘲讽模式,“微软之所以开始向开源靠拢,是为了更方便窃取别人的劳动成果?”

在抄袭事件之后不久,微软又因为发布的开源项目名字与已有的项目名字一样,遭到了 KDE 社区和网友的猛批。也是在 Build 2020 大会上,微软宣布了 MAUI 项目 (.NET Multi-platform App UI),这是一款跨平台的原生 UI。恰巧 KDE 社区也有一个名为"Maui"的项目,这是一个用于构建跨平台应用程序的 UI 框架,不过创建的时间早于微软。

KDE 社区发文呼吁微软修改 MAUI 名称,Maui 团队成员也前往 MAUI 的 GitHub 仓库提交 issue 请求改名,但微软都没接受。而这个请求改名的 issue,微软开发者在上面被骂到将其设置为锁定状态。

不过直到现在,微软也没修改 MAUI 项目的名字。

虽然微软一整年下来一直在挨骂,但它的开源贡献也一直在持续。从底层的协议、编程语言到各种框架、类库,再到应用工具,微软在开源贡献方面称得上是积极分子。

底层相关:

  • 微软正式开源受 Rust 启发的新编程语言 Verona

  • 微软开源 MsQuic,QUIC 协议的跨平台实现

  • 微软开源早期编程语言 GW-BASIC

  • 微软提交新内核补丁,希望借助 Linux 和 Hyper-V 创建完整的虚拟化堆栈

框架/类库相关:

  • 微软开源深度学习优化库 DeepSpeed,可训练 1000 亿参数的模型

  • 微软开源 Rust/WinRT,方便使用 Rust 构建 Windows 应用

  • 微软开源 Tye 项目,可简化微服务开发<阅读原文可查看>

  • 微软正式推出 gRPC-Web for .NET

  • “轻量级的”Istio,微软开源了一个基于 Envoy 的服务网格

  • 微软正式开源 Fluid Framework<阅读原文可查看>

  • 微软开源 TensorFlow-DirectML,为 WSL2 提供 GPU 支持<阅读原文可查看>

应用工具相关:

  • 微软开源软件特征源码分析工具 Application Inspector

  • 微软为 Chromium Edge 浏览器添加经典 Edge 模式<阅读原文可查看>

  • 微软开源 Outlook for iOS 暗黑模式解决方案:支持 iOS 11 及更高版本<阅读原文可查看>

  • 微软开源 Scalar,提升操作巨型 Git 仓库的速度

  • 微软开源基于 Rust 的新软件,可在 Kubernetes 上运行 WebAssembly<阅读原文可查看>

  • 微软开源 Windows 软件包管理器 winget,一行命令安装软件

  • 微软在 ARM 上成功移植 OpenJDK for Windows 10

  • 微软开源模糊测试平台 OneFuzz<阅读原文可查看>

觉得不错,请点个在看呀

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

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

相关文章

每日一题——LeetCode859

方法一 个人方法&#xff1a; 首先s和goal要是长度不一样或者就只有一个字符这两种情况可以直接排除剩下的情况s和goal的长度都是一样的&#xff0c;s的长度为2也是特殊情况&#xff0c;只有s的第一位等于goal的第二位&#xff0c;s的第二位等于goal的第一位才能满足剩下的我们…

4倍速!ML.NET Model Builder GPU 与 CPU 对比测试

当我们使用 Visual Studio 进行机器学习开发时&#xff0c;一般都会推荐安装 ML.NET Model Builder &#xff0c;这让我们的开发更加可视化&#xff0c;并且按照步骤载入相关的训练集&#xff0c;选择好模型就够了&#xff0c;一切就是如此朴实无华。说到 ML.NET Model Builder…

ML.NET 推荐引擎中一类矩阵因子分解的缺陷

ML.NET 作为 .NET 跨平台的机器学习套件&#xff0c;在回归、预测、分类甚至是图像识别、异常检测都展现出简洁快速的优势&#xff0c;以往的文章已介绍过不再赘述。其实机器学习场景中还有一类非常常见的&#xff0c;就是推荐&#xff0c;特别是在线购物、文娱产品为了提升用户…

晋升新一线的合肥,跨平台的.NET氛围究竟如何?

大伙可能不知道&#xff0c;2020年合肥已经成功晋升为新一线城市了。本文通过对目前合肥.NET招聘信息以及公众号的相关数据的分析来看下目前合肥.NET的大环境。就着2020中国.NET开发者峰会顺利举行的东风&#xff0c;同时为进一步提升合肥地区的.NET技术氛围&#xff0c;一些合…

开源项目barcodelib-C#条形码图像生成库

介绍该库旨在为开发人员提供一个简单的类&#xff0c;以便他们在需要根据数据字符串生成条形码图像时使用。用法该库包含一个名为BarcodeLib的类&#xff0c;其中包含三个构造函数&#xff1a;Barcode(); Barcode(string); Barcode(string, BarcodeLib.TYPE);如果决定使用参数创…

ctf php 读取flag,BugkuCTF flag.php(反序列化)

进去后是个登录页面&#xff0c;但是login根本不会跳转&#xff0c;看源码也没提示&#xff0c;但是这道题给了一个提示&#xff1a;hint&#xff0c;那么盲猜应该是一个get参数&#xff0c;因为post不能跳转&#xff0c;那么get总有内容吧&#xff0c;跟上hint参数&#xff0c…

2021技术人新展望

一、前言各位小伙伴们还有几天新的一年即将来临&#xff0c;这篇文章作为今年的结束吧。不知道大家对自己每一年的技术发展规划是什么&#xff0c;我在这里分享一下我2021年的新的规划&#xff0c;这里非常感谢各位小伙伴对我的关注。二、内容概要2021的布局客户端技术分享服务…

在 ASP.NET 中实现会话状态的基础

简介 在 Web 应用程序这样的无状态环境中&#xff0c;了解会话状态的概念并没有实际的意义。尽管如此&#xff0c;有效的状态管理对于大多数 Web 应用程序来说都是一个必备的功能。Microsoft ASP.NET 以及许多其他服务器端编程环境都提供了一个抽象层&#xff0c;允许应用程序基…

【One by One系列】IdentityServer4(三)使用用户名和密码

继续介绍IdentityServer4,我们上篇介绍了IdentityServer4实现OAuth2.0的授权方式之一的客户端凭证&#xff0c;接下来我们继续介绍OAuth2.0的另外一种授权方式密码式&#xff0c;Resource Owner Password Credentials。post请求token?grant_typepassword&usernameUSERNAME…

【One by One系列】IdentityServer4(二)使用Client Credentials保护API资源

书接上回&#xff0c;我们将会正式开始介绍IdentityServer4。IdentityServer4是实现了OAuth2.0OpenId Connect两种协议的优秀第三方库,属于.net生态中的优秀成员。可以很容易集成至ASP.NET Core&#xff0c;颁发token。使用Id4基本步骤如下&#xff1a;**1.**在Startup.Configu…

使用 Avalonia 开发 UOS 原生应用

最近很火的是国产的操作系统 UOS 系统&#xff0c;这个系统现在存在的问题就是生态没搭建起来。作为 dotnet 开发者&#xff0c;可以通过很多不同方向的技术为 UOS 系统生态贡献应用&#xff0c;如 Xamarin 和 GTK# 或 wine 和 win32 应用&#xff0c;或 mono 和 WinForms 应用…

云原生那些顶级开源项目,你都用过哪些?

CNCF&#xff0c;英文全称为Cloud Native Computing Foundation&#xff0c;中文译为“云原生计算基金会”, 构建可持续生态系统&#xff0c;并围绕一系列高质量开源项目促进社区的发展&#xff0c;本文大概介绍下几个主要的项目。???? Kubernetes⭐ Star: 73.5k https://g…

2021年首届.NET线下沙龙上海站 - 2021 .NET Meetup in Shanghai

.NET Conf 2020 刚刚在苏州落下帷幕&#xff0c; .NET 开发者们的热情不减&#xff0c;来自五湖四海的朋友一起参加疫情之下的 .NET 盛会。2021年上海第一场线下活动就要来了&#xff0c;快来加入我们一起学习.NET 吧&#xff01;活动时间&#xff1a;2021年1月23日 13:00-18:0…

跟我一起学Redis之加个哨兵让主从复制更加高可用

前言主从复制的实现在上一篇已经分享过&#xff0c;虽然主从复制本身的确让读写分离更加高效&#xff0c;但是对于整体高可用存在很大的劣势&#xff1a;当主节点宕机了之后还需要人为重新进行主从关系配置&#xff1b;这不是开玩笑嘛&#xff0c;这样人为干预&#xff0c;故障…

智能实验室-全能优化(Guardio) 4.0.0.670 beta 8

怎样获取最新版本&#xff1f;□全新下载&#xff1a;全能优化(Guardio)&#xff1a;http://files.cnblogs.com/unruledboy/Guardio.Release.zip智能实验室&#xff0d; 全能优化(Guardio) 4.0.0.670 beta 8 更新记录&#xff1a; 1.添加&#xff1a;系统加速 之 系统速度&…

如何在 ASP.Net Core 中实现 健康检查

健康检查 常用于判断一个应用程序能否对 request 请求进行响应&#xff0c;ASP.Net Core 2.2 中引入了 健康检查 中间件用于报告应用程序的健康状态。ASP.Net Core 中的 健康检查 落地做法是暴露一个可配置的 Http 端口&#xff0c;你可以使用 健康检查 去做一个最简单的活性检…

【One by One系列】IdentityServer4(四)授权码流程

接下来我们介绍新内容,OAuth2.0叫做授权码(authorization code)&#xff0c;在OpenID Connect中则属于OpenId Connect Flow&#xff0c;称为授权码流程(Authorization Code Flow),这种方式主要场景&#xff1a;保密客户端&#xff0c;服务器端的web应用“例如asp.net core mvc,…

Nemuria UML架构图 第3次迭代. 重构

Nemuria UML架构图 第3次迭代. 重构

suse linux 文件只可读,SUSE LINUX下文件系统变只读的问题解决

现象产生&#xff1a;服务器在挂载SUSE LINUX的系统光盘安装一些系统自带的RPM包后&#xff0c;发现HOME目录文件系统变成只读模式。附图&#xff1a;原因分析&#xff1a;在系统加载光盘之前一切正常&#xff0c;加载后出现这样的问题。加载光盘时&#xff0c;使用了mount命令…