2024 11 16 HackerNews

2024-11-16 Hacker News Top Stories #

  1. 大型语言模型在国际象棋方面的表现引发了讨论,人们认为这些模型可以通过训练数据玩好棋,但实际上它们并不是专门为国际象棋设计的。
  2. 托马斯·E·库尔茨去世,他是 BASIC 编程语言和达特茅斯时分系统的共同开发者。
  3. 一个开源项目 Avalonia Visual Basic 6 重现了经典的 Visual Basic 6 IDE 和语言,使用 C# 和 Avalonia 实现。
  4. Cookie 弹窗的经济成本引发了讨论,人们认为这些弹窗不仅打扰用户,还可能导致用户流失和经济损失。
  5. 一个开源的 VR 头显项目 Relativty 提供了一个仅需 200 美元的 VR 头显解决方案,支持 Steam VR 游戏。
  6. 一个 Linux 平台下的 GUI 前端 Seer 用于调试 gdb,提供了一个简单易用的界面。
  7. 苹果公司的新 iPhone 软件包含一个名为“不活动重启”的新安全功能,如果 iPhone 未被解锁超过 72 小时,该功能会强制重启 iPhone。
  8. Red Hat 向 CNCF 捐赠了一套全面的容器工具集,包括 bootc、Buildah、Composefs、Podman、Podman Desktop 和 Skopeo。
  9. 作者呼吁停止荒谬的编码挑战,认为这些挑战不能真正反映出开发者的实际技能和能力。
  10. OnAir 是一种无摩擦的客户通话解决方案,旨在简化客户与企业之间的沟通。

Something weird is happening with LLMs and chess #

https://dynomight.substack.com/p/chess

这篇文章探讨了大型语言模型(LLMs)在国际象棋方面的表现,作者首先回顾了过去一年关于这些模型能否玩好棋的讨论。起初,许多人认为,如果将足够多的文本数据训练一个足够大的模型,这个模型就能在国际象棋中表现出色。然而,尽管现代的 LLMs 训练数据涵盖了大量的文本,包括很多国际象棋对局的记录,但这些模型并不是专门为国际象棋设计的。

作者进行了一系列实验,尝试让不同的 LLM 模型与国际象棋人工智能(如 Stockfish)对弈,使用标准的代数记谱法记录每一步棋。首先,他们尝试了多种模型,包括较小的 llama-3.2-3b 和更大的 llama-3.1-70b,但这些模型在棋局的中后期表现极差,甚至在最简单的设置下都无法赢得一局棋。

相较之下,当作者使用 OpenAI 的 gpt-3.5-turbo-instruct 模型时,表现则非常优秀,能够在对弈中获胜。其他的模型,如 gpt-3.5-turbo 和 gpt-4o,则在棋局中表现得非常糟糕,几乎没有任何胜算。

文章中提出了四种可能的解释,来说明为什么 gpt-3.5-turbo-instruct 的表现优于其他模型:

  1. 基础模型在足够规模时可以下棋,但指令调整会削弱其能力。
  2. gpt-3.5-instruct 可能训练了更多的国际象棋对局。
  3. 不同的变换器架构可能存在特定的优劣。
  4. 在训练过程中不同类型的数据之间可能存在 “竞争”,使得 gpt-3.5-turbo-instruct 更好地分配了其参数用于国际象棋的学习。

此外,作者还提到了一些实验的细节,比如如何处理输入数据,尤其是在处理棋局记录时的字符串格式。研究过程中,他们发现某些输入格式(如在 “1. e4 e5 2. ” 中加入空格)会导致模型表现得更差,认为这与模型的分词器有关。

总结来看,虽然一些大型语言模型在国际象棋中能够取得一定的成绩,但只有少数几个模型表现出色,其它模型的表现往往很差。作者的实验和观察表明,国际象棋对这些模型的能力有很大的挑战,同时也暗示了这些模型在处理特定任务时可能会有潜在的局限性。


HN 热度 631 points | 评论 428 comments | 作者:crescit_eundo | 1 day ago #

