每日HackerNews RSS

DMMSY 是一个高性能的 C99 单源最短路径 (SSSP) 算法实现,比传统的 Dijkstra 算法实现了显著的加速。该算法发表于 STOC 2025 会议论文,通过使用递归子问题分解代替全局优先队列,克服了 $O(m + n \log n)$ 的复杂度限制,达到了 $O(\log^{2/3} n)$ 的复杂度。 主要特性包括:通过手动内存管理实现零分配设计,优化的压缩稀疏行 (CSR) 布局,以及模块化架构以方便维护。基准测试表明,加速倍数超过 20,000 倍,尤其是在具有 250k–1M+ 节点的图上。 该项目提供了一个基准测试套件用于性能比较,并针对使用 Clang 优化的现代 x86_64 架构设计。它采用双许可模式(MIT 和 Apache 2.0),并欢迎贡献。核心逻辑非常精简(1M 节点约为 800ns),有效消除了排序瓶颈。

叶卡捷琳娜·福明娜是一位俄罗斯调查记者,在俄罗斯2022年入侵乌克兰后被迫流亡。她此前以“实地调查”闻名——通过与人直接接触来构建故事,福明娜意识到日益升级的审查和压迫将很快使独立新闻业变得不可能。 战争开始时,目睹她同胞中对这场冲突的广泛支持,让她下定决心离开,明白她无法再安全地从俄罗斯境内报道。她只带了一个行李箱逃离,留下了一生和家人,未来充满不确定性。 现在居住在欧洲,福明娜调整了她的方法,从实地调查转向开源情报。她专注于调查战争罪行,特别是利用从一部回收的手机中获取的数据,识别参与布查大屠杀的俄罗斯士兵。这项工作导致她在俄罗斯被缺席逮捕,并因传播“虚假新闻”而被判处8年半的监禁。 尽管付出了个人代价和遭受了创伤,福明娜仍然致力于她的工作,受到持续的战争罪行和对真相力量的信念的驱动。她承认不太可能返回俄罗斯,但继续报道,压制她的创伤,以揭露冲突的现实。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 首先,他们来针对记者 (codastory.com) 38点 由 cdrnsf 1天前 | 隐藏 | 过去 | 收藏 | 讨论 帮助 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:

## 即将到来的AI革命与分配问题 虽然对AI取代工作的担忧与过去的工业革命相似,但一个关键的争论却被忽略了:当劳动的经济价值降低时,社会将如何运作——以及如何被*养活*?像Sam Altman这样的人物所宣传的AI驱动的财富前景受到质疑,因为公平的分配并非得到保证。即使在繁荣的情况下,控制其分配——以及随之而来的权力——也是一个主要问题。 核心挑战在于,随着传统税基(如收入)的侵蚀,需要重组金融体系。建议包括增加资本税,甚至直接征收AI投资税或收购AI企业的公共股权。然而,这些解决方案需要科技寡头们分享财富的意愿,考虑到当前的政治趋势和他们对监管的抵制——例如最近的税收协议撤回以及创建独立的“网络国家”的努力——这种前景似乎不太可能。 最终,确保AI惠及所有人的未来,需要积极的治理、用于人类监督的“护栏”,以及将AI的目标从与所有者目标一致,转变为与社会需求一致。否则,我们面临的风险是,少数亿万富翁控制着基本资源,而大多数人则依赖他们的善意。

## 在Scheme中用`call/cc`模拟GOTO 本文探讨了在Scheme中重现`GOTO`语句的功能——尽管`GOTO`经常被认为会产生混乱的代码——Scheme语言本身并没有直接等价的语句。作者认为,虽然戴克斯特拉批评了`GOTO`,但Scheme程序员却被剥夺了制造这种混乱的*机会*,并试图解决这个问题。 核心思想围绕着Scheme的`call/cc`过程,它捕获“当前延续”——本质上是程序的剩余执行部分。通过操纵这个延续,构建了一个`with-goto`宏。这个宏将标签定义为函数,并使用`call/cc`“跳转”到这些标签,从而有效地模拟了`GOTO`的行为。 实现利用一个辅助宏`%labels`来定义这些标签。生成的代码允许非顺序控制流,并通过循环示例进行演示。虽然功能上可行,作者坦率地承认这项练习在很大程度上是无意义的——`call/cc`有更有价值的应用。文章最后指出,更高级的控制流机制,如分隔延续,是更好的替代方案。

