Agili 的 Hacker Podcast 2026-05-31

Agili 的 Hacker Podcast 2026-05-31

NaN分钟 ·
播放数10
·
评论数0

今日 Hacker News 话题从一份引发争议的 Web 规范清单开始,延伸到格密码入门、视频编码标准 AV2 的发布,也有一款专为小说写作设计的编辑器,以及一个用树莓派监听窗外鸟鸣的个人项目。

一份引发两极讨论的网站规范清单

Joost de Valk(前 Yoast SEO 创始人)发布了《The Website Specification》,一份覆盖 128 个主题的网站技术规范清单。内容按 10 个类别组织:基础、SEO、可访问性、安全、性能、隐私、弹性和国际化等,每个条目都链接回 WHATWG、W3C 或 IETF RFC 等标准,并标注“必须”“推荐”“可选”。

可编程的规范文档

这个规范网站本身也可编程。提供了 MCP 服务器和 Agent Skill,方便 AI 代理直接查询。每个页面可通过 /llms.txtAccept: text/markdown 获取 Markdown 版本。支持者认为它是一个实用的检查清单,几位开发者表示已经用它给自己网站补上了几个之前不知道的标签。

AI 生成内容争议

质疑集中在两点。Git 提交记录显示作者使用 Claude 生成内容,行文带有明显的 AI 特征——重复句式、过度分段。有评论直接称之为“slop”,并指出作者靠 SEO 广告业务赚钱,现在又瞄准 AI 代理。

Agent Readiness 是“胶带”还是刚需

AI 代理解析 HTML 成本高、容易出错,所以规范引入了 llms.txt 等特殊接口。批评者认为这只是一时的“胶带”方案——模型能力提升后,这些接口要么被滥用(向代理展示与人类不同的内容),要么被直接忽略。目前 llms.txt 被 0 个主流 AI 提供商支持。有人提出更好的方向:与其另造 llms.txt,不如鼓励网站用语义化 HTML,让代理像浏览器阅读器模式那样提取正文。

清单可能助长教条主义

一位用户指出,128 项检查清单可能被人当作绝对标准,在 Jira 里要求全部满足,而实际上很多内容要根据网站目标取舍。评论区还延续了对现代 Web 复杂性的批判——回想 2000 年代的纯 HTML 表格布局,对比今天一个下拉菜单要发 10 次 fetch 请求驱动整个 React 应用。


格密码入门:抵抗量子计算攻击的数学基础

2024 年 8 月,NIST 发布了抗量子计算机攻击的密钥封装和数字签名标准,Kyber 和 Dilithium 是预计部署最广的两个方案。它们的核心安全性基于格上的计算问题。

格的基本概念

格是整数线性组合构成的离散加法子群。基向量越短、越正交,解决问题就越容易。最短向量问题(SVP)的已知最快经典算法需要指数时间,量子算法稍快。Minkowski 定理给出了最短向量长度的上界。

LWE 和 SIS 问题

SIS 问题要求在一个随机矩阵的零空间中找一个非零短向量。Ajtai 在 1996 年证明了 SIS 的平均情况困难性等价于最坏情况下的近似问题。LWE 问题则要求从带噪声的线性方程组中恢复秘密向量 s,Regev 在 2005 年建立了类似的量子归约。

攻击与研究空间

对 LWE 有三种典型攻击:原始攻击将 LWE 转化为有界距离解码问题;对偶攻击借助 SIS 求解器来区分实例;Arora-Ge 攻击通过线性化处理,但所需样本量极大,对 Kyber/Dilithium 无效。Module 变体将整数域替换为多项式环,使单次操作可处理多个比特,这是 Kyber/Dilithium 高效实现的关键。

Hacker News 评论指出,格密码与纠错码非常接近,或许存在尚未发现的归约关系,暗示该领域仍有交叉研究的空间。


Shantell Sans:从手写到开源可变字体

Shantell Sans 是一款基于艺术家 Shantell Martin 手写体的开源可变字体,2023 年通过 Google Fonts 发布。字体包含 Weight、Italic、Informality、Bounce 和 Spacing 五个可变轴,可以调节字形从规整到活泼、从扁平到弹跳的效果。

设计理念与工艺

Martin 从小有阅读障碍,她想创造一款“好玩、专业、可用”的字体,让对文字有距离感的人也能轻松读写。设计团队以 Comic Sans 为灵感,提取它“亲切易读”的特质,但做了全新设计。团队保留了 Martin 用记号笔手写的笔触特征(如单层的 a 和 g),同时调整了比例和间距,使其与 Roboto 等日常字体兼容。