https://news.ycombinator.com/item?id=42138289

  • OpenAI 可能在 gpt-3.5-turbo-instruct 中特别处理了国际象棋,但后续模型中没有继续这种处理
  • 国际象棋评估功能可能通过特定的评估系统或模块实现,而不是模型本身学会了下棋
  • 一个通用的 AI 系统应该能够识别任务并调用专门的工具或模块来完成任务,类似于人类使用计算器解决数学问题
  • 代理 AI 可以管理多个专门的 AI 模块,并根据任务需求进行调度,但目前这种系统尚未受到广泛关注
  • 通用 AI 系统在实际应用中可能比单一的大型语言模型更有价值,尤其是在帮助用户发现和使用特定工具方面
  • 确认 AI 是否通过动态识别任务并调用专门系统来完成任务,而不是硬编码特定任务的识别,是评估其能力的关键
  • 代理 AI 系统可能与过去的专家系统类似,这可能导致 AI 研究的寒冬期再次出现
  • 代理 AI 系统在实际应用中可能更有效,但赋予 AI 真正自主权可能带来风险

Thomas E. Kurtz has died #

https://computerhistory.org/blog/in-memoriam-thomas-e-kurtz-1928-2024/

计算机历史博物馆(CHM)悼念托马斯·E·库尔茨(Thomas E. Kurtz)

托马斯·E·库尔茨(1928-2024)是一位美国数学家、计算机科学家和发明家,他与约翰·肯尼(John Kemeny)共同开发了 BASIC 编程语言和达特茅斯时分系统(Dartmouth Timesharing System)。

库尔茨出生于伊利诺伊州奥克帕克市,1950 年毕业于诺克斯学院,1956 年获得普林斯顿大学数学博士学位。在 1951 年,他在 UCLA 的 SWAC 机器上获得了宝贵的计算机经验。SWAC 是美国最早的电子计算机之一,由国家标准局创建,由计算机先驱哈里·胡斯基(Harry Huskey)监督。

库尔茨在达特茅斯大学任教,后来与肯尼一起开发了达特茅斯时分系统(DTSS),这是第一个成功的大规模时分系统。1964 年 5 月 1 日,DTSS 和 BASIC 同时推出,到秋天,数百名学生在校园的 20 个终端上使用 BASIC。

BASIC 语言自诞生以来就在多个计算机时代蓬勃发展,从 1960 年代的主机和小型机,到 1970 年代和 80 年代的微型机,直到今天的信用卡大小的树莓派计算机。1978 年,哈佛大学的比尔·盖茨和保罗·艾伦为 MITS Altair 8800 微型计算机编写了 BASIC 的第一个版本,BASIC 的流行度再次飙升。

库尔茨在达特茅斯大学的职业生涯包括担任 Kiewit 计算中心主任(1966-1975)和学术计算办公室主任(1975-1978)。1979 年,他与斯蒂芬·J·加兰(Stephen J. Garland)组织了一个专业硕士项目,获得 IBM 的资助。1983 年,库尔茨与肯尼和三名前达特茅斯大学学生共同创立了 True BASIC 公司,开发教育软件和 BASIC 编译器。1988 年,CIS 项目结束后,库尔茨回到教学岗位,1993 年退休。

库尔茨曾担任 EDUCOM 理事会主席和受托人,美国国家标准委员会 X3J2 主席(1974-1985),ISO 委员会 SC22/WG8 主席(1987-1993),并于 1994 年被选为 ACM 会士。


HN 热度 497 points | 评论 125 comments | 作者:1986 | 1 day ago #

https://news.ycombinator.com/item?id=42141761

  • BASIC 语言让字符串操作变得简单自然,而 C 语言中字符串操作则容易产生 bug
  • 选择 C 语言开发嵌入式/机器人系统,虽然当时对 C 语言的创始人有些无意的冒犯,但最终项目成功了
  • D 语言的创始人 WalterBright 对 C 语言中的字符串处理问题有深刻认识,D 语言在这方面取得了成功
  • BASIC 语言在资源极其有限的 Z80 处理器上就能处理字符串,现代嵌入式系统中使用 C 语言处理字符串显得落后
  • BASIC 是许多人的编程启蒙语言,提供了无限的创造力,对个人成长和职业生涯有重要影响
  • 通过 BASIC 学习编程,后来转向其他语言如 CLIPPER、FOXPRO 等,BASIC 为后续学习打下了基础
  • 在 Atari 800XL 上通过 BASIC ROM 学习编程,BASIC 让编程变得容易上手,激发了早期游戏开发的热情
  • BASIC 语言虽然不是最佳的大型或复杂项目语言,但足够让孩子们构建文本冒险游戏和绘制像素
  • 许多人对 BASIC 有美好的回忆,感谢 Thomas E. Kurtz 对计算机教育的贡献

