因为 Windows 的交叉编译二进制文件比本地构建更容易
我希望微软做得更好,希望 Windows 成为一个不错的开发平台——然而,我经常看到微软在玩开源游戏:宣传他们对开源和开发者的友好程度——只是为了在公司的脚下碾压开发者庞然大物的靴子。
在微软工作的人都是了不起、善良、有才华的人。这是针对公司的领导层,我觉得他在很多场合都压垮了我自己和其他开发人员。这是求救。
“开源”C#、C++、Rust 和其他 Windows SDK 的真实来源是专有的
您可能以前没有听说过它,但是如果您曾经在 C#、C++、Rust 或其他语言中使用过 win32 API 绑定,那么它们很可能是从名为microsoft/win32metadata的存储库中生成的。
不幸的是,这些生成的 SDK 的真实来源——Windows SDK.idl文件——是专有的,尽管它们位于同一个存储库中,根目录下只有 MIT 许可证。
派生的社区作品,比如 D 语言、Dart 或 Zig 绑定到由这些文件生成的 win32 API 是否是开源的——如果微软没有这样发布它们?我让你决定。
Azure Kinect DK 不是开源的
如果你是少数几个在 Azure Kinect 开发者工具包上花费数百美元的不幸者之一,你的眼睛会闪烁着可能性,盯着完全开源的microsoft/Azure-Kinect-Sensor-SDK存储库——这可能是短暂的.
不幸的是,Body Tracking SDK 是一个专有的二进制 blob - 因此,如果您希望改进身体跟踪,添加ARM CPU 支持,让它在 Linux 上运行,或者其他任何东西 - 你就不走运了。
.NET 不是开放的
如isdotnetopen.com 所述,尽管尽了最大努力,.NET 仍然不是一个开放平台:
撞击专有扩展以继续锁定 .NET。一种开放的编程语言缺少调试器领导层移除 hotreload 的决定激怒了社区和 devp 员工
我仍然感到震惊的是,他们确实让 .NET 团队dotnet watch在最后一刻恢复了 PR,以便他们可以将其作为一项功能出售。
VS Code 作为开源销售,但它不是
VS Code 周围的信息很清楚,尽管有点滑,关于开源:
Visual Studio Code - 开源(“代码 - OSS”)
该项目采用了微软开源行为准则。
自由的。建立在开源之上。
同时:
- Python 集成 Pylance 是 100% 专有的
- vscode-cpptools 是专有的
- 实时共享不是开源的
- C# 和 C++ 调试器是专有的
- WSL 和 SSH远程开发扩展是专有的
- 遥测是选择退出,而不是选择加入
旁注:如果您正在制作 VS Code 扩展,请同时将它们发布到open-vsx.org,因为 Microsoft已向那些在 VS Code 产品之外使用其扩展注册表的人发出停止和终止通知,因此无法使用在开源 fork vscodium中。