8小时前
|
|
|
## 今天 Hacker News 社区聊了啥? NO.20251102
想知道 AI 如何 Debug 底层密码学代码?想体验在浏览器里跑 Haskell?本期日报为你揭秘!还有开源大模型、内存安全编译器、可再生能源追踪指数等硬核技术等你探索。更有趣闻,比如万圣节自制斑马线交通灯服装!别错过,速速点击,一起掌握最新科技动态!

---
## URL 即状态:利用 URL 管理 Web 应用状态
本文探讨了如何将 URL 作为现代 Web 应用程序中的一级状态容器,充分利用 URL 的强大功能来管理和共享应用程序的状态。
文章首先通过 PrismJS 的例子,展示了 URL 如何完整地保存应用程序的配置状态。作者指出,前端工程师经常忽略 URL 作为状态管理工具的潜力,转而使用全局存储、上下文或缓存等抽象概念。然而,URL 具有许多优点,例如可分享性、可收藏性、浏览器历史记录和深度链接。文章将 URL 分解为路径段、查询参数和锚点,并详细说明了每部分如何用于编码不同类型的状态。路径段适用于分层资源导航,查询参数适用于过滤器、选项和配置,锚点适用于客户端导航和页面部分。
文章还介绍了一些常见的查询参数模式,包括使用分隔符表示多个值、嵌套或结构化数据、布尔标志和数组(括号表示法)。作者强调了在应用程序中保持一致性的重要性。最后,文章通过 PrismJS 配置、GitHub 行突出显示、Google 地图和 Figma 等实际示例,展示了 URL 作为状态容器的强大功能。这些例子表明,通过将状态编码到 URL 中,可以轻松地共享应用程序的特定视图或配置,从而改善用户体验。
文章没有评论内容。
- 原文: [URLs are state containers](https://alfy.blog/2025/10/31/your-url-is-your-state.html)
- Hacker News: [https://news.ycombinator.com/item?id=45789474](https://news.ycombinator.com/item?id=45789474)
- 作者: thm
- 评分: 120
- 评论数: 59
- 发布时间: 2025-11-02 19:12:58
---
## Mock 工具:API 创建、测试及示例
本文介绍了 `mock` 工具的使用示例,包括如何延迟特定 endpoint 的响应、如何构建多语言 API 以及如何创建有状态的 API。`mock` 通过结合 Base APIs 和 delay 选项,可以轻松实现 API 延迟。
文章展示了通过 middleware 实现特定 endpoint 延迟的方法,例如,只让 `some/endpoint` 延迟 2 秒。同时,还演示了如何使用 `mock` 创建一个由多种语言驱动的 API,包括 JavaScript、Python 和 PHP,通过简单的配置,`mock` 能够根据不同的路由执行相应的代码,并返回结果。
此外,文章还介绍了如何利用 `mock` 创建一个有状态的 API,通过临时文件存储请求次数,每次请求 `/hello` 路由时,服务器会返回当前已接收到的请求总数。这展示了 `mock` 在模拟需要维护状态的 API 方面的能力。
评论区里,有用户对 `mock` 的功能和应用场景提出了疑问和看法。有人询问了动态响应的实现难度,以及工具的创建动机,想了解与其他类似工具相比,`mock` 的优势在哪里。也有用户认为在 URL 中存储状态非常重要,能提升用户体验。还有用户赞赏了这个工具,并指出 "mock" 这个名称也被 RPM 构建环境工具使用。另有用户调侃了 API 延迟功能,认为它可能与“按小时计费”有关。最后,有用户询问了 `mock` 是否支持 Windows 系统。这些评论反映了开发者对 `mock` 工具的兴趣和实际应用中的考量。
- 原文: [Mock – An API creation and testing utility: Examples](https://dhuan.github.io/mock/latest/examples.html)
- Hacker News: [https://news.ycombinator.com/item?id=45789556](https://news.ycombinator.com/item?id=45789556)
- 作者: dhuan_
- 评分: 64
- 评论数: 14
- 发布时间: 2025-11-02 19:30:50
---
## Tongyi DeepResearch:媲美 OpenAI 的开源 30B MoE 模型
本文介绍了阿里巴巴推出的开源 Web Agent 模型 Tongyi DeepResearch,它在多个基准测试中达到了与 OpenAI 的 DeepResearch 相媲美的性能,并分享了创建这种高级 Agent 的完整方法论。
Tongyi DeepResearch 在学术推理任务 Humanity's Last Exam (HLE) 上取得了 32.9 的分数,在 BrowseComp 上取得了 43.4 的分数,在 BrowseComp-ZH 上取得了 46.7 的分数,在以用户为中心的 xbench-DeepSearch 基准测试中取得了 75 的分数,系统性地优于所有现有的专有和开源 Deep Research Agent。除了模型本身,还分享了创建这种高级 Agent 的完整方法论,包括 Agentic Continual Pre-training (CPT)、Supervised Fine-Tuning (SFT) 和 Reinforcement Learning (RL) 等阶段的数据合成解决方案。
在 CPT 阶段,引入了 AgentFounder,一个系统且可扩展的大规模数据合成解决方案,用于创建强大的 Agentic 基础模型。该方案持续从各种来源收集数据,并将其重组为以实体为锚点的开放世界知识记忆,然后基于随机抽样的实体及其对应的知识生成多风格的 (question, answer) 对。此外,还基于不同的问题和历史轨迹,构建了一阶和高阶动作合成数据,从而无需额外的商业工具 API 调用即可大规模探索潜在的推理-动作空间。
在后训练阶段,开发了一个端到端的合成数据生成解决方案,无需人工干预即可构建超人类质量的数据集,旨在突破 AI Agent 性能的界限。通过对基于 Web 的 QA 数据进行合成,解决复杂、高不确定性的问题。该过程首先通过随机游走和同构表构建高度互连的知识图谱,然后对子图和子表进行采样以生成初始问题和答案,并通过策略性地模糊问题中的信息来增加难度。
为了引导模型的初始能力,基于 ReAct 和 IterResearch 框架构建了一组轨迹。ReAct 是一种经典的多轮推理格式,可以灌输丰富的推理行为并增强模型遵守结构化格式的能力。IterResearch 是一种创新的 Agent 范式,通过在每一轮中动态地重建简化的工作空间来释放模型的全部推理潜力,确保每个决策都是经过深思熟虑的。该模型支持多种 rollout 格式,包括原生 ReAct 模式和上下文管理 Heavy 模式。在原生 ReAct 模式下,模型无需任何 prompt 工程即可展示出色的性能,严格遵循 Thought-Action-Observation 循环,执行多次迭代来解决问题。
- 原文: [Tongyi DeepResearch – open-source 30B MoE Model that rivals OpenAI DeepResearch](https://tongyi-agent.github.io/blog/introducing-tongyi-deep-research/)
- Hacker News: [https://news.ycombinator.com/item?id=45789602](https://news.ycombinator.com/item?id=45789602)
- 作者: meander_water
- 评分: 40
- 评论数: 3
- 发布时间: 2025-11-02 19:43:26
---
## John Walker 谈 1991 年的惠普和 IBM:对科技巨头的深刻剖析
这篇文章回顾了 Autodesk 创始人 John Walker 在 1991 年撰写的备忘录,分析了惠普 (HP) 和 IBM 等大型科技公司面临的挑战。Walker 的观点对于理解这些公司如何应对市场变化以及保持竞争力至关重要。
Walker 的备忘录强调,当用户期望、硬件/软件平台和分销渠道发生重大变化时,未能预见或及时应对这些变化的公司,将被更具远见和行动力的竞争对手所取代。他认为,像惠普和 IBM 这样的公司,往往试图利用其庞大的规模来“从后方领导”,但这通常是无效的。Walker 强调,企业不能仅仅通过研究竞争对手的行动来领导行业,而必须理解自身的使命,并采取能够引领未来的行动。
他还指出,公司内部的沟通至关重要。如果员工认为管理层不倾听他们的意见,或者决策不符合公司的长期利益,那么就会导致错误的决策。Walker 认为,华尔街对利润率的过度关注也是一个问题。虽然高利润率在短期内可能看起来不错,但如果公司为了追求高利润率而忽视了对未来的投资,那么最终将会失去竞争力。这种投资包括新产品的开发、市场推广以及基础设施建设。Walker 强调,管理层最重要的决策之一,就是在对未来业务的投资水平上做出选择。投资太少,短期内可能会获得高利润,但长期来看会损害公司的竞争力。
总而言之,Walker 的分析揭示了大型科技公司在快速变化的市场中保持竞争力的关键因素,包括对市场变化的敏锐洞察力、有效的内部沟通以及对未来业务的持续投资。这篇文章提醒我们,即使是行业巨头,也需要不断适应和创新,才能在激烈的竞争中生存和发展。
- 原文: [Autodesk's John Walker Explained HP and IBM in 1991](https://www.cringely.com/2015/06/03/autodesks-john-walker-explained-hp-and-ibm-in-1991/)
- Hacker News: [https://news.ycombinator.com/item?id=45745382](https://news.ycombinator.com/item?id=45745382)
- 作者: suioir
- 评分: 9
- 评论数: 5
- 发布时间: 2025-10-29 19:28:17
---
## 为什么理解反向传播至关重要?揭秘神经网络中的“泄漏抽象”
本文探讨了为什么即使在使用高级深度学习框架时,理解反向传播的底层机制仍然至关重要。作者认为,反向传播是一个“泄漏抽象”,如果对其原理不甚了解,很容易在神经网络的设计和训练中遇到意想不到的问题。
文章首先指出,仅仅依靠框架自动计算梯度,而不理解反向传播的细节,可能会导致一些常见的问题,例如梯度消失和ReLU死亡。梯度消失问题通常出现在使用Sigmoid或Tanh激活函数的网络中,如果权重初始化不当,这些激活函数可能会饱和,导致梯度接近于零,从而阻止网络学习。ReLU死亡问题则发生在ReLU激活函数中,如果一个ReLU神经元在训练过程中始终不激活,那么它的权重将不会更新,导致该神经元永久失效。
文章通过具体的代码示例,展示了这些问题是如何产生的。例如,当Sigmoid函数的输入值过大或过小时,其梯度会接近于零,从而导致梯度消失。而当ReLU神经元的输入始终为负时,它将永远不会激活,导致ReLU死亡。
因此,作者强调,深入理解反向传播的原理,可以帮助开发者更好地设计和调试神经网络,避免这些常见的问题。例如,通过合理的权重初始化方法,可以避免Sigmoid函数的饱和。通过使用Leaky ReLU等变体,可以缓解ReLU死亡问题。
总之,理解反向传播不仅是一种学术上的追求,更是一种实践上的必要。只有深入理解其原理,才能更好地利用深度学习框架,构建出更加健壮和高效的神经网络。
- 原文: [Backpropagation is a leaky abstraction (2016)](https://karpathy.medium.com/yes-you-should-understand-backprop-e2f06eab496b)
- Hacker News: [https://news.ycombinator.com/item?id=45787993](https://news.ycombinator.com/item?id=45787993)
- 作者: swatson741
- 评分: 208
- 评论数: 82
- 发布时间: 2025-11-02 13:20:12
---
## Matched Clean Power Index 上线:追踪可再生能源的真实使用情况
英国的 Matched Clean Power Index 旨在解决可再生能源使用中的一个重要问题:现有系统允许供应商用夏季太阳能抵消冬季晚间的天然气发电,导致消费者无法真正了解其购买的“绿色电力”的来源。该指数通过追踪可再生能源的生产和消费,按小时计算匹配分数,揭示了不同供应商在可再生能源使用上的差异。
该指数结合了国家能源系统运营商、Ofgem 和 Elexon 的公开数据,展示了可再生能源供应与客户需求之间的匹配程度。结果显示,即使某些电力被标榜为 100% 可再生,但实际可能只有 55% 是真正的可再生能源。Good Energy 的可再生能源比例为 88%,而 Octopus 则为 69%。该方法论由 30 多位能源领域专家共同开发,并已公开发布,以便任何人都可以验证计算结果。
推出该指数的目的在于帮助消费者做出更明智的选择,让领先的供应商展示其优势,并明确系统需要改进的地方。英国的目标是到 2030 年实现清洁能源,而该指数可以帮助引导投资,促进可再生能源发电、存储和灵活性的发展,从而真正满足用电需求。Matched 的下一步计划包括向公司和个人提供数据、将核能纳入指数,以及与政策制定者合作,推动清洁能源目标的实现。
评论区对 Matched Clean Power Index 提出了不同的看法。有人认为,该指数将生物质能(如 Drax 电厂)和核能分别视为可再生和不可再生能源是不合理的,并且没有考虑到 Octopus Energy 客户的能源转移行为,导致排名出现偏差。也有人质疑 "This is not fraud" 的说法,认为缺乏准确性问责制可能导致欺诈。此外,还有人指出,现行的碳信用额度机制允许企业通过购买证书来抵消化石燃料的使用,从而虚报可再生能源的使用比例。有评论者表示,澳大利亚的“绿色电力”系统也存在类似的问题,因此希望也能推出类似的指数。
- 原文: [Matched Clean Power Index](https://matched.energy/blog/matched-clean-power-index-is-live)
- Hacker News: [https://news.ycombinator.com/item?id=45789640](https://news.ycombinator.com/item?id=45789640)
- 作者: bensg
- 评分: 19
- 评论数: 8
- 发布时间: 2025-11-02 19:52:23
---
## Fil-C:一款内存安全的 C/C++ 编译器使用体验
本文介绍了作者 djb 对新型内存安全 C/C++ 编译器 Fil-C 的使用体验,Fil-C 兼容性良好,许多库和应用程序无需修改即可运行,即使出现异常也很容易解决。
作者的目的是通过切换到 Fil-C 编译的代码来保护其管理的各种机器。文章分享了作者在使用 Fil-C 过程中积累的各种注意事项。Fil-C 附带 glibc 以及许多更高级别的库和应用程序。虽然也有 Fil-C 的二进制包,但作者主要使用的是源码包。
文章详细记录了编译 Fil-C 和 glibc 的过程,并提到了使用 musl 替代 glibc 的选项,但 musl 与 Fil-C 附带的某些软件包不兼容。作者还分享了使用 `build_all_fast_glibc.sh` 脚本编译 Fil-C 和 glibc 的经验,并提到最初服务器内存不足导致编译失败,增加交换空间后才成功。
此外,文章还介绍了 Fil-C 包含的更多库和应用程序,以及作者编写的替代脚本 `build-parallel-20251023.py`,该脚本可以并行构建多个目标,提高了构建效率。作者还列举了成功编译和跳过的软件包,并记录了遇到的问题和解决方法。
最后,文章还提到了 boost 1.89.0 的编译,并分享了解决 vfork 问题的方案。总的来说,作者对 Fil-C 的兼容性和易用性表示肯定,并分享了详细的使用经验和技巧。
- 原文: [Notes by djb on using Fil-C (2025)](https://cr.yp.to/2025/fil-c.html)
- Hacker News: [https://news.ycombinator.com/item?id=45788040](https://news.ycombinator.com/item?id=45788040)
- 作者: transpute
- 评分: 152
- 评论数: 69
- 发布时间: 2025-11-02 13:32:02
---
## HyperRogue:一款非欧几里得 Roguelike 游戏
HyperRogue 是一款设定在非欧几里得空间中的 Roguelike 游戏,它挑战你对几何的传统认知,提供了一种独特的探险体验。游戏的核心在于其独特的双曲几何,创造了一个无限延伸的世界,玩家需要在由六边形和七边形组成的网格中探索,体验与传统欧几里得几何不同的规则。
在这个游戏中,直线可能会发散永不相交,三角形内角之和可能小于 180 度,即使回到之前去过的地方,世界看起来也会发生旋转。游戏的目标是收集宝藏,找到 Yendor 的宝珠,或者仅仅探索 72 个不同的区域,每个区域都有其独特的主题、机制、图形和挑战。HyperRogue 的机制简单但难以精通,它更像是一款棋盘游戏,但棋盘是一个具有随机生成特征的双曲平面。敌人行动可预测,但一次攻击就能杀死玩家,因此,在游戏中与大群敌人作战仍然是一个挑战。
游戏提供了多种特殊模式,例如射击模式,以及欧几里得、椭圆或球面模式,以展示几何的重要性。玩家还可以尝试 Yendor 挑战或纯粹战术模式等额外挑战,或者使用 Hypersian Rug 或 Conformal 模式使游戏看起来不同。HyperRogue 最初是一个小型技术实验,但现在已经发展成为一个功能齐全的非欧几里得几何引擎,可以用于研究应用双曲几何,或者创建数学艺术。
评论区里,versteegen 提到了另一款非欧几里得 Roguelike 游戏 Smart Kobold,这款游戏在 7 天内制作完成,其地图由无缝连接的小块组成,以意想不到的方式连接在一起。这种非欧几里得地图对于人类来说很难导航,但对于计算机或 Kobold 来说却很简单。Jeff Lait 也将该代码用于其他 7DRL 游戏。
- 原文: [HyperRogue – A non-Euclidean roguelike](https://roguetemple.com/z/hyper/)
- Hacker News: [https://news.ycombinator.com/item?id=45789596](https://news.ycombinator.com/item?id=45789596)
- 作者: stared
- 评分: 64
- 评论数: 15
- 发布时间: 2025-11-02 19:40:47
---
## Java 中使用 Go 的基本类型:Go in a Box
本文讨论了在 Java 中使用 Go 语言基本类型的替代方案,以及 Java 集合对基本类型的支持问题。文章着重介绍了 Eclipse Collections 库,它为 Java 提供了丰富的原始类型集合支持,从而避免了自动装箱和拆箱带来的性能损耗。
Java 长期以来对原始类型集合的支持不足,导致开发者不得不使用包装类型,这带来了性能上的损失。Eclipse Collections 通过提供 `List`、`Set`、`Stack`、`Bag`、`LazyIterable` 和 `Map` 等原始类型集合,以及 `Interval` 和 `String` 类型的原始类型支持,弥补了 Java 的不足。这些集合类型拥有可变(Mutable)和不可变(Immutable)版本,为开发者提供了灵活的选择。作者强调了 Eclipse Collections 在设计上的对称性和一致性,并通过工厂方法来实例化这些集合。文章还提到了目前 Eclipse Collections 尚未支持的原始类型集合,例如 `BiMap`、`Multimap`、`SortedBag`、`SortedSet` 和 `SortedMap`,并表示未来可能会根据实际需求进行添加。文章还解释了为什么 Eclipse Collections 不支持 `BooleanObjectMap<V>` 或 `Boolean<Primitive>Map` 类型,并引用了另一篇文章来探讨 Map-Oriented Programming 的优缺点。
- 原文: [Go Primitive in Java, or Go in a Box](https://donraab.medium.com/go-primitive-in-java-or-go-in-a-box-c26f5c6d7574)
- Hacker News: [https://news.ycombinator.com/item?id=45706838](https://news.ycombinator.com/item?id=45706838)
- 作者: ingve
- 评分: 25
- 评论数: 8
- 发布时间: 2025-10-26 04:46:04
---
## 万圣节变装:自制英国斑马线交通灯 Belisha beacon 服装
本文讲述了作者为了参加万圣节活动,突发奇想,制作 Belisha beacon 服装的有趣过程。Belisha beacon 是英国斑马线上标志性的闪光交通灯,作者不仅介绍了它的历史和设计,还详细记录了制作服装的电路和材料选择。
文章首先介绍了 Belisha beacon 的由来,以及它在英国道路安全中的重要作用。接着,作者分享了制作服装的灵感来源,以及如何利用废旧材料和简单的电路知识,将这个想法变成现实。文章详细描述了电路的设计过程,包括使用 555 定时器 IC 控制 LED 灯的闪烁频率,以及如何用铜片制作简易 PCB。作者还幽默地提到了服装的“双重功能”,黄色代表安全的道路,红色则代表“地狱”。
文章还提及了英国在道路安全设计方面的创新,例如红绿灯、Pelican crossing 和 Puffin crossing。Puffin crossing 使用传感器来检测行人,从而更智能地控制交通信号灯,提高道路安全性。作者还饶有兴致地研究了 Puffin crossing 中使用的雷达传感器,并分享了找到的制造商信息。总而言之,这篇文章不仅是一篇有趣的 DIY 制作记录,也探讨了道路安全设计和技术发展之间的关系。
- 原文: [Welcome to hell; please drive carefully](https://2earth.github.io/website/20251026.html)
- Hacker News: [https://news.ycombinator.com/item?id=45726718](https://news.ycombinator.com/item?id=45726718)
- 作者: 2earth
- 评分: 37
- 评论数: 10
- 发布时间: 2025-10-28 05:47:07
---
## Claude Code 调试底层密码学:AI 在代码调试中的惊艳表现
本文讲述了作者使用 Claude Code 调试 ML-DSA 算法 Go 语言实现中的 bug 的经历,展示了 AI 在解决复杂底层密码学问题方面的强大能力。作者通过两个实验,证明了 Claude Code 能够快速定位并修复代码中的错误,即使是对于相对较新的算法实现。
文章首先介绍了作者在实现 ML-DSA 算法时遇到的问题,即验证总是拒绝有效的签名。在尝试调试无果后,作者尝试使用 Claude Code 来寻找问题。令人惊讶的是,Claude Code 迅速找到了一个相当复杂的底层 bug,即在 Verify 函数中重复使用了高位,导致签名验证失败。作者随后重构了代码,修复了该问题。
为了进一步验证 Claude Code 的能力,作者又进行了一个合成实验,人为地引入了两个 bug:一个是 Montgomery 域中的常量计算错误,另一个是签名中编码的值长度不正确。结果显示,Claude Code 成功地找到了这两个 bug,并提出了修复方案。
作者对 Claude Code 的表现印象深刻,认为它在调试底层密码学代码方面具有巨大的潜力。作者也指出,目前缺乏更好的工具来利用 LLM 的能力,例如,如果每次测试失败时,都能自动启动一个 LLM 代理来查找原因,并在找到问题后通知开发者,将会极大地提高开发效率。
总的来说,这篇文章通过实际案例展示了 AI 在代码调试方面的强大能力,尤其是在处理复杂的底层密码学问题时。虽然 AI 不能完全取代开发者,但它可以作为一种强大的辅助工具,帮助开发者更快地找到并修复 bug,从而提高开发效率。
- 原文: [Claude Code can debug low-level cryptography](https://words.filippo.io/claude-debugging/)
- Hacker News: [https://news.ycombinator.com/item?id=45784179](https://news.ycombinator.com/item?id=45784179)
- 作者: Bogdanp
- 评分: 374
- 评论数: 176
- 发布时间: 2025-11-02 02:41:56
---
## 如何高效利用 Claude Code 的各项功能
本文深入探讨了如何充分利用 Claude Code 的各项功能,旨在帮助开发者更有效地进行代码生成和管理。文章作者结合自身经验,分享了从 `CLAUDE.md` 文件的编写到自定义斜杠命令和子代理的使用技巧,并提出了避免常见误区的建议。
文章强调了 `CLAUDE.md` 文件在 Claude Code 使用中的核心地位,它相当于 AI 代理的“宪法”,为代码仓库提供指导原则。作者建议从定义明确的规则开始,避免直接复制文档,并避免使用纯粹的否定约束。相反,应该提供替代方案,并将 `CLAUDE.md` 作为简化代码库和内部工具的驱动力。此外,文章还介绍了如何使用 `/context` 命令来监控 token 使用情况,并提出了三种主要的工作流程:避免使用 `/compact`,使用 `/clear` 和 `/catchup` 进行简单重启,以及使用“Document & Clear”方法来处理大型任务。
关于斜杠命令,作者认为它们应该作为常用提示的简单快捷方式,而不是构建复杂命令列表来强制用户学习。文章还探讨了自定义子代理的潜力,认为它们可以有效地管理上下文,但实际应用中可能存在挑战。总而言之,文章旨在帮助开发者更好地理解和使用 Claude Code,从而提高工作效率和代码质量。
- 原文: [How I use every Claude Code feature](https://blog.sshh.io/p/how-i-use-every-claude-code-feature)
- Hacker News: [https://news.ycombinator.com/item?id=45786738](https://news.ycombinator.com/item?id=45786738)
- 作者: sshh12
- 评分: 339
- 评论数: 117
- 发布时间: 2025-11-02 08:13:27
---
## Google Labs 和 DeepMind 推出 AI 营销工具 Pomelli
Pomelli 是 Google Labs 和 DeepMind 联合推出的 AI 营销工具,旨在帮助企业轻松创建符合品牌调性的营销内容。它通过 AI 技术简化了营销内容创作流程,让企业能够更高效地进行品牌推广。
Pomelli 的核心功能是利用 AI 自动生成各种营销素材,包括文案、图片,甚至视频。用户只需提供一些基本的品牌信息和营销目标,Pomelli 就能根据这些信息生成一系列符合要求的营销内容。这大大降低了营销内容创作的门槛,让中小企业也能拥有专业的营销团队。
此外,Pomelli 还支持用户对生成的内容进行自定义编辑,以满足更个性化的需求。用户可以调整文案的语气、修改图片的风格,或者添加自己的创意元素,从而打造独一无二的营销内容。Pomelli 还集成了数据分析功能,可以帮助用户跟踪营销活动的效果,并根据数据反馈进行优化。
Pomelli 的推出无疑为营销行业带来了新的变革,它将 AI 技术与营销内容创作相结合,为企业提供了一种更高效、更智能的营销解决方案。未来,随着 AI 技术的不断发展,Pomelli 有望成为企业营销的重要工具。
- 原文: [Pomelli](https://blog.google/technology/google-labs/pomelli/)
- Hacker News: [https://news.ycombinator.com/item?id=45786324](https://news.ycombinator.com/item?id=45786324)
- 作者: birriel
- 评分: 215
- 评论数: 87
- 发布时间: 2025-11-02 07:09:25
---
## FlightAware 地图设计:基于 OpenStreetMap 的全新矢量地图
FlightAware 发布了全新的航班追踪地图,采用了全矢量图,并对机场细节进行了大量升级,包括航站楼、登机口和道路等,同时叠加了飞机地面和起降信息。
新地图主要基于 OpenStreetMap (OSM) 数据,并使用 Apache Baremaps 进行处理。FlightAware 对 OSM 数据进行了定制,提取了适用于地图图层和要素的子集,并过滤和组合 OSM 标签,形成有用的地图图层。地图风格与旧地图相似,但颜色和要求有所更新,整体风格偏暗,对比度较低。地图设计主要服务于两个目的:一是提供航班追踪时的方位参考,二是了解机场的地面情况。因此,地图省略了机场以外的详细信息,以减少文件大小和数据传输,方便在机载显示器中使用。
地图从 Natural Earth 数据过渡到 OpenStreetMap 数据,在细节上会有明显的差异。由于 OSM 是一个全球项目,拥有数千名贡献者,因此其数据可能存在一些特殊之处。
评论区观点:
* **@decimalenough:** 赞赏新地图可以显示机场内飞机的移动,但指出飞机标记与地图未对齐,且无法像 Flightaware 应用程序一样获取其他飞机的信息。此外,起飞和降落期间,地图会禁用显示精确位置、高度、速度和方向的功能。
* **@timenotwasted:** 赞同 OSM 数据“quirky”的说法,并表达了对维护 OSM 数据背后投入的大量时间的敬意。
* **@bytefish:** 很高兴看到 Apache Baremaps 被提及,并对参与其中的 PgBulkInsert 项目感到自豪。
* **@theguitarman:** 担心现代地图系统基于静态地球的假设,忽略了板块运动、冰后回弹和地震等因素,可能对依赖 GPS 的自动驾驶系统造成潜在风险。
- 原文: [FlightAware Map Design](https://andywoodruff.com/posts/2024/flightaware-maps/)
- Hacker News: [https://news.ycombinator.com/item?id=45719846](https://news.ycombinator.com/item?id=45719846)
- 作者: marklit
- 评分: 56
- 评论数: 17
- 发布时间: 2025-10-27 19:42:36
---
## LM8560:80年代的永恒芯片
本文主要介绍了LM8560芯片,这款芯片曾广泛应用于1980年代至2010年代的数字闹钟和收音机中,即使在2023年仍有少量生产。文章探讨了LM8560的成本效益、工作原理、常见问题、优缺点、隐藏功能以及一些不必要的行为。
LM8560的出现降低了数字闹钟的价格,尽管现在被认为是过时的芯片,但基于微控制器的现代闹钟并没有提供更多的功能。该芯片由日本三洋公司最初制造,其他公司也获得了生产许可,甚至出现了一些中国制造商的非法克隆产品。LM8560之所以能成为长寿芯片,是因为它持续生产了大约40年,并且其设计基本没有改变。在LM8560之前,数字闹钟的成本较高,设计也更复杂,通常使用荧光显示器而非LED,并且需要更多的组件。文章还提到了LM8562,它是LM8560的升级版本,可以设置两个不同的闹钟时间,并具有“慢速”和“快速”按钮来设置时间。文章还讨论了使用LM8560制作石英钟/直流供电时钟的方法、操作模式、相关芯片以及双工显示器。
文章还提到,对于电子爱好者来说,LM8560可能不是最好的选择。作者分享了自己的一些闹钟,包括1986年Majestic的第一台收音机、Sony ICF-C102、Sony ICF-C290和Thomson CR61,并对现代收音机进行了评价。最后,文章列出了LM8560的制造商和替代IC。
- 原文: [LM8560, the eternal chip from the 1980 years](https://www.tycospages.com/other-themes/lm8560-the-eternal-chip-from-the-1980-years/)
- Hacker News: [https://news.ycombinator.com/item?id=45787842](https://news.ycombinator.com/item?id=45787842)
- 作者: userbinator
- 评分: 75
- 评论数: 25
- 发布时间: 2025-11-02 12:27:31
---
## GHC 现在可以在浏览器中运行
本文介绍了 Haskell 编译器 GHC 现在可以在浏览器中运行,为 Haskell 语言的学习和使用提供了新的途径。这意味着开发者无需安装本地环境,即可在浏览器中体验 Haskell 的强大功能。
GHC (Glasgow Haskell Compiler) 是一个开源的 Haskell 编译器和交互式环境。它被广泛用于学术界和工业界,是 Haskell 语言事实上的标准实现。能够在浏览器中运行 GHC,得益于 WebAssembly (Wasm) 技术的发展,它使得在浏览器中运行高性能的编译型语言成为可能。通过将 GHC 编译为 Wasm,开发者可以在任何支持 WebAssembly 的浏览器中运行 Haskell 代码。
这项技术对于 Haskell 的推广具有重要意义。新手可以更轻松地尝试 Haskell,无需配置复杂的开发环境。教育工作者也可以利用它来教授 Haskell 编程,降低了学习门槛。此外,在浏览器中运行 GHC 还可以用于在线 Haskell 代码演示和原型设计。
评论区里,一些用户对这项技术表示赞赏,认为它简化了 Haskell 的学习和使用。有人提到,以前搭建一个 Haskell 的开发环境比较繁琐,现在可以直接在浏览器中运行,方便了很多。也有人表达了对安全性的担忧,因为在浏览器中运行代码可能存在安全风险。不过,通过沙箱技术,可以有效地隔离 untrusted 代码,降低风险。
另一些评论则关注实际应用。有人询问是否使用了 WasmGC (WebAssembly Garbage Collection),以及如何进行垃圾回收。还有人想了解这种技术与 Blazor Wasm 等前端技术的区别。此外,也有人寻求 “实用 Haskell” 教程,希望能够将 Haskell 应用于实际项目开发中。
总的来说,评论区反映了大家对 GHC 在浏览器中运行这一新技术的浓厚兴趣,同时也提出了一些实际问题和挑战。这项技术为 Haskell 语言带来了新的可能性,但仍需要在安全性、性能和易用性方面不断完善。
- 原文: [GHC now runs in the browser](https://discourse.haskell.org/t/ghc-now-runs-in-your-browser/13169)
- Hacker News: [https://news.ycombinator.com/item?id=45782981](https://news.ycombinator.com/item?id=45782981)
- 作者: kaycebasques
- 评分: 326
- 评论数: 113
- 发布时间: 2025-11-02 00:29:23
---
## 从 Prompt 工程到上下文工程:LLM 使用方式的演变
本文探讨了大型语言模型(LLM)的使用方式如何从早期的 Prompt 工程演变为更全面的上下文工程,以适应 LLM 在复杂系统中日益重要的角色。Prompt 工程侧重于通过精确的措辞来引导 LLM 产生期望的响应,但这种方法具有局限性。
文章指出,LLM 通过对大量数据集中的 token 序列进行建模来理解语言。每个 LLM 都有一个固定的上下文窗口,即它可以理解的 token 数量。最初,LLM 主要用于文本补全,但这种方式难以精确控制 LLM 的输出。为了解决这个问题,模型提供商开始训练模型来处理包含对话框架的 token 序列,通过特殊 token 来区分不同的发言者。这使得 LLM 在对话环境中更加可用,也更容易被引导。
随着 LLM 的发展,我们可以向它们提供更复杂的 token 序列,包括结构化和非结构化数据。这使得 LLM 能够基于 prompt 中的新结构生成输出,而不仅仅是记住训练数据集中的模式,这就是所谓的上下文学习。在 prompt 中可以包含各种信息,例如硬编码示例、非文本模态、工具和函数调用、文档和摘要,以及记忆和对话历史。
然而,随着上下文窗口被各种信息填满,LLM 的注意力和生成能力也面临挑战,增加了幻觉等错误的风险。因此,我们需要更加细致地构建上下文,考虑简洁性、相关性、时效性和安全性等因素。这意味着我们不再仅仅是进行 Prompt 工程,而是开始工程化整个生成发生的上下文。文章强调,LLM 的关键效用在于其模拟思考的能力,因此我们应该将其视为一个熟练的分析师,为其提供所有相关信息,明确定义任务,并提供可用的工具。
目前没有评论内容,因此跳过评论分析。
- 原文: [Context engineering](https://chrisloy.dev/post/2025/08/03/context-engineering)
- Hacker News: [https://news.ycombinator.com/item?id=45788842](https://news.ycombinator.com/item?id=45788842)
- 作者: chrisloy
- 评分: 34
- 评论数: 10
- 发布时间: 2025-11-02 16:52:23
---
## 自动将 C 代码翻译为 Rust:提升安全性和效率
本文探讨了将 C 代码自动翻译为 Rust 的重要性和挑战,指出虽然现有工具如 C2Rust 能够处理语法转换,但生成的代码未能充分利用 Rust 的语言特性,影响了代码的安全性和开发效率。
C 语言由于缺乏足够的安全机制,容易出现内存错误,导致严重的安全漏洞。Rust 语言则通过其所有权类型系统,在保证高性能的同时,提供了强大的安全保证,因此成为 C 语言迁移的理想目标。目前,已经有一些项目开始将 C 代码迁移到 Rust,例如 VLC 中的媒体解码器和 GNU Coreutils 中的实用程序。Linux 内核也开始支持使用 Rust 进行内核开发。
为了促进 C 代码到 Rust 的迁移,业界正在开发自动翻译工具。C2Rust 是其中最成功的工具之一,但其翻译结果仍不尽如人意。C2Rust 生成的 Rust 代码保留了 C 语言的特性,未能充分利用 Rust 独有的特性,导致代码安全性无法保证,并且包含大量不符合 Rust 编程习惯的代码模式。
为了最大限度地发挥迁移的优势,翻译器必须将 Rust 特性引入代码,用安全的替代方案替换不安全的特性,并用符合 Rust 习惯的替代方案替换不符合习惯的模式。由于 Rust 的许多特性需要源代码揭示 C 语言中隐含的信息,因此这项任务具有挑战性。例如,Rust 指针会明确指示哪个指针有权释放其指向的内存,而 C 指针则没有。
解决 C2Rust 局限性的最可行方法是通过多次改进来逐步改进翻译后的代码,每次改进都旨在替换特定的特性或模式。在 C2Rust 的初始翻译之后,Rust 代码包含各种不安全的特性和不符合习惯的模式。然后,通过每次传递来改进代码,专门用于引入 Rust 特性。
- 原文: [Automatically Translating C to Rust](https://cacm.acm.org/research/automatically-translating-c-to-rust/)
- Hacker News: [https://news.ycombinator.com/item?id=45695483](https://news.ycombinator.com/item?id=45695483)
- 作者: FromTheArchives
- 评分: 81
- 评论数: 43
- 发布时间: 2025-10-24 23:12:33
---
## 阻止 Microsoft 用户对邮件发送“反应”:添加 Postfix 标头
本文介绍了如何通过在 Postfix 邮件服务器上添加自定义标头 `x-ms-reactions: disallow` 来阻止 Microsoft Outlook 用户对你发送的邮件发送“反应”。作者分享了其动机和具体实施步骤,旨在避免接收到无意义的“反应”邮件。
作者提到,越来越多的邮件回复变成了“反应”,对于非 Microsoft 生态系统用户来说,这些反应以邮件形式呈现,内容为“某人对你的消息做出了反应”。为了解决这个问题,作者参考 Microsoft 提供的特定标头,该标头可以阻止 Outlook 客户端发送反应。虽然需要为不需要的功能设置特定标头有点烦人,但至少存在这样的解决方案。
作者选择在 Postfix 配置中添加此标头,以确保所有发出的邮件都包含它。具体做法是修改 `/etc/postfix/main.cf` 文件,并向 `/etc/postfix/header_checks` 文件添加一行代码,在 `Date` 标头之前插入 `x-ms-reactions: disallow` 标头。修改完成后,重启 Postfix 服务并进行测试,以确保标头已正确添加。
测试结果显示,即使 Microsoft 客户端仍然允许用户发送反应,但由于服务器端的保护机制,这些反应可能无法到达接收者的邮件服务器。另一种情况是,Microsoft 客户端直接灰显了反应选项,并显示“此消息不允许反应”的提示。作者认为,这可能因 Microsoft 系统而异,但最终目标是避免接收到“反应”邮件。
评论区里,用户们对此话题展开了热烈的讨论。有人认为,这种功能应该是默认关闭,用户选择开启,而不是默认开启,用户选择关闭。也有人建议将这些“反应”邮件标记为垃圾邮件,利用贝叶斯算法进行过滤。另有用户提到,类似的功能可能会出现在其他邮件客户端中,并分享了相关 RFC 文档。一些用户对添加自定义标头的方式表示疑问,认为可能存在更简洁的方法。还有用户将这种自定义标头比作带有厂商前缀的 CSS 扩展,认为这种做法并不理想。最后,也有用户质疑这种“反应”邮件是否真的那么令人厌烦。总的来说,评论区反映了对这一问题的不同看法和解决方案。
- 原文: [Stop 'reactions' to email by adding a postfix header (2024)](https://neilzone.co.uk/2024/07/attempting-to-stop-microsoft-users-sending-reactions-to-email-from-me-by-adding-a-postfix-header/)
- Hacker News: [https://news.ycombinator.com/item?id=45789896](https://news.ycombinator.com/item?id=45789896)
- 作者: fanf2
- 评分: 47
- 评论数: 42
- 发布时间: 2025-11-02 20:42:04
---
🫵 来啊,说点有用的废话!
▲