社区反响

Hacker News 社区评价积极。一位用户说 Formality 滑块是“最近见过最酷的可变轴用法”。另一位指出“与 Comic Sans 的关联很明显,但 Shantell Sans 走得更远,更美”。一位阅读障碍患者的女儿说它比 Roboto 更易读。字体以 OFL 开源许可发布,目前 tldraw 已将其设为主要字体。


Racket v9.2 发布

Racket v9.2 版本发布。一位社区成员描述,Racket 会“钻进你脑子里”,学会之后看其他语言都只是语法变体——Racket 的哲学是让语言适应问题,不是反过来。

可能影响现有代码的改变

match 模式匹配现在会检查非线性模式,混用 ... 和平铺使用时会报错。Typed Racket 修正了 asinacos 的类型定义,之前返回复数时会产生不健全的结果,现在编译期就会报错。

其他重要特性

新增 Unicode 17.0 支持、内核语法 #%foreign-inline、更静态的 "ffi2" 外部接口。Typed Racket 多态结构体类型现在打印时会显示类型参数。Scribble 文档的默认缩放比例改为 1.0。边注在窄屏下默认内联显示。

真实使用场景

有人用 Racket 试验神经网络的非常规结构(如用平衡三进制浮点数替换 IEEE 754),说“在 Racket 里花了 20 分钟做的事,换成 C++ 不知道要怎么搞”。初学者推荐读《How to Design Programs》这本书,很多人在初学阶段通过它建立了系统的问题解决方法。


伦敦免费屋顶露台实地探访

一位本地博主走访了伦敦金融城几个不需要预约的屋顶露台,记录下真实体验。这些露台是开发商为了获得规划许可而加入的免费公共空间。

值得去的两个

Fen Court 的 The Garden at 120 是金融城最大的屋顶花园,位于 15 楼,2019 年开放。360 度全景视野,能看到塔桥、伦敦塔、金丝雀码头和伦敦眼。博主推荐没去过的人值得一试。One New Change 购物中心的屋顶露台在 6 楼,紧邻圣保罗大教堂,穹顶被完美框住,适合短暂停留。

令人沮丧的探访

泰特现代美术馆的 Level 10 观景台因能直接看到隔壁公寓的室内,居民起诉并胜诉。英国最高法院判定持续的视觉侵扰构成妨害,现在所有外部平台门都锁着,安保专门盯着游客。Holborn 的 The Post Building 需要出示带照片的身份证件并登记全名,博主去时被“必要的维护工作”为由拒之门外,他怀疑这是开发商满足规划要求却不希望有人参观的借口。

一些评论指出,这种现象在伦敦并不罕见——私有公共空间通过“提前预约”“身份核验”等方式事实上阻止公众进入。也有伦敦本地人说从未去过这些地方,因为金融城主要是上班的地方。


Roto 脚本语言一周年

Roto 是一个 JIT 编译的静态类型脚本语言,与 Rust 紧密集成。过去一年发布了 6 个版本,外部项目 Iocaine 已采用它作为脚本语言。

语言进展

新增 whilefor 循环、f-string、enumList 类型和复合赋值运算符。List 可以在 Rust 和 Roto 之间几乎零成本传递。语法向 Rust 靠拢,但不会成为 Rust 的子集,因为计划加入字符串格式化等特性。注册 Rust 类型的方式被 library! 宏取代。

Iocaine 的实战验证

Iocaine 是一个脚本化代理,用于防御 AI 爬虫并向它们返回垃圾数据。它支持 Roto、Lua 和 Fennel,作者说 Roto 在三种语言中性能最好。简单运算快于 Lua,但在列表操作上因内部 mutex 和频繁 Rust 调用而慢 21 倍。优化工作尚未深入。

定位与选择理由

用户选择 Roto 代替 Rust 的主要原因是热重载、更简单的语法、无需完整 Rust 工具链。配置与业务逻辑分离的场景尤其适合。未来计划添加 hashmap、用户定义状态、泛型函数和 LSP 支持。


AV2 视频编码规范 v1.0 发布

AOMedia 发布了 AV2 视频编码规范的 v1.0.0 最终版本。AV2 在 AV1 基础上将压缩效率提升约 20%–30%,新增对多流的原生支持,可用于 VR/AR 和透明通道合成。