Visual Basic 6 IDE recreated in C# #

https://github.com/BAndysc/AvaloniaVisualBasic6

Avalonia Visual Basic 6 是一个使用 C# 和 Avalonia 重现经典 Visual Basic 6 IDE 和语言的项目。该项目是一个有趣的玩具项目,没有商业意图。所有与 Visual Basic 名称、图标和图形相关的权利归 Microsoft Corporation 所有。

特点

  • 视觉设计器
  • 保存和加载项目的 VB6 兼容格式
  • 运行项目
  • VB6 语言支持(有限)

构建桌面版本

  • 需要 .NET 9.0,虽然可以修改 Directory.Build.props 使用 .NET 8.0(浏览器版本需要 9.0)
  • 构建命令:dotnet build AvaloniaVisualBasic/AvaloniaVisualBasic.Desktop.csproj
  • 如果遇到 Antlr4 错误,可能是因为 Antlr4BuildTasks 库无法自动下载 Java,手动安装 Java 可以解决问题

发布桌面版本和制作发布版本

  • 发布 IDE 项目(AvaloniaVisualBasic.Desktop)和运行时(AvaloniaVisualBasic.Standalone): dotnet publish AvaloniaVisualBasic.Desktop -f net9.0 -o bin/dotnet publish AvaloniaVisualBasic.Standalone -f net9.0 -o bin/standalone/
  • 运行 ./bin/AvaloniaVisualBasic.Desktop

鸣谢

  • Avalonia
  • Dock by Wiesław Šoltés
  • Font by lou

关于

  • Avalonia Visual Basic 6 是一个使用 C# 和 Avalonia 重现经典 Visual Basic 6 IDE 和语言的项目
  • 网站:bandysc.github.io/AvaloniaVisualBasic6/

资源

  • 阅读
  • 许可证:MIT 许可证

活动

  • 星标:874
  • 观察者:13
  • 分支:51

贡献者

  • BAndysc
  • Bartosz Korczyński
  • jmacato
  • Jumar Macato

语言

  • C#:93.0%
  • ANTLR:4.8%
  • HTML:1.8%
  • 其他:0.4%

HN 热度 365 points | 评论 143 comments | 作者:porterde | 1 day ago #

https://news.ycombinator.com/item?id=42141587

  • 学习编程的方式对新手来说非常重要,通过自己探索和实践比枯燥的教程更有趣
  • 早期编程学习中,文档和示例代码的质量令人印象深刻
  • 孩子们现在缺少像过去那样通过 BASIC 编程自我探索的机会
  • Python 是现代孩子学习编程的一个好选择,可以用来制作游戏
  • Crystal 语言结合了 Ruby 的语法和类型检查,适合用来学习 GUI 编程
  • V 语言内置了 GUI,但目前还不够成熟,可能需要几年后再考虑
  • 编程环境本身不那么重要,关键是让孩子有足够的时间自由探索,不受成人控制
  • 早期的 Visual Basic 6 GUI 构建器是最好的,至今仍有人使用 VB6 进行编程支持
  • 保持与 VB6 的向后兼容性对于 Visual Basic 克隆产品是有意义的,因为 VB6 非常流行和有影响力

https://legiscope.com/blog/hidden-productivity-drain-cookie-banners.html

欧洲人每年花费约 575 万小时点击 Cookie 弹窗

Cookie 弹窗已成为现代网络的普遍特征,用户在寻求无缝浏览体验时会感到沮丧。在欧洲,Cookie 弹窗是由 2002 年的 ePrivacy 指令 2002/58 所要求的,该指令要求网站在存储或访问用户设备上的信息之前获得知情同意。虽然这些规定的目的是提高隐私保护,但实际上对用户隐私的影响微乎其微,因为大多数 Cookie 弹窗用于促进网络分析、了解用户行为、管理广告效率或关键词流量。此外,网站所有者难以或几乎不可能在用户访问网站之外跟踪用户,因为这需要法庭命令。

了解 Cookie 弹窗对欧洲经济的真正成本至关重要。我们的计算表明,欧洲人每年花费超过 575 万小时点击 Cookie 弹窗。在欧洲经济面临与美国和中国竞争力方面的重大挑战时,正如最近马克龙总统所强调的那样,检查数据和支持这些要求的法律框架至关重要。

Cookie 弹窗的生产力成本

要理解 Cookie 弹窗对欧洲生产力和经济的深远影响,我们需要分解计算。从 2024 年欧盟总人口开始,约为 4.492 亿人,我们假设互联网渗透率约为 90%,结果为 404.28 万互联网用户。

平均而言,用户每月访问约 100 个网站,年访问量为 1,200 个网站。由于约 85% 的网站显示 Cookie 弹窗,因此用户每年会遇到约 1,020 个 Cookie 弹窗。假设与 Cookie 弹窗的每次交互需要平均 5 秒钟,则每年每用户总共需要 5,100 秒,约为 1.42 小时。

将此数字乘以欧盟的互联网用户总数,我们得到以下总时间:404.28 万用户 ×1.42 小时/年 ≈575 万小时/年。

Cookie 弹窗是否真正改善了隐私?

与普遍的看法相反,Cookie 弹窗并不是由 GDPR 引入的,而是由 2002 年的 ePrivacy 指令 2002/58 引入的,当时 Cookie 刚刚为公众所知。作为对全球监控的恐惧的回应,监管机构在任何数据可以存储在用户通信设备上之前强制实施了一个通用原则,即同意:

“第 5.3 条:成员国应确保使用电子通信网络存储信息或访问存储在用户终端设备上的信息仅在以下条件下允许:用户或用户已获得有关处理目的的明确和全面信息,并提供拒绝此类处理的权利。”

ePrivacy 指令最初打算更新,但该项目从未实现。

今天,大多数 Cookie 弹窗用于:

促进网络分析和了解用户与其网站的交互。

通过分析内容的表现来改善用户体验。

管理广告的性能。

大多数小型企业使用 Cookie 来高效地分析用户行为,而无需精确定位用户。通常需要法庭命令来处理 IP 地址,这很少被执行。因此,Cookie 弹窗主要是为了减轻理论上的法律风险,而不是执行大规模的用户跟踪。

这并不意味着一些企业没有使用 Cookie 来进行大规模的用户跟踪。一些主要依赖广告的公司会与大量合作伙伴共享用户数据,有时会有数百个广告合作伙伴。在这种情况下,Cookie 弹窗确实为用户提供了隐私保护。

然而,从互联网的总体规模来看,只有很小的一部分网站使用大规模的合作伙伴关系作为主要的经济模式。

对于用户来说,与 Cookie 弹窗的重复交互会导致极大的沮丧和完全失去警惕性。同意疲劳会导致用户在没有适当考虑的情况下盲目接受条款,从而破坏了监管的初衷。Cookie 弹窗不仅会降低生产力,还会降低用户满意度并破坏对在线平台的信任。

结论

欧洲人每年花费 575 万小时点击 Cookie 弹窗这一事实凸显了一个重大的但常常被忽视的经济和生产力损失。这些流程为隐私带来了微乎其微的好处,对商业绩效几乎没有改善。

相比之下,像 GDPR 这样的法规强制实施 IT 安全义务,虽然被视为负担,但通过确保 IT 系统的安全性为企业带来了长期的稳固性。

这种情况要求紧急修订 ePrivacy 指令,可能将其转变为法规,以确保快速采用。对于使用分析、跟踪用户与其网站交互并管理基本广告的小型和中型企业(SMB)来说,Cookie 弹窗的豁免是必要的,以减轻不必要的经济和生产力损失。


HN 热度 326 points | 评论 369 comments | 作者:vegasbrianc | 1 day ago #

https://news.ycombinator.com/item?id=42141843

  • 法律最好抽象,以适应变化,欧洲的“cookie 法”要求知情同意,而非具体横幅形式
  • 大多数公司未能正确实施 cookie 横幅,导致默认设置跟踪 cookie 或只有同意选项,这不符合法规
  • 同意和拒绝同意应同样简便,否则不合规,但许多公司未能正确实施
  • 欧盟应规定具体实施方式,如浏览器设置,但广告公司反对,因为用户可能不会选择跟踪
  • 一些公司通过不合规的横幅形式进行被动攻击,目的是让用户反感法律,从而支持废除隐私保护
  • 谷歌和苹果等公司采取了恶意合规措施,如移除地图链接或故意破坏离线应用支持
  • 广告行业反对 cookie 横幅,因为这些横幅要求用户知情同意,而不是默认跟踪用户数据

