文章提交注意事项:
请在发布文章时用HTML代码加上至少一条新闻来源的链接;原创性消息,可加入相关信息(如涉及公司的网址)的链接。有任何问题,邮件至:he.fang#zhiding.cn
注意:收到邮件乱码的用户请修改客户端的默认字体编码,从"简体中文(GB2312)"修改为"Unicode(UTF-8)"。
solidot新版网站常见问题,请点击这里查看。
Solidot 公告
投 票
热门评论
- 先能过了小米高考再说 (1 points, 一般) by ooxx 在 2025年01月06日15时43分 星期一 评论到 小米修改了引导程序解锁政策
- (1 points, 一般) by 18611782246 在 2024年12月18日18时06分 星期三 评论到 司机死于阿尔茨海默病的可能性较低
- BaD kEyBoArD: eXtRa SpAcE (1 points, 一般) by lot 在 2024年12月11日04时10分 星期三 评论到 高温环境可能加速衰老
- BaD kEyBoArD: tYpO (1 points, 一般) by lot 在 2024年12月11日04时09分 星期三 评论到 Goolge 宣布了新量子芯片 Willow
- 喵喵喵 (1 points, 一般) by solidot1733326472 在 2024年12月04日23时35分 星期三 评论到 澳大利亚面临太阳能供大于求
- 懂了 这就去安装刺客信条 (1 points, 一般) by Craynic 在 2024年11月27日19时36分 星期三 评论到 微软临时阻止安装刺客信条等育碧游戏的 PC 更新 Windows 11 24H2
- 为了逃避一年多兵役要坐一年牢 (1 points, 一般) by Craynic 在 2024年11月27日19时34分 星期三 评论到 韩国法院判处一名故意增肥以逃避兵役的男子缓刑
- 是否改进质量我不知道 (1 points, 一般) by Craynic 在 2024年11月25日20时43分 星期一 评论到 GitHub 称 Copilot 改进了代码质量
- Linus (1 points, 一般) by Craynic 在 2024年11月25日20时41分 星期一 评论到 Linux 6.13 将拒绝所有来自 bcachefs 作者的合并请求
- 2100年100% (1 points, 一般) by 18611782246 在 2024年11月21日16时30分 星期四 评论到 中国提高了半导体自给率
作为一种现代系统级语言,Rust 比 C 或 C++ 更安全也更容易使用,Linux 内核主要是用 C 开发的,Rust 被很多人认为是 C 和 C++ 的最佳替代,而 Linus Torvalds 等内核的核心维护者对在内核中使用 Rust 持开放态度。为了用于内核开发,Rust 只是能生成可链接到内核的代码是远远不够的,需要找到一种方法让 Rust 能访问内核使用的 API,而内核所有的 API 都定义在 C 头文件内。 Rust 支持与 C 代码的互操作,包括调用使用 C ABI 的函数。表面看,Rust 能很好的与现有的 C API 整合起来,但魔鬼在细节中。在最近举行的虚拟 Linux Plumbers Conference 会议上,开发者谈论了内核使用 Rust 开发所面临的挑战。
ISO/IEC 14882:2020 标准草案获得批准。相比 C++17,C++20 是一次重大的更新,引入了新的语言概念、模块、操作符“<=>”、协程、指定初始化、新标准属性等等。C++20 库标准还加入了范围、特性测试宏和位操作等。详细变化列表可参考维基百科、cppreference.com 和 open-std.org。
Rust 语言项目宣布成立自己的基金会,基金会的第一项任务就是接管所有权。与 Rust、Cargo、crates.io 相关的商标和域名将转移到基金会名下,而基金会也将承担相应的财务责任。Rust 最初是 Mozilla 的一个研究项目,2015 年发布了 1.0 版本,此后它确立了项目方向,独立于 Mozilla 组织进行治理。2020 年 8 月 11 日,Mozilla 宣布了重组,裁掉了大约 250 名员工,其中包括 Rust 项目和社区的活跃成员。裁员对 Rust 项目本身也产生了不确定性和混乱。Rust 项目表示,担任 Rust 团队成员的 Mozilla 雇员将仍然是项目成员,即使他们受到裁员影响。如果他们选择减少对项目的参与,Rust 项目也将理解并完全支持其决定。
IEEE Spectrum 通过综合 CareerBuilder、GitHub、Google、Hacker News、IEEE、Reddit、Stack Overflow 和 Twitter 八个来源 ,分析了 55 种编程语言的流行度,公布了它的 2020 年度编程语言排行榜:Python 是 Web、企业级和嵌入式类别中最流行的语言,而 Java 则移动类别中最流行的语言。Web 类别的最流行语言是:Python、Java、Javascript、Go、Ruby、Dart 和 PHP;移动类别是:Java、C、C++、Swift、Dart、Scala、Kotlin、C#、Objective-C、Delphi、Scheme 和 D。企业级类别是:Python、Java、C、C++、R、Go、Swift、Matlab、Ruby 和 SQL。嵌入式是:Python、C、C++、Arduino、Assembly、Rust、C# 和 Verilog。综合排名:Python、Java、C、C++、Javascript、R、Arduino、Go、Swift 和 MATLAB。
最新的 TIOBE 语言流行度指数显示 R 语言从去年同期的第 20 名进入到了前 10 名,前 10 其它语言的排名基本没有变化。C 语言超过 Java 成为最流行语言,Swift 取代了 SQL 排名第十。 R 语言提高了 8 个名次,Go 从 16 提高到了 12 名, Perl 从 19 提高到了 14 名,Scratch 从 30 名升到 17 名, Rust 从 33 升至 18,PL/SQL 从 23 升至 19。Ruby 从 11 名降至 16 名, SQL、MATLAB 和 Assembly Language 的排名也都出现了略微下滑。
为了试图解决公司内部的种族主义问题,摩根大通(JPMorgan Chase)正从内部代码和技术材料中替换掉 blacklist、master 和 slave 等术语。它不是第一家这么做的公司和机构,但可能是金融行业首个采取这一措施的投行。在程序或硬件中,master 和 slave 被用于描述一个进程控制另一个进程或一个设备控制另一个。blacklist 则被用于描述被自动拒绝的条目,Whitelist 意思相反表示自动批准。哥伦比亚商学院编程教授 Mattan Griffel 称,此类的术语长期受到争议,很难改变。在银行内部代码中替换掉这些术语可能需要花费数百万美元和数个月的工作。
Amazon Web Services 发布了基于浏览器的零编程应用构建服务 Amazon Honeycode,让无编程经验的人能构建移动和 Web 应用。AWS 推荐用户使用 Chrome 浏览器构建应用,称使用其它浏览器可能会遇到问题,但 Web 应用可以正常运行在各种主流浏览器上。客户可使用 AWS 的数据库去构建各种应用,从简单的任务跟踪应用到较为复杂的管理多个工作流的项目管理应用。零编程工具最近一段时间比较流行,它被认为可以让没有多少经验的人快速构建所需应用,在疫情流行社会实现隔离政策期间可能更为有用。Honeycode 可免费使用,有付费选项。
Ruby on Rails 作者 David Heinemeier Hansson 接受采访谈论了如何写出出色的代码。他被问道作为一个见识了大量代码的人,好的差的代码是否能一目了然。Hansson 回答:如果代码很糟糕,在检查逻辑前你就察觉到。没有缩进,代码风格混乱,一点也不细心。学习写出出色的代码是一生的追求。正如我在 RailsConf 2014 上所说的,我们不是软件工程师,而是软件作者。相比工程,写作是更适合我们所从事工作的比喻。写作事关清晰,以一种清晰易懂的方式展示信息,因此人人都能理解。成为优秀的作者靠背字典是不行的。知道可用的单词知道开发模式不能让你成为出色的开发者。你必须发展出自己的见解,你需要决定你的系统最重要的是清晰。优秀程序员的定义是能写出清晰软件的人,而要成为优秀的程序员,唯一的方法是你必须阅读大量的软件和写大量的软件。
微软云计算开发大使 Ryan Levick 在 AllThingsOpen 虚拟会议上称,就其核心而言,C++ 不是一种安全的语言。他解释了为什么微软正逐渐转移到 Rust 去构建基础设施软件,远离 C/C++,微软也鼓励软件行业的其它巨头考虑这么做。他说,我们正在使用的语言来自于一个不同的时代,C++ 不是一种内存安全的语言,对此人人都心知肚明。微软现在认定将 C++ 用于开发关键任务软件不再是可以接受的。行业需要转移到一种高性能、内存安全的语言去开发底层软件,而 Rust 语言是软件行业的最佳机会。
GitHub CEO Nat Friedman 周五在 Twitter 上表示,GitHub 将用中性词如 "main" 去替换 "master"这个让人联想到奴隶制的术语。GitHub 成为最新一个支持移除可能冒犯部分群体的术语的公司。替换的术语包括 "master" 和 "slave" 替换为"main/default/primary" 和 "secondary" ,"blacklist" 和 "whitelist" 替换为 "allow list" 和 "deny/exclude list"。最近几周,因为 Black Lives Matter(黑人的命也是命)抗议活动,多个开源项目采取行动替换冒犯性的术语,其中包括 PHPUnit 和 Curl,OpenZFS,Google Chrome 和 OpenSSL 等项目也都考虑采取类似的行动。
Swift 5.3 进入到了开发的最后阶段,它的一大目标是扩大支持平台,包括 Windows 和更多的 Linux 发行版。Swift 已经支持的 Linux 发行版包括 Ubuntu 16.04 和 Ubuntu 18.04,新增的发行版包括 Ubuntu 20.04、CentOS 8 和 Amazon Linux 2。移植到 CentOS 和 Amazon Linux 需要做出大量小的改编,如 FoundationNetworking 需要切换到不同的 libcurl 版本,Swift 包管理器需要适应 Fedora 包系统,不再依赖 libatomic 等等。 Swift 项目为每一个支持的平台提供了可下载的工具链和 Docker 镜像。
根据 HackerEarth 对 76 个国家的 16,655 名开发者的调查,Google 的 Go 语言最受开发者的青睐。调查显示,开发者多不喜欢会议,而跨国公司里的工作也不怎么让人开心。HackerEarth 在印度和美国旧金山都设有办事处,为招聘人员提供了工具远程评估程序员的编程技术。调查结果显示,Go 语言是开发者最想学的语言,在有经验的开发者中有 32% 的人想要学,相比下想要学 Python 的比例为 24%。这一结果与招募远程开发者的 HackerRank 公司的另一项调查相吻合。Google、Netflix、American Express、Salesforce、IBM、Target、Twitch、Twitter、Uber 和 Dropbox 都在使用 Go 语言。
一个 npm 小项目的更新给整个 npm 生态系统制造了一场混乱,影响到了数百万 JS 项目。名叫 is-promise 的库包含了两行代码,其它项目可通过一行代码调用使用该库。它的功能是让开发者测试一个 JS 对象是否是 Promise。尽管这个库只有两行代码,但它却是最流行的 npm 包之一,被超过 340 万个项目使用。上周末 is-promised 释出了一个更新,结果由于它不符合正确的 ES 模块标准,导致使用该库的其它项目在构建时出错。问题并没有导致现有 JS 项目崩溃,而主要无法编译新版本。许多知名的 JS 项目都受到影响,其中包括 Facebook 的 Create React App,Google 的 Angular.js 框架,Google 的 Firebasse-tools,亚马逊的 AWS Serverless CLI,Nuxt.js 等等。npm 生态系统的依赖问题早在 2016 年就引发过广泛关注。
在编程问答社区 Stack Overflow 的最喜欢编程语言投票中,Rust 连续四年高居第一。但 Rust 项目承认,尽管如此,Rust 存在严重的普及度问题:Stack Overflow 的投票显示:开发者对 Rust 有普遍好感,但 97% 的开发者并不真正使用它。为什么不使用 Rust 的调查显示:受访者称公司不使用,或者学习曲线太陡,缺乏必要的库,缺乏集成开发环境的支持,需要更好的培训和文档。换句话说,Rust 缺乏走向大众的生态系统,这不是一朝一夕能建立起来的。
过去三周,美国的新增失业人数超过了 1600 万,相当于美国劳动力的十分之一。失业者涌入各地政府的失业救济系统登记时导致了系统过载。这些失业救济系统是基于 1959 年创造的 Cobol 语言,精通 Cobol 语言的程序员大多年事已高,缺少维护成为一大难题,以至于新泽西州长公开请求 Cobol 志愿者帮助。新泽西州的情况并非唯一,佛罗里达州的失业救济系统也不堪重负,麻省征召了 500 多名远程工作的新雇员去满足对失业救济系统日益增长的需求。根据美国政府问责局 2016 年的报告,州政府和多个联邦机构仍然在使用 Cobol。Cobol 系统仍然能处理大量的数据,而替换它的时间和成本比较昂贵。对于政府的呼吁,Cobol 程序员们积极响应。主要由兼职 Cobol 程序员组成的 Cobol Cowboys 公司成员从 50 人增长到了 350 人,他们的平均年龄 45-60 岁,其中还包括一名 Cobol 语言合作者 Grace Hopper 的同事,年龄已经有 80 多岁了。U.S. Digital Response 志愿者库的人数也超过了 3500 人。
在美国新泽西州,新冠疫情导致的一个出人意料的结果是:该州迫切需要 COBOL 程序员。诞生于 1959 年的 Common Business-Oriented Language(缩写 COBOL)语言其黄金时代早已过去,但仍然被广泛用于银行和金融等关键领域。新泽西州的问题是基于 COBOL 的失业保险系统因疫情相关的失业而不堪重负,需要精通该语言的程序员来维护。州长 Phil Murphy 在新闻发布会上请求了解 COBOL 语言的程序员志愿者来帮忙。然而,大部分了解 COBOL 语言的志愿者很可能年过花甲,可能很容易受到新冠病毒的影响。新冠对年长者的冲击更严重。
Fuchsia OS 是 Google 正在开发的实验性操作系统,使用名叫 Zircon 的微内核。这个新操作系统引发了很多猜测,被认为将取代 Android 和 Chrome OS,但 Google 高管否认了这一说法,称其意图不是想成为新的 Android 或 Chrome OS,而是尝试在操作系统中引入最新技术,将项目上获得的知识整合到其它产品。根据 Fuchsia 项目的编程语言政策,Google 推荐使用 C++ 和 Dart,但不推荐使用 Go 和 Rust(不支持终端开发者),Mozilla 的 Rust 语言比较新还没有广泛使用,而 Google 自己的 Go 语言不推荐则是因为性能方面的问题,用 Go 构建的系统组件比用 C++ 或 Rust 构建的组件占用更多内存和内核资源。
IEEE Spectrum 报道了 Lingdong Huang 开发的文言编程语言:用中国传统的文言文写代码。文言编程语言的设想是在一年前提出的,上个月 Huang 利用在学校最后一周的空闲时间完成了新语言的核心功能,包括了一个以类似文言文的方式展示程序的渲染器。Huang 在上海长大,在学校里学过简单的文言文,他对此十分着迷,青少年时期阅读了很多文言文书,现在正在读《淮南子》。他的新语言只有一个月历史,但已经吸引了很多人用它写程序,许多程序是基于中国古代的数学书,如 pi_liuhui 重新创造了三国数学家刘徽的圆周率计算方法,Crt.wy 是中国剩余定理,Pascal_triangle.wy 计算帕斯卡三角,divination.wy 是易经的算命算法。根据文言文及其语法创造新语言的一大挑战是文言文是没什么标点符号的,它不使用空格划分句子,如何划分句子是读者而不是作者的任务。为了克服这一挑战,Huang 设计语言只拥有一定数量的关键词。Huang 表示这确实行得通。他称新语言能生存下来关键在于能否形成一个社区,毕竟人的热情是会慢慢冷却的。
美国海军以“网络安全威胁”为由禁止政府发放的移动设备上安装社交应用 TikTok(北京字节跳动旗下应用抖音的国际版)。海军发布的公告称,如果使用政府移动设备的用户没有从设备上卸载 TikTok,那么该设备将会被禁止访问海军陆战队的内部网络。美国海军没有详细解释 TikTok 会带来什么威胁,不过美国政府已经对字节跳动以 10 亿美元收购 Musical.ly 一事展开国家安全审查。TikTok 在美国青少年中非常受欢迎,在美国的 2650 万月度活跃用户中,约 60% 属于 16-24 岁这个年龄层。美国陆军军校学员已被指示不要使用 TikTok。