每日HackerNews RSS

## Sonner:一个流行的Toast库的故事 Sonner,一个Toast通知库,已经迅速流行起来——每周npm下载量超过700万次,并被X、Vercel等公司采用,以及作为shadcn/ui的默认库。尽管市场竞争激烈,但Sonner的成功源于其对优雅性和用户体验的关注。 创建者有意选择了独特的名称“Sonner”(法语中“敲响”的意思),而不是功能性的名称,优先考虑了易记性。至关重要的是,Sonner视觉上吸引人的堆叠动画虽然并非全新,却是第一个被广泛可用的开源实现。 除了美观之外,Sonner还优先考虑流畅的开发者体验。它避免了像Context这样的复杂React模式,而是利用了一个简单的观察者模式和一个直接的`toast()`函数调用。诸如滑动消失、展开Toast以及处理标签页非活动状态等功能,都体现了对细节的关注。动画使用CSS过渡处理,以实现可中断性,并且巧妙的CSS技术保持了hover状态和拖动功能的一致性。 最终,Sonner的成功归功于其美丽的设计和易用性——提醒我们,在软件开发中,优先考虑美学可以成为强大的差异化因素。

## macOS 应用结构:历史概述 早期的 Mac 应用(如 QuarkXPress 4.11)将资源——窗口、菜单等——存储在与可执行代码分离的“资源分支”中。这与简单的命令行程序形成对比。Mac OS X 的出现带来了从 NeXTSTEP 继承的重大转变,即“捆绑包”结构。 现代 macOS 应用本质上是结尾为 `.app` 的目录,包含一个 `Contents` 文件夹。该文件夹包含可执行代码(在 `MacOS` 中)、资源(如图标,在 `Resources` 中)以及潜在的共享库(`Frameworks`)。 重要的是,`Info.plist` 定义了应用元数据——可执行文件名称、所需的 macOS 版本、文档类型——而 `PkgInfo` 保留了经典的 Mac OS 类型/创建者信息。 启动应用涉及 `launchd`、`LaunchServices` 和 `RunningBoard`,它们都依赖于 `Info.plist` 数据。 随着时间的推移,安全功能(如代码签名,Leopard 中添加)和公证引入了 `_CodeSignature` 和 `_MASReceipt` 等目录。 如今的捆绑包越来越集中组件——以前分散在 Library 文件夹中——在应用本身内(例如,`Library`、`XPCServices`、`Plugins`)。这种自包含的方法简化了安装、更新、删除,并通过签名和公证增强了安全性,无论 Intel 还是 Arm 架构。

## macOS 应用解剖与开发者困境 一篇最近在 Hacker News 上的帖子剖析了 macOS 应用程序的结构,突出了开发者面临的复杂性。虽然核心结构相对标准,但现代 macOS 的要求,例如公证,增加了显著的障碍。 公证,旨在提高安全性,实际上是强制性的,因为未公证的应用会向用户触发严重警告,需要导航系统设置才能运行。开发者们表达了担忧,认为公证并未明显提高安全性,反而增加了每年 99 美元的成本。与 Windows 和 iOS 的比较显示出类似的“付费才能玩”的情况,Windows 代码签名在历史上成本更高,但最近通过 Azure 代码签名得到了改善。iOS 应用分发也面临着测试要求的挑战。 讨论揭示了开发者对苹果控制和缺乏透明度的沮丧,尤其是在验证流程和证书吊销方面。一些开发者选择使用 Web 应用来避免平台特定的麻烦,而另一些开发者则强调 macOS 标准化结构的优势,尽管存在额外的摩擦。最终,这场对话强调了一种日益增长的观点,即平台限制正在阻碍开发者,并可能扼杀创新。

本文详细记录了对53篇研究论文引用的扫描结果,揭示了大型语言模型(LLM)生成的参考文献存在显著问题。使用引文验证工具的分析发现,不准确现象普遍存在。 超过60%的论文列表存在问题,范围从完全捏造的作者和标题到不正确的细节,如出版年份或网址。许多引用*部分*匹配现有论文,但作者列表或关键元数据有重大更改。在一些情况下,提供的引用指向不相关的文章,甚至不存在的来源。 这些错误并非随机的;有些论文完全捏造了作者列表,而另一些论文则正确引用了论文,但修改了细节。这表明LLM并非仅仅是记错,而是主动构建听起来合理但错误的引用。这些“幻觉”的频率凸显了在使用LLM进行学术研究和文献综述时的一个关键可靠性问题。与每篇论文相关的评分范围为0.5到8.0,表明受影响的研究领域广泛。

启用 JavaScript 和 Cookie 以继续。

