硬核老王 发布的文章

Git 和 GitHub 已经成为了开发者的基础工具,尤其是参与开源软件开发时经常会使用它们。但是在 Git 和 GitHub 使用过程中遇到的很多术语并没有标准的或约定俗成的中文译名,因此,我们根据 GitHub 、Git 等文档,并结合我们的翻译惯例,收集整理了 Git 和 GitHub 中常用术语的中文译名及其解释。

这里值得注意是术语有复刻、挂钩、议题、星标、变基、仓库等,这些术语之前要么经常中英文混杂使用,要么中文译法不确定,我们根据多年的翻译和开发经验,在 GitHub 译法的基础上进行斟酌,整理了如下的术语表供大家使用参考。此外,“复刻”这个翻译应该是我们 LCTT 首倡的;而“议题”这个对 issue 的译法也比之前的一些其它译法更为精准;“仓库”一词还有存储库、版本库等译法,但是仓库一词似乎更加合适。

受让人 ( assignee )

分配到某个议题的用户。

追溯 ( blame )

Git 中的“追溯”功能描述对文件每行的最新修改,一般会显示修订、作者和时间。这很有用,例如,可以跟踪何时添加了功能,或者哪个提交导致了特定漏洞。

分支 ( branch )

分支是仓库的平行版本。它包含在仓库中,但不影响主要或 master 分支,可让你自由工作而不中断“即时”版本。在执行所需的更改后,可以将分支合并回 master 分支以发布更改。

检出 ( checkout )

你可以在命令行上使用 git checkout 创建新分支,将当前的工作分支更改为不同的分支,甚至使用 git checkout [branchname] [path to file]从不同的分支切换到不同版本的文件。“检出”操作会使用对象数据库中的树对象或 blob 更新工作树的全部或部分,以及更新索引和 HEAD(如果整个工作树指向新分支)。

优选 ( cherry-picking )

从一系列更改(通常是提交)中选择一部分更改,并在不同的代码库上将它们记录为新的更改系列。在 Git 中,这通过 git cherry-pick 命令来执行,在另一个分支上解压缩现有提交引入的更改,并根据当前分支的提示将其记录为新提交。

清洁 ( clean )

工作树在对应当前头部引用的版本时是清洁的。另请参阅“脏”。

克隆 ( clone )

克隆是指存在于计算机上而非网站服务器其他位置的仓库副本,或者是复制的操作。在克隆时,可在首选编辑器中编辑文件,使用 Git 跟踪更改而无需保持在线。你克隆的仓库仍与远程版本连接,以便当你在线时将本地更改推送到远程,以保持同步。

行为准则 ( code of conduct )

为如何参与社区制定标准的文档。

代码所有者 ( code owner )

被指定为部分仓库代码所有者的个人。当有人打开对代码所有者拥有的代码进行更改的拉取请求(非草稿模式)时,会自动申请代码所有者审查。

协作者 ( collaborator )

协作者是受仓库所有者邀请参与,对仓库拥有读取和写入权限的人。

提交 ( commit )

提交或“修订”是对一个文件(或一组文件)的个别更改。在进行提交以保存工作时,Git 会创建唯一的 ID(也称为 "SHA" 或“哈希”),用于记录提交的特定更改以及提交者和提交时间。提交通常包含一条提交消息,其中简要说明所做的更改。

提交作者 ( commit author )

进行提交的用户。

提交 ID ( commit ID )

也称为 SHA。用于识别提交的 40 字符校验和的哈希。

提交消息 ( commit message )

随附于提交的简短描述性文字,用于沟通提交引入的更改。

持续集成 ( continuous integration )

也称为 CI。在个人对 GitHub 上配置的仓库提交更改后运行自动化构建和测试的过程。CI 是软件开发中一种帮助检测错误的常用最佳实践。

贡献指南 ( contribution guidelines )

说明人们应如何参与项目的文档。

贡献 ( contributions )

