2024-10-04

42 篇热帖

2. Canvas is a new way to write and code with ChatGPT (openai.com)

Canvas:与ChatGPT协作写作和编程的新界面

Canvas是ChatGPT推出的全新协作界面,专为处理复杂的写作和编程项目设计。它在一个独立的窗口中打开,使用户能够与ChatGPT并肩工作,超越了简单的对话式交互。此功能基于GPT-4o模型构建。

主要功能与优势

  • 更好的上下文理解:用户可以高亮显示特定部分,引导ChatGPT专注于所需内容。ChatGPT能像编辑或代码审查员一样,提供内联反馈和建议。
  • 用户主导控制:用户可以直接编辑文本或代码,并利用快捷菜单请求ChatGPT调整长度、调试代码等。还可通过后退按钮恢复先前版本。
  • 自动触发与手动开启:当ChatGPT判断场景适用时,Canvas会自动打开。用户也可以在提示中输入“use canvas”来手动启动。

写作快捷方式

  • 建议编辑:提供内联建议和反馈。
  • 调整长度:缩短或延长文档。
  • 改变阅读水平:从幼儿园到研究生院级别调整。
  • 最终润色:检查语法、清晰度和一致性。
  • 添加表情符号:用表情符号增强表现力。

编程快捷方式

  • 代码审查:提供内联改进建议。
  • 添加日志:插入打印语句以辅助调试。
  • 添加注释:为代码添加解释性注释。
  • 修复错误:检测并重写有问题的代码。
  • 移植到其他语言:可将代码翻译为JavaScript、TypeScript、Python、Java、C++或PHP。

技术开发与训练

研究人员训练GPT-4o使其成为创意合作伙伴,使其能够判断何时开启Canvas、进行有针对性的编辑或完全重写。通过超过20项自动化评估,使用了从OpenAI o1-preview提炼输出等合成数据生成技术进行模型后期训练,以优化写作质量和交互行为。

关键挑战之一是定义触发Canvas的时机。对于写作任务,优先提高“正确触发率”;对于编程任务,则有意降低触发率以避免干扰高级用户。评估显示,在写作和编程任务中,Canvas的触发准确率分别达到83%和94%,优于基准模型。

发布计划

Canvas目前处于早期测试阶段,正向全球ChatGPT Plus和Team用户推出。企业版和教育版用户下周将获得访问权限。测试版结束后,计划向所有免费用户开放。

开发团队

该项目由Karina Nguyen领导,由多位研究人员、工程师、产品经理和设计师共同完成,并得到了包括Sam Altman在内的领导团队的支持。

3. Getting my daily news from a dot matrix printer (aschmelyun.com)

作者为了减少屏幕时间、改善心理健康,同时保持获取每日新闻的习惯,将一台上世纪80年代的Star NP-10针式打印机改造成了个人日报打印机。

硬件与设置

  • 硬件:使用Raspberry Pi Zero W、并口转USB适配器和一台二手针式打印机(带并口即可)。
  • 连接:通过USB将树莓派连接到打印机,并配置网络。打印机设备位于 /dev/usb/lp0,需调整权限(如 chmod 666)才能写入。

打印机编程

  • 作者发现直接发送文本会遇到字符集限制。查阅扫描版手册后,得知该打印机采用基于IBM PC Code Page 437的特定字符集。
  • 使用PHP脚本,通过十六进制转义序列(如 \xCD)向打印机发送特殊字符(如边框、度数符号),实现简单排版。

数据获取 项目通过免费API获取四类数据:

  1. 天气:来自Open-Meteo(无需API密钥)。
  2. 股票:来自Twelvedata(免费额度)。
  3. 新闻:来自NYTimes(免费API)。
  4. Reddit帖子:通过Reddit JSON接口获取(需伪装User-Agent)。 PHP脚本从这些API提取数据,并整理成统一数组。若任何部分获取失败,脚本会提前终止。

内容格式化与打印

  • 布局:日报包含顶部带边框的标题(显示日期、星期和名称),以及天气、股票、新闻、Reddit四个栏目。
  • 换行处理:为避免单词在行尾被截断,作者编写了一个 splitString 函数,根据纸张宽度(80字符)将长文本拆分成多行。
  • 输出:使用 fwrite 函数将格式化后的文本发送至打印机设备文件。

运行与影响

  • 通过 cron 任务设置每天早上8点自动运行PHP脚本打印日报。
  • 作者认为,这种有限的、物理的新闻形式有助于停止无休止的滚动浏览,项目本身也让他重拾了将老硬件与现代技术结合的乐趣。
4. Why does man print "gimme gimme gimme" at 00:30? (2017) (unix.stackexchange.com)

man命令在特定时间(00:30)运行时会输出“gimme gimme gimme”,这是一个彩蛋。具体来说,当用户运行man -w或不指定页面时,如果系统时间为00:30,man会向标准错误输出“gimme gimme gimme”,否则正常显示手册页路径或提示信息。该彩蛋源于man-db代码中的时间检查逻辑,相关代码和提交记录可在man-db仓库中找到。字符串“gimme gimme gimme”来自ABBA的歌曲《Gimme! Gimme! Gimme! (A Man After Midnight)》。此彩蛋存在于多个Linux发行版中,如RHEL、OpenSUSE、Fedora和Debian。随后,man-db的开发者Colin Watson决定移除该彩蛋,以避免混淆并保持命令行为的稳定性。

5. Show HN: One – A new React framework unifying web, native and local-first (onestack.dev)

One 是一个新兴的 React 框架,旨在通过单一技术栈统一 Web、原生应用和本地优先(local-first)的开发体验。其核心是提供一个简洁、快速、一体化的解决方案。

核心特性

  • 全栈类型化文件系统路由:通过单一的 Vite 插件实现,支持基于文件系统的路由定义,并能嵌套带分组的布局。
  • 灵活的渲染模式:开发者可以为每个页面单独选择渲染为单页应用(SPA)、服务器端渲染(SSR)或静态站点生成(SSG),并能设置全局默认模式。
  • 类型化数据加载器:内置类型化的加载器(Loaders),便于获取数据,并简化了从其他框架迁移的过程。
  • 跨平台构建能力:支持使用 React 构建网站,或使用 React Native 构建原生移动应用,甚至可以同时进行。
  • 灵活的构建工具选择:原生基于 Vite,即使对于原生开发也主要使用 Vite,但可以选择回退到 Metro,给予了开发者选择权。

设计理念与背景

One 有意避免了 React Server Components (RSC) 带来的复杂性,转而专注于支持 SSG、SPA 或 SSR 等模式,并通过加载器或同步引擎来处理数据。该框架源于团队在使用 Tamagui Takeout 构建跨平台应用以及在 Uniswap 项目的开发经验。

其他信息

  • 演示:提供了一个在 TestFlight 上可查看的示例应用。
  • 版权:© 2024 Tamagui, LLC
6. 12 Months of Mandarin (isaak.net)

12个月学习普通话摘要

学习效率与通用估计对比

  • 通用估计:达到中级流利(ILR 3级)通常需4000小时以上(2200小时课堂 + 1800小时课外),耗时数年。
  • 作者实际:仅用1500小时(150小时课堂 + 1350小时课外)在一年内达到类似水平(ILR 2+级)。
  • 关键差异:作者认为标准化测试(如ILR 3)可能高估实际沟通能力,许多通过测试者实际仅具备ILR 2水平。

学习历程与方法

  1. 初期入门(第1个月)

    • 在伯克利参加高强度普通话速成班,一周内学习拼音、声调、读写并立即开始对话。
    • 以兴趣驱动,从《鬼灭之刃》中文配音片段等动漫内容中获取学习动力。
  2. 强化自学(第3个月起)

    • 核心工具:使用间隔重复软件Anki进行高效记忆,制作10万张卡片的大型词库。
    • 个性化辅导:遵循“布卢姆的双西格玛效应”,大量进行一对一中文辅导(每周最多6小时),严格遵循“只用中文纠错”的规则。
    • 沉浸式输入:早期观看动漫配音、分级读物,学习书法并练习600个常用汉字。
  3. 实践应用(第4个月起)

    • 旅行沉浸:多次前往中国大陆和台湾(共约2个月),在真实场景中快速提升日常会话、听力和词汇量(每次旅行增加约1000词汇)。
    • 社交沉浸:与导师、朋友建立纯中文关系,将设备语言设为中文,用中文做笔记。
  4. 长期坚持(第6个月起)

    • 保持每周约15小时的稳定学习,典型日程包括晨间Anki、主业学习、晚间中文内容消费及偶尔的辅导课。
    • 里程碑:7个月时掌握5000词汇(对比HSK6考试要求),12个月时达到8000词汇。

关键策略总结

  • 效率工具:Anki间隔重复系统作为记忆核心。
  • 实践驱动:旅行、沉浸式社交及真实对话加速学习。
  • 反馈优化:辅导课提供即时纠错和词汇反馈。
  • 一致性:长期保持每日中文接触,将学习融入生活。

最终成果

  • 一年后达到舒适会话流利度,可处理专业领域讨论、旅行交流及大部分中文内容。
  • 掌握8000个性化词汇(含基础、动漫、学术及旅行用语),但自认未达到完全“流利”,仍需提升语调、高速口语及方言理解。
  • 下一步目标:舒适阅读《三体》原著。

