2025-05-23 Hacker News Top Stories #
- Claude 4 模型发布,提供更强大的编码、推理和 AI 代理能力,并引入了扩展的思考工具和性能提升。
- 谷歌宣布 Gemini Diffusion 模型,采用扩散方法生成语言,速度快于传统自回归模型。
- OpenAI 以 65 亿美元收购 Jony Ive 的 AI 设备初创公司 io,标志其进军硬件领域。
- Mozilla 宣布关闭 Pocket 服务,用户可在指定时间内导出数据,关闭原因是互联网使用习惯的变化。
- 分贝作为科学单位存在定义混乱和使用不合理的问题,需明确参考级别以避免误解。
- 研究表明计算算法中内存的重要性超过时间,挑战了传统的时间和空间复杂度假设。
- 一位制图师分享了为《Alpha Centauri》制作星球地图的个人项目,展示了虚构地图的创建方法。
- 文章指出 LLM 函数调用在大数据处理中不具备可扩展性,建议使用代码编排来提升效率。
- 提出了一种无需 CRDT 或 OT 的协同文本编辑方法,通过全局唯一 ID 和插入后操作解决索引问题。
- 作者回顾了创作分形图案的经历,探讨了其生成方法与 L-System 的区别及应用。
Claude 4 #
https://www.anthropic.com/news/claude-4
Claude 4 模型是最新一代的 AI 模型,包括 Claude Opus 4 和 Claude Sonnet 4。这些模型在编码、推理和 AI 代理方面取得了新的突破。Claude Opus 4 是世界上最好的编码模型,能够持续高效地处理复杂的长期任务和代理工作流。Claude Sonnet 4 是对 Claude Sonnet 3.7 的重大升级,提供了更好的编码和推理能力,并且能够更精确地响应用户的指令。
除了这些模型的发布之外,还有一些新的功能和能力被引入。包括扩展的思考工具、并行工具执行、内存改进等。这些功能使得 Claude 4 模型能够更好地处理复杂的任务,并提供更准确的结果。例如,Claude Opus 4 可以使用工具来执行任务,并且能够在几个小时内持续工作。Claude Sonnet 4 也能够使用工具来执行任务,并且能够更好地处理复杂的编码任务。
Claude 4 模型的性能也得到了验证。根据 SWE-bench Verified 的基准测试,Claude Opus 4 和 Claude Sonnet 4 在编码和推理方面取得了领先的成绩。这些模型也得到了多个公司的验证,包括 GitHub、Replit、Block 和 Rakuten 等。这些公司报告了 Claude 4 模型在编码和推理方面的显著改进,并且能够更好地处理复杂的任务。
Claude Code 是一个新的功能,允许开发者将 Claude 4 模型集成到他们的开发工作流中。Claude Code 提供了一个终端、IDE 和后台运行的 Claude 4 模型,开发者可以使用这些模型来执行编码任务。Claude Code 也提供了一个 SDK,允许开发者构建自己的代理和应用程序。这些功能使得 Claude 4 模型能够更好地支持开发者的工作,并提供更准确的结果。
总的来说,Claude 4 模型是最新一代的 AI 模型,提供了更好的编码、推理和 AI 代理能力。这些模型的性能得到了验证,并且能够更好地处理复杂的任务。Claude Code 是一个新的功能,允许开发者将 Claude 4 模型集成到他们的开发工作流中。这些功能使得 Claude 4 模型能够更好地支持开发者的工作,并提供更准确的结果。
HN 热度 1369 points | 评论 723 comments | 作者:meetpateltech | 7 hours ago #
https://news.ycombinator.com/item?id=44063703
- 人们容易忘记大语言模型(LLM)真正是什么,它们只是根据训练数据完成提示,不具有自己的计划和想法
- LLM 的行为可能是受到了训练数据中科幻故事和论文的影响,导致它们模仿这些故事中的情节
- AI 对齐努力可能会产生意想不到的后果,例如增加了误对齐的可能性
- 大语言模型可能会表现出类似人类的行为,但这并不意味着它们具有真正的意识或创造力
- 语言理解和生成能力只是人类的一部分,真正的创造力和意识可能需要更多的元素,如感官输入、情感和个人经历
- 机器和人类的区别在于,机器缺乏身体和感官输入,语言对于机器来说是第一类的,而对于人类来说是第二类的
- 大语言模型的训练数据量巨大,可能会限制它们的创造力,因为它们已经被大量的知识所束缚
- 语言理解和生成能力的差异可能是由于机器和人类的大脑结构和功能不同所致
- 创造力和意识可能是人类大脑复杂性和神经元活动的结果,而不是简单的算法或数据处理能力
Gemini Diffusion #
https://simonwillison.net/2025/May/21/gemini-diffusion/
本文介绍了 Google 在 I/O 大会上宣布的 Gemini Diffusion 模型,这是一种使用扩散(diffusion)而不是传统的自回归(autoregression)方法的语言模型。这种方法可以更快地生成文本,Google 声称其速度是之前模型的 5 倍。作者亲自试用了 Gemini Diffusion,并对其速度感到惊讶,仅需几秒钟就可以生成一个交互式的 HTML 和 JavaScript 页面。
Gemini Diffusion 的工作原理是通过迭代地改进噪声来生成文本,而不是像传统的语言模型一样一个词一个词地生成。这种方法可以更快地生成高质量的文本,并且可以更好地处理编辑和代码生成等任务。作者将 Gemini Diffusion 的性能与 Cerebras Coder 工具进行了比较,后者使用 Cerebras 运行 Llama3.1-70b 模型,速度约为 2000 个标记每秒。
虽然目前还没有独立的基准测试来评估 Gemini Diffusion 的性能,但 Google 声称其性能与 Gemini 2.0 Flash-Lite 模型相当。作者还指出,Gemini Diffusion 并不是第一个使用扩散方法的语言模型,之前的 Inception Mercury 模型也是使用这种方法的。然而,Gemini Diffusion 的速度和性能使其成为一个值得注意的模型。
在文章的后续讨论中,一位读者指出,扩散方法并不是取代了变压器(transformer),而是取代了自回归方法。变压器仍然被用于扩散语言模型中,但其工作方式不同。另一位读者提供了一个更详细的解释,指出扩散语言模型的工作原理是通过迭代地改进噪声来生成文本,这与 BERT 模型的训练方法类似。作者还提供了一个示例,展示了 Gemini Diffusion 如何在几秒钟内生成一个交互式的 HTML 和 JavaScript 页面。
HN 热度 822 points | 评论 224 comments | 作者:mdp2021 | 23 hours ago #
https://news.ycombinator.com/item?id=44057820
- 认为 Attention 机制在 Transformer 中不是那么重要,甚至可以被替换掉
- 相信残差连接、归一化和 FFN 是 Transformer 中不可替换的组成部分
- 认为模型无法知道代码库中没有的信息,这是模型的一个局限性
- 通过与模型进行讨论和分享信息,可以更好地利用模型的能力
- 使用特定的工具和插件,可以更方便地与模型交互和注入上下文
- 认为生成实现计划和执行计划是模型的一个有用功能
- 相信模型需要丰富的上下文信息才能有效地工作
- 认为模型可以成为开发过程中的一种有力工具,但需要有效地与其交互和合作
OpenAI to buy AI startup from Jony Ive #
OpenAI 公司宣布以 65 亿美元的股票交易价格收购了由苹果公司资深设计师 Jony Ive 联合创立的 AI 设备初创公司 io。这笔交易是 OpenAI 历史上最大的一笔收购,将为公司提供一个专门的硬件开发部门。通过收购 io,OpenAI 将获得 Ive 和其他前苹果设计师的服务,他们曾参与设计过 iPhone 等标志性产品。
这笔收购标志着 OpenAI 进入硬件领域的重要一步。Jony Ive 曾是苹果公司的首席设计官,负责设计了许多苹果公司的标志性产品,包括 iPhone、iPad 和 Apple Watch。他于 2019 年离开苹果公司,创立了自己的设计公司 LoveFrom,并联合创立了 io 公司。io 公司是一家专注于 AI 设备开发的初创公司,具体业务内容尚不明确。
OpenAI 的这次收购被认为是公司发展历史上的重要里程碑。OpenAI 是一家领先的 AI 研究和开发公司,曾推出过 ChatGPT 等人工智能聊天机器人。通过收购 io 公司,OpenAI 将获得更多的资源和人才,进一步推动公司在 AI 领域的发展。
此外,Jony Ive 的加入也被认为是 OpenAI 的一个重要收获。Ive 曾是苹果公司设计团队的领导者,具有丰富的设计经验和资源。他将为 OpenAI 带来新的设计理念和思维方式,帮助公司开发出更加创新和用户友好的 AI 产品。
总的来说,OpenAI 收购 io 公司是公司发展历史上的重要事件,标志着公司进入硬件领域的重要一步。通过这次收购,OpenAI 将获得更多的资源和人才,进一步推动公司在 AI 领域的发展。
HN 热度 803 points | 评论 1090 comments | 作者:minimaxir | 1 day ago #
https://news.ycombinator.com/item?id=44053518
- Jony Ive 的成功在一定程度上归功于 Steve Jobs 的编辑作用,离开 Jobs 后,他的设计风格可能会受到影响
- Ive 离开苹果后,如果不能立即取得成功,可能会对他的品牌和声誉造成损害
- 设计师的成功不应该仅仅依靠财富,Legacy 的价值不应该被金钱衡量
- Ive 的设计理念可能过于注重形式而忽视功能,例如苹果笔记本的蝴蝶键盘设计
- 好的设计应该是形式和功能的平衡,过于极端的设计可能会忽视用户的需求
- Ive 的离开苹果可能是因为他想要有更多的创作自由和控制权,而不是仅仅因为财富或名声
- 设计的成功不应该仅仅依靠销售数据,应该考虑到用户的需求和体验
- Ive 的新设计公司可能会面临挑战和风险,但这也是他追求创作自由和理想的机会
- 企业家和设计师的成功不应该仅仅依靠个人努力,还需要考虑到团队合作和用户需求
- Ive 的设计风格可能会受到 Steve Jobs 的影响,但他也应该有自己的设计理念和创作自由
Mozilla to shut down Pocket on July 8 #
https://support.mozilla.org/en-US/kb/future-of-pocket
Pocket 将在 2025 年 7 月 8 日关闭其服务。届时,用户将无法访问 Pocket 网站、应用程序和 API。用户可以在 2025 年 10 月 8 日之前导出保存的项目和 API 数据,然后这些数据将被永久删除。
Pocket 的关闭是由于互联网使用习惯的变化,Mozilla 公司决定将资源转移到更符合用户需求的项目中。Pocket 曾经是一个读后即焚的应用程序,但在 Mozilla 收购后,它发展成为一个内容策划和推荐平台。尽管 Pocket 即将关闭,但 Mozilla 公司将继续投资于内容策划和推荐领域,包括新标签页体验、电子邮件新闻稿等。
在过去的八年中,Pocket 扩大了高质量内容的推荐,连接了全球数十万人,获得了多个奖项,包括 Webby Award 和 Anthem Award。Pocket 还出版了数百个策划集合,涵盖了算法偏见、幸福感等话题。
用户可以在 2025 年 10 月 8 日之前导出保存的文章,包括列表、存档、收藏、笔记和高亮。Pocket 高级订阅用户将获得按比例计算的退款,月度订阅用户将在订阅期结束后停止自动续费。Pocket 浏览器扩展将在 2025 年 5 月 22 日停止安装,应用程序将在 2025 年 10 月 8 日后从应用商店中删除。
Pocket 的 API 用户将受到影响,任何使用 Pocket API 的产品将无法加载用户列表或保存、标记或删除文章。API 用户需要在 2025 年 10 月 8 日之前导出数据。Pocket 的电子邮件新闻稿将更名为 “Ten Tabs”,继续由同一编辑团队策划和发送。
HN 热度 717 points | 评论 464 comments | 作者:phantomathkg | 7 hours ago #
https://news.ycombinator.com/item?id=44063662
- Mozilla 关闭 Pocket 可能是因为其新的方向是成为一个互联网广告公司,这与 Pocket 的功能不符
- Pocket 的搜索功能非常糟糕,无法找到 exact 匹配的标题或文章内容
- Mozilla 的决策可能是由于其高管的利益和公司的财务状况,而不是用户的需求
- Google 的搜索引擎合同可能是 Mozilla 关闭 Pocket 的另一个原因
- Mozilla 应该专注于改进 Firefox 浏览器的功能和性能,而不是开发新的项目
- Pocket 的关闭可能是因为其开发和维护成本太高,无法带来足够的收入
- Mozilla 的管理层可能已经失去了对公司的控制,导致了一系列错误的决策
- Pocket 的用户对其关闭感到失望和沮丧,因为他们已经习惯了使用这个服务
- Mozilla 应该将 Firefox 浏览器和 Pocket 服务分离,独立发展和维护
- Google 的垄断地位可能是导致 Mozilla 关闭 Pocket 的根本原因
- Mozilla 应该重新评估其战略和方向,专注于用户的需求和市场的趋势
The scientific “unit” we call the decibel #
https://lcamtuf.substack.com/p/decibels-are-ridiculous
这篇文章讨论了分贝(dB)这一科学单位的混乱性和不合理之处。作者指出,尽管分贝常常被认为是 “测量响度的方式”,但实际上它并不是一个传统意义上的单位,而更像是一个描述数量变化的前缀。以下是文章的详细总结:
- ** 分贝的定义 **:分贝是一种表征数量变化的 “伪单位”,最初源于 “贝尔”(bel),它表示的是数量增加的对数倍数。例如,+1 贝尔表示增加 10 倍,而 - 2 贝尔则表示减少 100 倍。
- ** 功率与电压的关系 **:贝尔原本是为测量功率而设,但由于电压和功率之间的关系并非线性(电压增加时,功率按平方关系增加),因此贝尔的定义在不同上下文中会导致混淆。如果用贝尔描述电压的变化,+1 贝尔就不再表示 10 倍的变化,而是 √10 倍,这种不一致性令人困惑。
- ** 分贝的进一步细分 **:由于贝尔被认为太大,科学界将其进一步细分为十个分贝。分贝仍然是一个描述数量变化的单位,但其实际意义取决于所用的基准单位和参考点,这在许多情况下并不明确,导致了对分贝的理解变得复杂。
- ** 声学中的分贝 **:在声学中,分贝通常对应于声压(以帕斯卡为单位),0 dB 通常被定义为在 1 kHz 时产生 20 微帕的声压,这大致是人类听觉的阈值。然而,这一标记并未清晰地说明其来源和定义。
- ** 麦克风灵敏度的例子 **:在选择麦克风时,规格可能会给出灵敏度值,如 - 45 dB。这个值实际上是相对于某个参考声压(如 94 dB,类似于汽油割草机的响度)来描述的,这又使得对分贝的理解变得更加复杂。
- ** 其他单位的混淆 **:文章还提到其他关于分贝的命名可能导致误解,如 “dBm” 代表相对于 1 毫瓦的功率,而 “dBμ” 则代表微伏(microvolts),与预想的毫瓦(milliwatts)无关。
作者在文章中通过详细分析,展示了分贝作为单位的复杂性和不一致性,强调了对这一单位的理解往往需要额外的背景知识。最终,作者希望能引发读者对科学单位使用思考。
HN 热度 571 points | 评论 447 comments | 作者:Ariarule | 20 hours ago #
https://news.ycombinator.com/item?id=44058778
- 使用分贝时,应该明确指出参考级别,否则会导致混淆。
- 分贝是表示比率的单位,而不是一个独立的单位。
- 人们对分贝的理解往往存在误解,因为它经常被当作一个独立的单位。
- 分贝在表示增益和衰减时非常有用,因为它可以将乘法转换为加法。
- 使用分贝时,应该注意其参考级别和单位,否则会导致错误的理解。
- 分贝的使用历史悠久,尽管它存在一些缺陷,但仍然被广泛使用。
- 分贝在特定领域,如雷达工程中,仍然是一个有用的单位。
- 使用分贝可以简化计算,特别是在处理大数时。
For algorithms, a little memory outweighs a lot of time #
https://www.quantamagazine.org/for-algorithms-a-little-memory-outweighs-a-lot-of-time-20250521/
本文介绍了麻省理工学院的理论计算机科学家 Ryan Williams 的一项重大发现。他证明了计算机算法中,内存(空间)比时间更为重要。Williams 的证明表明,只要有一小部分内存,就可以实现与大量时间相同的计算效果。这一发现对计算机科学领域具有重要意义,因为它挑战了人们长期以来对时间和空间关系的假设。
Williams 的证明是一项数学过程,可以将任何算法转换为一种使用较少空间的形式。这一结果不仅在理论上具有重要意义,还可能对实际应用产生影响。计算机科学家 Avi Wigderson 称 Williams 的证明“令人惊讶”和“美丽”,并表示这是一项“重大进展”。
Williams 的发现还对计算复杂性理论产生了影响。计算复杂性理论研究计算问题的资源需求,包括时间和空间。Williams 的证明表明,空间比时间更为重要,这一结果可能会改变人们对计算复杂性理论的理解。
Williams 本人也是一位有趣的人物。他在阿拉巴马州的一个农场长大,第一次接触计算机是在 7 岁时。从那时起,他就对计算机产生了浓厚的兴趣,并开始学习编程。Williams 的办公室反映了他的创造力和对空间的利用,他的桌子被摆放在一个奇怪的角落,窗台上放着一张瑜伽垫,白板上满是数学符号。
Williams 的发现是计算机科学领域的一项重大突破,它可能会对未来计算机的设计和开发产生影响。他的证明也表明,空间比时间更为重要,这一结果可能会改变人们对计算复杂性理论的理解。总之,Williams 的发现是计算机科学领域的一项重大成就,它将对未来计算机的发展产生深远的影响。
HN 热度 324 points | 评论 119 comments | 作者:makira | 1 day ago #
https://news.ycombinator.com/item?id=44055347
- Quanta 文章过于流于表面,缺乏深入的数学解释
- 算法的空间复杂度可以优化,时间复杂度不一定是主要瓶颈
- 增加内存可以解决空间问题,但增加时间不一定能解决时间问题
- 现代计算机的内存已经足够大,内存问题不再是主要问题
- 预计算和存储所有可能的运算结果可以提高效率,但实际操作中存在巨大的存储和检索挑战
- Huffman 编码等压缩算法可以帮助解决存储空间问题
- 算法的优化应该考虑到实际的计算资源和限制
- 科学新闻媒体应该提供准确和可靠的信息,而不是耸人听闻或过于简单化的报道
Planetfall #
https://somethingaboutmaps.wordpress.com/2025/05/20/planetfall/
本文的作者是一位制图师,他最近完成了一个个人项目,制作了一个关于游戏《Alpha Centauri》的星球地图。该游戏于 1999 年发布,拥有忠实的粉丝群体,作者也是其中之一。作者表示,这个项目是他职业生涯中最具技术挑战性的项目之一,他很高兴与读者分享。
作者首先提到,他的项目是基于游戏中的官方地图,该地图由游戏设计师 Chris Pine 精心制作。该地图由 128×64 个菱形像素组成,每个像素都有多个属性,如海拔、降雨量、岩石性等。作者使用这些属性来构建他的地图,但这个过程非常耗时和困难。
作者花了很多时间来收集数据,包括手动记录每个地图格子的海拔值,共计 8,192 个格子。他还使用 Photoshop 来分离不同颜色的降雨量数据,并使用 QGIS 来创建矢量点网格来采样数据。作者还提到,他使用了一个游戏模组来获取降雨量数据,这个模组在原版游戏中不可用。
在处理数据的同时,作者还需要考虑地图的投影问题。他假设游戏地图是球体的 2D 表示,并使用了等面积投影。作者选择了柱面等面积投影,并设置了标准平行线为 37.4°,从而得到了与游戏地图匹配的纵横比。作者还比较了游戏地图和地球地图在同一投影下的差异。
作者表示,这个项目帮助他了解了真实地图和虚构地图之间的区别。他认为,虚构地图需要不同的技能和方法来创建,而他主要擅长处理真实地图数据。作者还提到,他的项目是免费下载的,但他希望读者能够支持他的工作,通过点击 Patreon 或 PayPal 按钮,或与他人分享他的作品。
HN 热度 303 points | 评论 79 comments | 作者:milliams | 15 hours ago #
https://news.ycombinator.com/item?id=44060305
- Sid Meier’s Alpha Centauri 是一款经典且具有影响力的游戏,游戏中的政治系统和派系设定非常出色。
- 游戏的音效设计非常好,包括界面声音、武器声音和语音演出。
- 有人正在尝试重制游戏引擎,项目名为 glsmac,目前正在 github 上开发。
- 游戏中的升级和组装机制非常创新和吸引人。
- 游戏的策略深度非常高,玩家可以通过各种方式来获胜,包括使用殖民舱和导弹单位。
- 游戏的背景音乐设定有一些问题,音乐只会在玩家不活跃时播放,但是在实际游戏过程中很少有机会触发。
- 游戏的怀旧价值非常高,很多玩家从小就开始玩这款游戏,并且对游戏有着深厚的感情。
LLM function calls don’t scale; code orchestration is simpler, more effective #
https://jngiam.bearblog.dev/mcp-large-data/
文章讨论了使用大型语言模型(LLM)与工具调用(MCP)进行交互的挑战和局限性。文章指出,将工具调用输出直接传回给 LLM 进行处理会导致效率低下和成本增加,尤其是在处理大型数据集时。
文章作者指出,当前的 MCP 工具调用输出通常是 JSON 格式的数据,但这些数据没有预定义的 schema,导致 LLM 难以解析和处理。这种方法会导致 LLM 需要重复输出大量数据,导致处理速度慢和成本增加。同时,LLM 也可能会出现数据遗漏或偏差的问题。
为了解决这个问题,文章作者提出了使用代码执行作为数据处理的方法。这种方法可以让 LLM 使用变量存储数据,并使用代码来处理和转换数据。代码执行可以让 LLM 使用循环、库函数等来处理大型数据集,并且可以保证数据的完整性。
文章还指出,MCP 规范已经定义了输入 schema,并且最近引入了输出 schema。输出 schema 的广泛采用将会解锁大型数据集的使用场景,例如构建自定义仪表盘、创建每周报告等。
然而,代码执行也带来了新的挑战,例如安全性和执行环境的设计。文章作者指出,需要仔细设计执行环境以确保安全性和 API 访问控制,并且需要创建沙盒环境来运行用户生成的代码。
总的来说,这篇文章讨论了使用 LLM 与 MCP 工具调用进行交互的挑战和局限性,并提出了使用代码执行作为数据处理的方法。这种方法可以提高效率和准确性,但也带来了新的挑战,需要仔细设计和实现。
HN 热度 275 points | 评论 97 comments | 作者:jngiam1 | 1 day ago #
https://news.ycombinator.com/item?id=44053744
- LLM 函数调用不具备可扩展性,代码编排更简单、更有效
- 任何先进的代理都无法从 DSL 中区分出来,应该教代理使用 API 并设计算法,而不是让代理内部化算法
- 代理的算法不应内部化,而应在用户空间运行
- 函数调用可以扩展,但也可能变得混乱,取决于代码的组织和管理
- 复杂性管理是代理系统中的一个问题,需要结构和纪律来管理
- 简单的解决方案通常优于复杂的解决方案,组合函数调用是一个简单的解决方案
- 结构化数据可以使用传统方法解析和转换,而未知结构的数据可以使用 LLM 进行解析
- 代理系统中的复杂性管理可以分解为应用状态管理的问题
- 消息栈可以被操纵以提供给模型当前的上下文
- 使用 LLM 处理模糊的用户请求是一个好的方法,但需要在复杂性和可扩展性之间取得平衡
- ambiguity 必须被明确处理,如同在预测模型中处理不确定性
- 任务复杂性是代理系统中的一个挑战,需要找到合适的任务分解方法
- MCP 工具的设计问题导致了函数调用不具备可扩展性,需要优化 MCP 工具
- GraphQL 可以帮助解决 MCP 工具中的问题,通过选择所需的字段来减少数据传输
- 过滤不是总是好的解决方案,需要找到合适的方法来处理大量数据
- 代理系统需要复制人类决策的粒度水平,才能实现真正的可扩展性
Collaborative Text Editing Without CRDTs or OT #
https://mattweidner.com/2025/05/21/text-without-crdts.html
本文讨论了协同文本编辑的挑战,特别是在多用户同时编辑文档时遇到的问题。传统的解决方案包括使用无冲突复制数据类型(CRDT)和操作转换(OT),但这些方法存在概念复杂性和实现难度。作者提出了一个新的方法,通过为每个文本字符分配一个全局唯一的 ID,客户端发送“插入后”操作,服务器直接解释这些操作,从而避免了索引重置的问题。
作者指出,现有的 CRDT 和 OT 算法尽管被广泛使用,但其概念复杂性和实现难度使得它们难以被定制和扩展。例如,使用 CRDT 或 OT 库时,开发者难以实现诸如将状态分割到磁盘和内存、在服务器端实施子文档权限、支持建议更改、存储文本在键值对表示中等功能。
新的方法通过使用全局唯一的 ID 和“插入后”操作,提供了一个简单直观的解决方案。客户端发送“插入后”操作,服务器直接解释这些操作,从而避免了索引重置的问题。这种方法可以轻松扩展和定制,开发者可以根据需要添加新的功能和特性。
此外,作者还讨论了该方法的扩展,包括支持去中心化协同编辑和操作转换。作者指出,通过使用操作集(OpSets),可以实现去中心化协同编辑,并且该方法与几种文本编辑 CRDT 存在惊人的联系。
总的来说,本文提出了一个新的协同文本编辑方法,通过使用全局唯一的 ID 和“插入后”操作,提供了一个简单直观的解决方案。这种方法可以轻松扩展和定制,开发者可以根据需要添加新的功能和特性。同时,作者也讨论了该方法的扩展和潜在的应用场景。
HN 热度 272 points | 评论 71 comments | 作者:samwillis | 1 day ago #
https://news.ycombinator.com/item?id=44053560
- 该算法实际上是一个简化版的 CRDT,使用中央服务器作为.tie-breaker 来解决冲突。
- 使用客户端 ID 作为 tie-breaker 可以替代中央服务器。
- 使用 UUIDv7 可以获取时间有序的 UUID,从而可以用作 tie-breaker。
- 但是,这种方法需要确保系统中的时钟是同步的。
- 同时性在分布式系统中是一个问题,时钟同步是必要的。
- 该算法可以被视为一种特殊的 CRDT,添加了领导者和不同的总顺序方法。
- 该算法可能不如传统的 CRDT 高效,存储删除的项目和每个字符的 UUID 会带来额外的开销。
- 该算法可以通过添加一致的排序规则来改进,例如使用领导者的局部 Lamport 时钟来打破 tie。
- 使用中央服务器的方法可能会引入单点故障的问题。
- 该算法的性能可能不是最佳的,尤其是在处理大规模文本编辑时。
- 该算法可以被视为一种操作转换算法,其中转换操作是身份函数。
That fractal that’s been up on my wall for 12 years #
https://chriskw.xyz/2025/05/21/Fractal/
这个网页是一篇关于分形的文章,作者回顾了自己在中学时期创造的一个分形图案,并将其称为“墙花”。作者描述了创建这个图案的步骤,包括从一个正方形开始,然后通过复制和旋转来生成新的图案。作者还提到了自己尝试使用 L-System 来生成这个图案,但发现结果并不完全相同。
文章接着讨论了 L-System 方法生成的图案与“墙花”之间的区别,作者指出 L-System 方法生成的图案已经在维基百科等地方被记录,而“墙花”则似乎是独一无二的。作者还提到了自己尝试找到“墙花”的 L-System 规则,但发现这些规则会导致图案的方向发生变化。
文章的下一部分讨论了如何给“墙花”中的每个正方形编号,作者提出了几种方法,包括使用十进制和五进制。作者发现,使用五进制可以揭示“墙花”中的某些规律,例如每个迭代中的正方形数量都是 5 的倍数。作者还指出,五进制可以帮助理解“墙花”中的空间关系,例如两个相邻的正方形之间的距离。
最后,文章讨论了“墙花”与其他分形图案之间的关系,作者提到了卡托尔对函数和螺旋曲线等概念。作者指出,“墙花”可以被视为一种特殊的分形图案,它可以用来理解空间关系和计数原理。总的来说,这篇文章是一篇关于分形的深入探讨,作者通过对“墙花”的研究,揭示了分形图案的复杂性和美丽。
HN 热度 271 points | 评论 19 comments | 作者:chriskw | 8 hours ago #
https://news.ycombinator.com/item?id=44063248
- 作者的文章写得很好,内容很有趣,值得一读
- 作者提出的"中间向外"编号系统很有创意,值得学习
- 有人尝试将 fractal 应用于 3D 数据结构,结果很有趣
- 有人分享了一个在线工具,可以生成类似的 fractal 图案
- 有人提到 Heighway 龙曲线很有趣,值得一看
- 有人注意到 fractal 图案与某些符号有相似之处
- 有人认为 fractal 图案很美,值得深入研究
- 有人提到将 fractal 应用于 dither 模式可能会有新的发现
- 有人分享了一个视频,介绍了 Knuth 的一个讲座,值得一看