GitHub 上的特定活动。

贡献者 ( contributor )

贡献者是指对仓库没有协作者权限但参与过项目,并且他们打开的拉取请求已合并到仓库的人员。

默认分支 ( default branch )

仓库中的基本分支,除非你指定不同的分支,否则会自动对它完成所有拉取请求和代码提交。此分支通常称为 master。

游离的 HEAD ( detached HEAD )

如果你操作的是游离的 HEAD,Git 将会警告你,这意味着 Git 不指向某个分支,并且你的任何提交都不会出现在提交历史记录中。例如,在检出并非任何特定分支最新提交的任意提交时,你操作的是“游离的 HEAD”。

差异 ( diff )

差异是指两个提交之间的更改或保存的更改之间的区别,它将从视觉上描述文件自上次提交后添加或删除的内容。

脏 ( dirty )

工作树如果包含尚未提交到当前分支的更改,将被视为“脏”。

快进 ( fast-forward )

快进是一种特殊类型的合并,在其中你有修订以及“合并”另一个分支的更改作为现有分支的子系。在这种情况下,你无法进行新的合并提交,而只是更新此修订。这在远程仓库的远程跟踪分支中经常发生。

功能分支 ( feature branch )

用于试验新功能或修复未正式使用的议题的分支。也称为主题分支。

围栏代码块 ( fenced code block )