详细学习方法见作者专文:isaak.net/mandarinmethods

7. Why Gumroad Didn't Choose Htmx (htmx.org)

Gumroad 公司在名为 "Helper" 的新项目中,最初考虑使用 Htmx 以构建轻量级前端,但最终选择了 React/Next.js。本文总结了做出这一转变的主要原因:

  1. 开发体验与直觉性:团队发现 Next.js 的开发过程更自然、高效。使用 Htmx 时,为实现复杂功能(如带动态验证的表单),需要编写繁杂的服务器端逻辑,而这类任务在 React 中可通过直观的客户端操作完成。
  2. 用户体验限制:Htmx 易使应用陷入传统的 Rails/CRUD 模式,导致用户界面平淡乏味。团队为实现更富交互性的体验(如拖拽功能)不得不进行大量额外工作,效果却不如 React 生态中的专用库流畅。
  3. AI 与工具支持:由于缺乏足够的开源训练数据,AI 工具对 Htmx 不如对 Next.js 熟悉,这影响了开发速度和问题排查效率。Next.js/React 拥有更丰富的资源和解决方案。
  4. 可扩展性问题:随着项目复杂度增加,Htmx 的简单性逐渐成为限制。在实现高级交互、复杂状态管理(如实时协作)和精细性能优化时,Htmx 的服务端中心化模式难以满足需求。
  5. 社区与生态系统:React/Next.js 生态系统成熟,几乎为所有问题提供现成方案。而使用 Htmx 时,团队常需“重新造轮子”或做出功能妥协,尤其是在集成第三方库时(它们通常提供 React 绑定但无 Htmx 版本)。

文章通过具体功能模块(如工作流构建器的拖拽、复杂状态管理、动态表单)的实现难度对比,说明了为何 Next.js 更适合 Helper 项目的复杂、有状态界面。作者总结道,技术选择需与项目需求及长期目标相匹配。虽然 Htmx 可能适用于交互简单的项目,但对于 Gumroad 的此特定项目,React/Next.js 是更佳选择,并显著提升了用户体验。团队也表示未来会根据需求重新评估技术栈。

8. Experimental web browser optimized for rabbit-holing (szymonkaliski.com)

Cartographist:专为“兔子洞”式浏览优化的实验性网页浏览器

Cartographist 是一个实验性网页浏览器,专为探索性(“兔子洞”式)的深度浏览体验而设计。

核心功能与特点

  • 窗格化浏览:通过水平滚动的窗格替代传统的“新建窗口”操作(如命令键点击),实现并行探索。
  • 树状历史结构:摒弃线性浏览历史,以可交互的树状大纲直观展示浏览路径与关联。
  • 会话持久化:支持保存与加载完整的浏览会话状态(称为“trail”),方便用户在不同时间段延续对特定主题的长期研究。

设计灵感与背景

  • 该项目的概念部分源于对“浏览”与“搜索”区别的思考,旨在支持开放式的、发散性的信息探索活动。
  • 布局灵感来自安迪·马图沙克的个人网站设计、纳特·帕罗特的移动浏览器堆叠实验,以及更早期的米勒列和 Smalltalk 类浏览器等“细节上下文”导航范式。
  • 开发者也尝试将类似的窗格导航模式应用于代码编辑(如 Vim)中。

开发者的反思与展望

  • 关于历史记录:虽然理论上持久化历史有价值,但实践中完整的浏览历史效用有限。开发者认为,研究的核心价值在于“综合”——抓取、重组与整合信息,而非回溯路径。
  • 潜在改进方向:可考虑持久化页面滚动位置或用户选择,并使历史记录可编辑(例如移除无效路径、添加笔记等)。
  • 系统层级思考:开发者意识到,类似的功能可能更适合在窗口管理器层面实现,但现有的平铺式窗口管理器(如 HHTWM)因缺乏水平滚动支持而效果不佳。

项目状态

  • 项目代码已开源,可在 szymonkaliski/Cartographist 查看。
  • 开发者邀请社区对项目的改进提出想法,并探讨其潜在应用场景。
9. Were RNNs all we needed? (arxiv.org)

论文摘要总结

本文重新审视了序列建模领域,核心问题是:我们是否真的需要Transformer?

研究背景与动机

  • Transformer的主导与局限:自2017年提出以来,Transformer已成为深度学习的基石,在众多领域取得成功。然而,其在长序列处理上的可扩展性局限,促使研究者探索新的替代方案。
  • RNN的历史地位:在Transformer出现之前的二十年里,循环神经网络(RNN),特别是其变体LSTMGRU,一直是序列建模的主流方法。
  • 新研究方向:近年来,学界开始寻求在训练时可并行、性能可比、且能更有效扩展的新型循环模型。

研究方法与核心创新

  • 研究路径:论文从历史视角出发,重新分析了经典RNN模型(LSTM和GRU)。
  • 关键创新:通过大幅简化这些传统模型,作者提出了它们的极简版本:minLSTMminGRU
    • 参数更少:新模型比其传统对应物使用了更少的参数。
    • 训练并行化:这些极简版本在训练过程中是完全可并行化的,克服了传统RNN的主要训练瓶颈之一。

主要结果与结论

  • 卓越的竞争力:实验表明,minLSTM和minGRU在一系列任务上取得了出乎意料的竞争性能
  • 与现代模型比较:这些简化后的RNN模型,其表现足以与包括Transformer在内的近期先进模型相媲美
  • 潜在意义:该研究暗示,对经典模型进行精心设计的简化,或许能够提供一种可行的、具备可扩展性的序列建模替代方案,从而回应了论文标题提出的疑问。
10. Show HN: Chebyshev approximation calculator (stuffmatic.com)

这是一个网页应用程序,专门用于为单变量数学函数生成高效近似计算的代码。该工具的核心功能是帮助开发者和工程师利用切比雪夫逼近法,自动创建能够快速计算复杂数学函数(如特殊函数或超越函数)的数值代码,从而优化计算性能并减少计算资源消耗。

16. 炊紙(kashikishi) is a text editor that utilizes GPU to edit text in a 3D space (github.com)

炊紙(kashikishi) 文本编辑器总结

核心概念

炊紙(读作"kashikishi")是一款基于Rust和WebGPU(wgpu)开发的文本编辑器,其核心特点是能在三维空间中编辑文本。该项目目前仍在开发中,可能存在破坏性的功能变更。

设计理念与动机

开发者认为,当前的文本编辑器用户界面仍受传统平面纸张时代的限制,交互体验贫乏(如按键后字符突兀出现、光标瞬移等)。在AR/VR时代,文章不应仅局限于二维空间,而应在三维空间中自由、流畅地布局。炊紙的开发旨在验证三维文本编辑界面的价值。

主要特性

  1. 流畅的编辑操作:利用GPU进行字体渲染,结合基于缓动函数的动画,实现了平滑的编辑体验,预计可在大多数2024年的PC上达到60fps。
  2. 无缝的缩放与间距调整:将字体视为矢量图形,实现了平滑的缩放。同时,将调整字间距和行间距视为文本编辑的一级操作,可在编辑过程中无缝调整。
  3. 支持竖排文本:尤其适合日语等语言,允许在编辑过程中即时切换横排与竖排布局,以获取不同的阅读洞察。
  4. 自动缩进:输入条目列表时会自动添加缩进。
  5. 实验性功能
    • 迷幻模式:一种特殊的视觉效果模式。
    • AR模式:仅支持在Windows系统下使用Rokid Max AR设备,通过头部追踪提供更沉浸的三维文本编辑体验。
  6. 键绑定:基于Emacs键绑定方案。

技术展示

提供了一个基于WASM和WebGL转换的在线演示,可初步体验其效果,但与原生应用表现可能存在差异。

安装与构建

  • 平台支持:仅确认在Windows上可正常运行,Linux和Mac仅支持编译,未保证功能正常。
  • 安装方式
    1. 从GitHub Releases页面下载。
    2. 通过cargo安装:cargo install --git https://github.com/mitoma/kashiki2.git kashikishi
    3. 克隆仓库后运行:cargo run --bin kashikishi --release
  • 构建注意
    • Windows:可能需安装“Build Tools for Visual Studio 2022”及C++桌面开发工具。
    • Linux:可能需要安装libudev-dev(Ubuntu系统命令:sudo apt-get install libudev-dev)。

使用现状

  • 功能:目前主要作为备忘录使用,不具备打开任意文件的功能。
  • 存储:笔记以JSON格式结构化保存在$HOME/.config/categorized_memos.json中,每次保存都会生成带时间戳的备份文件,不会自动删除。
  • 保存:使用Ctrl + X Ctrl + S手动保存。

贡献与许可

  • 贡献:欢迎使用反馈、关于三维文本编辑的想法和讨论,但不接受代码Pull Request。如需修改代码,建议自行fork并遵循许可协议。
  • 许可证:采用MIT许可证。
  • 字体:优先使用系统字体“UD デジタル 教科书体”,不可用时则使用内置的“BIZ UD明朝”和“Noto Emoji”字体。
17. Reverse engineering and dismantling Kekz headphones (nv1t.github.io)

Kekz耳机逆向工程与拆解分析

硬件结构与工作原理