## 代码中的重复:并非总是坏事 一则 Hacker News 的讨论强调了一个常见问题:在软件开发中过度热衷于“不要重复自己”(DRY)原则。许多开发者报告说,他们通过积极地重构来消除重复,从而创建了脆弱且难以更改的代码库,导致函数职责过于宽泛,缺乏明确的目的。 核心论点是,并非所有重复都有害。由*偶然*相似性产生的代码重复应该被保留,而源于共享*概念*的重复才是抽象的有效候选对象。过早或考虑不周的抽象会导致复杂且难以维护的系统。 许多评论者强调代码需要通过清晰的名称和目的来证明其存在价值。其他人指出过度工程的危险以及务实方法的重要性,建议少量的重复可能比复杂的抽象更好,尤其是在没有全面的自动化测试的情况下。Sandi Metz 的著作(“Poodr”)被推荐用于学习识别适当的抽象。最终,这场讨论提倡深思熟虑地权衡利弊,并优先考虑可维护性,而不是严格遵守 DRY 原则。

Transformer模型在序列处理方面表现出色,这得益于其“注意力”机制,但由于计算成本高昂,在处理非常长的序列时会遇到困难。最近的尝试,如Mamba-2,使用压缩技术,但会损失关键信息。 新的研究介绍了**Titans**,一种新颖的架构,以及其背后的理论框架**MIRAS**,提供了一种解决方案,它结合了循环神经网络的速度和Transformer的准确性。它们推进了“测试时记忆”——允许模型在*使用*过程中学习,通过优先处理和整合令人惊讶的新信息,而无需重新训练。 与压缩上下文的先前方法不同,MIRAS实现了实时适应。Titans在接收到数据时会主动更新其内部参数,立即将新细节整合到其知识库中。这种动态学习代表着人工智能模型朝着能够处理和理解极其漫长和复杂的序列迈出了重要一步。

## 谷歌的泰坦架构与人工智能的未来记忆 这次Hacker News讨论围绕谷歌最近发表的关于“泰坦”架构的研究,旨在为人工智能模型提供一种长期记忆形式。核心思想是允许模型根据“令人惊讶”的信息选择性地更新其记忆,而不是简单地将所有数据存储在不断增长的上下文窗口中。 对话强调了谷歌在人工智能研究方面日益增长的开放性,与过去的保密情况形成对比,并将其与Meta和DeepSeek(后者引发了关于潜在从美国公司窃取知识产权的争论)的贡献进行比较。许多评论员认为,这种方法是朝着更像人类的人工智能迈出的关键一步,能够更好地理解和综合信息,从而实现更长时间的交互。 然而,也存在怀疑论。一些人质疑其实际应用,以及谷歌是否真的会扩大这项技术规模,而另一些人则指出了提示注入漏洞的可能性。讨论还涉及人工智能发展的更广泛影响,包括对齐问题和潜在的滥用风险。最终,共识倾向于泰坦是该领域一项重要且可能具有革命性的进步。

石勒苏威根-荷尔斯坦州在转向开源软件方面取得了显著成功,扭转了之前对微软产品的依赖。数字化部长迪尔克·施罗德特报告称,预计每年可节省超过1500万欧元的Windows和Office许可费用,并计划在2026年进行一次性900万欧元的投资,用于工作场所转换和进一步开发——成本将在一年内收回。 目前,近80%的州政府工作场所(不包括税务局)使用LibreOffice,降低了对单一供应商的依赖,并增强了数字主权。虽然过渡并非一帆风顺,一些员工报告了可用性问题,但长期效益正在显现。 该州认为这是一个“马拉松,而不是短跑”,旨在转换剩余20%依赖微软程序的部门。尽管反对派批评实施质量,但支持者强调了现代化行政流程的机会,并强调开源是长期更优的解决方案。财政收益为石勒苏威根-荷尔斯坦州提供了更大的灵活性,以解决剩余问题并优化其新的开源基础设施。

## Figma 追寻“圆角方” 这个故事讲述了 Figma 为了在他们的设计工具中完美复制苹果在 iOS 7 中引入的“圆角方”——一种微妙的圆角形状——所做的努力。这一切始于认识到这个看似微小的设计细节的影响,源于为设计师提供准确的界面元素的需求。 最初的方法涉及数学公式,从“超椭圆”开始,但结果并不准确。调查最终指向基于贝塞尔曲线的解决方案,并最终确定 Mike Swanson 和 Manfred Schwind 的工作是关键。然而,仅仅复制形状是不够的;Figma 需要一个*可参数化*的平滑系统,以实现灵活性和一致性。 挑战随之而来:保持对称性,处理扁平化时的形状扭曲,以及确保可用且可调节的平滑效果。团队优先考虑简单性,最终找到了一种基于修改后的贝塞尔曲线和简单平滑与像素消耗之间关系的方法。 虽然完美的曲率曲线始终难以捉摸,但最终结果与 iOS 圆角方非常接近,并为设计师提供了一个多功能的工具,用于创建各种角样式。这个过程凸显了从最简单的解决方案入手,并在数学上的完美性与实际可用性和实施限制之间取得平衡的价值。

