2024 12 18 HackerNews

2024-12-18 Hacker News Top Stories #

  1. 英国在线安全法案对小型论坛运营者的影响:英国在线安全法案可能会导致小型独立技术社区被迫下线,因为它们无法承担遵守该法案的成本和风险。
  2. 如何让一个开发团队的应用程序达到 200 万用户:StoryGraph 的创始人兼 CEO Nadia Odunayo 在 Brighton Ruby 活动中分享了她如何让应用程序达到 200 万用户的经验。
  3. Veo 2:我们的视频生成模型:Veo 2 是 Google DeepMind 开发的视频生成模型,能够生成高质量的视频。
  4. 总是去参加葬礼:参加葬礼不仅是对死者家属的尊重,也是对自己生命的尊重。
  5. 法律语言为什么这么复杂?:法律文件的复杂语言是为了传达权威感,研究人员分析了大量法律合同和其他类型的写作,发现法律文件中经常出现长定义插入句子中的现象。
  6. Go Protobuf:The New Opaque API:Go 语言的 protobuf 模块近期发布了一个新的 API,称为 Opaque API,提供了更好的灵活性和性能。
  7. 使用线性代数构建交互式图表编辑器:作者在开发交互式图表编辑器 Schemio 时,使用线性代数来解决一些棘手的问题。
  8. 在 Nintendo DS 上运行 Rust 语言:作者决定在 Nintendo DS 上运行 Rust 语言,作为学习新语言的挑战。
  9. Waymo 将自动驾驶汽车带到东京:Waymo 宣布与日本公司 Nihon Kotsu 和 GO 合作,将其自动驾驶汽车技术带到东京。
  10. 我们的肌肉会在卡尔达肖夫指数的增长过程中萎缩:随着人类文明的进步,特别是工业革命的到来,人类的身体能力逐渐下降。

Lfgss shutting down 16th March 2025 (day before Online Safety Act is enforced) #

https://www.lfgss.com/conversations/401475/

这篇文章讨论了英国在线安全法案对小型论坛运营者的影响。作者运营着 300 多个论坛,每月有 275,000 活跃用户。由于新法案带来的巨大责任和风险,作者决定关闭这些论坛。

论坛的版主因为管理用户而经常受到攻击,新法案使得这种风险变得更加现实。作者在 28 年的论坛管理经验中,因版主工作遭受过域名撤销尝试、假版权通知、死亡威胁等。新法案使得个人责任和风险变得不可承受,作者预计在 2025 年 3 月 17 日将关闭论坛。

作者认为,虽然新法案旨在监管大型科技公司,但实际上只有这些公司能够遵守,这将使得更多的权力集中在这些平台上,而小型社区将逐渐关闭。


HN 热度 741 points | 评论 507 comments | 作者:buro9 | 1 day ago #

https://news.ycombinator.com/item?id=42433044

  • 网络监管可能会产生意想不到的后果,例如增加燃油经济标准可能会导致汽车制造商生产更多的不符合标准的卡车,保护儿童可能会导致孩子们被禁止参与任何可能增加风险的活动。
  • 英国的在线安全法案可能会导致小型独立技术社区被迫下线,因为它们无法承担遵守该法案的成本和风险。
  • 该法案可能会导致大型科技公司垄断市场,因为只有它们才能承担遵守该法案的成本。
  • 有人认为,应该对小型运营商免除监管,例如那些拥有不到 20,000 名用户的网站。
  • 复杂的企业结构可能会导致人们滥用系统,因为他们可以通过合法手段避免责任。
  • 管理人员有责任了解他们的公司正在发生的事情,不能因为不知道而推卸责任。
  • 该法案可能是有意为之的监管俘获,目的是保护大型科技公司的利益。
  • 有人认为,应该没有监管,因为在线论坛已经存在了 40 年,没有监管也没有导致世界末日。
  • 该法案可能会导致在线论坛被迫关闭,因为它们无法承担遵守该法案的成本和风险。
  • 该法案可能会导致人们无法获得真实的信息,因为在线论坛被迫关闭。

Getting to 2M users as a one woman dev team [video] #