从标准到普及的时间线

参考软件(AVM)可在 GitHub 获取,但编码速度极慢,约 1fps。生产级编码器需要时间开发,AV2 硬件加速芯片预计 2028 年左右出现,大规模普及可能要等到 2030 年。对 YouTube 这类平台,可以先通过服务器端软件编码为 AV2,用户端只需硬件解码。dav1d 等高效解码器在老旧 CPU 上也能流畅播放 1080p AV1,AV2 的解码性能可能不会成为主要瓶颈。

专利与竞争态势

Dolby 已就 AV1 向 Snapchat 提起诉讼,但 AOMedia 成员公司拥有庞大专利库和防御基金。AV1 发布 8 年来尚未出现实质性专利索赔,而 H.265/HEVC 的专利池混乱且收费高昂。AV2 的效率提升也会影响图像格式 AVIF,但它面临 JPEG XL 的竞争——后者已在浏览器端重新获得支持。

对普通用户和终端设备而言,需要等待硬件加速到位才能受益。


Cheese Paper:专为小说写作设计的编辑器

Cheese Paper 把每个场景保存为独立的 Markdown 文件,头部用 TOML 存放笔记和摘要。这些文件可在任何文本编辑器里修改,支持文件同步工具,编辑器本身完全离线运行,不发送遥测数据。

核心功能

左侧按文件夹和场景组织,右侧主编辑区写正文,侧边栏展示该场景的笔记和摘要。内置角色管理和世界观构建模块,可单独为每个角色填写外貌、性格等笔记。导出功能可将笔记汇总为一个文件,或把正文合并成一份 Markdown,方便用 Pandoc 转换成 epub、docx 或 PDF。它附带一个随机按钮,能毫无章法地生成所有颜色——作者表示自己真会带着这种糟糕的配色写故事。

社区反馈

有人质疑为什么不直接用 org-mode,回应是 Emacs 学习曲线太长。也有用户抱怨界面太紧凑,另一些人则认为紧凑是为了一屏内显示更多内容。隐私策略获得好评:“我们不想要你的数据,请你自己留着。”项目不接受 AI 生成的贡献。


用树莓派和 AI 监听窗外鸟鸣

Teddy Warner 在公寓阳台上粘了一支 USB 麦克风,连上树莓派,跑起 Cornell 的 BirdNET 声学分类器,想知道窗外飞过了什么鸟。项目名 Avian Visitors。

技术栈与物料

项目是 BirdNET-Pi 的一个 fork,叠加了一套花鸟画风格的插图拼贴界面。物料清单约 80 美元:树莓派、32GB microSD 卡、USB 领夹麦克风、电源。安装脚本自动完成所有流程,耗时 20–40 分钟。

AI 插图的取舍

拼贴界面的插图由 Gemini 图像模型生成,默认嵌入了 450 种北美常见鸟类的“停栖”和“飞行”两种姿态。Gemini 在解剖细节上会幻觉,作者用一个审计脚本去掉了约 3%–5% 存在多翼、无身脚或水印的缺陷图片。拼贴排布按检测次数加权计算图块大小,从中心向外螺旋排布。

局限与讨论

BirdNET 在物种丰富但缺乏训练数据的地区效果不佳。有人在鸟类救助站工作,想从 24 小时录音里找到宠物鸟极微弱的声音变化,但现有模型不覆盖这些信号。作者提供了 Cloudflare Tunnel 等三个外网访问方案,让拼贴站不仅限于局域网。


dav2d:AV2 快速解码器启动

VideoLAN 社区宣布了 dav2d,针对新 AV2 编码的快速解码器。AV2 压缩效率比 AV1 提高约 25%,但解码复杂度大约是 AV1 的 5 倍。

当前进度与架构选择

项目已包含一个功能完整的 AVM v15 解码器,支持 8 位和 10 位解码。性能优化已开始,x86 上有 AVX2 代码,ARM 上有 AArch64 NEON 代码,RISC-V 也有初步适配。项目维护者解释说 Rust 不带来更多性能,只是更安全,而解码器需要尽可能多的汇编优化来应对 5 倍复杂度,因此继续使用 C 和汇编。

实用价值与期待

dav2d 的目标是让 AV2 在硬件解码普及之前就能实际使用,就像 dav1d 对 AV1 所做的那样。对于早期采用者和内容分发平台来说,软件解码器是连接新标准与现实部署之间的关键桥梁。社区期待看到实际基准测试结果。


相关链接: