2025-04-24

36 篇热帖

1. You wouldn't steal a font (fedi.rib.gay)

根据提供的内容,其主要信息仅包含一个标题“You wouldn't steal a font”以及一个图片加载提示Loading...。内容本身并未包含任何可供总结的实质文本、技术说明或具体论述。因此,无法基于现有信息生成有效的摘要。

2. DOGE Worker’s Code Supports NLRB Whistleblower (krebsonsecurity.com)

A whistleblower at the National Labor Relations Board (NLRB) alleged last week that denizens of Elon Musk's Department of Government Efficiency (DOGE) siphoned gigabytes of data from the agency's sensitive case files in early March. The whistleblower said accounts created…

3. I wrote to the address in the GPLv2 license notice (2022) (code.mendhak.com)

I was curious about the 51 Franklin Street address in the GPLv2 license notice so I wrote to them as they said

5. Mark Zuckerberg says social media is over (www.newyorker.com)

Kyle Chayka writes about how the U.S. government’s antitrust lawsuit against Meta, the parent company of Facebook, illustrates how social media has changed since its popular adoption.

8. Shortest-possible walking tour to 81,998 bars in South Korea (www.math.uwaterloo.ca)

韩国81998家酒吧的最短步行巡游解决方案

核心成果

研究人员解决了访问韩国81998家酒吧的旅行商问题(TSP)。该问题使用开源路由引擎(OSRM)构建了包含33.6亿条点对点步行时间的计算表。计算结果生成了一条路线,并附有数学证明,证实其在OSRM估计时间下是访问所有站点的理论最短可能路径。任何站点顺序的调整都无法节省哪怕一秒钟。

路线概况

  • 总步行时间:15,386,177秒(约178天1小时56分17秒)。
  • 意义:这是已解决并证明最优性的最大规模道路网络TSP实例,超越了2021年2月解决的荷兰57912个站点的记录。

计算资源与团队

  • 计算于2024年12月至2025年3月间,在罗斯基勒大学滑铁卢大学进行。
  • 研究团队包括威廉·库克(滑铁卢大学)、丹尼尔·埃斯皮诺萨、马科斯·戈伊科莱亚(阿道弗·伊瓦涅斯大学)和凯尔德·赫尔绍恩(罗斯基勒大学)。

如何查看路线

  1. 交互式地图:文章提供可点击的截图链接,打开后左侧菜单可选择七个区域,右上角可选择地图样式,下方菜单可控制站点标记和路线边的显示。
  2. 高清图片:提供了四张路线快照的缩略图链接,点击可查看高清版本。城市区域的详细视图可访问专门的“城市”页面。

技术方法与最优性证明

  • 挑战:该问题可能的路线数量是一个天文数字(约81997的阶乘)。
  • 解决方案:结合了两种强大工具:
    • LKH代码:用于计算极其优质的TSP解。
    • Concorde代码:应用“切割平面法”来提供解的质量保证(即证明最优性)。
  • 核心思想:通过线性规划,最初允许道路使用比例为分数(如“半个推销员”),随后逐步添加约束,最终引导得出每个道路是否使用的最优决策。

研究意义

此类大规模TSP实例的解决,是开发和测试通用优化方法的重要手段。这些方法属于数学优化运筹学领域,旨在帮助社会更有效地利用有限资源,应用于工业、商业、医疗和环境等多个方面。

所用工具与数据来源

  • 优化求解器:IBM CPLEX Optimizer。
  • 地图绘制:Leaflet库,使用了OpenStreetMap、Carto Basemaps和Stadia Maps的地图瓦片。
  • 数据来源:酒吧地点数据来自韩国国家警察厅维护的数据库,由基础科学研究所离散数学小组的林尚一博士获取。
  • 步行时间表:使用OSRM创建。

同类项目与延伸阅读

文章还列举了此前解决的其他道路TSP实例(如日本便利店、英国酒吧、美国历史地标、荷兰纪念碑),并推荐了数本关于TSP、P与NP问题及相关算法的著作。

9. Instant SQL for results as you type in DuckDB UI (motherduck.com)

Type, see, tweak, repeat! Instant SQL is now in Preview in MotherDuck and the DuckDB Local UI. Bend reality with SQL superpowers to get real-time query results as you type.

10. They made computers behave like annoying salesmen (rakhim.exotext.com)

文章批评了当前软件设计中过度拟人化的问题,指出其将软件塑造成类似“烦人的销售员”,而非保持计算机应有的精确性。作者认为,用户体验设计的目标应是让机械命令更易用,而非模仿人类互动。技术公司的UX设计师和产品经理通过让软件行为像人类,损害了用户对计算机本质的理解。

以YouTube为例,当用户明确选择“不感兴趣”后,平台仍会以操纵性手段(如“30天内隐藏”)试图保留该功能,这种行为源于对参与度和增长指标的追求。文章进一步指出,这种趋势正使年轻一代习惯于接受软件的不可靠和操纵性,认为无法直接命令计算机尊重自己的选择,而需不断进行“稍后再说”式的互动。

11. YAGRI: You are gonna read it (www.scottantipa.com)

YAGRI:你将需要读取它

在软件开发中,YAGNI原则建议避免过早构建当前不需要的功能,以节省时间并防止项目失败。然而,存在一个重要的例外,本文称之为YAGRI,即“You are gonna read it”(你将需要读取它)。

核心观点

工程师在设计数据库时,不应仅存储满足当前产品规格或UI设计所需的最小数据集。相反,应预见到未来几乎确定需要读取的数据,并将其一并存储,例如时间戳和上下文元数据。

问题背景

当UI设计仅需向用户展示少量特定数据时,工程师容易在数据库中仅存储这些精确字段。这在功能上线后可能引发问题:当需要调试故障、进行内部分析或回溯事件时,会发现缺乏必要的信息。

具体示例:删除功能

以实现用户删除功能为例。简单的方法是直接删除数据库行。但无论当前需求如何,工程师应遵循良好的数据实践,存储以下信息:

  • 删除了它
  • 通过什么方式/权限删除
  • 何时删除
  • 为何删除(尽可能记录上下文)

通用建议字段

通常,在几乎任何数据库表上存储以下字段都是有用的:

  • created_at(创建时间)
  • updated_at(更新时间)
  • deleted_at(软删除时间)
  • created_by等(创建者信息)
  • 进行增删改查(CRUD)操作时所使用的权限信息

实践收益

即便这些额外存储的字段并非全部常用,但只要其中一个(例如某个表的某个时间戳字段)在某一天发挥了关键作用——例如,当管理层询问“我们是否知道那个数据被删除的原因?客户很担心……”——其价值就足以抵消存储十几个类似字段的成本。

平衡之道

此实践并非鼓励无限制地记录一切。关键在于避免两个极端:既要为未来有价值的数据读取做准备,也不应过度记录。实践表明,从未有人抱怨某个表拥有过多的时间戳字段。

最终,我们构建的大多数应用的核心是存储数据以记录事实。因此,作为工程师,** stewardship 和维护好数据**可能是你最重要的职责之一。

12. Show HN: My from-scratch OS kernel that runs DOOM (github.com)

Mirror of my from-scratch x86_64 UNIX-like OS. Contribute to UnmappedStack/TacOS development by creating an account on GitHub.

16. Teaching LLMs how to solid model (willpatrick.xyz)

It turns out that LLMs can make CAD models for simple 3D mechanical parts. And, I think they’ll be extremely good at it soon.

17. Creating your own federated microblog (fedify.dev)

In this tutorial, we will build a small microblog that implements the ActivityPub protocol, similar to Mastodon or Misskey, using Fedify, an ActivityPub server framework.

18. CubeCL: GPU Kernels in Rust for CUDA, ROCm, and WGPU (github.com)

Multi-platform high-performance compute language extension for Rust. - tracel-ai/cubecl

19. The hidden cost of AI coding (terriblesoftware.org)

AI coding tools boost productivity but may sacrifice the flow state and deep satisfaction developers experience when writing code by hand. What are we losing?

20. First Successful Lightning Triggering and Guiding Using a Drone (group.ntt)

News Highlights: ◆We have achieved the world's first successful lightn...

25. America's reputation drops across the world (www.ipsos.com)

The proportion saying the United States will have a positive influence on world affairs has fallen in 26 out of 29 countries over the last six months. America’s reputation has fallen most markedly in Canada. For the first time in our decade-long survey series, China is placed ahead of the US when it comes to playing a positive role on the international scene.

29. Show HN: Colanode, open-source and local-first Slack and Notion alternative (github.com)

Open-source and local-first Slack and Notion alternative that puts you in control of your data - colanode/colanode

30. Protecting NATS and the integrity of open source (www.cncf.io)

Updated May 1, 2025: CNCF and Synadia have come to an agreement to ensure that NATS continues to thrive as a healthy open source project within CNCF…

33. Vim Language, Motions, and Modes Explained (2023) (www.ssp.sh)

Vim is a powerful text editor that improves coding speed & efficiency through its shortcut-based Vim language. While learning Vim can be challenging, it is a valuable skill that can enhance your career as a computer professional.

35. QEMU Version 10.0.0 Released (www.qemu.org)

QEMU 10.0.0 正式发布。此版本包含来自211位作者的2800多个提交。

主要亮点包括:

  • Block:为 virtio-scsi 添加了多队列支持,可使用不同的 I/O 线程处理每个队列的请求。
  • VFIO:改进了对所有 Intel Gen 11/12 设备的 IGD 直通支持。
  • 文档:大幅改进了 QEMU 机器协议(QMP)的文档,使其更清晰、更有条理,所有命令/事件/类型在生成的文档中均可通过可点击链接交叉引用。
  • ARM
    • 新增对 Secure EL2 物理和虚拟定时器的仿真支持。
    • 新增对 FEAT_AFP、FEAT_RPRES 和 FEAT_XS 架构特性的仿真支持。
    • 新增 NPCM8445 Evaluation 和 i.MX 8M Plus EVK 开发板型号。
  • HPPA
    • SeaBIOS-hppa 升级至版本18,包含大量修复和增强。
    • 翻译速度和虚拟 CPU 重置性能得到改善。
    • 新增对 Diva GSP BMC 板的仿真支持。
  • LoongArch:支持 CPU 热插拔、半虚拟化 IPI、KVM 偷取时间统计以及虚拟 'extioi' 中断路由。
  • RISC-V
    • 新增对 riscv-iommu-sys 设备、‘svukte’、‘ssstateen’、‘smrnmi’、‘smdbltrp’/‘ssdbltrp’、‘supm’/‘sspm’ 以及 IOMMU 翻译标签的 ISA/扩展支持。
    • 新增对 Ascalon、RV64 香山南湖 CPU 以及 Microblaze V 开发板的仿真支持。
  • s390x
    • 添加了对第17代大型机 CPU 的 CPU 型号支持。
    • 添加了对 virtio-mem 的支持,并支持绕过 IOMMU 以提高 PCI 设备性能。
  • x86
    • 添加了对 Clearwater Forest 和 Sierra Forest v2 的 CPU 型号支持。
    • 加速了字符串指令的仿真。

此外,此版本还包含众多其他改进和修复。感谢所有为此次发布做出贡献的成员。

36. Graphics livecoding in Common Lisp (kevingal.com)

Developing a Boids program from scratch without restarting it.