https://brightonruby.com/2024/getting-to-2-million-users-as-a-one-woman-dev-team/

本网页主要介绍了一个名为 Brighton Ruby 的活动,活动将于 2025 年 6 月 19 日在 Brighton Dome 举行。同时,也提到了活动的演讲者 Nadia Odunayo,她是 The StoryGraph 的创始人兼 CEO,该应用程序帮助用户追踪阅读并根据心情和喜好推荐书籍。Nadia Odunayo 曾在 Pivotal Labs 工作,并在 Makers Academy 学习编程。

网页还提到了 Brighton Ruby 活动的历史,活动已经举办了十年,从 2014 年到 2024 年。同时,也提到了活动组织者 Andy Croll 的博客和一个名为 “One Ruby Thing” 的 newsletter。

此外,网页还提到了一个名为 “First Ruby Friend” 的志愿者导师计划,该计划是由 Ruby 社区为早期职业开发者提供的。最后,网页还提到了一个名为 “Chats in the Cupboard” 的播客,该播客是由位于美国波特兰和英国布莱顿的两个人之间进行的对话。


HN 热度 604 points | 评论 223 comments | 作者:vinnyglennon | 12 hours ago #

https://news.ycombinator.com/item?id=42441333

  • StoryGraph 是一个很棒的工具,作者每周都会发送开发日志邮件,内容非常有趣。
  • Hardcover.app 是一个不错的替代品,拥有 API 和更精致的 UI,但社区相对较小。
  • Goodreads 的广告非常令人讨厌,尤其是年终总结邮件中首先加载的就是广告。
  • StoryGraph 的 freemium 模式可能会导致很多人认为免费版已经足够,可能需要更多的付费用户来维持团队。
  • 书籍元数据的获取是一个大问题,目前没有一个完美的解决方案,需要花费大量时间来清理数据。
  • WorldCat 和 Crossref 可以用来获取书籍元数据,但质量参差不齐,需要谨慎使用。
  • StoryGraph 使用协同过滤算法来实现“用户喜欢 X 也喜欢 Y”的推荐功能。

Veo 2: Our video generation model #

https://deepmind.google/technologies/veo/veo-2/

Google DeepMind 是一家致力于人工智能研究和开发的公司,其使命是负责任地构建人工智能以造福人类。公司致力于教育和培训,希望使人工智能生态系统更加多样化。DeepMind 的研究重点包括一些最复杂和最有趣的人工智能挑战,包括视频生成、图像生成、生物学等领域。

公司的技术包括 Gemini、Project Astra、Imagen、Veo 和 AlphaFold 等。Gemini 是一款最通用和最强大的人工智能模型,能够处理多种任务。Project Astra 是一种通用的人工智能代理,能够帮助人们完成日常任务。Imagen 是一款高质量的文本到图像模型,能够生成逼真的图像。Veo 是一款高质量的视频生成模型,能够生成逼真的视频。AlphaFold 是一款生物学领域的人工智能模型,能够预测蛋白质结构。

DeepMind 的研究成果包括 FACTS Grounding、Veo 2 和 Imagen 3 等。FACTS Grounding 是一个新的基准测试,用于评估大型语言模型的真实性。Veo 2 是一款新的视频生成模型,能够生成高质量的视频。Imagen 3 是一款新的图像生成模型,能够生成高质量的图像。

公司的博客和播客提供了最新的人工智能突破、项目和更新。博客文章包括 FACTS Grounding、Veo 2 和 Imagen 3 等。播客讨论了人工智能如何改变我们的世界。


HN 热度 565 points | 评论 297 comments | 作者:mvoodarla | 1 day ago #

https://news.ycombinator.com/item?id=42432914

  • Veo 2 的视频生成模型比 Sora 好
  • Hunyuan 模型可能比 Sora 和 Veo 更好 -_prompt 扩展可能会影响视频生成质量
  • Veo 2 的视频生成质量已经足够好,可以用于 b 刷内容替换股票视频剪辑
  • Veo 2 的视频生成质量仍然有 room for improvement,例如 pelican 的身体方向不正确
  • Veo 2 的视频生成质量已经足够好,可以用于生成惊人的视频
  • Veo 2 的视频生成质量已经足够好,可以用于生成逼真的视频
  • Veo 2 的视频生成质量已经足够好,可以用于生成有趣的视频

