2天前
|
|
|
111
## 今天 Hacker News 社区聊了啥? NO.20250730
今天的日报信息量爆炸!既有 Oxide 融资 1 亿美元,押注软硬件一体化的大动作,又有脑洞大开的 DIY 灭蚊桶,教你低成本环保灭蚊。更有堪察加半岛的 8.8 级地震预警,提醒大家注意安全!想知道科技大佬听什么歌?ChatGPT 学习模式怎么玩?还有 Rust 写 OS、C 结构体优化等硬核技术分享!干货满满,速速点击阅读全文,别错过任何精彩内容!

---
## Oxide 完成 1 亿美元 B 轮融资,加速软硬件一体化发展
Oxide 完成 1 亿美元 B 轮融资,由 USIT 领投,现有投资者跟投,这笔资金将用于扩大规模,满足客户对 Oxide 产品的需求。Oxide 致力于通过软硬件协同设计,为企业提供现代化的本地部署云解决方案。
文章指出,Oxide 的目标是重塑整个软硬件堆栈,以满足本地部署云的需求,并建立一家大型、持久的上市公司。早期,许多投资者对 Oxide 的市场前景持怀疑态度,但 Eclipse Ventures 慧眼识珠,看到了软硬件协同设计的价值,并支持 Oxide 开始构建产品。Oxide 自主设计了主板、微控制器操作系统、平台支持软件、宿主机虚拟机、交换机、集成存储服务和控制平面,旨在消除传统方案的复杂性和安全漏洞。经过两年的努力,Oxide 成功交付了首个系统,并不断根据客户反馈进行改进。客户对 Oxide 的透明度表示赞赏,他们通过播客、RFD、文档和源代码了解 Oxide 的产品。USIT 对 Oxide 的愿景表示认可,并认为 Oxide 能够满足大型、重要的市场需求。这笔融资将帮助 Oxide 扩大生产规模、系统规模和运营规模,并扩展产品路线图。
评论区中,有用户表达了对 Oxide 的支持,并分享了自己最初的疑虑和转变。该用户最初认为 Oxide 的产品过于高端,且缺乏互操作性,但后来意识到 Oxide 能够满足快速计算和离散计算的需求。
- 原文: [Our $100M Series B](https://oxide.computer/blog/our-100m-series-b)
- Hacker News: [https://news.ycombinator.com/item?id=44733817](https://news.ycombinator.com/item?id=44733817)
- 作者: spatulon
- 评分: 247
- 评论数: 119
- 发布时间: 2025-07-30 21:17:28
---
## 自制灭蚊桶:低成本、环保的灭蚊妙招
本文介绍了一种名为“灭蚊桶”的DIY灭蚊方法,通过简单的材料和步骤,就能有效减少蚊子滋生,让你重享户外乐趣。这种方法不仅成本低廉,而且避免了化学喷雾剂对环境和有益昆虫的危害。
文章详细讲解了如何制作灭蚊桶。首先,准备一个3-5加仑的桶,加入半桶水,再放入一些腐烂的树叶、土壤或堆肥,并放置几根树枝供益虫逃生和蚊子产卵。静置几天后,加入含有苏云金杆菌(BT)的灭蚊片(如MosquitoDunks®),这种细菌对蚊子幼虫有毒,但对宠物和野生动物无害。文章还提到,使用非氯化水(如除湿机冷凝水)效果更佳,因为蚊子更喜欢无氯环境。
文章解释了灭蚊桶的工作原理。蚊子会在桶中产卵,幼虫孵化后以桶内的有机物为食,同时也摄入灭蚊片中的BT细菌,最终死亡,从而减少成年蚊子的数量。通常情况下,一个月左右就能看到效果。相比之下,商业灭蚊喷雾不仅价格昂贵,效果有限,还会杀死其他有益昆虫,对环境造成破坏。因此,自制灭蚊桶是一种更经济、更环保的选择。
- 原文: [Try the Mosquito Bucket of Death](https://www.energyvanguard.com/blog/try-the-mosquito-bucket-of-death/)
- Hacker News: [https://news.ycombinator.com/item?id=44733888](https://news.ycombinator.com/item?id=44733888)
- 作者: almuhalil
- 评分: 81
- 评论数: 51
- 发布时间: 2025-07-30 21:24:10
---
## 通过马尔可夫链解决问题:JSTOR 文章解析
本文探讨了如何通过构建合适的马尔可夫链来解决问题,并以概率论中的经典案例和作者的研究为例,阐述了马尔可夫链在问题解决中的应用。
文章的核心观点是,解决问题的关键往往在于找到一个合适的马尔可夫链模型。作者通过一系列例子,包括耦合、相关不等式和渗流等,展示了如何巧妙地运用马尔可夫链来分析和解决各种问题。马尔可夫链是一种随机过程,其未来状态只取决于当前状态,而与过去状态无关。这种特性使得它在模拟和预测复杂系统的行为方面非常有用。
文章提到,解决问题的过程可以被看作是“烹饪”一个合适的马尔可夫链。这意味着我们需要根据问题的特点,精心设计状态空间和转移概率,以便能够有效地捕捉问题的本质。例如,在研究渗流现象时,我们可以将网络中的节点看作是马尔可夫链的状态,而节点之间的连接则决定了状态之间的转移概率。通过分析这个马尔可夫链的性质,我们可以了解渗流发生的条件和规律。
此外,文章还强调了耦合技术在马尔可夫链分析中的重要性。耦合是指同时构造两个或多个马尔可夫链,并使它们在某个时刻达到相同的状态。通过耦合,我们可以比较不同马尔可夫链的行为,从而获得关于系统性质的 insights。
总而言之,这篇文章深入浅出地介绍了马尔可夫链在问题解决中的应用,并鼓励读者尝试运用这种强大的工具来分析和解决各种实际问题。它不仅对概率论和统计学的研究者有参考价值,也对其他领域的科研人员和工程师具有启发意义。
- 原文: [Problem Solving Is Often a Matter of Cooking Up an Appropriate Markov Chain](https://www.jstor.org/stable/41548580)
- Hacker News: [https://news.ycombinator.com/item?id=44733341](https://news.ycombinator.com/item?id=44733341)
- 作者: Alifatisk
- 评分: 48
- 评论数: 11
- 发布时间: 2025-07-30 20:29:52
---
## 2025年堪察加半岛8.8级地震
美国地质调查局(USGS)发布了关于2025年7月29日发生在俄罗斯堪察加半岛的8.8级地震的报告。这次地震震中位于北纬52.530°,东经160.165°,震源深度20.7公里。
报告提供了包括交互式地图、区域信息、震感报告、烈度图、PAGER 警报、地表破坏评估以及技术细节等详细信息。用户可以通过 USGS 网站提交震感报告,参与到公民科学中。
根据ShakeMap估算,地震烈度达到VIII级,PAGER系统评估认为可能出现重大经济损失和人员伤亡。报告还包括了关于地震可能引发的滑坡和土壤液化的评估。此外,美国海啸预警系统发布了海啸预警,建议访问Tsunami.gov获取最新信息。
- 原文: [M8.7 earthquake in Western Pacific, tsunami warning issued](https://earthquake.usgs.gov/earthquakes/eventpage/us6000qw60/executive)
- Hacker News: [https://news.ycombinator.com/item?id=44729865](https://news.ycombinator.com/item?id=44729865)
- 作者: jandrewrogers
- 评分: 791
- 评论数: 211
- 发布时间: 2025-07-30 08:38:25
---
## MoebiusXBIN:支持自定义字体的 ASCII 和文本模式艺术编辑器
MoebiusXBIN 是一款适用于 MacOS、Linux 和 Windows 的 ASCII 和文本模式艺术编辑器,它最大的亮点在于支持自定义字体和颜色,让文本艺术创作的可能性大大扩展。
这款编辑器脱胎于 Andy Herbert 在 2019 年创建的开源项目 Moebius,作者在 2020 年对其进行了 Fork,并命名为 MoebiusXBIN,目标是完全支持 XBIN 格式并添加更改字体的功能。经过几年的发展,MoebiusXBIN 已经拥有了许多额外的功能,并被艺术家们广泛用于探索自定义字体的潜力。
MoebiusXBIN 的核心功能包括:自定义字体,用户可以从近 2400 种不同的字体中选择,并可以导入和导出 PNG 格式的字体;自定义颜色,用户可以从 Lospec 社区提供的约 200 种手工制作的调色板中进行选择;支持多语言 ASCII 艺术,支持数百种编码,以匹配用户的输入源和所选字体,还支持从右到左和从上到下的书写方向;以及为初学者提供的友好教程,帮助用户快速上手。
使用自定义字体是 MoebiusXBIN 的主要特色,它不仅包含了经典的字体,还包含了一些特殊的文本模式艺术字体,以及 VileR 编译的完整 VGA 字体列表和从各种 Amiga 光盘中找到的数百种字体。用户可以通过字体浏览器选择字体,然后将其导出为 PNG 格式,在像素艺术编辑器中进行修改,最后再将其导入到 MoebiusXBIN 中。作者还推荐使用 VileR 的 VGA 字体编辑器 Fontraption 来制作自定义字体。
MoebiusXBIN 通过支持自定义字体,打破了传统 ASCII 艺术的局限性,为艺术家们提供了更大的创作空间,让他们能够探索文本艺术的更多可能性。
- 原文: [Show HN: MoebiusXBIN – ASCII and text-mode art editor with custom font support](https://blog.glyphdrawing.club/moebiusxbin-ascii-and-text-mode-art-editor-with-custom-font-support/)
- Hacker News: [https://news.ycombinator.com/item?id=44733742](https://news.ycombinator.com/item?id=44733742)
- 作者: california-og
- 评分: 20
- 评论数: 1
- 发布时间: 2025-07-30 21:11:06
---
## 托儿所和宠物日托费用上涨的经济学分析
本文探讨了托儿所和宠物日托费用不断上涨的原因,并分析了其背后的经济学原理。作者认为,Baumol效应是导致这些服务价格上涨的主要因素,而非过度监管。
文章指出,尽管人们普遍关注托儿费用的上涨,但宠物护理费用也在迅速增长。作者通过对比过去26年宠物服务和日托/幼儿园的原始价格趋势发现,二者的增长趋势几乎相同。即使将通货膨胀考虑在内,日托和幼儿园的实际价格上涨了36%,而宠物服务也上涨了28%。作者认为,如果监管不能解释宠物护理费用的上涨,那么它可能也不是托儿费用上涨的主要原因。
文章进一步解释说,由于其他行业的生产力增长速度快于护理行业,因此提供护理服务需要付出更多的机会成本。为了留住员工,护理行业必须提高工资以匹配高生产力行业的工资水平,这导致了护理服务价格的上涨。作者还提出了一些解决方案,例如降低劳动力的机会成本,包括引进低技能移民和投资自动化技术。
评论区中,有读者对Baumol效应的解释表示赞同,认为这是理解服务业价格上涨的关键。也有人认为,监管在一定程度上也推高了托儿费用,尤其是在一些对师生比例和教师资质要求较高的地区。此外,还有读者提到,不同地区的经济发展水平和服务需求也会影响托儿和宠物护理的价格。
- 原文: [The Rising Cost of Child and Pet Day Care](https://marginalrevolution.com/marginalrevolution/2025/07/the-rising-cost-of-child-and-pet-day-care.html)
- Hacker News: [https://news.ycombinator.com/item?id=44734263](https://news.ycombinator.com/item?id=44734263)
- 作者: surprisetalk
- 评分: 16
- 评论数: 14
- 发布时间: 2025-07-30 21:55:33
---
## 使用 Rust 编写操作系统:系列博客文章
该系列博客文章旨在指导读者使用 Rust 编程语言创建一个小型操作系统。每篇文章都是一个独立的教程,包含所有必要的代码,方便读者跟随学习。
该系列文章涵盖了操作系统的多个关键方面。首先,介绍了如何在没有标准库的情况下创建一个独立的 Rust 可执行文件,使其能够在裸机上运行。接着,讲解了 VGA 文本模式,提供了一个安全的接口来在屏幕上打印文本,并支持 Rust 的格式化宏。此外,还探讨了在 `no_std` 环境下进行单元测试和集成测试的方法,以及如何使用 QEMU 和 `bootimage` 工具报告测试结果。
在中断处理方面,文章详细介绍了 CPU 异常,包括如何设置中断描述符表来处理各种错误情况,例如访问无效内存地址或除以零。还深入探讨了双重错误异常,以及如何通过设置中断堆栈表来避免致命的三重错误。此外,文章还介绍了如何设置可编程中断控制器,以正确地将硬件中断转发到 CPU,并处理定时器中断和键盘输入。
在内存管理方面,文章介绍了分页的概念,解释了为什么需要内存隔离,以及分段、虚拟内存和分页如何解决内存碎片问题。然后,展示了如何在内核中实现分页支持,包括地址转换和创建新映射的功能。最后,文章还增加了对堆分配的支持,介绍了动态内存的概念,并实现了一个基本的分配接口,使内核可以使用 `alloc` crate 中的所有分配和集合类型。文章还介绍了从头开始实现堆分配器的方法,并讨论了不同的分配器设计,包括 bump allocation、链表分配和固定大小块分配。
最新的一篇文章探讨了 Rust 的 _cooperative multitasking_ 和 _async/await_ 特性,详细介绍了 async/await 在 Rust 中的工作原理,并为内核添加了对 async/await 的基本支持,创建了一个异步键盘任务和一个基本执行器。
## 评论区观点
评论中,有开发者表示 Phil-opp 的文章在快速启动内核的样板代码方面起到了重要作用,特别是在处理不寻常的构建配置时。该开发者还提到,当他们想到改进某个功能的方法时,经常能在 cargo 或 rust issue trackers 上找到相关的讨论。
- 原文: [Blog series on creating an OS in Rust](https://os.phil-opp.com/)
- Hacker News: [https://news.ycombinator.com/item?id=44733094](https://news.ycombinator.com/item?id=44733094)
- 作者: znano
- 评分: 23
- 评论数: 1
- 发布时间: 2025-07-30 20:01:10
---
## NMDA 受体拮抗剂:不止你想知道的那么多
本文深入探讨了 NMDA 受体拮抗剂的作用机制,解释了为什么这类药物既可以麻醉,又可以治疗阿尔茨海默病,甚至缓解抑郁症。文章着重分析了药物的亚基选择性、结合和解离方式以及作用的神经元类型,阐明了这些因素如何影响药物的最终效果。
文章首先指出,NMDA 受体拮抗剂的作用并非一概而论,不同药物的效果差异很大。其中一个关键因素是药物的亚基选择性。NMDA 受体由四个亚基组成,包括 NR1 和 NR2A/B/C/D。NR2 亚基负责结合谷氨酸并调节受体的整体特性。NR2C/D 亚基对镁的依赖性较低,允许更多的电流进入细胞。
另一个重要因素是药物与 NMDA 受体的结合和解离方式。像氯胺酮这样的“捕获型”拮抗剂在高剂量下会永久结合受体,而像美金刚胺这样的药物则会在受体孔打开时快速解离。NR2D 亚基更容易被捕获,导致一种称为“去抑制”的网络状态。
最后,药物结合的神经元类型也至关重要。NMDA 受体存在于所有类型的神经元上,但其组成因神经元类型而异。例如,含有 NR2D 亚基的 NMDA 受体几乎只在抑制性中间神经元上表达。
氯胺酮是一种非选择性的捕获型拮抗剂,它抑制兴奋性神经传递,从而产生麻醉效果。相比之下,美金刚胺在 NR2D 亚基上表现出捕获型拮抗剂的特性,主要影响抑制性中间神经元。文章通过流程图展示了亚基选择性、捕获/闪烁特性以及兴奋性/抑制性靶向之间的关联性。总之,NMDA 受体拮抗剂的作用非常复杂,受到多种因素的影响。了解这些因素有助于我们更好地理解这些药物的治疗潜力。
- 原文: [NMDA Receptor Antagonists: Slightly More Than You Wanted to Know](https://grillbert.substack.com/p/nmda-receptor-antagonists-a-bit-more)
- Hacker News: [https://news.ycombinator.com/item?id=44734260](https://news.ycombinator.com/item?id=44734260)
- 作者: surprisetalk
- 评分: 6
- 评论数: 1
- 发布时间: 2025-07-30 21:55:25
---
## Cedana 招聘系统工程师:构建下一代 AI 编排系统
Cedana 正在招聘一名系统工程师,专注于构建下一代 AI 编排系统,实现 CPU+GPU 容器的无缝、实时迁移。 这家公司致力于解决分布式计算的可移植性、弹性和韧性问题,需要精通内核工程和分布式系统设计的工程师。
Cedana 的系统工程师将参与设计和构建新的编排原语,增强系统的稳定性和性能,并与客户合作解决复杂的基础设施挑战。 这包括深入研究 Linux 内核、容器运行时和虚拟机管理程序,以确保实时迁移能力的可靠性。 理想的候选人需要对并发和分布式系统有深刻的理解,精通 C、Go 或 Rust 等系统编程语言,并熟悉 Linux 和容器内部原理。 此外,还需要了解 Kubernetes 网络,并具有扩展基础设施和管理生产级 Kubernetes 集群的实践经验。 熟悉 HPC 环境 (SLURM, MPI, RDMA) 或 GPU-centric Kubernetes 工具 (Kueue, KubeFlow, KServe) 将是加分项。
- 原文: [Cedana (YC S23) Is Hiring a Systems Engineer](https://www.ycombinator.com/companies/cedana/jobs/zRmK2by-systems-engineer-advanced-orchestration)
- Hacker News: [https://news.ycombinator.com/item?id=44733086](https://news.ycombinator.com/item?id=44733086)
- 作者: neelm
- 评分: 1
- 评论数: 0
- 发布时间: 2025-07-30 20:00:30
---
## Python 字典追踪 Key 的使用情况
本文介绍了一个名为 `TrackingDict` 的 Python 类,它继承自 `dict`,能够记录哪些 key 被访问过,以及哪些 key 从未被访问。这在需要确保所有数据都被使用或测试覆盖的场景中非常有用。
`TrackingDict` 的核心在于重写了 `__getitem__` 方法,每次访问 key 时,都会将该 key 添加到一个内部的 `_accessed_keys` 集合中。通过 `accessed_keys` 和 `never_accessed_keys` 属性,可以方便地获取已访问和未访问的 key 集合。文章给出了使用示例,展示了如何利用 `TrackingDict` 来进行单元测试,确保所有字典中的值都被测试覆盖。作者还分享了一个使用场景,比如在处理数据库查询结果时,可以用来检查是否所有字段都在报告中被使用。后来,根据评论区 Michael Cook 的建议,作者还更新了文章,添加了类型提示的 `TrackingDict` 版本,提高了代码的可读性和健壮性。
评论区里,Michael Cook 提出了添加类型提示的建议,并给出了具体的代码实现,作者采纳了他的建议并更新了博客文章,体现了社区合作的精神。Terry Spotts 指出 `TrackingDict` 缺少对 `.get()` 方法的支持,并提出了使用 `UserDict` 或实现 `MutableMapping` 的解决方案。他还提到,当 key 不存在时,`_accessed_keys` 也会被更新,询问这是否是期望的行为。作者承认最初的实现只考虑了 `__getitem__` 的使用场景,没有考虑到 `.get()` 方法,并感谢 Terry Spotts 提出的宝贵意见。mcfur 则表达了对网站 cursor 效果的不满,认为这很烦人,建议作者不要使用。
- 原文: [A Python dict that can report which keys you did not use](https://www.peterbe.com/plog/a-python-dict-that-can-report-which-keys-you-did-not-use)
- Hacker News: [https://news.ycombinator.com/item?id=44698413](https://news.ycombinator.com/item?id=44698413)
- 作者: gilad
- 评分: 16
- 评论数: 9
- 发布时间: 2025-07-27 10:22:51
---
## OpenAI 推出 ChatGPT 学习模式:逐步引导,而非直接给出答案
OpenAI 发布了 ChatGPT 的全新学习模式,旨在通过逐步引导的方式帮助用户理解问题,而不仅仅是提供答案。这个模式适用于 Free、Plus、Pro 和 Team 版本的登录用户,ChatGPT Edu 版本也将在未来几周内推出。
ChatGPT 学习模式致力于解决一个重要问题:如何确保 AI 工具被用于支持真正的学习,而不仅仅是提供解决方案,从而帮助学生理解知识。该模式通过引导性问题,根据学生的目标和技能水平调整反馈,帮助他们建立更深入的理解。学习模式的设计注重互动性和参与性,旨在让学生真正学到东西,而不仅仅是完成任务。
学习模式的核心是定制的系统指令,这些指令由教师、科学家和教育专家合作编写,反映了一系列支持深度学习的关键行为,包括鼓励积极参与、管理认知负荷、主动发展元认知和自我反思、培养好奇心以及提供可操作和支持性的反馈。这些行为基于长期的学习科学研究,并影响学习模式如何响应学生。
学习模式的关键功能包括:互动式提示,结合了苏格拉底式提问、提示和自我反思提示,以引导理解和促进主动学习;支架式回应,将信息组织成易于理解的部分,突出主题之间的关键联系,保持信息的吸引力,并减少复杂主题的压力;个性化支持,课程根据用户的问题评估技能水平和记忆力,从而为用户量身定制合适的学习水平;知识检查,通过测验和开放式问题以及个性化反馈来跟踪进度,支持知识保留和在新的环境应用知识的能力;灵活性,可以在对话期间轻松打开和关闭学习模式,从而灵活地适应每次对话中的学习目标。
- 原文: [Study mode](https://openai.com/index/chatgpt-study-mode/)
- Hacker News: [https://news.ycombinator.com/item?id=44725764](https://news.ycombinator.com/item?id=44725764)
- 作者: meetpateltech
- 评分: 1024
- 评论数: 735
- 发布时间: 2025-07-30 01:01:14
---
## 从 XML 到 JSON 再到 CBOR:数据交换格式的演变
本文探讨了数据交换格式的演变,重点介绍了 XML、JSON 和 CBOR 这三种格式的起源、设计原则和应用场景。文章旨在帮助读者理解不同数据格式的优缺点,以及它们在不同技术环境下的适用性。
文章首先回顾了 XML 的历史,它起源于电子出版领域,旨在提供一种结构化的文档表示方法。SGML 是 XML 的前身,它允许开发者定义自定义的标记语言,但其复杂性限制了其广泛应用。为了简化 SGML 并使其更适合互联网使用,W3C 推出了 XML。XML 的设计目标包括互联网可用性、广泛适用性、SGML 兼容性、易于处理、最少的可选功能、人类可读性、快速设计、形式化和简洁的设计以及易于创建。
随后,文章介绍了 JSON,它是一种轻量级的数据交换格式,特别适合 Web 应用。JSON 具有简单、易于解析和生成的特点,因此在 Web 开发中得到了广泛应用。
最后,文章探讨了 CBOR,它是一种二进制数据格式,旨在提供更高的效率和更小的体积。CBOR 特别适用于资源受限的设备,例如物联网设备。
总而言之,XML、JSON 和 CBOR 代表了数据交换格式的演变,每种格式都针对特定的需求和应用场景进行了优化。XML 强调结构化和可扩展性,JSON 强调简单性和易用性,而 CBOR 强调效率和紧凑性。选择哪种格式取决于具体的应用需求和技术环境。
- 原文: [From XML to JSON to CBOR](https://cborbook.com/introduction/from_xml_to_json_to_cbor.html)
- Hacker News: [https://news.ycombinator.com/item?id=44732593](https://news.ycombinator.com/item?id=44732593)
- 作者: GarethX
- 评分: 48
- 评论数: 36
- 发布时间: 2025-07-30 18:31:12
---
## Opsqueue:轻量级批量处理队列的开源方案
本文介绍了 Channable 开源的 Opsqueue,一个轻量级的批量处理队列,旨在解决高负载下任务处理的难题。Opsqueue 通过将任务分解成小批次,并利用 Redis 进行任务调度和状态管理,实现了高效的任务处理。
文章详细阐述了 Opsqueue 的设计理念和核心组件。它强调了 Opsqueue 的轻量级特性,使其易于部署和集成到现有系统中。文章还深入探讨了 Opsqueue 如何利用 Redis 的特性来实现任务的可靠性和可扩展性。例如,Redis 的原子操作被用于确保任务状态的一致性,而 Redis 的发布/订阅功能则用于实现任务的异步处理。
此外,文章还介绍了 Opsqueue 的一些高级特性,例如任务优先级、重试机制和死信队列。这些特性使得 Opsqueue 能够更好地适应各种复杂的任务处理场景。文章还提供了 Opsqueue 的使用示例和性能测试结果,展示了其在实际应用中的优势。总的来说,Opsqueue 提供了一个简单而强大的解决方案,可以帮助开发者轻松地构建高可用、高并发的批量处理系统。对于需要处理大量任务的应用程序来说,Opsqueue 是一个值得考虑的选择。
- 原文: [Opsqueue: Lightweight batch processing queue for heavy loads – now open-source](https://www.channable.com/tech/introducing-opsqueue)
- Hacker News: [https://news.ycombinator.com/item?id=44734475](https://news.ycombinator.com/item?id=44734475)
- 作者: qqwy
- 评分: 18
- 评论数: 1
- 发布时间: 2025-07-30 22:12:09
---
## 使用 WebSocket 代理让 Libcurl 在 WebAssembly 中工作
这篇文章介绍了如何通过 WebSocket 代理,使基于 libcurl 的应用程序在 WebAssembly (Wasm) 环境中无需修改即可运行。核心思路是将所有网络流量通过 WebSocket 隧道转发,从而绕过 WebAssembly 在网络方面的限制。
文章指出,WebAssembly 本身不具备直接的 socket 支持,需要依赖浏览器的 JavaScript 网络接口,例如 `fetch`。但 `fetch` 的功能远不如 libcurl 所需,很多操作都无法实现。因此,作者提出了一种解决方案:通过建立一个 WebSocket 代理服务器,让 libcurl 将所有流量通过该代理转发。
具体实现方式是,当 C 代码尝试建立 TCP 连接时,Emscripten 编译的 Wasm 运行时会尝试连接到 `ws://myserver.com:1234` 的 WebSocket。服务器端需要运行一个 `websockify` 代理,它接受 WebSocket 连接,并将流量转发到实际的目标地址。为了安全起见,建议使用 `wss://` (HTTPS WebSocket),并确保 `websockify` 服务器配置了有效的 HTTPS 证书。
为了让 libcurl 连接到任意 HTTP 服务,文章建议使用 SOCKS5 代理服务器,并在其前面部署 `websockify`。这样,libcurl 就可以通过 SOCKS5 代理,经由 WebSocket 连接到互联网上的任何主机。作者还提供了一个 Docker 镜像,其中包含了 `websockify` 和 SOCKS5 服务器,方便快速部署。
文章还提到了一个实际的应用场景:WebR 项目。WebR 是 R 语言及其包生态系统到 WebAssembly 的移植。许多 R 包依赖于 C/C++ 库进行底层操作,而 libcurl 是其中一个重要的依赖项。通过本文介绍的方法,WebR 可以在 WebAssembly 环境中使用 libcurl 进行网络请求。
总而言之,这篇文章提供了一种巧妙且实用的方法,解决了 WebAssembly 中 libcurl 的网络限制问题,为在 WebAssembly 环境中运行需要网络功能的应用程序提供了新的思路。通过 WebSocket 代理,开发者可以轻松地将现有的 libcurl 代码移植到 WebAssembly 平台,而无需进行大量的修改。
- 原文: [Making Libcurl Work in WebAssembly](https://jeroen.github.io/notes/webassembly-curl/)
- Hacker News: [https://news.ycombinator.com/item?id=44733734](https://news.ycombinator.com/item?id=44733734)
- 作者: tambourine_man
- 评分: 8
- 评论数: 3
- 发布时间: 2025-07-30 21:09:27
---
## Doist 开源 Bitmapist:一款节省数百万美元的队列分析工具
Doist 开发了一款名为 Bitmapist 的开源队列分析库,用于更深入地了解用户如何使用 Todoist 和 Twist。Bitmapist 基于 Redis bitmaps,以最小的内存占用存储大量事件数据,从而高效地跟踪数百万用户交互和数十亿事件,实现实时分析查询。
Bitmapist 通过跟踪用户对新功能的采用和保留情况,简化了 A/B 测试的长期影响监控,并实现了快速决策,从而改进了 Doist 的决策流程。通过内部构建 Bitmapist,Doist 多年来节省了数百万美元的分析费用,并构建了一个超优化的 bitmapist-server,它不使用 Redis,将内存使用量减少了 443 倍。Bitmapist 还具有内置的队列可视化功能,允许团队快速生成清晰的实时图表,从而及早发现趋势并快速发现下降点。
Bitmapist 的集成非常简单,可以通过 pip 安装,设置 Redis 或 bitmapist-server,并轻松标记和查询事件。Doist 已经开源了 Bitmapist,邀请大家一起构建更好的分析工具。
评论区中,有用户表示可能会在公司尝试使用 Bitmapist,并询问在使用 Bitmapist 时常见的陷阱。
- 原文: [Bitmapist: We built an open-source cohorts analytics tool that saved millions](https://www.doist.dev/bitmapist/)
- Hacker News: [https://news.ycombinator.com/item?id=44733983](https://news.ycombinator.com/item?id=44733983)
- 作者: amix
- 评分: 20
- 评论数: 1
- 发布时间: 2025-07-30 21:33:37
---
## C 结构体内存优化:提升效率的实用技巧
本文深入探讨了 C 语言中结构体内存优化的重要性,并分享了通过调整结构体成员顺序、使用派生状态、选择合适的数据类型以及利用位域等方法来减少内存占用,提升程序性能的实用技巧。
文章首先展示了一个包含多个字段的 `Monster` 结构体,并分析了其初始大小为 96 字节,指出这是由于编译器为了内存对齐而添加了填充字节导致的。为了减少填充,文章建议按照从大到小的顺序排列结构体成员,将相同大小的字段组合在一起,从而减少内存浪费。
此外,文章还介绍了“派生状态”的概念,即避免直接存储可以通过其他字段计算得出的状态,例如,可以通过检查 `health` 字段是否大于 0 来判断怪物是否存活,从而移除 `is_alive` 字段。
选择合适的数据类型也是优化内存的关键。文章建议使用 `stdint.h` 头文件中定义的特定位数的整数类型,例如 `uint16_t` 和 `uint8_t`,来代替默认的 `int` 类型,以减少不必要的内存占用。最后,文章介绍了位域的概念,它允许将多个布尔值存储在单个字节中,从而进一步减少内存占用。
通过应用这些优化技巧,可以将 `Monster` 结构体的大小从最初的 96 字节减少到 84 字节,显著提升程序的内存效率。
总而言之,结构体内存优化是一个需要仔细考虑的问题,通过合理的布局和数据类型选择,可以有效地减少内存占用,提高程序性能。
- 原文: [Writing memory efficient C structs](https://tomscheers.github.io/2025/07/29/writing-memory-efficient-structs-post.html)
- Hacker News: [https://news.ycombinator.com/item?id=44733968](https://news.ycombinator.com/item?id=44733968)
- 作者: aragonite
- 评分: 9
- 评论数: 4
- 发布时间: 2025-07-30 21:32:23
---
## 缅怀田宫俊作:将塑料模型推向全球的巨匠
本文纪念了田宫模型前社长田宫俊作,他将田宫模型打造成世界知名的精密塑料模型、遥控车和四驱车制造商。田宫俊作先生于7月18日去世,享年90岁。
田宫俊作最初加入了他父亲创立的运输公司,战后转向木材供应。这促使公司扩展到木制模型领域,主要生产船舶和飞机模型。一场火灾摧毁了公司的木材供应后,公司开始专注于模型业务。
不久之后,塑料技术得到改进并开始占领模型套件市场。田宫俊作率先向塑料模型转型,并在此过程中改变了整个行业。他帮助激发了几代儿童和成人对汽车以及其他交通工具的热情。
田宫俊作还负责打造田宫标志性的品牌形象和对质量的追求。他邀请他的兄弟Masao设计了“双星”标志,并聘请插画家创作了“白色盒子”外观,这使得田宫模型与其他模型制造商的盒绘形成了鲜明对比。
最重要的是,他是田宫模型套件以其无与伦比的精度而闻名的幕后推手。最著名的是,在制作1976年保时捷934 Turbo RSR的模型套件时,田宫先生多次派他的设计师前往保时捷的Zuffenhausen工厂,以获得精确的测量数据和细节。尽管多次前往,但人们仍然对套件的准确性表示怀疑。因此,田宫购买了一辆保时捷911,并将其完全拆解,以获得每一个正确的细节。最终,这辆车被重新组装起来,田宫俊作亲自驾驶它送Jody Scheckter和他的妻子参加了1976年日本大奖赛。
2018年,田宫俊作因其对业余爱好行业的贡献而被授予日本媒体艺术节终身成就奖。他对汽车爱好者的想象力的贡献将持续多年。
评论区里,许多模型爱好者表达了对田宫俊作先生的哀悼和怀念。有人提到田宫模型的可靠品质,有人分享了自己小时候购买和制作田宫模型的经历,感谢田宫先生为他们创造了美好的童年回忆。也有人感叹如今的年轻人缺乏耐心,对模型的热情不如以往。另有评论指出,可能是因为一些老一辈总是指责年轻人缺乏耐心或其他缺点,才导致他们对模型失去兴趣。总的来说,评论区充满了对田宫俊作先生的敬意和对模型制作黄金时代的怀念。
- 原文: [RIP Shunsaku Tamiya, the man who made plastic model kits a global obsession](https://JapaneseNostalgicCar.com/rip-shunsaku-tamiya-plastic-model-kits/)
- Hacker News: [https://news.ycombinator.com/item?id=44728188](https://news.ycombinator.com/item?id=44728188)
- 作者: fidotron
- 评分: 357
- 评论数: 77
- 发布时间: 2025-07-30 04:57:47
---
## 开源AI会议记录工具Hyprnote发布:本地优先,注重隐私
Hyprnote是一款开源的AI会议记录工具,强调本地优先和用户隐私。它旨在提供一种无需依赖大型语言模型(LLM)和订阅服务的会议记录解决方案,让用户可以在本地运行,并控制自己的数据。
Hyprnote的核心优势在于其本地优先的特性,这意味着所有数据处理都在用户的设备上进行,无需上传到云端,从而保护用户隐私。开发者提到,他们使用WhisperX + Qwen3:1.7 + Nomic Embed等技术,并计划提供API和hooks,方便用户进行下游任务的定制。
Hyprnote也面临着一些挑战,例如如何在开源模式下实现盈利,以及如何在准确性和实时性之间取得平衡。一些用户关心它的商业模式,以及是否会牺牲用户体验来换取盈利。还有用户关注实时转录的延迟问题,希望能够像Otter.ai一样提供低延迟的实时转录功能。
评论区对Hyprnote的发布反响热烈,许多用户赞赏其本地优先和开源的理念。有人提到,很多同类产品都需要API密钥,而Hyprnote的本地优先特性避免了这个问题。也有用户希望Hyprnote能够提供更多功能,例如自动会议检测、自定义重写操作等,并与MacWhisper等现有工具竞争。
一些用户也提出了实际使用中遇到的问题,例如在Linux上构建时需要大量的API密钥,以及在Mac M4 Pro Mini上无法启动的问题。开发者需要解决这些问题,才能提升用户体验。
总的来说,Hyprnote的发布引起了广泛关注,其本地优先和开源的特性吸引了许多用户。然而,它也面临着商业模式、功能完善和用户体验等方面的挑战。
- 原文: [Launch HN: Hyprnote (YC S25) – An open-source AI meeting notetaker](https://news.ycombinator.com/item?id=44725306)
- Hacker News: [https://news.ycombinator.com/item?id=44725306](https://news.ycombinator.com/item?id=44725306)
- 作者: yujonglee
- 评分: 224
- 评论数: 134
- 发布时间: 2025-07-30 00:24:08
---
## 揭秘科技大佬的 Spotify 歌单:Panama Playlists 项目曝光
Panama Playlists 项目曝光了一系列科技、政治和媒体界知名人士的 Spotify 歌单,揭示了他们的音乐品味和个人喜好。这个项目通过抓取公开的 Spotify 账户数据,展示了这些人物的播放列表、实时收听记录等信息,让人们得以一窥他们“工作之外”的另一面。
该网站自 2024 年夏季开始抓取这些账户的数据,包括播放列表、实时收听记录,甚至歌曲播放次数。被曝光歌单的名人包括 OpenAI 的 CEO Sam Altman、前 FTX 创始人 Sam Bankman-Fried、Meta 首席 AI 官 Alexandr Wang 等。例如,Sam Altman 的“My Shazam Tracks”歌单中包含了 Dixon Dallas 的 "Good Lookin'" 和 RÜFÜS DU SOL 的 "Until the Sun Needs To Rise" 等歌曲;而 Sam Bankman-Fried 的歌单则分为 "loud" 和 "soft" 两个系列,分别收录了 The Weeknd 的 "Save Your Tears" 和 Bon Iver 的 "Blindsided" 等歌曲。
除了科技界人士,该项目还曝光了政界和媒体界人士的歌单。例如,美国副总统 JD Vance 的歌单中包含了 Backstreet Boys 的 "I Want It That Way" 和 Justin Bieber 的 "One Time";白宫新闻秘书 Karoline Leavitt 的歌单则以 Beyoncé 的 "Run the World (Girls)" 和 Cyndi Lauper 的 "Girls Just Want to Have Fun" 等歌曲为主。这些歌单的选择也引发了人们对于这些公众人物的个性和价值观的讨论。
这个项目的出现引发了关于个人隐私和数据安全的讨论。虽然这些数据都是公开的,但将它们集中展示可能会侵犯个人隐私。同时,这也提醒人们注意自己在社交媒体上的行为,以及公开信息可能带来的影响。
- 原文: [PanamaPlaylists – Leaked Tech CEOs Spotify Profiles](https://panamaplaylists.com/)
- Hacker News: [https://news.ycombinator.com/item?id=44732345](https://news.ycombinator.com/item?id=44732345)
- 作者: aadillpickle
- 评分: 45
- 评论数: 26
- 发布时间: 2025-07-30 17:29:38
---
🫵 来啊,说点有用的废话!