Kekz耳机为头戴式设备,通过插入名为“Kekz”或“Cookie”的NFC芯片播放音频故事,无需联网。拆解后可见:

  • 两块PCB通过7根导线连接,包含扬声器、电池和SD卡槽
  • 主控芯片为Jieli AC21BP0H733-51C8(可能为AC6951C),常用于廉价蓝牙设备
  • NFC读取芯片TSC9883用于读取“Cookie”数据
  • 内置红外传感器检测耳机佩戴和芯片插入状态
  • 32GB SD卡存储内容,采用FAT32文件系统,包含276个目录(更新后369个),每个目录有多个.kez加密文件

加密机制破解过程

1. NFC芯片分析

  • “Cookie”采用NTAG 213芯片,直接读取失败(芯片锁定)
  • 通过Proxmark3嗅探耳机与芯片通信,获取认证密钥
  • 发现芯片存储字符串如en002071696263,经验证:
    • 前两位字母en为语言代码
    • 随后4位数字0020对应SD卡目录名
    • 最后4字节71696263(十六进制)为解密关键参数

2. 加密算法逆向

通过分析官方Windows应用程序(C#编写)得到加密逻辑:

  • 加密过程:
    1. 从文件名生成4字节密钥(b5-b8
    2. 使用目录名异或该密钥后位移
    3. 计算文件名前4字符生成位移量b9
    4. 对MP3文件执行:逐字节异或4字节密钥 + 循环位移b9
  • 破解可行性:
    • 4字节密钥实际来自4个小写字母,搜索空间为26⁴
    • 异或和位移操作导致大量碰撞,有效密钥仅约56个
    • 可预计算密钥表暴力破解,通过验证MP3文件完整性确认正确密钥

3. “Cookie”克隆

将解密字符串写入新NFC芯片即可克隆功能,内容播放取决于目录编号而非外观。

USB通信与固件访问

耳机通过USB连接时显示为HID设备,无法直接访问文件系统:

  • 通过发送特定HID命令可进入:
    • DFU模式:用于固件刷写(命令:[0, 85, 170, 1, 2, 3, 4, 170, 85]
    • USB存储模式:用于文件读写(命令:[0, 85, 170, 3, 1, 41, 40, 170, 85]
  • 进入存储模式后,SD卡文件可见,但目录被Windows应用程序设置为隐藏属性

数据隐私问题

分析应用程序源码发现数据收集行为(未在隐私政策中披露):

  1. ID3标签上传:使用“Wunderkekz”功能时,MP3文件的标题、艺术家、专辑等元数据上传至Azure Cosmos数据库
  2. 地理位置收集:应用程序通过Wi-Fi三角测量获取位置信息并上传
  3. 数据库访问风险:连接字符串硬编码在应用程序中,存在未授权访问风险

未公开内容与发现

  • 通过分析电商网站图片条形码,推断约1/3内容已公开发布
  • 发现“WunderKekz”芯片使用特定目录(0990-0996)
  • 已尝试联系厂商披露安全问题,但未获实质回应(仅后续更新隐私政策)

未解决问题

  • Jieli主控芯片完整功能未知
  • 第二块PCB上的Jieli芯片作用不明
  • 是否存在更多HID控制命令
  • 地理位置数据的精确度(官方称30-500米)待验证
  • 数据库中PII数据具体内容待确认

该研究展示了如何通过硬件分析、协议嗅探、加密算法逆向和应用程序反编译,完全破解Kekz耳机系统并发现潜在隐私风险。

18. Some Automattic employees accept severance package offer (techcrunch.com)

Automattic公司159名员工接受离职补偿方案

Automattic公司首席执行官Matt Mullenweg于周四宣布,有159名员工(约占公司总员工的8.4%)接受了公司提出的离职补偿方案。该方案是提供给那些不认同他对WordPress发展方向以及处理与网络托管服务商WP Engine争端方式的员工。

  • 补偿方案细节:离职员工可获得3万美元或相当于六个月工资的补偿金(以金额较高者为准)。接受该方案的员工将没有资格被公司重新聘用。
  • 离职员工构成:在接受方案的员工中,近80%来自公司的“生态系统/WordPress”部门,其余则来自Automattic旗下的Cosmos业务部门(包括Pocket Casts、Day One、Tumblr和Cloudup等应用)。
  • 公司立场:Mullenweg将此方案称为“对齐方案”,并强调其慷慨性,同时指出91.6%的员工选择留任,放弃了总计约1.26亿美元的潜在离职补偿。他承认这是一个情绪起伏的一周,并对员工的离职感到些许刺痛。
  • 部分离职高管:离职员工中包括一些高管,例如WordPress.com(Automattic的商业WordPress托管部门)负责人Daniel Bachhuber、项目与贡献者体验主管Naoko Takano以及首席AI架构师Daniel Walmsley。

背景:Automattic与WP Engine的争端

此事件发生于Automattic与WP Engine持续近两周的公开冲突背景下。Mullenweg此前指责WP Engine是“WordPress的癌症”,指控其不当使用WordPress和WooCommerce商标,并禁止该公司访问WordPress.org的开源资源。双方已互发停止侵权函。就在同日,WP Engine对Automattic和Mullenweg提起诉讼,指控其“滥用权力”和勒索,并指出Mullenweg作为WordPress创始人在处理这一开源项目时存在利益冲突。Automattic则反驳称WP Engine的所有指控均毫无依据。

文章提及,在宣布此离职方案前,已有员工在社交媒体上暗示此方案的存在,Mullenweg也曾就此事联系并批评过一位发布相关信息的前员工。目前,部分留任员工已公开表示支持公司及CEO的决定。

19. Ants learned to farm fungi during a mass extinction (arstechnica.com)

一项新的大规模遗传学研究追溯了蚂蚁与真菌共生关系的起源,发现这种复杂的农业行为可能始于导致恐龙灭绝的白垩纪末期大灭绝事件之后。研究结果表明,在植物因大气尘埃阻隔阳光而稀缺的时期,以真菌为食的蚂蚁得以繁荣,并最终演化出系统性的真菌种植技术。

该研究分析了475种真菌和276种蚂蚁的DNA,通过超过2000个基因来评估物种间的亲缘关系和分化时间。结果显示,从事农业的蚂蚁物种及其种植的特定真菌菌株在进化树上紧密聚集。例如,种植酵母菌的蚂蚁、种植珊瑚真菌的蚂蚁以及农业化程度最高的切叶蚁,分别形成单系群。同样,被蚂蚁栽培的真菌菌株也聚类在一起,且与野外生长的近缘菌株分离。

时间线分析揭示,所有农业蚂蚁的共同祖先可能生活在约6600万年前的大灭绝期间。当时,撞击引发的尘埃遮蔽阳光,光合作用停止约两年,植物大量死亡,而真菌则因丰富的有机质而繁盛。蚂蚁很可能因此开始依赖真菌。

然而,系统性的农业实践直到约3300万年前(始新世晚期)才广泛出现。研究者认为,这与当时热带美洲气候变干有关,该变化导致野外真菌减少,从而推动蚂蚁演化出培育真菌的能力。此时期也对应着酵母菌和高度专业化农业真菌的起源,但珊瑚真菌农业的起源约晚1000万年。

这项研究不仅明确了蚂蚁农业的演化历程,还为未来探索行为遗传学基础和共生适应机制提供了宝贵的基因组资源。

20. Most gamers prefer single-player games (www.midiaresearch.com)

总结:大多数玩家偏好单人游戏,服务型游戏面临机遇与挑战

核心市场现状

  • 收入结构:AAA游戏市场的大部分收入来源于游戏内购,尤其是服务型游戏
  • 竞争环境:服务型游戏市场竞争极其激烈,处于饱和状态,吸引了玩家大量的时间和精力,新游戏难以突围。
  • 玩家偏好:尽管如此,53%的玩家仍更偏好单人游戏玩法。

服务型游戏的趋势与困境

  • 行业跟风:众多AAA开发商(包括那些以单人游戏闻名的)曾被推动追随服务型游戏的潮流,试图复制《堡垒之夜》、《英雄联盟》等的成功。
  • 失败案例:大量尝试以失败告终,例如:
    • 取消项目:世嘉的《Hyena》、PlayStation的《最后生还者 Online》。
    • 表现不佳的游戏:《漫威复仇者联盟》、《圣歌》、《巴比伦的陷落》、《红霞岛》。
  • 机会成本:这些工作室本可利用其擅长的单人游戏创造数亿美元收入,但资源被分散到风险更高的服务型游戏上。

单人游戏的机遇与优势

  • 持续成功:新的单人游戏持续创造销售记录,不仅限于《塞尔达传说》、《蜘蛛侠》等大IP,新IP如《艾尔登法环》(2500万份)和《黑神话:悟空》(2000万份)也取得巨大成功。
  • 玩家年龄与平台因素
    • 25岁以上玩家是单人游戏的核心目标群体,因为生活忙碌,更难保证服务型游戏所需的持续在线和时间投入。
    • 虽然25岁以下玩家更偏爱多人游戏,但他们中仍有30%-35%喜欢单人游戏。
    • 单人游戏的“一玩即走”特性更符合当下注意力经济饱和的环境,玩家更可能将其作为一种“度假”式的休闲选择。
  • 风险与成本考量
    • 单人游戏风险相对较低:在发行日历上更容易脱颖而出,不像服务型游戏需要与“永远在线”的竞争者争夺注意力。
    • 开发成本对比:虽然顶级AAA单人游戏(如《蜘蛛侠2》)开发成本已达数亿美元,但服务型游戏的开发和长期运营成本可能更高(例如《原神》开发1亿美元,每年运营需2亿美元)。
    • 战略建议:在宏观经济挑战下,发行商更应追求稳妥的“安打”,而非冒险追求可能失败的“全垒打”。将部分资源从竞争激烈的服务型游戏市场转向蓝海般的单人游戏领域是更可行的道路。

结论

报告的核心观点是,尽管服务型游戏主导了游戏支出和玩家注意力,但单人游戏市场存在被低估的、坚实的机会。对于许多发行商而言,回归或加强单人游戏开发是应对市场过饱和、成本上升和风险管控的战略方向。更深入的报告还分析了玩家尝试新游戏的动机、偏好的游戏主题等具体数据。

21. Perfctl: Stealthy malware targeting Linux servers (www.aquasec.com)

Perfctl:针对Linux服务器的隐蔽恶意软件

概述 本文揭示了一种在过去3-4年间活跃的Linux恶意软件“perfctl”,它通过主动寻找超过20,000种错误配置来攻击Linux服务器。任何连接到互联网的Linux服务器都可能面临风险。研究人员通过蜜罐监控和社区论坛发现了大量相关入侵事件,社区广泛称之为“perfctl恶意软件”。

核心特性与规避技术 该恶意软件极其隐蔽和持久,采用多种复杂技术:

  • 隐藏与静默:使用rootkit隐藏其存在;当检测到新用户登录时,会立即停止所有“高调”活动,进入休眠状态直至服务器再次空闲。
  • 通信:使用Unix套接字进行内部通信,使用TOR网络进行外部通信。
  • 自我复制与伪装:执行后会删除自身二进制文件,继续在后台作为服务安静运行;将自身从内存复制到磁盘的多个位置,使用具有欺骗性的名称(如sh, libpprocps.so, perfcc等)。
  • 持久化与提权:修改~/.profile脚本以确保持久化;尝试利用Polkit漏洞(CVE-2021-4034)提升权限。
  • 反分析:所有二进制文件均被打包、剥离和加密,以绕过防御机制并阻碍逆向工程。

攻击流程与影响

  1. 初始访问:通常通过利用漏洞(如CVE-2023-33246)或广泛存在的错误配置获得。攻击者使用一个包含近20,000个路径的目录遍历模糊测试列表,寻找暴露的配置文件和密钥。
  2. 负载投放与执行:从攻击者控制的HTTP服务器下载主负载(例如httpd)。执行后,主负载会从内存中复制自身到/tmp目录,并以执行它的进程名(如sh)保存,然后删除原始二进制文件以掩盖痕迹(“进程伪装”)。
  3. 功能组件释放
    • 释放一个rootkit(如libgcwrap.so),用于挂钩关键函数(如pam_authenticate, pcap_loop)以绕过认证、隐藏网络流量。
    • 释放加密货币矿工(XMRIG),消耗服务器CPU资源。
    • 释放被修改过的常用工具(如ldd, top, lsof, crontab),作为用户空间rootkit,用于隐藏恶意活动。
    • 在某些情况下,还会释放代理劫持软件。
  4. 持久化与通信:通过修改系统启动脚本、设置系统服务(如wizlmsh)等方式实现持久化。使用Unix套接字和文件(存储在/tmp目录下)进行内部状态管理,并通过TOR与外部C2服务器通信。
  5. 主要影响:主要影响是资源劫持。所有观察到的攻击中都运行了加密货币矿工,严重消耗系统资源。部分攻击还涉及代理劫持,利用受害者的网络带宽牟利。

检测与缓解 检测指标

  • 系统行为:CPU使用率异常飙升(尤其是在空闲时);在/tmp, /usr, /root等目录下发现可疑的二进制文件(如perfctl, sh, libpprocps.so);检查~/.profile/etc/ld.so.preload等文件是否被篡改。
  • 进程监控:发现从/tmp等非常规位置运行的、具有高资源消耗的可疑进程。
  • 网络流量:捕获到与已知恶意IP地址、加密货币矿池或代理劫持服务(如bitping.com, repocket.com)的TOR通信或连接。
  • 文件与进程完整性:检测系统工具(ldd, top等)是否被替换为恶意版本。

缓解措施

  • 及时修补:确保所有系统和应用程序(特别是面向互联网的服务如RocketMQ,以及已知漏洞如CVE-2021-4034)保持最新。
  • 权限控制:在/tmp, /dev/shm等可写目录上设置noexec选项,防止直接执行二进制文件;实施严格的权限管理和网络分段。
  • 服务最小化:禁用不必要的服务,特别是可能暴露于外部攻击的服务。
  • 部署运行时保护:使用能够检测rootkit、加密货币矿工和无文件恶意软件的高级反恶意软件和行为检测工具。

威胁情报

  • 基础设施:攻击涉及多个下载服务器IP地址(如46.101.139.173, 104.183.100.189),其中一些是先前被入侵的合法网站。
  • 感染规模:尽管攻击者针对全球数百万服务器进行了扫描,但实际受害者数量可能为数千。该活动在开发者社区中被广泛讨论,但此前缺乏深入的技术分析报告。

结论 Perfctl是一种复杂、高度隐蔽且持久的Linux威胁,专注于资源劫持。它利用广泛的错误配置和特定漏洞进行初始访问,并采用一系列先进的规避、持久化和rootkit技术来维持立足点。防御者需要结合系统监控、网络流量分析和严格的配置管理来检测和应对此类攻击。

22. The Heart of Unix (2018) (ericnormand.me)

Unix 核心思想

核心优势:可编程环境

Unix 是一个可编程环境。用户通过与 shell 交互,实际上是在编写可解释执行的程序。可以轻松编写 shell 脚本,将其放入 PATH 目录中并设为可执行,从而扩展系统功能。

Unix 哲学(引用道格·麦克罗伊)

  • 编写只做一件事并做好的程序
  • 编写可以协同工作的程序
  • 编写处理文本流的程序,因为文本流是通用接口

多语言集成

Unix 支持数十种语言的编译器或解释器。这些语言可以通过 shell 相互调用,并通过标准输入/输出进行管道连接,用户可以根据需要选择最适合的工具。

通用数据结构:文本流

Unix 提供了一个标准化的数据结构——文本流(字符序列)。文本简单灵活,可以通过分隔符(如换行符)划分为序列,进一步分割为列。

同像性(Homoiconic)

与 Lisp 类似,Unix 中的程序是文本文件,可以用 grepwc 等工具操作。这种代码即数据的特性增强了系统的可编程性。

协同效应

遵循 stdin/stdout 和文本流约定的程序能与计算机上已有的数千个程序协同工作,无需重复实现功能。

实际应用示例:博客系统

作者用文件系统存储内容,通过 Python 脚本调用外部程序(如 Haskell 编写的 Pandoc 进行 Markdown 渲染)生成最终输出,并使用其他工具(如 Ruby 的 s3sync)进行同步。体现了 Unix 工具链的组合能力。

历史局限性

设计妥协

Unix 诞生于资源受限的年代,许多设计(如将程序保存为文件、文件系统特性)是当时的实用选择,但如今显得陈旧。

主要缺陷

  1. 文件系统:功能有限,元数据少,缺乏 ACID 特性
  2. 终端:全文本界面,编辑原始,帮助功能不足,不透明
  3. 文本流:难以处理现代二进制格式和结构化文本(如 XML/JSON)

不当发展

  • 分层替代演进:现代发行版通过复杂守护程序(如权限管理)而非改进基础系统来提供新功能
  • 命令臃肿:大型单体程序破坏了工具组合的指数级协同优势

改进方向

  1. 编译优化:现代硬件可快速编译短小的 C 程序,无需预编译为二进制文件
  2. 增强语言互操作:利用 Unix 通用接口简化跨语言调用(如 Perl 的反引号)
  3. 演进标准接口:探索 stdin/stdout 之外的数据流模式(如发布/订阅)
  4. 结构化文本工具:开发处理 JSON 等格式的工具,使其融入 Unix 生态
  5. 终端现代化:在保持文本本质的前提下,开发可视化组件(如基于管道的缩略图查看器)
  6. 改进 Shell 语言:借鉴现代编程语言设计(高阶函数、类型派发等)

结论

Unix 是实用且历经考验的系统,其核心在于通过通用接口(文本流和约定)实现工具的协同组合。尽管存在历史局限,但其哲学思想(可编程、多语言集成、同像性)依然具有强大生命力。未来的发展应从改进核心接口出发,延续 Unix 的实用主义精神。

23. Robert Dennard, DRAM Pioneer, has died (spectrum.ieee.org)

IEEE Fellow 逝世讣告摘要

本文报道了多位IEEE Fellow的逝世消息,其中动态随机存取存储器 (DRAM) 的发明者罗伯特·丹纳德 (Robert Dennard) 是重点人物。

罗伯特·丹纳德 (Robert Dennard),91岁

  • 主要贡献:1967年发明了DRAM。这一突破性技术将每个数据位存储在一个由微小电容器和晶体管组成的单元中,取代了以往庞大、耗电的RAM组件,为低成本、高密度、商业化内存铺平了道路。到70年代初,DRAM已成为计算机标准配置,并驱动了早期个人电脑。
  • 其他成就:1972年提出了关于MOSFET器件缩放的理论(即“丹纳德缩放定律”),指出晶体管尺寸缩小时功耗可保持基本恒定,该理论影响深远。
  • 职业生涯:1958年加入IBM,1979年成为IBM Fellow,在IBM工作期间专注MOS技术、优化RAM和开发低压高性能电路。
  • 教育背景:1958年获得卡内基理工学院(现卡内基梅隆大学)电气工程博士学位。
  • 荣誉:曾获2009年IEEE荣誉奖章、2019年IEEE Robert N. Noyce奖章、2001年IEEE Edison奖章,1997年入选美国国家发明家名人堂。

理查德·P·舒尔茨 (Richard P. Schulz),87岁

  • 职业生涯:电力系统工程师,先后在通用电气和美国电力公司工作,专注于电力系统分析。
  • 贡献:著有或合著32篇关于电网测试可靠性的论文。
  • 教育背景:1959年获里海大学电气与机械工程学士学位,1966年获联合学院硕士学位。

C·戈登·贝尔 (C. Gordon Bell),89岁

  • 主要贡献:早期个人电脑开发者。在数字设备公司 (DEC) 参与设计小型机和分时计算机,并领导开发了VAX系列小型机。
  • 职业生涯:曾在DEC、恩西计算机公司、美国国家科学基金会以及微软等机构工作,研究重点包括计算机架构、图形超级计算机和远程呈现技术。
  • 教育背景:1957年获麻省理工学院电气工程硕士学位。
  • 荣誉:1992年获得IEEE约翰·冯·诺依曼奖章,1991年获得美国国家技术与创新奖章。

拉文·纳尼克·卡纳尔 (Laveen Nanik Kanal),92岁

  • 职业生涯:马里兰大学计算机科学教授(任职26年),同时是LNK公司的创始人兼总裁(30年),该公司专注于模式识别、图像处理和人工智能。
  • 教育背景:1960年获宾夕法尼亚大学电气工程博士学位。
  • 荣誉:国际模式识别协会会士,1992年获得该协会的King-Sun Fu奖。

H·乔尔·特鲁塞尔 (H. Joel Trussell),79岁

  • 职业生涯:信号与图像处理领域研究员,曾任《IEEE Proceedings》主编(2013-2018),并在北卡罗来纳州立大学任教40年。
  • 主要贡献:引入新的数学工具处理信号恢复问题,并为色彩成像研究建立了稳健的数学框架。
  • 教育背景:1976年获新墨西哥大学电气工程与计算机科学博士学位。

詹姆斯·西奥多·哈丁 (James Theodore Hardin),89岁

  • 职业生涯:曾就职于洛克希德公司、美国海军、普雷斯托莱特电气公司及创新应用公司 (IAC),担任过工程师、经理及首席工程师等职务。
  • 教育背景:1963年获布拉德利大学机械工程硕士学位。
24. Waymo and Hyundai enter multi-year, strategic partnership (waymo.com)

Waymo与现代汽车公司宣布达成一项多年期战略合作。合作第一阶段,双方将把Waymo第六代全自动驾驶技术(Waymo Driver)整合到现代汽车全电动IONIQ 5 SUV中,该车型将逐步加入Waymo One车队。

这些面向Waymo车队的IONIQ 5车辆将在美国佐治亚州的现代汽车集团Metafactory America(HMGMA)新电动汽车制造工厂组装,随后集成Waymo自动驾驶技术。双方计划在多年内大规模生产配备Waymo技术的IONIQ 5车队,以支持Waymo One业务的持续扩展。配备Waymo技术的IONIQ 5实车测试计划于2025年底前启动,并在此后逐步向Waymo One乘客开放服务。

双方高管均强调了合作的价值:Waymo联合首席执行官表示,现代的可持续发展理念和电动汽车路线图使其成为优秀伙伴;现代汽车公司总裁兼全球首席运营官指出,Waymo的技术正在提升运营区域的道路安全,而IONIQ 5是实现规模化部署的理想车型,并称此次合作是第一步,双方正积极探讨更多合作机会。现代汽车集团先进车辆平台部门负责人则指出,现代新成立了自动驾驶车辆代工业务,而行业领导者Waymo是首个协议的绝佳合作伙伴。

此外,交付给Waymo的IONIQ 5将进行特定自动驾驶适配改造,例如冗余硬件和电动侧滑门。该车型续航能力强,支持长时间运营;其800V架构具备行业领先的超快充电速度,可最大限度减少停运时间;宽敞的内部空间也为乘客提供了舒适的体验。

25. ESP8266 Analog Broadcast Television Interface (github.com)

ESP8266模拟广播电视接口概述

核心功能

  • 将ESP8266连接到天线(GPIO3/RX),可在模拟电视3频道上播放图像和视频
  • 利用I2S总线以80MHz输出信号,通过DMA缓冲区逐行传输数据
  • 信号在40MHz处发生镜像,例如60MHz信号会同时产生60MHz和20MHz的镜像

技术原理

  • 使用1408位长度的premodulated_table存储各种信号模式(如同步、色同步、颜色等)
  • 该长度确保信号与NTSC色度频率(3.579545 MHz)和3频道亮度中心频率(61.25 MHz)精确同步
  • 亮度信号通过61.25 MHz调制实现(强信号为暗,弱信号为亮)
  • 颜色信号通过3.579 MHz色度调制实现,每行开始的色同步脉冲用于同步和设置色度电平
  • 本质上是1位抖动DAC,在低于奈奎斯特频率下同时编码亮度和颜色,因此画质较差

代码结构

  • MayCbTables.h/c:行缓冲区状态机相关表
  • synthtables.c:信号编码的预调制表
  • video_broadcast.c
    • 设置DMA传输
    • 处理缓冲区空时的重新填充
    • 根据帧缓冲内容更改传输行类型
    • 包含所有调制逻辑和中断处理
  • user_main.c:包含各种演示屏幕的帧缓冲更新
  • custom_commands.c:NTSC特定命令(通过WebSocket的"CO"和"CV"命令)

演示屏幕模式

  1. 基本介绍屏幕(显示IP地址)
  2. ESP8266功能展示
  3. 帧缓冲复制测试
  4. 彩色线条绘制
  5. 基于矩阵的3D引擎演示
  6. 动态3D网格演示
  7. 项目GitHub介绍
  8. 16色球体颜色屏幕
  9. 4x4颜色色块(用于GUI颜色调试)

Web界面

  • 基于esp8266ws2812i2s的Web界面
  • 访问地址:http://192.168.4.1
  • 主要功能:
    • "NTSC"按钮控制演示切换
    • 颜色干扰功能(用于射频测试)
    • 交互式JavaScript webworker系统:可编写新颜色代码,实时生效
    • 提供DFT(离散傅里叶变换)参数调整,帮助理解信号特性

PAL兼容性

  • 通过启用OPTS += -DPAL(在user.cfg中)可播放PAL信号
  • 仅支持黑白PAL信号,色度信息仍为NTSC格式(类似NTSC50)

其他技术细节

  • 3D和文本渲染使用修改版的"rawdraw"库
  • 3D使用定点数运算(256为单位值,低8位为小数部分)
  • 项目包含YouTube演示视频(原始版和彩色版)
26. Biggest solar flare since 2017 erupts from sun and Earth is in the firing line (www.space.com)

2017年以来最强太阳耀斑爆发,地球正处其路径中

2024年10月3日,太阳释放了本太阳活动周期内最强大的耀斑——一次高达X9.05级的巨型爆发。此次耀斑峰值发生在美东时间上午8:10(格林尼治标准时间12:10),其辐射引发了非洲和欧洲(耀斑爆发时地球的向阳面)的短波无线电中断。

耀斑来源与伴随现象 此次耀斑源自太阳黑子群AR3842。该区域此前已在10月1日产生过一次强烈的X7.1级耀斑,并抛射出一团等离子体和磁场——即日冕物质抛射,该抛射物正在飞向地球。而10月3日的X9.05级耀斑后,也确认产生了一个正对地球方向的CME。

对地球的潜在影响

  1. 极光观测机会:预计这两波CME将在10月4日至6日期间撞击地球。CME携带的带电粒子(离子)与地球磁层相互作用,可能引发地磁暴,从而显著增强极光现象,为极光追逐者带来绝佳机会。
  2. 短波无线电中断:耀斑爆发时释放的辐射抵达地球,电离了高层大气。这改变了电离层的密度,使得用于远距离通信的短波无线电信号在通过时能量因与电子碰撞而减弱甚至被吸收,从而导致了欧洲和非洲上空的通信中断。

历史地位与耀斑分类 此次耀斑不仅是本周期最强,也是自2017年9月以来近七年间最强大的耀斑。2017年9月,上一个太阳活动周期的衰退期曾记录到X13.3和X11.8级耀斑。 太阳耀斑按强度分为A、B、C、M、X五类,X类为最强,每一类比前一类强大约10倍。X类耀斑还可通过数字进一步细分,数字越大越强。

监测与提示 空间天气多变且难以预测,后续影响需持续观察。建议通过专业网站(如NOAA空间天气预测中心)或相关应用程序(如“My Aurora Forecast & Alerts”或“Space Weather Live”)追踪空间天气状况,以获取极光观测预报和最新更新。

27. HTTrack Website Copier (github.com)

HTTrack Website Copier 是一款离线浏览器工具,用于将网站从互联网下载到本地目录,支持递归获取HTML、图像及其他文件,构建完整的站点镜像。其主要功能包括保持原始网站的相对链接结构,使用户能在本地浏览器中通过链接像在线一样浏览;支持更新已有镜像站点、恢复中断的下载;具备完全可配置性,并集成帮助系统。HTTrack 有两个版本:WinHTTrack 适用于 Windows 2000/XP/Vista/Seven 系统,WebHTTrack 适用于 Linux/Unix/BSD 系统。官方网站为 http://www.httrack.com/,编译过程涉及通过 Git 克隆仓库、配置、构建及安装步骤。

28. ESP32: leaving love notes and entering demoscene territory (2022) (theor.xyz)

ESP32:从留便签到进入演示场景领域

项目起源与初衷

作者最初计划使用ESP32(240MHz、512K RAM)和SSD1306单色显示屏(128x64)制作一个简单的消息板,通过WiFi远程更新消息,用于给女友留便签。消息最初从GitHub获取,后改为存储在ESP32的EEPROM中,通过电容式按钮启动内置Web服务器修改消息,省去了启动时的连接等待时间。设备休眠时功耗低于5μA,通过电容按钮唤醒。

开发效率优化与尝试

随着动画效果增加,固件烧录时间增至40秒以上,影响迭代效率。作者尝试了两种方案:

  1. OTA(空中升级):利用WiFi或蓝牙进行固件更新,通过AsyncElegantOTA库实现。
  2. WASM3运行时:尝试在ESP32的SPIFFS文件系统上运行WebAssembly解释器,使用AssemblyScript编写代码,实现类似“热重载”的开发流程,但手动绑定较为繁琐。

模拟器与演示场景工具集成

  • SDL2模拟器:创建了桌面端模拟器,加速开发与调试,虽牺牲性能精度但大幅提升迭代速度。
  • GNU Rocket集成:引入演示场景的“同步追踪器”工具,允许在编辑器中通过时间轴控制动画属性(如精灵位置),导出的数据存储于SPIFFS供运行时使用。作者还改进了Ground Control编辑器以提升可用性。

显示升级与图形优化

从单色屏升级为SSD1351彩色OLED(128x128,16位色)。切换至TFT-eSPI库并使用精灵类作为后备缓冲区。为解决资源限制:

  • 使用Aseprite进行像素艺术创作,采用4位索引位图(每张位图16色调色板)。
  • 开发工具支持调色板交换与循环(如模拟昼夜变化)。
  • 实施RLE压缩与增量编码:将单个背景图像从9879字节压缩至2279字节(23%),动画帧间平均仅需约100字节。

扩展探索

  • 音频:试验ESP8266Audio库,支持.mod文件,通过Adafruit扬声器输出。
  • 硬件封装:使用CadQuery(Python CAD库)设计并激光切割亚克力前面板。

结论:关于需求蔓延与探索

项目从一个简单便签板逐渐扩展为涉及演示场景、自定义工具链、CAD设计等多领域的复杂系统。作者认为在学习过程中,需求蔓延可以拓宽知识广度,但需注意风险控制。最终项目成功落地于厨房,作者在I2C/SPI通信、电容按钮防抖、调色板循环等方面积累了经验。

29. Show HN: A tool for creating chord charts on the go (tiniuc.com)

Chord Chart Memo:即兴创作和弦图表的工具

工具简介

Chord Chart Memo 是一款面向音乐家和词曲作者的工具,允许用户仅需两次点击即可输入和弦。图表可以快速输入和修改,并完全离线保存。该应用还便于转调图表并在不同调性中工作,支持用文本标签为图表添加段落标题或演出备注。

核心功能

  • 快速和弦输入:内置常用和弦,支持斜杠和弦(标记转位、低音线或简化复杂和弦)。
  • 直观键盘设计
    • 音符键盘按五度圈排列12个音符,第一行显示所选调性的大调和弦,第二行显示小调和弦。
    • 和弦键盘按大调、小调和属和弦分列,便于快速查找。
  • 无缝转调:改变调性时,音符按钮的排列关系保持一致,确保相同和弦进行的操作动作不变(例如 I-IV-VIm-V7 在不同调性中操作相同)。
  • 完全离线:所有数据本地保存,无需网络连接。

开发背景

作者因观察到音乐人常用手机便签费力输入和弦、因信号问题无法访问在线图表、或需手动转调而困扰,决定开发此工具。项目始于2022年圣诞节,经历1.5年业余开发,最终于2024年发布。

技术实现

  • 使用 Godot 游戏引擎 开发(包括移动平台)。
  • 作者强调 Godot 对业余开发的友好性:高级脚本语言、跨平台一致性界面、直观的 GUI 工具和有效的实时调试功能,即使间隔数月也能快速恢复开发。

开发经验与教训

  • 时间投入超预期:尽管应用功能简单,但实际开发耗时较长,而真实演出中的使用反馈提升了设计质量。
  • 用户测试至关重要:通过20位音乐人的测试获得关键反馈,优化了界面直观性(如调整按钮标签、高亮关键区域)。
  • 选择合适工具:Godot 的易用性和持续性支持是项目最终完成的关键因素。
30. Show HN: kew – A Terminal Music Player for Linux (github.com)

kew 终端音乐播放器摘要

kew (/kjuː/) 是一款适用于 Linux 系统的终端音乐播放器。其核心设计理念是提供一种简洁、无干扰且尊重隐私的本地音乐播放体验,避免算法推荐和数据收集。

主要功能与特点

  • 智能播放列表创建:支持通过命令行输入部分标题、专辑或艺术家名称来搜索音乐库,并自动生成播放列表。
  • 隐私保护:默认不收集用户数据(但可通过配置在 Discord 中显示状态)。
  • 视觉呈现:在支持 Sixel 的终端中可显示全彩专辑封面;内置可自定义的音频可视化器。
  • 播放列表管理:支持在播放列表中添加、移除和重新排列歌曲,实现无间隙播放。
  • 丰富的格式与功能:支持多种音频格式(MP3, FLAC, M4A, OPUS 等);支持通过 MPRIS 与桌面环境集成;支持通过 .lrc 文件、嵌入标签(SYLT, Vorbis)显示歌词;支持回放增益和主题/颜色自定义。

安装方式

可通过包管理器、Homebrew 安装,也提供了针对 NixOS、Artix、Fedora 等发行版的特定安装方法,或遵循手动安装指南。

基本使用

命令行参数直接决定播放内容。例如:

  • kew:打开库浏览视图。
  • kew all:随机播放库中所有歌曲。
  • kew moonlight son:查找并播放“月光奏鸣曲”。
  • kew beet:播放“beethoven”目录下的所有音乐文件。
  • kew song <歌曲名>kew list <播放列表名>:按类型查找。
  • kew play "<路径>":播放指定路径的文件或文件夹。
  • kew --help:查看帮助。
  • 其他选项包括 --nocover(不显示封面)、--noui(隐藏界面)、-q(播放完退出)等。

键盘快捷键

分为基本和高级两类。

  • 基本:空格键(播放/暂停)、方向键或 h/l(切换曲目)、+/-(音量)、Enter(播放/入队)、Backspace(清空列表)、Delete(移除条目)、r(循环模式)、s(随机播放)、F2-F6 或 Shift+Z-X-B(切换不同视图)、i(循环颜色来源)、t(循环主题)。
  • 高级:u(更新库)、m(显示歌词)、v(切换可视化)、b(切换 ASCII 封面)、a/d(搜索/快进)、x(保存当前播放列表为 .m3u 文件)、.(收藏当前歌曲到 favorites.m3u)。

配置与自定义

  • 配置文件位于 ~/.config/kew/(Linux)或 ~/Library/Preferences/kew/(macOS)。
  • 可在 kewrc 文件中自定义快捷键。
  • 支持主题系统,可在 themes 目录下管理主题文件,并通过 kew theme <名称> 命令应用。

其他功能

  • 可视化:需单独安装 Chroma 应用以实现。
  • 歌词:自动从匹配的 .lrc 文件、Vorbis 注释元数据(FLAC/OGG/OPUS)或 MP3 文件中的 SYLT 标签读取。
  • 播放列表:通过 kew list <名称> 加载;播放中按 x 可导出;按 . 可添加至收藏列表。

项目说明

  • 项目已迁移至 Codeberg 进行开发和问题追踪。
  • 采用 GPL 许可证。
  • 致谢了多个开源项目依赖,如 Chafa、Chroma、TagLib 等。
31. Why Is Light So Fast? (profmattstrassler.com)

文章标题为“为什么光如此快?”,但内容主要围绕能量守恒定律和科学方法的讨论展开。读者Joseph的评论中,他主张能量和质量一直存在,真空或以太是能量或质量的一种形式(例如暗物质),并以神学视角将波粒子视为智能存在的有组织力量。他提到了“所有核子的核子”等概念。

博客作者对此回应,纠正了科学误解,强调物体并非能量的形式,能量和质量是物质的属性而非物质的成分。作者请求读者避免在本博客进行宗教推测,特别是那些缺乏实验基础的科学猜想,因为本博客专注于科学方法,只能回答有限的问题,而更大的真理、宗教或形而上学问题不属于科学范畴。

另一条评论提到,在广义相对论中,守恒定律更为复杂,涉及希尔伯特、克莱因、爱因斯坦和诺特的讨论,其中诺特的贡献使这一话题变得清晰。

32. Computer scientists combine two 'beautiful' proof methods (www.quantamagazine.org)

计算机科学家结合两种“优美”的证明方法

数学证明的传统方式是基于基本假设进行逐步推导,直至得出结论。然而,自20世纪80年代和90年代起,计算机科学家重新定义了证明的概念,发展出众多新方法,其中两种尤为突出:

  1. 零知识证明:能够在不透露具体原因的情况下,使质疑者相信某个陈述是真实的。
  2. 概率可检验证明:即使只检查证明的极小片段,也能让读者确信整个证明的真实性。

这两种概念被视为理论计算机科学中最优美的构想。研究人员曾尝试结合它们,但在20世纪90年代末仅取得了部分成功,未能将两者的理想版本融合。直到最近,剑桥大学计算机科学家Tom Gur与其他两位研究者历经七年努力,终于针对一类重要问题成功实现了这两种理想证明的结合。

这一成果解决了一个长期困扰研究者的著名开放性问题,被认为是一个非常重要的突破。

背景与发展

验证与NP问题:20世纪70年代初,计算机科学家开始形式化研究计算问题的难度。许多问题具有一个关键特性:若找到有效解,可以轻松说服验证者其有效性。这类问题属于NP类。例如地图三着色问题:验证一个着色方案是否有效相对容易,但找到一个方案可能很困难。

零知识证明:由Shafi Goldwasser、Silvio Micali和Charles Rackoff于1985年提出。它通过交互式过程和随机性来证明陈述的真实性,同时保护隐私信息(如扑克牌的具体点数)。例如,证明地图可三着色而不泄露具体着色方案:证明者着色后遮盖区域,验证者随机选择边界,证明者揭开相邻区域展示不同颜色;通过多轮随机变换颜色方案,证明者能以极高的概率说服验证者,同时隐藏实际方案。

概率可检验证明:由Sanjeev Arora和Shmuel Safra等人在1992年定义。它是非交互式的,但证明本身很长。关键创新在于,验证者只需随机检查证明的极小部分片段就能确信整个证明的有效性。PCP通过将普通证明中的任何错误“均匀扩散”,使得任何随机片段都可能暴露出错误。随机性再次至关重要,以确保证明者无法预测验证者会检查哪些部分。

融合过程:研究人员首先有了用于NP问题的交互式零知识证明。随后发现类似证明可用于验证更困难问题(如NEXP类)的解。最后,他们将这些证明转化为非交互式的PCP,实现了验证速度的飞跃。PCP定理(关于NP问题验证速度的理论极限)被认为是理论计算机科学的重大成就之一。

33. The real data wall is billions of years of evolution (dynomight.substack.com)

本文探讨了人工智能发展可能面临的“数据墙”问题,并对“人类能从较少数据中高效学习是因为利用了视觉等其他感官数据”的常见观点提出质疑。作者认为,人类智能的真正基础并非来自个人生命历程中的有限数据,而是源于数十亿年进化所积累的、蕴含在DNA和细胞物理结构中的庞大信息。

文章主要论点包括:

  1. 人类与AI的数据量对比:一个受过良好教育的40岁人类,一生接触的单词量(约5×10^8个)远少于当前大型语言模型的训练数据(超过10^13个),相差约20万倍。
  2. 反驳“感官数据关键论”:通过列举先天性失明、失聪、无痛觉(CIPA)以及海伦·凯勒等案例,说明人类即使缺乏某种感官或早期感官输入,仍能发展出高度智能,表明视觉、听觉等特定感官数据并非人类高效学习的关键。
  3. 进化提供信息的重要性
    • 人类DNA包含约60亿比特信息,而人一生语言数据仅包含约12亿比特有效信息。DNA所承载的进化信息总量可能超过个人一生的文本数据。
    • 更关键的是,进化提供的信息不仅存在于DNA序列中,还体现在解读DNA所需的细胞物理结构等“具身信息”中,这部分信息量巨大且难以量化。
  4. 双层优化理论:人类智能是“双层优化”的产物。外层是进化,在无数代生命中对学习算法进行优化;内层是个体生命,使用进化赋予的学习策略从经验中学习。相比之下,AI的外层优化由人类工程师进行,其迭代次数远少于进化过程,且容易在有限数据集上过拟合。
  5. 核心结论:作者并非断言AI必将遇到无法逾越的数据墙,也未否定视觉数据或算法进步的潜在价值。而是强调,直接论证这些因素的作用比仅以人类幼崽的学习能力作为类比更有说服力。人类高效学习的能力很可能依赖于进化赋予的一系列极其复杂、交互作用的“策略”,其可复制性有待商榷。
34. Correcting the record for Continue and PearAI (www.ycombinator.com)

关于继续(Continue)与PearAI事件的记录更正

事件背景与YC立场转变
YC(Y Combinator)总裁Garry Tan于2024年10月发文,承认此前对YC旗下初创公司PearAI的支持存在失误。PearAI因在开源项目处理上不当(尤其是对Continue项目的分叉方式)受到网络批评。Garry Tan表示,出于维护YC公司的本能,他在未了解全部事实前支持了PearAI,但随后认定批评合理,并与PearAI团队合作纠正问题。目前PearAI已道歉、移除相关代码仓库并致力于弥补错误。

对Continue项目的澄清
Garry Tan明确澄清了此前TechCrunch报道中的错误信息:

  1. Continue并非VS Code的分叉:它是独立开发的项目,作为VS Code和JetBrains的扩展程序,可从各平台应用商店直接安装。
  2. 开源社区核心地位:Continue围绕amplified.dev社区构建,强调基于LLM的编码工具将成为关键基础设施,其生态支持所有开发者工作流,且依赖开发者协作。开源被视作科技初创企业的生命线,行业对开源建设者存在责任。

后续措施与致歉
Garry Tan个人向Continue创始人、YC社区及开源社区致歉,承认回应不够审慎。他感谢Continue联合创始人Ty Dunn和Nate Sesti通过清晰沟通为开源社区树立榜样,并强调YC将持续支持以利他为宗旨、服务开源开发者的企业。

(注:Garry Tan为YC现任总裁兼CEO,此前联合创办Initialized Capital,并作为Posterous联合创始人经历YC 2008夏季批次。)

35. Cox slows Internet speeds in entire neighborhoods to punish any heavy users (arstechnica.com)

Cox通信公司因部分用户被认为“过度使用”带宽,正在对整个社区实施互联网上传速度限制。此举同时惩罚了重度用户及其邻居。

一名居住在佛罗里达州盖恩斯维尔的客户Mike,每月支付150美元用于1Gbps下载、35Mbps上传的服务,并额外支付50美元购买“无限数据”,以超过Cox每月1TB的数据上限。他的月度数据使用量在8TB至12TB之间,主要用于凌晨1点到8点之间的计划性设备备份和通过加密P2P协议进行数据共享。

尽管Mike的用量四年来一直保持类似水平,但Cox在五月中旬突然标记他为“过度使用”。公司先后通过电话、语音邮件和电子邮件警告他,称其“异常高”的上传用量影响了整个社区的网络,并违反了其《可接受使用政策》,威胁将在五天内终止其服务。

随后,Cox将Mike所在社区千兆下载计划的上传速度从35Mbps强制降至10Mbps,有效期至2020年7月15日。Cox向Ars Technica证实,已在美国多个社区实施此类全社区速度限制,并表示这是为了“通过临时增加或维持下载速度并改变部分服务层级的上传速度,来改善整个社区的性能”。公司未说明触发此类限制的具体用户数量或数据阈值。

Cox为其措施辩护,称其网络在疫情期间“总体表现良好”,全美28,000个社区节点中,98%至99%即使在高峰使用期间也具备足够容量。公司表示,只有少数社区中的个别“过度用户”(使用量达到普通家庭的100-200倍)导致了拥堵。Cox认为10Mbps的上传速度对“绝大多数客户”足够维持正常使用。

在压力下,Mike被迫将夜间上传速度限制在400kbps,月使用量降至2.1TB。他的账单因疫情期间Cox暂时免除无限数据费用而有所降低,但公司已通知其“一年期介绍费率”将结束,未来无限数据服务月费将涨至175美元。

文章指出,Cox作为私营公司,未公开网络升级支出。在联邦通信委员会(FCC)废除网络中立规则和公共运营商监管后,包括康卡斯特、美国电话电报公司(AT&T)和宪章通信在内的主要ISP已减少网络投资。尽管如此,Cox表示会持续监控网络,并在节点接近拥塞时加速升级计划,如拆分节点、增加光纤等。

36. US Dept of Energy announces $1.5B in electric grid improvements (www.upi.com)

美国能源部于周四宣布,将投资15亿美元用于扩大电网传输建设,以提升电网可靠性和应对不断增长的电力需求。此次投资由拜登-哈里斯政府的两党基础设施法案提供资金,将支持四项主要传输项目,这些项目旨在增强电网的可靠性与韧性、缓解昂贵的传输拥堵,并为数百万美国人提供负担得起的能源。

具体项目包括:缅因州的Aroostook Renewable Project、俄克拉荷马州的Cimarron Link、首次将德州电网连接到美国东南部电力市场的Southern Spirit项目,以及新墨西哥州的Southline项目。这些项目将建设近1000英里新的电力传输线路,新增7100兆瓦容量,覆盖路易斯安那、缅因、密西西比、新墨西哥、俄克拉荷马和德克萨斯六个州。预计将创造9000个高薪就业岗位。

能源部同时发布的国家传输规划(National Transmission Planning,NTP)研究,作为长期规划工具,指出大幅扩展整个美国大陆的传输系统,将带来最大电网效益,并为全国电力系统在2050年前节省2700亿至4900亿美元。NTP研究旨在加强和鼓励区域间规划,但并不替代行业规划或明确指定应建设的具体线路,而是为行业规划者提供可行的项目与广泛未来场景下客户受益的机会。

37. Depth Pro: Sharp monocular metric depth in less than a second (github.com)

Depth Pro: 一秒钟内的锐利单目度量深度估计

Depth Pro 是一个用于零样本单目度量深度估计的基础模型。它能生成高分辨率深度地图,具有卓越的锐度和高频细节,预测结果为度量尺度(绝对尺度),且不依赖相机内参等元数据。该模型速度快,在标准 GPU 上仅需 0.3 秒即可生成 225 万像素的深度地图。

这些特性由多项技术贡献支持:

  • 一个高效的多尺度视觉变换器,用于密集预测。
  • 一种结合真实和合成数据集的训练协议,以实现高度量精度和精细边界追踪。
  • 专门的评估指标,用于估计深度地图的边界准确性。
  • 从单张图像进行最先进的焦距估计。

仓库中的模型是参考实现,经过重新训练,性能接近论文报告但不完全相同。入门时,建议使用虚拟环境(如 miniconda)安装 depth_pro 包,并通过脚本 get_pretrained_models.sh 下载预训练权重。模型可通过命令行脚本 depth-pro-run 或 Python 模块 depth_pro 运行,包括加载模型、预处理图像和执行推理。

评估方面,提供了边界指标,位于 eval/boundary_metrics.py,可用于深度数据集或掩码数据集。相关论文引用格式和许可证条款已提供,代码基于开源贡献构建。

38. Show HN: Screensavers for your terminal (Bevy/Ratatui) (github.com)

终端屏保工具 ttysvr

这是一个为终端打造的屏保程序,使用 Bevy 引擎和 Ratatui 库开发。它可以在终端中提供视觉动画效果。

核心功能

  • 立即启动:在任何 shell 中均可直接运行并启动屏保。
  • 闲置触发:设置一段时间无操作后自动激活屏保(此功能当前仅支持 Zsh)。

技术基础

该项目基于 bevy_ratatui_camera 插件,该插件允许使用 Ratatui 和 ratatui-image 将 Bevy 应用程序渲染到终端。

安装方式

支持多种包管理器:

# cargo
cargo install --locked ttysvr
# homebrew
brew install cxreiff/tap/ttysvr
# arch linux
pacman -S ttysvr

注意:在 Linux 上通过 cargo 安装或从源码构建时,可能需要先根据 Bevy 仓库的文档安装系统依赖。

使用方法

  • 立即启动屏保ttysvr [VARIANT] [SUBVARIANT]。若不指定变体,则随机选择。
  • 设置闲置后触发eval \ttysvr [VARIANT] --init [DELAY]`,其中 DELAY` 为秒数。
  • 取消闲置触发eval \ttysvr --cancel``。

注意:设置和取消功能需使用 eval 和反引号包裹,因为其通过设置当前 shell 的 TMOUT 环境变量实现。

屏保样式

提供多种视觉变体:

变体 子变体 描述
bubbles - 彩色气泡在屏幕中弹跳。
logo dvd, tty 类似 DVD 播放器的跳动标志。
maze brick, hedge 随机生成的 3D 迷宫。

兼容性

  1. 闲置触发功能:仅兼容 Zsh。开发者欢迎贡献支持其他 shell 的方案。
  2. 终端要求:需支持 24位真彩色 且渲染高效。已验证兼容的终端包括:Alacritty、Kitty、WezTerm、iTerm2(主要在 macOS 和 Linux 环境)。
  3. SSH:支持在 SSH 会话中运行,但功能测试尚不充分,使用者可通过 issue 反馈问题。
39. IRS Direct File adds 12 additional states, covers more tax situations in 2025 (www.irs.gov)

美国国税局宣布,免费电子报税服务"Direct File"将在2025报税季进行重大扩展。该服务将覆盖的州数量从上年的12个翻倍至24个,并支持更多税务情况,使得符合使用条件的纳税人数量大幅增加。

一、 覆盖范围与资格扩大

  • 州别扩展:2025年,24个州的纳税人可使用Direct File,包括上年的12个试点州(亚利桑那、加利福尼亚、佛罗里达等)以及新加入的12个州(阿拉斯加、康涅狄格、爱达荷等)。
  • 受益群体:这些州内超过3000万纳税人将符合使用资格。国税局表示,未来可能还有更多州在2025年加入,并已有州表达了2026年参与的意向。
  • 支持的税务情况:在上年试点的基础上,2025年的Direct File将支持更多收入类型和税收抵免。
    • 新增收入类型:超过1,500美元的利息收入(1099表)、退休收入以及阿拉斯加居民报告的永久基金股息。
    • 新增税收抵免:儿童及抚养人护理抵免、保费税收抵免、老年人及残疾人抵免、退休储蓄供款抵免。
    • 新增扣除项目:健康储蓄账户扣除。

二、 服务功能改进

Direct File是一个可在手机、电脑等设备上使用的网页服务,通过问答形式引导纳税人逐步完成联邦税务申报。

  • 新功能:2025年将引入新的聊天机器人,帮助用户检查使用资格。
  • 持续服务:将继续提供英语和西班牙语的实时在线客服支持,并新增身份验证选项,以便客服提供更详细的信息。
  • 流程优化:纳税人完成联邦申报后,系统将自动引导至州税务工具以完成州税申报。国税局强调,用户体验、准确性以及确保纳税人获得应享税收抵免是未来的核心关注点。

三、 在税务系统中的角色定位

Direct File在2024年试点期间已被超过14万纳税人使用,国税局在全面评估后,于2024年5月宣布将其作为永久性报税选项。

  • 满足需求:该服务的推出回应了全国范围内对免费电子报税选择的强烈需求。试点期间,许多不在试点州的纳税人也积极寻求了解或使用该服务。
  • 生态互补:国税局强调,Direct File是众多报税选项之一,将与税务专业人士、商业报税软件等现有选项互补。其目标是加强整个免费报税体系,包括已运行二十年的“免费报税”计划以及志愿者协助报税项目。
41. Please Don't Make Me Download Another App (www.theatlantic.com)

文章指出,智能手机应用程序已从昔日的创新承诺演变为如今的生活负担。作者通过个人经历展示了应用程序的泛滥程度:手机中装有139个应用,涵盖购物、餐饮、出行、健康、育儿、工作等生活方方面面。即使在结账时,仍需临时下载商店应用以使用优惠券。各类支付应用(Venmo、Zelle等)也让选择变得复杂。

应用程序的初衷是合理的:它们取代了笨拙的移动端网站,提供更简洁、定制化的体验,帮助商家与客户建立直接联系,并催生了基于位置的服务等新功能。然而,应用程序逐渐变得“官僚化”,从高效便利的工具演变为嵌入日常生活的强制性存在。其弊端日益显现:

  1. 泛滥与碎片化:不同场景需不同应用(如停车应用因地而异,流媒体应用如Hulu被整合进Disney+)。
  2. 复杂性增加:本应简化的任务(如停车)因应用功能繁琐、登录问题、系统自动卸载未常用应用等而变得麻烦。
  3. 数据收集:应用成为公司收集用户位置、联系人、健康等大量数据的渠道。
  4. 强制依赖:许多日常活动(值机、购物结账、学校联络、体育活动管理)必须通过特定应用完成,用户别无选择。

尽管应用数量增长已超出逻辑与实用范畴,但作者认为这种“应用末日”难以逆转,因为当代生活的每个角落都已被应用殖民,新的责任与需求仍会不断催生更多应用。

42. Biblical plant with medicinal properties resurrected from 1,000-year-old seed (www.cnn.com)

文章摘要

一项科学研究成功地从一颗约有1000年历史的古种子中培育出一种已灭绝的树木。这颗保存完好的种子于20世纪80年代在耶路撒冷北部犹大沙漠的考古挖掘中出土。由医生Sarah Sallon领导的团队于2010年将其种植,并命名为“Sheba”。

通过碳14测定,该种子年代约为公元993年至1202年。种子成功发芽并生长为一棵近10英尺高的树。基因测序确认其属于乳香树属,但与已知物种均不匹配,表明它可能是一个曾生活在犹大沙漠周边地区的已灭绝物种。

研究团队最初推测该树可能是圣经及其他古文献中提到的“基列香膏”或“犹大香脂”的来源,这是一种历史上极具价值的香料树脂。然而,该树从未散发香味,植物化学分析也未检测到芳香化合物。相反,研究人员在其树脂、树叶和树枝中发现了已知具有药用价值的化合物,包括可能具有抗癌特性的“古吉甾醇”。因此,研究结论认为该树更可能是古文献中提到的具有药用功效的“tsori”香膏的来源,而非香料。

由于该树至今尚未开花结果,研究人员还无法完全确定其物种。专家指出,单颗种子能在如此长时间后成功萌发极为罕见,这为种子保存带来了希望。相关研究已发表于《通讯·生物学》期刊。