Always go to the funeral (2005) #

https://www.npr.org/2005/08/08/4785079/always-go-to-the-funeral

这个网页是美国国家公共广播电台(NPR)的一篇文章,标题是《Always Go To The Funeral》(总是去参加葬礼)。文章的作者是 Deirdre Sullivan,她讲述了自己从小就被父亲教导要去参加葬礼的故事。父亲的教导让她明白了参加葬礼不仅是对死者家属的尊重,也是对自己生命的尊重。

文章中,Sullivan 回忆了自己小时候被父亲带去参加葬礼的经历。起初,她不愿意去,但父亲坚持要她去。后来,她才明白父亲的用意。父亲告诉她,参加葬礼是对死者家属的尊重,也是对自己生命的尊重。Sullivan 说,她的父亲教导她要去参加葬礼,这让她学会了如何对待生命中的大事和小事。

文章还讲述了 Sullivan 的父亲去世后,她如何按照父亲的教导去参加葬礼。葬礼上,Sullivan 看到了许多人为她的父亲送行,这让她深深感动。文章最后,Sullivan 总结了她从父亲那里学到的教导:总是去参加葬礼,不仅是对死者家属的尊重,也是对自己生命的尊重。

这篇文章是 NPR 的《This I Believe》(我相信)系列文章的一部分,文章的作者们分享了自己对生命、人生和信仰的看法。


HN 热度 480 points | 评论 286 comments | 作者:NaOH | 1 day ago #

https://news.ycombinator.com/item?id=42435972

  • 尽量去看望仍然活着的人
  • 不要因为不知道说什么而不去看望病人,只要去陪伴他们就好
  • 有时候,选择去看望生病的人比参加葬礼更重要
  • 如果无法亲自去看望,可以通过语音留言等方式陪伴他们
  • 有时候,人们会因为自己的心理问题而无法去看望生病的人
  • 不要对没有去看望生病的人的行为做出过于苛刻的判断
  • 面对生病的人时,不要觉得自己必须要说些什么,只要陪伴在他们身边就好

MIT study explains why laws are written in an incomprehensible style #

https://news.mit.edu/2024/mit-study-explains-laws-incomprehensible-writing-style-0819

麻省理工学院(MIT)研究人员发现,法律文件的复杂语言是为了传达权威感。研究人员分析了大量法律合同和其他类型的写作,发现法律文件中经常出现长定义插入句子中的现象,这种结构被称为“中心嵌入”。这种结构使得文本更难理解。

研究人员还发现,即使非法律专业人士也会使用这种复杂的语言来写法律文件。他们让 200 名非法律专业人士写法律文件和故事,结果发现所有人都使用了中心嵌入结构来写法律文件,但是在写故事时使用了更简单的语言。

研究人员认为,这种复杂的语言可能是为了传达权威感和庄严感。他们还发现,即使法律专业人士也认为这种语言不易理解,并且更喜欢使用简单的英语来写法律文件。

研究人员希望这项研究可以促使立法者尝试使用更简单的语言来写法律文件。他们还计划研究法律语言的起源,包括分析早期的法律文件和 Hammurabi 法典。


HN 热度 282 points | 评论 337 comments | 作者:keepamovin | 22 hours ago #

https://news.ycombinator.com/item?id=42438175

  • 法律语言是由一系列的迷信咒语组成,律师使用这些咒语是因为他们认为如果不使用这些咒语,可能会发生坏事情。
  • 法律语言之所以复杂,是因为法院对书面语言的解释非常重要,修改这些语言可能会产生意想不到的后果。
  • 律师不需要优化法律语言,因为目标受众是其他律师,他们已经熟悉这些咒语。
  • 法律语言中的许多词语都有特定的含义,称为术语,律师应该使用这些术语来避免误解。
  • 使用简洁明了的语言来写法律文件是更好的选择。
  • 工程规范和法律文件都需要使用精确的语言来避免误解。
  • 律师和黑客有相似的职业特点,都是寻找漏洞和错误。
  • 使用标准的法律语言可以避免由于语言模糊而产生的争议。
  • 律师应该学习一些范畴理论来更好地理解法律语言。
  • 法律语言不应该被视为迷信,而应该被视为一种工具来确保法律的准确性和公平性。

Go Protobuf: The New Opaque API #

https://go.dev/blog/protobuf-opaque

Go 语言的 protobuf 模块近期发布了一个新的 API,称为 Opaque API。这个 API 与之前的 Open Struct API 不同,后者允许程序直接访问 protobuf 消息的内存。新的 Opaque API 将生成的代码与底层内存表示分离,提供了更好的灵活性和性能。

在新的 Opaque API 中,生成的结构体字段被隐藏,不能直接访问。取而代之的是提供了 getter、setter 和 clearer 方法来访问和修改字段。这种变化使得 protobuf 消息的内存布局更紧凑,使用位字段来表示字段的存在性,而不是之前的指针。这种变化可以减少内存使用和垃圾回收的负担。

benchmark 结果显示,使用新的 Opaque API 可以减少内存分配和解码时间。对于包含大量基本类型字段的 protobuf 消息,新的 API 可以减少 46% 的内存分配和 9.97% 的解码时间。

新的 Opaque API 还可以实现延迟解码,即在访问子消息时才解码其内容,而不是在 proto.Unmarshal 时解码所有内容。这种优化可以显著减少解码时间和内存使用。

总的来说,新的 Opaque API 提供了更好的性能和灵活性,适合于需要高性能和低内存使用的应用场景。


HN 热度 280 points | 评论 182 comments | 作者:secure | 1 day ago #

https://news.ycombinator.com/item?id=42434947

  • gRPC/protobuf 有很多 idiosyncrasies,导致使用起来不方便,JSON-RPC 2.0 是一个更好的选择。
  • Msgpack 是一个更好的序列化格式,能更好地处理整数和浮点数类型。
  • Protobuf 的 DDL 是一个很好的特性,能够清晰地定义 schema 和类型,ironclad types 是一个很大的优势。
  • JSON-RPC 2.0 的实现很简单,但缺乏一个 robust 的 schema 语言。
  • Connect RPC 是一个很好的选择,能够提供兼容性和 JSON+HTTP & gRPC 的支持。
  • Buf + Connect RPC 是一个很好的组合,能够提供兼容性和 JSON+HTTP & gRPC 的支持。
  • 使用 TypeScript 作为 IDL/DDL 来定义 JSON-RPC 的 schema 是一个不错的想法。

How I used linear algebra to build an interactive diagramming editor #

https://medium.com/@ivan.ishubin/how-i-used-linear-algebra-to-build-an-interactive-diagramming-editor-and-why-matrix-math-is-d5bd552f2e8d

本文讲述了作者在开发交互式图表编辑器 Schemio 时,如何使用线性代数来解决一些棘手的问题。作者首先介绍了 Schemio 的早期版本,用户可以创建形状、移动、缩放和旋转它们。

然而,当作者想要添加层次结构和动画时,事情变得复杂起来。作者使用矩阵来表示形状的位置、缩放和旋转,并使用矩阵乘法来组合这些变换。作者还介绍了如何使用矩阵来计算形状的世界坐标和局部坐标之间的转换。通过使用矩阵,作者能够实现复杂的动画和交互效果。

文章还展示了如何使用矩阵来实现形状的旋转、缩放和平移,以及如何计算形状的世界坐标和局部坐标之间的转换。


HN 热度 221 points | 评论 29 comments | 作者:binshu | 19 hours ago #

https://news.ycombinator.com/item?id=42438767

  • 作者使用线性代数构建交互式图表编辑器是一种很酷的方法。
  • 作者可能应该查看有关齐次坐标的文章。
  • 使用 3x3 齐次矩阵进行 2D 平移实际上是在 z=1 平面上的 3D 剪切。
  • 并非所有变换都可以用矩阵表示,只有线性变换可以。
  • QGraphicsView 框架是一个强大的图形框架,具有场景到对象的变换和对象层次结构。
  • 作者的方法很酷,也很有用。
  • 使用 3D 矩阵进行 2D 变换是因为平移不是线性的,但可以在 n+1 维投影空间中表示为线性映射。