Relativty: An open-source VR headset for $200 #

https://www.relativty.com/

Relativty 是一个开源的 VR 头显项目,由 Maxim Perumal 和 Gabriel Combe 创建。该项目始于两人 15 岁时,因为他们无法负担购买 VR 头显的费用,因此决定自己动手制作。

硬件

Relativty 头显的硬件部分包括一个自制的主板,基于 Atmel SAM3X8E ARM Cortex-M3 处理器和 MPU-6050 传感器。主板的成本约为 25 美元。该头显还支持使用 Arduino Due 或其他兼容 ArduinoCore 的板子供电。

软件

Relativty 支持 Steam VR 游戏,并且可以修改以支持其他 DIY 或商业 VR 设备。该项目还包括一个实验性的位置缩放功能,可以使用任何摄像头来追踪用户的身体。

显示

Relativty 头显使用一个 2K 双显示屏,刷新率为 120Hz。然而,由于该项目的开源性质,用户可以使用任何显示屏,只要计算机能够处理。

入门

Relativty 项目完全开源,适合于开发者和黑客。用户可以在 GitHub 上找到源代码、电子元件、硬件和机械零件的设计文件。构建指南也可在 GitHub 上找到。

招聘

Maxim Perumal 正在创建一家新公司 Unai,开发一款新的独立 VR 头显和操作系统。该公司正在招聘对解决沉浸式技术挑战感兴趣的人员。


HN 热度 309 points | 评论 116 comments | 作者:LorenDB | 23 hours ago #

https://news.ycombinator.com/item?id=42143269

  • 3DoF 追踪仅能追踪头部旋转,不支持绝对位置追踪,而 6DoF 追踪同时支持头部旋转和位置移动,体验更好
  • HadesVR 是一个低成本的开源 6DoF VR 头显项目,社区活跃,基于 Relativty 开发
  • 3DoF 对于大多数 VR 使用场景已经足够,特别是对于没有专门房间的用户,坐姿 VR 设置更为常见
  • 6DoF 即使在坐姿使用时也明显优于 3DoF,小范围移动可以显著提高沉浸感,减少眩晕感
  • Quest 3S 价格便宜,功能接近 Vision Pro,但隐私保护成为许多人的顾虑
  • Meta 的 VR 设备需要 Facebook 账户,这成为一些用户购买的障碍
  • Quest 3S 的相机数据访问限制影响了应用的环境交互能力,但这是出于隐私保护考虑
  • 苹果和 Meta 都可能通过出售用户信息获利,但目前没有直接证据表明这些数据可以被个人购买
  • 6DoF 在坐姿使用时也能带来显著不同的体验,大脑会感觉更加自然和舒适

Seer: A GUI front end to GDB for Linux #

https://github.com/epasveer/seer

Seer 项目介绍

Seer 是一个 Linux 平台下的 GUI 前端,用于调试 gdb。该项目由 Ernie Pasveer 维护,目前正在积极开发中。项目的目标是创建一个简单易用的 GUI 前端,用于调试 gdb。

安装

Seer 可以通过包管理器或源代码安装。安装前需要确保系统满足以下要求:

  • Linux 操作系统
  • C++17 编译器
  • gdb 的 “mi” 解释器(可以通过运行 gdb --interpreter=mi 命令检查)
  • CMake 3.1.0 或更高版本
  • QT6

从源代码安装

可以通过以下步骤从源代码安装 Seer:

  1. 克隆 Seer 项目的源代码仓库
  2. 进入源代码目录,运行 cmake 命令生成构建文件
  3. 运行 make 命令编译 Seer
  4. 运行 make install 命令安装 Seer

从包管理器安装

Seer 可以通过以下包管理器安装:

  • Pamac(Manjaro):pamac install seer
  • zypper(openSUSE Tumbleweed):zypper install seer gdb

功能概览

Seer 提供了以下功能:

  • 主视图:显示源代码、函数、类型、变量和库的列表
  • 变量/寄存器信息:显示变量和寄存器的值
  • 代码管理器:显示源代码,支持搜索和断点设置
  • 断点/监视点/捕获点/打印点管理:管理断点、监视点、捕获点和打印点
  • GDB 输出:显示 GDB 的输出日志
  • Seer 输出:显示 Seer 的输出日志

新闻

  • Seer 的下一个版本(v2.0)将基于 QT6
  • 目前可以使用 QT5 编译 Seer,但不推荐

HN 热度 279 points | 评论 158 comments | 作者:turrini | 12 hours ago #

https://news.ycombinator.com/item?id=42146338

  • Seer 的界面有些臃肿,功能实现也不够完善,但经过打磨后可能有用
  • Gede 的界面简洁直接,虽然功能不多,但已有的功能运行良好
  • GDB 内置的 TUI 界面易用且支持鼠标操作
  • 编译 GDB 时需要确保启用 TUI 支持,否则可能无法使用
  • 使用 Neovim 和 nvim-dap 插件调试 GDB 体验更好
  • gdb-dashboard 可以自定义显示信息,颜色使输出更易读,支持多终端布局
  • Qtcreator 调试 GDB 无需复杂配置,点击断点即可开始调试
  • VSCode 的内置调试界面也很不错,特别是与 CodeLLDB 扩展和 LLDB 结合使用时
  • DDD 是一个历史悠久的 GDB 图形界面,虽然界面老旧但仍在维护
  • 多年前的 DDD 已经显得笨重,现在更倾向于使用嵌入式调试器

New Apple security feature reboots iPhones after 3 days, researchers confirm #

https://techcrunch.com/2024/11/14/new-apple-security-feature-reboots-iphones-after-3-days-researchers-confirm/

苹果公司的新 iPhone 软件包含一个名为“不活动重启”的新安全功能,如果 iPhone 未被解锁超过 72 小时,该功能会强制重启 iPhone。安全研究人员 Jiska Classen 和 Magnet Forensics 公司确认了这一功能,指出该功能可以防止黑客和执法部门通过 brute-force 方法解锁 iPhone 或提取数据。

当 iPhone 处于“Before First Unlock”(BFU)状态时,用户的数据完全加密,除非知道用户的密码,否则无法访问。当 iPhone 处于“After First Unlock”(AFU)状态时,一些数据未加密,可能更容易被一些设备取证工具提取,即使手机处于锁定状态。

研究人员表示,这个新功能可以使 iPhone 更加安全,因为它可以防止黑客和执法部门通过 brute-force 方法解锁 iPhone 或提取数据。然而,这个功能也可能会使执法部门的工作更加困难,因为他们可能需要等待 72 小时才能尝试解锁 iPhone。

苹果公司没有对此发表评论。


HN 热度 275 points | 评论 202 comments | 作者:joegibbs | 23 hours ago #

https://news.ycombinator.com/item?id=42143265

  • 定期重启是支付终端的 PCI 要求,有助于清除恶意软件或瞬态错误
  • 重启手机会使其断开网络连接,直到用户解锁,这可能会影响手机的功能
  • 三星手机有每日自动重启功能,但实际使用中可能并不理想,因为会中断网络连接和通知
  • 自动重启最好在用户睡觉时进行,但自动重启导致手机无法接收电话,用户可能会禁用此功能
  • 苹果手机在充电和锁定状态下会自动重启以应用关键系统更新,但这种情况并不常见
  • 安全更新频率大约每月一次,而不是每周
  • 安全性不应仅依赖于“安全通过 obscurity”,因为这可能会导致忽视其他安全问题
  • 安全通过 obscurity 在某些情况下是有效的,但不应作为唯一的安全措施

Red Hat to contribute container tech (Podman, bootc, ComposeFS…) to CNCF #

https://www.redhat.com/en/blog/red-hat-contribute-comprehensive-container-tools-collection-cloud-native-computing-foundation

Red Hat 宣布将向 Cloud Native Computing Foundation (CNCF) 捐赠一套全面的容器工具集,包括 bootc、Buildah、Composefs、Podman、Podman Desktop 和 Skopeo。这些工具将成为 CNCF 的托管项目,允许用户贡献、协作和成长项目社区。

这些工具已经拥有强大的用户基础,例如 Podman Desktop 下载量超过 150 万次,Podman 在 GitHub 上拥有 23.6k 颗星。Red Hat 希望通过向 CNCF 捐赠这些工具,能够让开发者更好地构建和运行云原生应用。

容器是云原生基础设施的核心组成部分,Linux 是每个容器的核心。通过捐赠这些工具,用户可以更好地访问 Linux 和 Kubernetes 之间的接口。Red Hat Enterprise Linux (RHEL) 用户可以使用 Podman、Buildah、Skopeo 等工具,并且这些工具是为 RHEL 优化的。

Red Hat 致力于开源,并相信开放源代码只是第一步。真正的创新来自于协作和社区的参与。通过向 CNCF 捐赠这些工具,Red Hat 希望能够推动云原生技术的发展,带来更大的灵活性、可访问性和安全性。


HN 热度 263 points | 评论 81 comments | 作者:twelvenmonkeys | 1 day ago #

https://news.ycombinator.com/item?id=42139044

  • Podman 在无配置的情况下运行良好,支持 rootless 容器和 GPU,比 Docker 更好用,希望 CNCF 能提升其知名度
  • Buildah 比 Docker 的 buildx 更优秀,支持 shell 脚本和 dockerfile,且不自动执行过多操作,有助于优化容器层
  • 使用 Docker 构建容器时,通过代理到本地 Docker socket 可以利用缓存,同时提供干净环境的选项,比 CI 提供的构建插件更灵活
  • Podman 在高负载环境下表现稳定,尽管早期版本存在问题,但自 4.0 版本以来没有遇到任何问题,推荐 Linux 用户尝试
  • Podman 与 NixOS 配置系统不完全兼容,需要自定义工具将 Compose 项目转换为 NixOS 配置
  • Podman compose 在解析环境变量字符串时存在问题,导致其不如 Docker compose 好用
  • Podman 的 IO 通过 fuse-overlay 性能受限,特别是处理大量小文件时,速度仅为直接使用 overlay 的一半
  • Podman 在 macOS 上通过创建 CentOS 虚拟机运行容器,rootless 模式意味着容器内的 root 用户映射到外部的普通用户
  • Podman 可以通过设置 DOCKER_HOST 环境变量与 docker-compose 兼容,但两者安装方式不同,存在细微差异
  • 通过 podman system reset 和配置 storage.conf 可以解决 fuse-overlay 的性能问题,利用 Linux 内核的无特权 overlay 功能

Please stop the coding challenges #

https://blackentropy.bearblog.dev/please-stop-the-absurd-coding-challenges/

本文讨论了当前科技行业面试中越来越普遍的非现实编码挑战,尤其是那些要求开发者在短时间内完成复杂任务的做法。作者指出,这类高压的独立编码测试并不能真正反映出开发者在工作中的实际技能和能力,因工作环境通常是协作和支持的,而不是孤立无援的。

以下是文章的几个主要观点:

  1. ** 不切实际的测试 **:很多公司要求候选人进行的编码任务,例如调试老旧的 PHP 代码或从头开始构建一个迷你应用,往往与实际工作情况相去甚远。这种方式不能有效地评估应聘者的 “问题解决” 能力。
  2. ** 额外的时间投入 **:候选人在完成这些编码挑战时,往往会花费远超预期的时间来研究公司、理解职位要求,并力求将项目打磨得完美。因此,一个 “4 小时” 的任务可能实际上变成 8 小时、10 小时甚至更多的工作。这对平衡工作与生活的开发者来说,可能感觉像是在为一份尚未获得的工作进行无偿加班。
  3. ** 灵活性的误区 **:一些公司认为,通过要求候选人适应不相关的技术栈来测试其适应能力是合理的,但实际上这种做法并没有准确反映候选人是否适合该职位。
  4. ** 公司在测试候选人还是在展示标准?**:有些公司通过这些高难度测试来显示其 “精英” 的招聘标准,而不是为了真实评估候选人的能力。这种 “顶尖 1%” 的心态使得许多优秀候选人望而却步,因为他们不擅长这种人造的高压测试。
  5. ** 需要现实检查 **:作者呼吁公司承认目前的招聘实践存在问题。招聘过程应关注相关技术技能的测试,而不是让候选人经历不切实际的编码挑战。若公司希望寻找适应能力强的开发者,就应关注其长期学习能力,而非单纯看候选人能多快完成任意测试。

总之,作者认为,放弃这些荒谬的编码挑战,关注实际所需技能,将有助于吸引更优秀的人才,并促进更加包容的技术文化。


HN 热度 204 points | 评论 422 comments | 作者:CrazyEmi | 9 hours ago #

https://news.ycombinator.com/item?id=42147790

  • 调试没有文档和团队帮助的古老代码库是经常遇到的情况,尤其是对于资深开发者
  • 即使在新的项目中,阅读和理解他人的代码也是必要的技能,有助于编写更好的代码
  • 代码的可读性是最重要的指标之一,不可读的代码是坏代码的一部分
  • 资深工程师能够深入依赖项和堆栈的底层解决问题,而不是在上层代码中添加临时解决方案
  • 个人经常需要调试多年前自己写的代码,就像在读别人写的代码一样
  • 有些工作环境确实不需要经常处理这种问题,例如使用 Perforce 管理代码的环境
  • 在接手他人代码时,快速理解并解决问题是一项重要技能,尤其是在收购后接手旧代码库时
  • 与团队成员沟通解决问题时,有时会发现对方工程师的代码能力不足,即使有 AI 辅助也无济于事

https://onair.io/

OnAir 是一种无摩擦的客户通话解决方案,旨在简化客户与企业之间的沟通。用户可以创建一个 OnAir 链接,让客户在他们在线时可以轻松拨打电话,无需下载任何应用程序,避免了失去潜在客户的情况。

主要功能: #

  1. ** 创建链接 **:用户可以预留一个链接,例如 (onair.io/ 你的名字) 或 (onair.io/ 你的公司),选择音频或视频通话,并在有空时设置在线状态。
  2. ** 分享链接 **:可以将链接嵌入到网站、LinkedIn 个人资料或电子邮件签名中,实时显示在线状态。
  3. ** 接听电话 **:客户只需访问链接,如果用户的状态为在线,通话将直接拨入。

用户体验: #

  • ** 客户 **:不再需要通过 “预约通话” 的方式联系企业,客户可以即时与销售代表对话,解决疑问。
  • ** 销售团队 **:无须繁琐的调度,团队成员可以在灵活的时间和地点接听电话。可设置在线 / 离线状态,并实现呼叫轮询分配给不同团队成员。
  • ** 企业 **:通过简化的沟通流程,加快业务发展,缩短销售周期,提高转化率,捕获潜在客户信息,提升品牌信任度。

额外特点: #

  • ** 隐私保护 **:用户无需分享个人电话号码或电子邮件地址,可以创建一个遮蔽的 OnAir 链接与他人分享。
  • ** 无应用程序 **:访客无需下载任何应用程序,只需访问链接即可开始通话。
  • ** 智能排队 **:如果在接听其他客户电话时有人拨入,可以将其放入队列中,随时切换客户。

适用场景: #

  • 传统的调度方式复杂且耗时。
  • 团队成员之间的联系不便,传统呼叫中心成本高、灵活性差。
  • 在线会议工具设置繁琐,效率低下。

试用与注册: #

OnAir 提供 7 天的免费试用,无需信用卡,用户可以轻松注册并体验其服务。

联系方式: #

如有疑问,可通过 hello (at) onair.io 联系客服。

总体而言,OnAir 提供了一种高效、灵活的客户沟通方式,适合希望提升客户体验和内部沟通效率的企业。


HN 热度 188 points | 评论 85 comments | 作者:bigmicro | 15 hours ago #

https://news.ycombinator.com/item?id=42145419

  • 电话通话可以帮助避免误解,传达更多情感和信息,但需要平衡使用
  • 当前年轻人对电话通话感到焦虑,市场可能不如预期
  • 由于大部分电话是垃圾或诈骗电话,导致对电话通话的反感
  • 随着公司越来越多地使用糟糕的聊天机器人,人们可能重新需要与真人通话
  • 异步通信在某些情况下更有效,但默认使用同步通信会导致焦虑和浪费
  • 电话通话对于解决复杂问题和快速达成共识仍然非常有用
  • 企业与客户沟通时,应选择客户偏好的沟通方式,电话通话仍然是许多人的首选
  • 允许用户获取常规电话号码可能会提高客户满意度,尽管大多数用户可能不需要