这个Hacker News讨论围绕着一篇2018年的Figma文章“绝望地寻找圆角矩形”(Desperately Seeking Squircles),探讨如何创建平滑的圆角(圆角矩形形状)。 一位评论者质疑作者对欧拉螺旋/布线圆角矩形的否定,特别是关于曲率中心的变化以及在Figma的立方贝塞尔曲线中准确表示所需的更高阶弧长计算。他们想知道为什么没有使用多个贝塞尔段,而是使用近似值。 另一位用户指出文章中的公式在Figma的深色模式下难以阅读。 讨论的核心在于数学精度和实际设计考虑之间的权衡——设计师更喜欢更少的曲线,即使这意味着牺牲完美的曲率。

## 科里·多克托关于批评人工智能和“逆向半人马” 科里·多克托最近在华盛顿大学的演讲,预览了他即将出版的书籍《逆向半人马的生活指南》(2026年6月),重点讨论了如何有效地批评人工智能。他认为,许多关于人工智能的讨论都偏离了重点,受到炒作和投资者利益的驱动,而非真正的社会效益。 多克托通过“逆向半人马”的概念来阐述这个问题——人类作为机器的附属物,为了效率提升而被剥削(例如,被人工智能监控的快递员)。他认为人工智能的发展方向是*创造*这些逆向半人马,而不是赋能人类。 他批评科技垄断企业需要像人工智能这样的持续“泡沫”来维持增长,并警告说人工智能取代工作的承诺是为削减成本和剥削工人服务的烟幕弹。多克托提倡将批评的重点放在人工智能的*实际*危害上——它如何恶化工作并可能降低质量——以及基于共同利益建立联盟,而不是陷入关于人工智能潜在意识的争论。他强调理解科技公司如何构建叙事以谋取自身利益的重要性,并敦促人们关注替代方案,抵制“别无选择”的心态。

## AI 批评与经济担忧:摘要 最近 Hacker News 上的一场讨论围绕着 Cory Doctorow 的文章“反半人马 AI 批评指南”。核心论点是,当前的 AI 估值不可持续,依赖于大规模取代劳动力的前提——这个前提并非一定现实,即使实现,也会造成损害。 对话强调,AI 工具虽然令人印象深刻,但无法真正*取代*工作,而高管们对它们的潜力被误导。许多评论员表达了对由这种 AI 炒作泡沫引发的潜在经济衰退的担忧。 讨论还涉及版权问题,认为 AI 主要是在重组现有的“模因”和模式,模仿人类的创作过程。 建议对 AI 的能力进行现实评估,并可能为创意工作者进行行业谈判,以减轻负面影响。 尽管有些人认为 AI 的进步是不可避免的,但另一些人则指出了电力生成的局限性以及市场可能出现的修正,类似于互联网泡沫。

我们检测到您的浏览器已禁用 JavaScript。请启用 JavaScript 或切换到受支持的浏览器以继续使用 x.com。您可以在我们的帮助中心查看受支持的浏览器列表。帮助中心 服务条款 隐私政策 Cookie 政策 版权信息 广告信息 © 2025 X Corp.

LWN.net,一个面向开发者的Linux新闻网站,恳请订阅以支持其工作——他们更倾向于撰写信息丰富的文章,而不是投资于营销。最近的一篇深度报道聚焦于Linux内核自我保护项目(KSPP)为期十年的努力,旨在提高内存安全性,特别是解决有问题的`struct sockaddr`网络结构。 `sockaddr`最初设计于1980年代,其固定大小的数据字段现在常常不足,导致开发者将其视为一个灵活的数组——这种做法阻碍了边界检查。试图正式将其定义为灵活数组导致了大量的编译器警告,从而阻碍了进展。 目前的解决方案是引入`sockaddr_unsized`,一个新的变体,允许灵活的大小,同时在特定的内部接口中保留长度信息。这使得能够将`sockaddr`恢复到其原始定义,从而启用边界检查并消除警告。然而,`sockaddr_unsized`仍然存在潜在的溢出风险,促使未来增加长度字段以进一步提高安全性。这说明了即使Rust集成提供了长期的好处,确保内核庞大的C代码库安全仍然是一个持续的挑战。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 一个 Struct Sockaddr 后续 (lwn.net) 28 分,来自 g0xA52A2A 1 天前 | 隐藏 | 过去 | 收藏 | 讨论 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:

更多

联系我们 contact @ memedata.com