你可以在代码块前后使用三个反引号 `,通过 GitHub Flavored Markdown 创建缩进代码块。

获取 ( fetch )

在使用 git fetch 时,你将从远程仓库添加更改到本地工作分支,而不提交它们。与 git pull 不同,提取可让你在更改提交到本地分支之前先进行审查。

跟进(用户) ( following (users) )

获取关于另一个用户的贡献和活动的通知。

强制推送 ( force push )

一种使用本地更改覆盖远程仓库的 Git 推送,不管是否冲突。

复刻 ( fork )

复刻是其他用户仓库在你的帐户上的个人副本。复刻允许你自由更改项目而不影响原始上游仓库。你也可以在上游仓库中打开拉取请求,并使复刻同步最新的更改,因为两个仓库仍然互相连接。

gitfile

一种普通的 .git 文件,始终位于工作树的根部,指向 Git 目录,包含整个 Git 仓库及其元数据。你可以在命令行上使用 git rev-parse --git-dir 查看仓库(实际仓库)的此文件。

HEAD

当前分支。

挂钩 ( hook )

在多个 Git 命令正常执行时,对可选脚本进行标注以允许开发者添加功能或检查。通常,挂钩允许预先验证和潜在中止命令,并且允许在操作完成后再发事后通知。

实例 ( instance )

组织包含在其配置和控制的虚拟机中的 GitHub 私有副本。

议题 ( issue )

议题是提议的与仓库相关的改进、任务或问题。(对于公共仓库)任何人都可创建议题,然后由仓库协作者调解。每个议题都包含自己的讨论线程。你也可以使用标签将议题归类并分配到某人。

密钥指纹 ( key fingerprint )

用于识别较长公钥的简短字节系列。

关键词 ( keyword )

用在拉取请求中时关闭议题的特定文字。

标签 ( label )

议题或拉取请求的标记。仓库随附一系列默认标签,但用户也可创建自定义标签。

LFS

Git Large File Storage。一种开源 Git 扩展,用于对大文件进行版本控制。

许可证 ( license )

一种可随附于项目的文档,告知们能够对你的源代码执行哪些操作,不能执行哪些操作。

行注释 ( line comment )

拉取请求内特定代码行上的评论。

主干 ( master )

默认开发分支。只要创建 Git 仓库,就会创建一个名为 master 的分支,并且它会变为活动的分支。大多数情况下,这包含本地开发,但纯属惯例,而非必需。

提及 ( mention )

一种通过在用户名前加上 @ 符号来发送给用户的通知。GitHub 上组织中的用户也可成为可提及的团队一部分。

合并 ( merge )

合并是从一个分支(在相同的仓库中或来自一个分叉)提取更改,然后将其应用到另一个分支。这通常是作为“拉取请求”(可视为请求合并)或通过命令行完成。如果没有冲突的更改,可通过 GitHub.com web 界面使用拉取请求完成合并,或始终通过命令行完成。

合并冲突 ( merge conflict )

合并的分支之间发生的差异。当人们对同一文件的同一行进行不同的更改时,或者一个人编辑某文件而另一个人删除该文件时,就会发生合并冲突。必须解决合并冲突后才可合并分支。

合并请求 ( merge request )

合并请求(MR)是 GitLab 上类似于 GitHub 上的拉取请求的概念。

里程碑 ( milestone )

一种跟踪仓库中议题或拉取请求组进度的方式。

镜像 ( mirror )

仓库的新副本。

非快进 ( non-fast-forward )

当仓库的本地副本未与上游仓库同步时,你在推送本地更改之前需要提取上游更改。

通知 ( notification )

web 或电子邮件(根据你的设置)传送的更新,提供你感兴趣的活动的相关信息。

外部协作者 ( outside collaborator )

已被授予访问一个或多个组织的仓库但对组织没有其他访问权限的用户,且不属于组织的成员。

开源 ( open source )

开源软件是可供任何人自由使用、修改和共享(以修改和未修改的形式)的软件。今天,“开源”的概念通常扩展到软件以外,代表一种协作原则,其中工作材料在线供任何人分叉、修改、讨论和参与。

源 ( origin )

默认上游仓库。大多数项目至少有一个它们跟踪的上游项目。默认情况下,源用于该目的。

所有者 ( owner )

对组织有完全管理权限的组织成员。

私有贡献 ( private contributions )

对私有(与公共相对)仓库的贡献。

私有仓库 ( private repository )

私有仓库仅对仓库所有者和所有者指定的协作者可见。

生产分支 ( production branch )

包含可使用或部署到应用程序或站点的最终更改的分支。

个人资料 ( profile )

显示 GitHub 上用户活动相关信息的页面。

受保护分支 ( protected branch )

受保护分支在仓库管理员选择保护的分支上禁止多项 Git 功能。必要检查未通过或必需审查未批准,不能对它们执行强制推送、删除和更改合并,或者不能从 GitHub web 界面上传文件到其中。受保护分支通常是默认分支。

公共贡献 ( public contributions )

对公共(与私有相对)仓库的贡献。

公共仓库 ( public repository )

公共仓库可供任何人查看,包括不是 GitHub 用户的人员。

拉取 ( pull )

拉取是指提取与合并更改。例如,如果有人编辑了你操作的远程文件,你要将这些更改拉取到本地副本,以使其保持最新。另请参阅“提取”。

拉取权限 ( pull access )

读取权限的同义词。

拉取请求 ( pull request )

拉取请求(PR)是提议更改用户提交的仓库,然后被仓库协作者接受或拒绝。像议题一样,每个拉取请求都有自己的论坛。

拉取请求审查 ( pull request review )

拉取请求中协作者批准更改或在拉取请求合并之前申请进一步更改的评论。

推送 ( push )

推送是指将提交的更改发送到 GitHub.com 上的远程仓库。例如,如果你在本地更改内容,便可推送这些更改,让其他人访问。

推送分支 ( push a branch )

成功将分支推送到远程仓库后,使用本地分支中的更改来更新远程分支。在你“推送分支”时,Git 将会到远程仓库中搜索分支的头部引用,并验证它是分支本地头部引用的直系原型。在验证后,Git 将拉取所有对象(从本地头部引用可获取,而远程仓库中缺失)到远程对象数据库,然后更新远程头部引用。如果远程头部不是本地头部的原型,推送将会失败。

推送权限 ( push access )

写入权限的同义词。

读取权限 ( read access )

对仓库的权限级别,允许用户拉取或者读取仓库中的信息。所有公共仓库向所有 GitHub 用户授予读取权限。拉取权限的同义词。

自述文件 ( README )

包含仓库中文件相关信息的文本文件,通常是仓库访问者看到的第一个文件。自述文件连同仓库许可证、参与指南以及行为准则,帮助你交流要求和管理项目的参与。

变基 ( rebase )

将一系列更改从一个分支重新应用到不同的基本分支,并将该分支的头部重置为结果。

发布 ( release )

GitHub 封装软件并向用户提供软件的方式。

远程 ( remote )

这是托管于服务器(很可能是 GitHub.com)上的仓库或分支版本。远程版本可以连接到本地克隆,以使更改保持同步。

远程仓库 ( remote repository )

用于跟踪同一个项目但储存在其他位置的仓库。

远程 URL ( remote URL )

存储代码的位置:GitHub、其他用户分支甚至不同服务器 上的仓库。

副本 ( replica )

为主要 GitHub Enterprise 实例提供冗余的 GitHub Enterprise 实例。

仓库 ( repository )

仓库是 GitHub 最基本的元素,最容易被想象成项目的文件夹。一个仓库包含所有项目文件(包括文档),并且存储每个文件的修订历史记录。仓库可有多个协作者,也可以是公共仓库或私有仓库。

仓库维护员 ( repository maintainer )

管理仓库的人员。此人可帮助对议题分类,以及使用标签和其他功能管理仓库的工作,也可负责更新自述文件和参与文件。

解决 ( resolve )

手动修复自动合并失败的操作。

还原 ( revert )

恢复 GitHub 上的拉取请求时,新拉取请求会自动打开,其中有一个提交用于从原始合并的拉取请求恢复合并提交。在 Git 中,你可以使用 git revert 恢复提交。

审查 ( review )

审查允许对仓库具有访问权限的其他人评论拉取请求中提议的更改、审批更改或在拉取请求合并之前请求进一步更改。

服务挂钩 ( service hook )

也称为“Web 挂钩”。Web 挂钩是一种通知方式,只要仓库或组织上发生特定操作,就会发送通知到外部 web 服务器。

压扁 ( squash )

将多个提交合并为一个。也是 Git 命令。

暂存实例 ( staging instance )

在修改应用到实际 GitHub Enterprise 实例之前测试修改的一种方式。

状态 ( status )

拉取请求中的可视表现形式,表示你的提交符合你参与的仓库所设定的条件。

星标 ( star )

仓库的书签或赞赏表示。星标是项目受欢迎程度排名的手动方式。

主题分支 ( topic branch )

开发者用来识别开发概念行的常规 Git 分支。由于分支很容易并且便宜,因此往往适合拥有多个小分支,每个小分支包含定义明确的概念,或者渐进但相关的更改。也可称为“特征分支”。

上游 ( upstream )

在谈论分支或分叉时,原始仓库的主要分支通常被称为“上游”,因为它是其他更改的主要来源。你操作的分支/分叉则称为“下游”。也称为“源”。

上游分支 ( upstream branch )

合并到所述分支的默认分支(或所述分支变基到的分支)。它通过 branch.<name>.remote 和 branch.<name>.merge 配置。如果 A 的上游分支是源/B,有时我们会说“A 在跟踪源/B”。

查看 ( watch )

你可以关注仓库或议题,以便在议题或拉取请求有更新时接收通知。

web 挂钩 ( webhooks )

Web 挂钩可让你构建或设置订阅 GitHub.com 上特定事件的 GitHub 应用程序。Web 挂钩提供一种通知方式,只要仓库或组织中发生特定操作,就会发送通知到外部 web 服务器。也称为“服务挂钩”。

写入权限 ( write access )

对仓库的权限级别,可让用户推送或写入更改到仓库。

Twitter CEO:自动化会甚至会对编程工作构成威胁

Twitter CEO Jack Dorsey 表示,“机器学习和深度学习的许多目标是随着时间的发展编写软件本身,因此许多初级级编程工作将不再那么重要了,”

来源:新浪科技

硬核老王点评:毕竟“初级”编程工作也是要被取代的初级工种之一。

多个 DNS 解析程序漏洞允许攻击者发动拒绝服务攻击

该漏洞被称为 NXNSAttack。DNS 解析程序不能向“名字”发送域名查询,因此解析器首先需要获得权威 DNS 服务器的 IPv4 或 IPv6 地址,之后才能继续查询域名。NXNSAttack 就是基于这一原理,攻击者发送的委托包含了假的权威服务器名字,指向受害者的 DNS 服务器,迫使解析程序对受害者的 DNS 服务器生成查询。一次查询会被放大数十次乃至数百次,对受害者服务器发动了拒绝服务攻击。众多 DNS 软件都受到影响,其中包括 BIND、 Unbound、PowerDNS、Cloudflare、Google、Amazon、Microsoft、Oracle(DYN)、Verisign、IBM Quad9 和 ICANN。

来源:solidot

硬核老王点评:互联网建设和设计之初,并没有考虑到这么复杂的安全隐患,或者说考虑到了在当时也只能暂时忽视。随着互联网的发展,这种早期的协议上的漏洞会逐一被发现、修补和迭代。

GNOME 基金会和 RPI 的专利诉讼案达成和解

去年 9 月,Rothschild Patent Imaging LLC(RPI)的公司对 GNOME 基金会提起了专利侵权诉讼,指控 GNOME 桌面环境项目中的一个组件 Shotwell 照片管理器侵犯了它于 2008 年申请的专利,该专利描述了无线连接图像捕捉设备和接收设备的系统和方法。现在,GNOME 与 RPI 达成和解,RPI 并承诺不再对 GNOME 提起任何专利诉讼。此外,RPI 和 Leigh Rothschild 的专利免除和承诺覆盖了在 OSI 批准的所有开源许可证下发布的软件。

来源:solidot

硬核老王点评:妄想从开源社区/开源组织身上咬下一块肉,先要看看是否能承受社会压力。

安全研究人员分析过去几年发生的开源软件供应链攻击

软件供应链攻击有两类:其一是在软件产品中植入恶意代码去感染终端用户,此类攻击的一个例子是 CCleaner 的恶意版本通过官网传播给终端用户,它在长达一个多月时间里被下载了 230 万次。另一类软件供应链攻击是向软件产品的依赖包植入恶意代码。随着开源软件开发模式的流行,此类的攻击日益常见。研究人员分析了 npm、PyPI 和 RubyGems 软件包管理系统发现的 174 个恶意依赖包,他们发现 56% 的软件包在安装时触发恶意行为,41% 使用额外的条件去判断是否运行。61% 的恶意软件包利用了名字相似性向开源生态系统植入恶意包。攻击者的主要目的是析取数据。

来源:solidot

硬核老王点评:开源软件本身这个模式并不能决定是否安全,只是给用户一个安全的可能性。所以,在享受开源软件的福利时,其带来的可能的隐患也需要重视,并可能付出不菲的成本和代价。

微软开源 1983 年的 GW-BASIC

微软在历史参考和教育目的的名义下开源了 1983 年的 GW-BASIC,源代码托管在 GitHub 上,采用 MIT 许可证。微软表示他们不接受修改任何代码的 PR 请求。GW-BASIC 是源自 IBM Advanced BASIC/BASICA 的 BASIC 解释器。微软不同的 BASIC 实现都可以上溯到比尔盖茨和保罗艾伦完成的微软首个产品:Altair 8800 BASIC 解释器。和 70/80 年代的众多软件一样,GW-BASIC 的源代码是百分之百的汇编语言。

来源:solidot

硬核老王点评:反正放家里也是烂着,就当成古董给大家把玩吧。

初代 Xbox 主机操作系统和 Windows NT 3.5 源码泄露

据外媒 The Verge 的报道,微软初代 Xbox 游戏主机操作系统和 Windows NT 3.5 的源码已被泄露,在本月早些时候被泄露的代码已出现在互联网上。前者被泄露的代码包括初代 Xbox 主机操作系统的部分内容——操作系统内核(Windows 2000 的定制版本)。此外,Windows NT 3.5 接近最终版本的源码也出现在了互联网上。源代码包括了所有必要的构建工具,由于对 Windows NT 3.5 的支持已在 2001 年 12 月结束,而且该内核只在全球范围内的少数系统中使用,相信不会造成严重的安全问题。

来源:开源中国

硬核老王点评:即便以现在的眼光,当年的 Windows NT 3.5 依然很棒。

性能提升 10 倍,蚂蚁金服的 OceanBase 二次 TPC-C 测试结果公布

时隔半年,蚂蚁金服的自研数据库 OceanBase 又去做了 TPC-C 测试。TPC 去年 10 月 2 日和今年 5 月 20 日公布的测试结果显示,OceanBase 都是榜单第一。性能方面,去年 OceanBase 的测试结果是 6088万 tpmC,今年则是 7.07亿 tpmC;TPC-C benchmark 价格也从 ¥6.25/tpmC 降低到 ¥3.98/tpmC。不过,一些数据库公司,如 Oracle 并未参与这两次测试。之所以在短时间内做两次测试,是因为 OceanBase 团队认为首次测试尚未充分发挥 OceanBase 分布式架构的真正实力。

来源:开源中国

硬核老王点评:之前有人质疑 OceanBase 取得高评分是由于硬件的进步,所以这次重新参加测试应该是来证明其本身软件的提升。

百度输入法 Linux 版本发布

百度发布了其输入法的 Linux 版本,官方称支持 Ubuntu 18.04 - 19.10、Deepin 1510、1511,应该也可以支持更多 Linux 发行版版本,如 Ubuntu 20.04 LTS 和优麒麟。官网:http://srf.baidu.com/site/guanwang_linux/ 。安装说明称,“本输入法输入面板程序与其他输入法如搜狗输入法、讯飞输入法冲突,可能会受其他输入法影响而无法正常启动,若已安装其他输入法并导致百度输入法输入面板无法正常启动,应关闭其他输入法相关进程并重启百度输入法输入面板程序”。

来源:百度

硬核老王点评:不知道会有多少 Linux 用户会信任和使用百度的软件。顺便说一句,这个“guanwang”的 URL 地址真不愧是拼音输入法的网址。

Chrome 83 稳定版发布

谷歌跳过了 Chrome 82,直接向最终用户推送了 Chrome 83。主要更新内容:有助于防止跨站点脚本漏洞的可信类型;新的表单元素外观;新的跨域政策;支持条形码检测 API,提供了检测和解码条形码的功能;Preferreds-Color-Scheme 媒体查询使作者能够选择自己的深色主题。

来源:开源中国

硬核老王点评:直接跳过了一个大版本,带来的变化非常多。

EA 将在 GPL 下公开《红警》和《泰伯利亚黎明》的源代码

EA 游戏制作人 Jim Vessella 在 Reddit 上宣布,将在 GPLv3 许可证下公开泰伯利亚黎明和红警的源代码。Vessella 称《命令与征服》应该是第一个在 GPL 下公开源代码的大型即时战略游戏。采用 GPL 是为了确保它与开源项目如 CnCNet 和 Open RA 相互兼容。

来源:solidot

硬核老王点评:作为当年的顶级游戏,能够开源还是非常赞的,希望开源社区可以在此基础上发展出更多的衍生品。

OpenBSD 6.7 发布

主要更新内容:改进 FFS2 文件系统并成为默认文件系统,包括在新安装时默认使用 64 位时间戳和区块号;为 ARM64 设备提供对树莓派 4 的支持,同时改进对树莓派 3 的支持。对于 OpenBSD ARMv7,还改进了对树莓派 2/3 的支持;针对 SMP 的多项改进,包括更好的 AMD SMT/Core/Package 检测;引入 FIDO 驱动,支持 FIDO/U2F 安全密钥;PowerPC OpenBSD 构建切换到 Clang 作为其默认代码编译器。

来源:开源中国

硬核老王点评:OpenBSD 是 BSD 家族的重要成员,在广大的 BSD 爱好者眼中,BSD 才是最好的发行版。

DirectX 将进入 WSL 2

在 //build 2020 上,微软宣布 GPU 硬件加速将加入到 WSL 2 中。WSL 是一个允许用户在 Windows PC 上运行 Linux 应用的环境。现在,这些 Linux 应用和工具将能使用 GPU 加速。微软称,对 GPU 的访问,Linux 环境中的应用将和 Windows 原生应用一样,它不会对 Linux 应用进行限制,将根据需要对 GPU 提供动态的分享。微软表示它将完整的 D3D12 API 带到了 Linux。除了 D3D12 和 DxCore 外,它还将其机器学习 API DirectML 移植到了 Linux。

来源:solidot

硬核老王点评:自打微软将开源当成了新欢,现在微软开个开发者大会,都满满是值得大书一笔的开源新动向。DirectX 进入 WSL ,想必可以为 Linux 下的 GPU 应用提供很好的支持。

Signal 不再将电话号码作为用户的唯一 ID

主打安全的即时通信应用 Signal,本周推出了一项名叫“Signal PINs”的新功能。该公司称,此举有助于用户在设备间迁移账户数据。此外从长远来看,新功能也算是向着摆脱使用电话号码作为用户 ID 的目标迈出了重要一步。启用之后,用户将被要求创建一个与之账户相关联的 PIN 码,且可使用 4 位数及以上的字符串。当用户不慎遗失了设备、或想将资料转移到新手机时,Signal PIN 便允许其轻松实现数据迁移。

来源:cnBeta.COM

广告商因疫情放弃百度

与搜索和视频相比,信息流广告是“短期而言广告商的首选渠道,而这正是百度未能吸引广告商的地方”。广告商们纷纷放弃这家中国搜索巨头,转而使用更灵活的竞争对手的应用。百度表示,第一季度营收同比下降 7%,至 225 亿元人民币,原因是旅游、汽车和医疗行业广告客户在公共卫生危机期间削减支出。其核心的搜索和新闻推送业务的营收下滑速度更快,同比下降 13%。净利润较上一季度暴跌 99%,至 4100 万元人民币。

来源:solidot

硬核老王点评:没什么好说的。

微软在其云服务上打造全新超算

微软与 OpenA 合作,专门为 OpenAI 在 Azure 上构建了一台新的超级计算机,拥有超过 28.5 万个 CPU 核心和 1 万个 GPU。按照世界超级计算机 TOP500 的排名,微软打造的这款新型超级计算机位列前五名。

来源:cnBeta.COM

硬核老王点评:不知道国内的云服务商会不会也打造一个基于云服务器的超算?

WSL 2 计划支持 Linux GUI 应用,可和 Windows 应用同时使用

微软计划在本月底在 WSL 2 中为 Windows 10 系统添加完整的 Linux 内核,而现在又有新计划将支持 Linux 的 GUI 应用,使其能够和常规 Windows 应用一起运行。目前可以使用第三方 X 显示服务器在 Windows 中运行 Linux GUI 应用程序,不过存在性能表现不佳的情况。一旦该功能上线,这就意味着 Windows 用户不需要使用 X11 转发的情况下就能启用 Linux GUI 应用程序,和 Windows 应用一同运行。

来源:cnBeta.COM

硬核老王点评:所以以后在 Windows 上会有越来越多的 Linux 应用出现,无论是命令行的还是图形界面的,或许有一天连内核都换成 Linux 内核,而用户或许会感觉不到变化。嗯,欢迎 Windows “主题”上线。

Windows 10 终于也迎来了一款软件包管理器

微软终于在今日宣布了一项新功能 —— 为 Windows 10 带来了一款内置的软件包管理器。简而言之,其使得用户无需在窗口中频繁点击,即可轻松完成桌面程序的安装工作。Windows 软件包管理器已支持如下命令:install:安装应用程序;show:显示有关应用程序的信息;source:管理应用程序的可用来源;search:查找应用程序的基本信息。感兴趣的朋友可加入 Windows Insider 测试项目,并通过 Microsoft Store 获取 Windows 软件包管理器。

来源:cnBeta.COM

硬核老王点评:在 Linux 等系统中司空见惯的包管理器终于在 Windows 中出现了,这应该算是微软拥抱开源和 Linux,甚至内嵌了 WSL 的系统而带给 Windows 产品线的影响了。

华为 HMS 全球注册开发者达 140 万,接入应用数量超 6 万

目前,全球 170 多个国家和地区的用户已经能够使用华为应用市场、华为浏览器、华为云空间、华为智慧助手·今天等。

来源:网易科技

硬核老王点评:加油!

MIT “AI 种菜”项目失败,还因环保问题被罚 25125 美元

4 月 30 日消息,麻省理工 MIT 永久关停由原麻省理工媒体实验室首席研究科学家 Caleb Harper 牵头的“开放农业计划(OpenAg)”项目。同一天,Caleb Harper 从 MIT 正式离职。OpenAg 项目始于2015年,其核心产品形态类似迷你培育室,是一个四方的便携密闭箱,被称作个人食品计算机(PFC)。PFC 的硬件和软件全部开源,以便更多人做室内农业试验。这个“开源食物计算机”PFC 一大的技术特色,就是利用深度学习来种菜。项目会搜集来自世界各地的食物计算机数据,然后利用机器学习算法,给植物生长提供更适合其习性的环境“食谱”。Harper 还给这个产品规划了一个充满人情味的发展路线:从帮助叙利亚难民种菜开始,逐步延伸到对未来农业发展的探索,最后建造一个全球化的数字农场,让人们都能自由种植自己喜欢的植物。但 IEEE Spectrum 的一份调查结果显示,2017 至 2019 年期间,Harper 关于 PFC 在难民营的部署的言论被证明是在说谎。PFC 的产品功能也没得到实现。

来源:开源中国

硬核老王点评:理想是好的,现实是残酷的。

梅赛德斯奔驰 OLU 源代码在网上曝光

瑞士软件工程师 Till Kottmann 发现了一个属于戴姆勒公司的 Git 门户网站。Kottmann 在戴姆勒的代码托管门户上注册一个帐户然后下载 580 多个 Git 存储库,其中包含了戴姆勒的梅赛德斯奔驰货车上安装的车载逻辑单元(OLU)的源代码。OLU 是介于汽车硬件和软件之间的一个组件,它负责将车辆连接到云端。戴姆勒未能实施账户确认流程,而这使其能使用一个不存在的戴姆勒公司电子邮件在公司的官方 GitLab 服务器上注册一个账户。

来源:cnBeta.COM

硬核老王点评:GitLab 是好用,但是无防护的实例可能造成的信息泄漏可能更危险。

Rust 发布 5 周年

Rust 核心团队发布博客庆祝发行五周年,并反思了自 2015 年以来该语言经历的所有重大变化。自 2015 年发布 1.0 版以来,Rust 曾在 Stack Overflow 开发者调查中连续四年被评为“最受欢迎的”编程语言。微软也在 2019 年 7 月讨论了对 Rust 的探索,希望将其作为 C、C++ 和其他语言的替代方案,以此来改善应用程序的安全状况。

来源:开源中国

硬核老王点评:Rust 就是太难学了。