Advent of Code on the Nintendo DS #

https://sailor.li/aocnds.html

本文是一篇关于在 Nintendo DS 上运行 Rust 语言的文章。作者决定在 Nintendo DS 上运行 Rust 语言,作为学习新语言的挑战。作者首先介绍了 Nintendo DS 的硬件架构,包括两个处理器:ARM946E-S 和 ARM7TDMI。作者还提到了 GBATEK 和 ARM v5 ARM Architecture Reference Manual 等参考资料。

作者开始编写 Rust 代码,使用 Cargo 和 Crossdev 工具链。作者首先编写了一个简单的程序,使用了 Rust 的 panic_handler 和 extern “C” main 函数。作者还配置了 Cargo 的 config.toml 文件,指定了目标平台为 armv5te-none-eabi。

作者遇到了一个错误,Cargo 无法找到 core crate。作者了解到 armv5te-none-eabi 是 Tier 3 目标平台,需要使用 build-std 特性来编译标准库。作者使用了 nightly 版本的 Rust 和 Cargo,成功编译了程序。

总的来说,本文是一篇关于在 Nintendo DS 上运行 Rust 语言的技术文章,作者详细介绍了编写 Rust 代码、配置工具链和解决错误的过程。


HN 热度 179 points | 评论 50 comments | 作者:zdw | 1 day ago #

https://news.ycombinator.com/item?id=42436440

  • 写这篇帖子的作者没有想到帖子会在这里火起来,愿意回答大家的问题。
  • 写这篇帖子的作者没有使用官方文档和工具,而是通过反向工程的方法来开发游戏。
  • 写这篇帖子的作者认为,尽管现在的游戏开发更加容易,但是他仍然怀念过去开发游戏的挑战和乐趣。
  • 每个 Nintendo 掌机都有一个 GameBoy 的硬件,包括 DSi 和 3DS。
  • DSi 和 3DS 可以通过软件模拟的方式运行 GBA 游戏。
  • 写这篇帖子的作者认为,程序员们在做 Advent of Code 挑战时,往往会选择更困难的方法来完成任务。
  • 写这篇帖子的作者认为,Advent of Code 挑战对于大多数开发者来说都是具有挑战性的。
  • 写这篇帖子的作者认为,做 Advent of Code 挑战最大的挑战是找到足够的精力和时间。
  • 写这篇帖子的作者认为,做 Advent of Code 挑战最大的挑战是找到足够的时间和精力,尤其是在工作之后。
  • 写这篇帖子的作者认为,做 Advent of Code 挑战最大的挑战是找到足够的时间和精力,尤其是在工作之后,而且有时候会感到烧毁。
  • 写这篇帖子的作者认为,做 Advent of Code 挑战最大的挑战是找到足够的时间和精力,尤其是在工作之后,而且有时候会感到烧毁,而且有时候会错过一些挑战。
  • 写这篇帖子的作者认为,做 Advent of Code 挑战最大的挑战是找到足够的时间和精力,尤其是在工作之后,而且有时候会感到烧毁,而且有时候会错过一些挑战,而且有时候会觉得挑战太难。

Waymo will bring autonomous vehicles to Tokyo #

https://waymo.com/blog/2024/12/partnering-with-nihon-kotsu-and-go-on-our-first-international-road-trip

Waymo 宣布与日本公司 Nihon Kotsu 和 GO 合作,将其自动驾驶汽车技术带到东京。这是 Waymo 首次在日本推出自动驾驶服务。Waymo 计划在 2025 年初将其电动汽车 Jaguar I-PACE 送到东京,Nihon Kotsu 将负责管理和维护这些车辆。

Waymo 的自动驾驶技术将首先在东京的几个区进行测试,包括 Minato、Shinjuku、Shibuya、Chiyoda、Chūō、Shinagawa 和 Kōtō。Waymo 的合作伙伴 Nihon Kotsu 将训练其驾驶员操作装有 Waymo 自动驾驶系统的车辆。最初,Nihon Kotsu 的驾驶员将手动驾驶这些车辆,以绘制东京的关键区域。