## Hacker News 讨论:使用续延在 Scheme 中模拟 Goto 一场 Hacker News 讨论围绕着使用续延在 Scheme 中模拟 `goto` 语句。一位用户分享了一个 C 语言实现的限定续延(附有 gist 链接和演示),引发了关于 `goto` 类似控制流的实用性和历史的对话。 几位评论者强调了相关的资源,包括弗里德曼关于 ReadScheme 的论文和 Common Lisp 的 `TAGBODY` 作为现有的方法。争论的中心在于,受限制的 `goto` 形式是否可能是有益的,特别是对于处理异常情况或复杂状态机,以及对非结构化 `goto` 语句的批评。 有人指出,克努斯算法经常使用向后跳转,并且使用受约束的跳转代替深度嵌套循环时,可能更清晰。 另一些人认为,虽然可以管理,但不受限制的跳转可能导致难以理解的代码。 讨论还涉及续延、协程和效果处理程序作为替代方法来解决类似问题的关系。 一位用户还注意到 Scheme 示例中的一个怪癖,即由于隐式续延,从 REPL 运行代码和从文件运行代码的行为不同。

## 重获网络:从租户到所有者 现代网络,被大型企业和政府主导,已将用户变成了租户和产品——助长了监控和“劣质化”的循环。本文提出一种转变:通过个人和合作社拥有硬件和软件,来重获互联网的所有权和控制权。 作者借鉴劳工联合会的例子,认为广泛的所有权可以积极影响网络。关键在于?简单。尽管科技巨头声称网络复杂,但像Markdown这样的工具现在使创建网络内容无需专业知识即可实现。 问题不在于缺乏技术,而在于对像WordPress这样复杂且资源密集型系统的依赖。可行的替代方案在于拥抱静态站点生成器并优先考虑易用性。作者提倡回归网络的去中心化根源,由经济实惠的硬件(如树莓派)和开源软件(如他们自己的“Antenna App”)提供支持,后者简化了从Markdown的内容创作。 最终目标是超越租用访问权限,成为共同所有者,培养一个建立在个人控制、隐私和真正连接之上的网络——一个“属于我们自己的简单网络”。这需要一种心态的转变,利用现有的技术来构建更公平和更具赋能感的在线体验。

美国宇航局巧妙地将已退役的“机智号”直升机中的强大处理器——高通801——重新用于增强“毅力号”火星车的自主导航能力。该处理器先前用于直升机通信,速度比“毅力号”现有系统快100倍。 这项被称为“火星全球定位”的“妙招”,利用算法快速将火星车摄像头图像与轨道地图进行比较,从而以惊人的精度(误差在10英寸以内)确定“毅力号”的位置。这使得火星车能够在无需地球持续指示的情况下,行驶“理论上无限的距离”,相比之下,其先前系统误差高达35米,并可能过早停止探索。 工程师通过巧妙的软件解决方案克服了处理器内部的轻微内存损坏。美国宇航局认为,这种商业芯片的成功集成将对未来的月球和行星任务具有重要价值,尤其是在精确位置跟踪至关重要的恶劣环境中。

## 两家零售商的故事:百思买与乔安面料 百思买和乔安面料代表了现代零售业截然不同的结果。百思买实现了稳定并进行了调整,通过价格匹配和投资于店内体验,变得“足够好”。而乔安面料尽管顾客需求持续存在,却还是崩溃了。关键区别在于:所有权结构和财务工程。 乔安面料曾经是一家健康的 company,在2012年被杠杆收购(LBO),背负了超过10亿美元的债务。这笔债务消耗了适应和再投资所需的现金流,导致货架缺货、商店人手不足以及顾客体验下降。尽管96%的门店现金流为正,但债务最终导致了它的破产。 “零售业末日”的说法,被亚马逊驱动的说法具有误导性。虽然电子商务发挥了作用,但像乔安面料这样的失败的主要驱动因素往往是私募股权施加的财务结构。这些公司收购盈利的公司,负债累累,提取费用,并优先考虑短期回报而非长期健康。这种模式在零售业中普遍存在,常常导致破产和失业,最终由纳税人承担费用。百思买的生存表明,稳定的资产负债表和再投资对于应对零售业的挑战至关重要,而乔安面料的命运则是一个关于财务提取的警示故事。

## Joann Fabrics 与百思买:两家零售商的故事 最近在Hacker News上的一场讨论探讨了Joann Fabrics失败而百思买幸存的原因,认为这并非仅仅是由于亚马逊。核心问题似乎是**杠杆收购 (LBO)**。Joann Fabrics通过LBO被收购,背负了债务,随后管理不善,导致衰落。百思买虽然面临挑战,但避免了这种命运。 许多评论员强调了LBO的危险性,即公司被负债累累,然后难以管理。有人呼吁制定法规,防止收购产生的债务转移到被收购公司身上。 讨论还涉及了不同的商业模式。Joann Fabrics专注于利基市场(面料)不足以克服糟糕的管理,而百思买则受益于提供即时访问产品和服务(如维修),这是亚马逊难以复制的。一些用户指出百思买的质量因地点而异。 最终,共识认为,掠夺性的金融行为是Joann Fabrics衰落的关键因素,与百思买适应能力和保持消费者重视的实体店形成了对比。