Waymo 表示,这次合作是其在日本推出自动驾驶服务的第一步。Waymo 计划与日本政府、监管机构和当地安全官员合作,确保其技术的安全性和性能。Waymo 的自动驾驶技术将按照其最佳的安全框架进行开发和测试,这是其在美国推出自动驾驶服务的基础。

Waymo 的自动驾驶技术将为东京居民提供新的出行选择,尤其是对于老年人和残疾人。Waymo 表示,其自动驾驶技术将提高交通安全,减少交通事故,并提供更便捷的出行方式。


HN 热度 178 points | 评论 115 comments | 作者:EvgeniyZh | 22 hours ago #

https://news.ycombinator.com/item?id=42438009

  • 自动驾驶汽车不会让我们的生活更好,应该优先考虑为人设计的城市
  • 自动驾驶汽车可以改善老年人的出行问题
  • 自行车和类似的交通工具在城市中更实用
  • 自动驾驶汽车可以提高交通安全和降低成本
  • 自动驾驶汽车可以改善残疾人和老年人的出行问题
  • 自动驾驶汽车不一定需要保留现有的车辆形式,可以设计更小的车辆
  • 自动驾驶汽车可以提高交通效率和降低成本
  • 自动驾驶汽车可以改善城市交通问题

Our muscles will atrophy as we climb the Kardashev Scale #

https://solmaz.io/our-muscles-will-atrophy

本文探讨了人类文明的发展与个体身体能力之间的关系。随着人类文明的进步,特别是工业革命的到来,人类的身体能力逐渐下降。文章将人类文明的发展划分为三个阶段:生物机械阶段 I(Pre-Industrial)、生物机械阶段 II(Industrial-Modern)和生物机械阶段 III(Post-Biological)。

生物机械阶段 I(Pre-Industrial)是指人类文明早期,人们主要依靠自己的身体劳动来生存。这个阶段的人类平均能量输出较高,因为每个人都需要通过身体劳动来获取食物和建造住所。

生物机械阶段 II(Industrial-Modern)是指工业革命后,人类开始使用机器和工具来替代身体劳动。这个阶段的人类平均能量输出逐渐下降,因为人们不再需要通过身体劳动来获取食物和建造住所。然而,人们仍然可以通过运动和锻炼来保持身体健康。

生物机械阶段 III(Post-Biological)是指未来人类可能发展到的一种状态,即人类的身体变得不再必要。这个阶段的人类可能会通过脑机接口、远程控制等方式来控制机器和设备,而不需要通过身体劳动。这个阶段的人类平均能量输出将会大幅下降,甚至可能变得无关紧要。

文章还讨论了卡达舍夫指数(Kardashev Scale)与生物机械阶段之间的关系。卡达舍夫指数是衡量一个文明能量消耗能力的指标。文章认为,生物机械阶段与卡达舍夫指数之间存在一定的对应关系,但不是完全一致的。


HN 热度 169 points | 评论 234 comments | 作者:hosolmaz | 1 day ago #

https://news.ycombinator.com/item?id=42433205

  • 人类的肌肉质量在卡尔达肖夫指数的增长过程中并没有减少,事实上,平均肌肉质量在过去 100 年中有所增加。
  • 肌肉质量的增加与肥胖率的上升有关,肥胖的人即使不运动也会有更多的肌肉质量。
  • 过去 100 年来,人类的平均肌肉质量确实有所增加,但这并不意味着每个人都变得更强壮。
  • 人类的肌肉质量在卡尔达肖夫指数的增长过程中并没有减少,事实上,平均肌肉质量在过去 100 年中有所增加。
  • 肌肉质量的增加与肥胖率的上升有关,肥胖的人即使不运动也会有更多的肌肉质量。
  • 肥胖的人并不一定有更多的肌肉质量,事实上,肥胖可能导致肌肉质量的减少。 -BMI 指数已经过时,需要更新以反映现代人的身体状况。