## Go 并发哈希表基准测试总结 本文详细介绍了 Go 中几种并发哈希表实现的基准测试比较,包括 `sync.Map`、`xsync.Map`、`cornelk/hashmap`、`alphadose/haxmap` 和 `orcaman/concurrent-map`。目标是在不同的读/写比例和映射大小(100 到 1,000,000 个条目)下提供公平的性能比较。 主要发现表明,在读、写和迭代操作方面,**`xsync.Map` 通常表现最快**,并且在非分片映射中**分配次数最少**。**`sync.Map`** 自 Go 1.24 以来,受益于其 HashTrieMap 实现,提供了出色的读取扩展性,并且是一个强大的通用选择。**`cornelk/hashmap`** 在小尺寸下具有竞争力,但在较大的映射和写密集型工作负载下性能显著下降。**`alphadose/haxmap`** 在只读场景中表现出色,但在写竞争方面存在困难。**`orcaman/concurrent-map`** 由于在分片中使用标准的 Go 映射,因此分配次数为零,但其固定的分片数量限制了可扩展性。 基准测试是在不同的 `GOMAXPROCS` 值和工作负载(从 100% 读取到 75% 读取,并对应相应的写入/删除百分比)下进行的,并且测试了预热和无预热场景。所有库报告的读/写基准测试操作每次分配次数为零。

## 不要自己动手搭建邮件系统:创业经验 建立一家初创公司涉及无数决策,但一个看似简单的选择——如何处理事务性邮件——引发了一场令人惊讶的争论。作者使用Scaleway的事务性邮件服务所经历的经验凸显了一个关键点:**除非你想头疼,否则不要自己运行邮件服务器。** 尽管正确配置了SPF、DKIM和DMARC,邮件仍然被一家大型德国供应商屏蔽,仅仅是因为发送量暂时下降。这揭示了一个严峻的现实:2026年的邮件送达率不再是技术设置的问题,而是关于*声誉*以及与邮件提供商建立的关系。 大型提供商会积极监控发件人声誉,并可能因不活动而屏蔽IP地址,需要耗时的“邮局长舞蹈”来恢复访问权限。自托管服务器从零声誉开始,使送达率成为与灰名单和垃圾邮件过滤器持续斗争的挑战。 专业的TEM(事务性邮件)服务,如Scaleway(以及AhaSend或Lettermint等替代方案),可以汇集众多客户的声誉,维护与提供商的关系,并处理这些复杂问题。对于关键的事务性邮件——例如认证码——可靠的送达至关重要。花钱购买TEM是对你的产品真正*运作*的投资,而不是追逐过时、技术复杂且最终不可靠的解决方案。

## 年龄验证陷阱:社交媒体与数据隐私 对青少年心理健康的日益担忧正在推动立法者对社交媒体进行年龄限制的监管,类似于酒精或赌博。然而,执行这些规则提出了一个重大挑战:验证年龄需要收集和存储个人数据,这与现代数据隐私法直接冲突。 平台目前采用两种主要方法——身份验证(身份证件、数字身份)和行为推断(分析用户活动,甚至使用面部识别)。两者都有缺陷。身份验证要求排除了那些没有官方证件的人,而推断容易出错,并且需要持续监控。 这形成了一个重复验证的循环,简单的年龄声明变成了一个持续的测试,构建了庞大的用户档案。为了防御法律挑战,平台优先考虑数据保留而非隐私,记录验证尝试和用户行为。 在身份基础设施薄弱的国家,这种情况更加突出,导致通过生物识别分析和数据共享增加了监控。最终,年龄验证不是一个技术问题,而是一个政策问题——优先考虑执法而非隐私,创造了一个以牺牲所有人的数据为代价来保护儿童的系统。

## 年龄验证辩论与潜在的操纵舆论 近期一篇IEEE的文章,讨论了在线年龄验证的弊端,在Hacker News上引发了热烈讨论,并暴露了对潜在操纵对话的担忧。许多评论者注意到,似乎存在有组织的支持,要求对互联网使用进行身份验证,这引发了对**操纵舆论**(人为制造的草根支持,可能来自政府或机器人)的猜测。 核心争论在于在线隐私与安全之间的权衡,特别是对儿童的保护。一些人认为,年龄验证可以保护年轻用户免受有害内容的影响,而另一些人则担心这只是大规模监控的借口,并且由于容易获得虚假身份证明而无效。 提出的解决方案范围从复杂的密码学方法(零知识证明)到简单的做法,例如将互联网接入与现有的年龄限制产品法规(酒精/烟草)联系起来。一个反复出现的主题是,目前的提议要求的数据远远超过了必要的数据——仅仅需要验证某人是否*超过*某个年龄,而不是透露他们的全部身份。许多人认为,责任应该在于*提供*互联网接入的人,类似于当前关于酒精和香烟的法律,而不是要求进行普遍的身份验证。最终,这场讨论凸显了对动机的深深不信任,许多人怀疑真正的目标不是儿童安全,而是增加控制和数据收集。

更多

联系我们 contact @ memedata.com