{"pageContext":{"index":333,"total":362,"name":"2025-09-20","items":[{"node":{"frontmatter":{"title":"Amazon S3 Vectors使用评测","publish":true,"cover":"https://assets.zilliz.com/amazon_s3_vectors_83405bbdb1.png","showCover":null,"date":"2025-09-20","category":"database","url":"https://zilliz.com/blog/will-amazon-s3-vectors-kill-vector-databases-or-save-them","author":"James Luan","translator":"","tags":["s3"],"priority":1},"html":"<p>S3 Vectors 的优点与局限性</p>\n<p>优点包括：</p>\n<p>很低的存储成本（举例：$0.06/GB）相比“serverless vector solution”便宜很多。</p>\n<p>如果请求量／查询频率低，且对延迟要求不高，是一个非常划算的方案。</p>\n<p>局限性包括：</p>\n<p>查询延迟（latency）问题，尤其对于“大表／冷数据／高并发”场景：冷查询延迟可能在 500-700ms 左右。</p>\n<p>写入性能受限：写速度低于很多专门的向量数据库。频繁更新／写入／修改数据的场景可能表现差。</p>\n<p>精度（recall）较低：作者提到 recall 在 85-90%，在带有过滤条件或有删除／高 churn 的情况下 recall 会更低。</p>\n<p>功能受限：TopK 查询上限、metadata 大小有严格限制、没有混合检索（hybrid search）、没有复杂过滤、多租户支持弱。</p>\n<p>Amazon S3 Vectors 并不会替代向量数据库，而是作为低成本、低频访问的冷存储补充；真正需要高性能、低延迟、复杂查询的生产场景，专门的向量数据库仍然不可替代，未来会是冷热分层存储共存的格局。</p>"}},{"node":{"frontmatter":{"title":"Expo SDK 54发布","publish":true,"cover":"https://cdn.sanity.io/images/9r24npb8/production/b3cdd049bbaa7efc989c4a278cef26efe79ca9f6-2400x1350.png?auto=format&fit=max&q=75&w=1600","showCover":null,"date":"2025-09-20","category":"mobile","url":"https://expo.dev/changelog/sdk-54","author":"Alan Hughes, Brent Vatne","translator":"","tags":["react native"],"priority":1},"html":"<p>支持 React Native 0.81 和 React 19.1,提升ios构建速度（XCFrameworks），增加了对 Apple TV 和 Android TV 的支持，在 iOS 上，支持 iOS 26，在 Android 上，目标为 Android 16（API 36），可以自定义重新加载屏幕，Expo SDK 54 是支持旧架构的最后一个版本，这意味着未来的版本可能会专注于新架构，开发者需要逐渐过渡到新架构。</p>"}},{"node":{"frontmatter":{"title":"Deno 团队发起 20 万美元筹款申请取消 Oracle 持有的 “JavaScript” 商标权","publish":true,"cover":"https://deno.com/blog/help-free-javascript-from-oracle/og.png","showCover":null,"date":"2025-09-20","category":"javascript","url":"https://deno.com/blog/javascript-tm-gofundme","author":"Ryan Dahl","translator":"","tags":["oracle"],"priority":1},"html":"<p>Deno 团队发起 20 万美元筹款活动，旨在通过法律手段向美国专利商标局申请取消 Oracle 持有的 “JavaScript” 商标权 —— 此前已组织 2.7 万人签名公开信，当前进入关键证据收集阶段，筹款将用于制作法律认可的调查、聘请专家作证、收集行业证据及应对 Oracle 反驳，剩余款项将捐给 OpenJS（不进 Deno 腰包）；Oracle 已否认 “JavaScript 是通用名”，若胜诉 “JavaScript” 将成为公共领域词汇，开发者等可自由使用，若败诉则 Oracle 锁定商标权，还可能影响商标法对通用技术名词的界定，因此呼吁开发者捐款和扩散支持。</p>"}},{"node":{"frontmatter":{"title":"Fetch API 的流（Streams）功能虽然好用，但千万别用来测上传下载进度","publish":true,"cover":"https://deno.com/blog/help-free-javascript-from-oracle/og.png","showCover":null,"date":"2025-09-20","category":"javascript","url":"https://jakearchibald.com/2025/fetch-streams-not-for-progress/","author":"Jake","translator":"","tags":["oracle"],"priority":1},"html":"<p> Fetch API 的流（Streams）功能可用于分块处理数据，在下载和上传时有相应作用，但它不能用来准确测量上传或下载进度，下载时遇文件压缩会算错进度，上传时测的不是真实传至服务器的进度，而且还会限制浏览器优化；当下若要测进度建议使用 XHR，其有专门的进度事件可准确获取，未来则可等 Fetch 新增的进度监听 API 落地后用它来兼顾 Fetch 优势与准确测进度，总之用流功能别为测进度，按对应方法来更靠谱。</p>"}},{"node":{"frontmatter":{"title":"Cloudflare 由于react的useEffect重绘刷崩","publish":true,"cover":"https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2OI52n6YrKdSBxQIShw5al/3ecb621d4e6a56d43699d16e0e984055/BLOG-3011_1.png","showCover":null,"date":"2025-09-20","category":"frontend","url":"https://blog.cloudflare.com/deep-dive-into-cloudflares-sept-12-dashboard-and-api-outage/","author":"Tom Lianza, Joaquin Madruga","translator":"","tags":["react"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"Fenwick 布局的区间树","publish":true,"cover":"","showCover":null,"date":"2025-09-20","category":"algrithm","url":"https://purplesyringa.moe/blog/fenwick-layout-for-interval-trees/","author":"Alisa Sireneva","translator":"","tags":["tree"],"priority":1},"html":"<p>借鉴 “Fenwick 树”（树状数组）的内存排列技巧，用于改进 “区间树”（一种快速查找区间类数据的结构）—— 解决了传统区间树因需存储额外信息（如子节点指针）导致的 “占用内存多”，以及数据在内存中分散存储导致的 “访问速度慢” 问题；通过 Fenwick 布局，既能减少区间树的冗余信息 “瘦身”，又能让常用数据在内存中连续排列 “提速”，最终让区间树在处理时间 / 数值区间数据等场景时更高效、更实用。\n<a href=\"https://github.com/purplesyringa/brickingot/blob/baa3cab1e9686e7209a291a58f90f1810cbbdce0/src/interval_tree.rs\">代码实现</a></p>"}},{"node":{"frontmatter":{"title":"NPM debug 和 chalk 包被入侵","publish":true,"cover":"","showCover":null,"date":"2025-09-20","category":"nodejs","url":"https://www.aikido.dev/blog/npm-debug-and-chalk-packages-compromised","author":"Charlie Eriksen","translator":"","tags":["npm"],"priority":1},"html":"<p>2025年9月8日，Aikido intel feed 发现多个NPM包被植入恶意代码。这些包包括 debug, chalk 等18个非常流行的库，每周下载量超过20亿次。</p>\n<p><strong>如何保护：</strong></p>\n<ul>\n<li>检查当前使用的包版本</li>\n<li>清理NPM缓存</li>\n<li>重新安装repository中的所有包</li>\n<li>使用package lock file, 并使用固定的版本号</li>\n<li>使用Aikido SafeChain保护安装过程</li>\n</ul>\n<p><strong>涉及到的包版本 (Indicators of compromise):</strong></p>\n<p>文章中列出了18个受影响的包及其版本。 其中<code class=\"language-text\">simple-swizzle</code> 在文章发布时仍然受影响</p>\n<ul>\n<li>backslash 0.2.1</li>\n<li>chalk-template 1.1.1</li>\n<li>supports-hyperlinks 4.1.1</li>\n<li>has-ansi 6.0.1</li>\n<li>simple-swizzle 0.2.3</li>\n<li>color-string 2.1.1</li>\n<li>error-ex 1.3.3</li>\n<li>color-name 2.0.1</li>\n<li>is-arrayish 0.3.3</li>\n<li>slice-ansi 7.1.1</li>\n<li>color-convert 3.1.1</li>\n<li>wrap-ansi 9.0.1</li>\n<li>ansi-regex 6.2.1</li>\n<li>supports-color 10.2.1</li>\n<li>strip-ansi 7.1.1</li>\n<li>chalk 5.6.1</li>\n<li>debug 4.4.2</li>\n<li>ansi-styles 6.2.2</li>\n</ul>"}},{"node":{"frontmatter":{"title":"在终端中运行 GUI 应用程序","publish":true,"cover":"https://github.com/mmulet/term.everything/raw/main/resources/graphics/warp_in_2.gif","showCover":null,"date":"2025-09-20","category":"javascript","url":"https://github.com/mmulet/term.everything","author":"mmulet","translator":"","tags":["typescript"],"priority":2},"html":"<p>该项目名为 \"Term.everything\"，是一个 Linux 命令行程序，允许用户在终端中运行任何图形用户界面 (GUI) 应用程序，甚至可以通过 SSH 运行。</p>\n<p>其核心是一个从头构建的 Wayland compositor，将输出渲染到终端而不是显示器。其质量取决于终端的行列数，支持在支持图像的终端（如 Kitty 或 iTerm2）中以全分辨率渲染窗口。</p>\n<p>项目使用 Typescript (82.3%) 和 C++ (15.2%) 开发，使用 bun 引擎。目前处于 beta 测试阶段，部分应用可能无法启动或崩溃。</p>\n<p>该项目基于 AGPL-3.0 协议开源。</p>"}},{"node":{"frontmatter":{"title":"React Server Component 各种框架支持度","publish":true,"cover":"https://cf-assets.www.cloudflare.com/zkvhlag99gkb/2OI52n6YrKdSBxQIShw5al/3ecb621d4e6a56d43699d16e0e984055/BLOG-3011_1.png","showCover":null,"date":"2025-09-20","category":"nodejs","url":"https://rsc.krasimirtsonev.com/","author":"Krasimir Tsonev","translator":"","tags":["react"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"根据用户的搜索内容，生成想象中的、不存在的商品概念图","publish":true,"cover":"","showCover":null,"date":"2025-09-20","category":"other","url":"https://anycrap.shop/","author":"anycrap.shop","translator":"","tags":["other"],"priority":1},"html":"<p>网站声明，这些产品实际上并不可用。该网站自称是“明日的产品，今日提供（实际上不可用）”。</p>"}},{"node":{"frontmatter":{"title":"UTF-8 编码是一种出色的设计","publish":true,"cover":"","showCover":null,"date":"2025-09-20","category":"devops","url":"https://iamvishnu.com/posts/utf8-is-brilliant-design","author":"Vishnu Haridas","translator":"","tags":["other"],"priority":1},"html":"<p>UTF-8 编码是一种出色的设计，它能够用 32 位表示来自不同语言和脚本的数百万个字符，并且还向后兼容 ASCII。</p>\n<p>UTF-8 是一种变长字符编码，使用一到四个字节来表示一个字符。前 128 个字符（U+0000 到 U+007F）使用单字节编码，与 ASCII 兼容。多字节序列的后续字节总是以 10 开头，主字节的前导位决定了字符的总字节数。根据主字节前几位的不同，可以判断字符由几个字节组成：0xxxxxxx 代表 1 个字节；110xxxxx 代表 2 个字节；1110xxxx 代表 3 个字节；11110xxx 代表 4 个字节。</p>\n<p>此外，还提到了其他一些兼容 ASCII 的编码，但不如 UTF-8 流行。UTF-16 和 UTF-32 不兼容 ASCII。</p>\n<p>作者还分享了他创建的 <a href=\"https://utf8-playground.netlify.app/\">UTF-8 Playground 工具</a></p>"}},{"node":{"frontmatter":{"title":"Subgrid怎么用","publish":true,"cover":"https://webkit.org/wp-content/uploads/Image-40-scaled.png","showCover":null,"date":"2025-09-20","category":"frontend","url":"https://webkit.org/blog/17339/subgrid-how-to-line-up-elements-to-your-hearts-content/","author":"Saron Yitbarek","translator":"","tags":["css"],"priority":2},"html":"<p>Subgrid 的本质是：让嵌套在父网格里的子元素，也用父网格的 “行 / 列规则” 来排列。这样不管每个子区域（比如定价卡片）里的内容多少，它们的元素都会跟着父网格的 “线” 来对齐，不会乱。</p>"}},{"node":{"frontmatter":{"title":"使用 React Three Fiber 创建沉浸式 3D 天气可视化","publish":true,"cover":"https://codrops-1f606.kxcdn.com/codrops/wp-content/uploads/2025/09/3DWeather_featured.jpg?x23607","showCover":null,"date":"2025-09-20","category":"frontend","url":"https://tympanus.net/codrops/2025/09/18/creating-an-immersive-3d-weather-visualization-with-react-three-fiber/","author":"Carter Rink","translator":"","tags":["3d"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"不是所有界面都需要动画","publish":true,"cover":"","showCover":null,"date":"2025-09-20","category":"frontend","url":"https://emilkowal.ski/ui/you-dont-need-animations","author":"Emil Kowalski","translator":"","tags":["animation"],"priority":1},"html":"<p>用得越频繁的功能，越不该加动画,功能动画必须 “快”</p>"}},{"node":{"frontmatter":{"title":"在现代我如何使用持久队列解决分布式队列问题","publish":true,"cover":"https://cdn.prod.website-files.com/672411cbf038560468c9e68f/68b7c9f14b71a122d3861644_Durable-Queues-Diagram.png","showCover":null,"date":"2025-09-20","category":"devops","url":"https://www.dbos.dev/blog/durable-queues","author":"Jeremy Edberg","translator":"","tags":["queue"],"priority":1},"html":"<p>“持久化队列（Durable Queues）” 这一技术工具：它本质是给程序中 “按顺序处理任务的队列” 加了 “硬盘备份 + 处理确认” 机制，能解决普通队列在程序崩溃、服务器断电等意外时 “未处理任务丢失、需返工” 的问题 </p>"}},{"node":{"frontmatter":{"title":"将图片转换成像素点的各种特效在线工具","publish":true,"cover":"","showCover":null,"date":"2025-09-20","category":"frontend","url":"https://www.tooooools.app","author":"tooooools.app","translator":"","tags":["tool"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"使用 Claude Code 将一个 25 年前的内核驱动程序现代化","publish":true,"cover":"","showCover":null,"date":"2025-09-20","category":"AI","url":"https://dmitrybrant.com/2025/09/07/using-claude-code-to-modernize-a-25-year-old-kernel-driver","author":"Dmitry Brant","translator":"","tags":["claude"],"priority":1},"html":"<p>Dmitry Brant 使用 Claude Code 现代化了一个 25 年前的 Linux 内核驱动 ftape。ftape 用于与连接到软盘控制器的磁带驱动器通信，但由于年代久远，只能在非常旧的 Linux 系统 (CentOS 3.5) 上编译和运行。作者希望能在现代 Linux 发行版上使用 ftape。</p>\n<p>作者强调，虽然 Claude Code 帮助很大，但仍然需要开发者具备一定的内核模块和 C 语言基础才能完成这项任务。作者还分享了一些与这类代码助手协作的经验，例如：</p>\n<ul>\n<li>将 LLM 视为合作工程师，明确任务目标和范围。</li>\n<li>尽可能具体地描述问题，并使用领域特定关键词。</li>\n<li>了解 LLM 的优势和劣势，选择合适的任务。</li>\n<li>利用 LLM 加速学习新框架和技术。</li>\n</ul>"}},{"node":{"frontmatter":{"title":"我带我儿子去博物馆不是为了看屏幕","publish":true,"cover":"https://sethpurcell.com/images/Pasted%20image%2020250908093454.png","showCover":null,"date":"2025-09-20","category":"other","url":"https://sethpurcell.com/writing/screens-in-museums/","author":"Seth Purcell","translator":"","tags":["other"],"priority":1},"html":"<p>作者参观了费城的富兰克林研究所（TFI），儿时这里曾给他留下深刻印象。但这次参观让他失望，因为博物馆里充斥着屏幕互动展品，而他更希望儿子能体验到真实的动手操作。作者认为，博物馆的屏幕展品体验与在家用iPad体验类似，失去了博物馆的意义。</p>\n<p>作者回忆了儿时在TFI的快乐，例如玩沙摆、穿过巨型心脏模型。但现在，屏幕占据了博物馆的中心位置，互动体验变成了触摸屏上的视频游戏，而真正动手操作的展品却被放置在偏僻角落，且维护不佳。</p>"}},{"node":{"frontmatter":{"title":"NPM最近遭受的攻击本可能造成更严重的后果,幸运的是我们都躲过了一劫","publish":true,"cover":"https://files.xeiaso.net/blog/2025/we-dodged-a-bullet/the-email.avif","showCover":null,"date":"2025-09-20","category":"nodejs","url":"https://xeiaso.net/notes/2025/we-dodged-a-bullet/","author":"Cadey","translator":"","tags":["npm"],"priority":1},"html":"<p>作者认为NPM最近遭受的攻击本可能造成更严重的后果，幸运的是，恶意代码仅修改了加密货币支付的目标地址。攻击始于一封非常逼真的钓鱼邮件，邮件伪装成NPM官方，诱导用户修改双因素认证信息。</p>\n<p>作者强调，我们需要认识到任何依赖项都可能存在恶意代码，并尽可能理解程序的整个依赖树，但在实际工作中，我们往往没有足够的时间这样做。</p>"}},{"node":{"frontmatter":{"title":"我通过破解 GameCube 内存，用一个实时的 LLM 替换了《动物之森》的对话","publish":true,"cover":"https://joshfonseca.com/assets/images/ac/Modern%20AI%20in%2024%20Year%20Old%20Game%20Screenshot%20(3).png","showCover":null,"date":"2025-09-20","category":"AI","url":"https://joshfonseca.com/blogs/animal-crossing-llm","author":"Josh Marinacci","translator":"","tags":["other"],"priority":2},"html":"<p>作者通过破解GameCube游戏的内存，成功地将《动物森友会》的对话替换为实时LLM生成的内容，而无需修改任何游戏代码。<a href=\"https://github.com/vuciv/animal-crossing-llm-mod\">代码</a></p>"}},{"node":{"frontmatter":{"title":"新墨西哥州将是美国第一个提供全民儿童保育的州","publish":true,"cover":"","showCover":null,"date":"2025-09-20","category":"java","url":"https://www.governor.state.nm.us/2025/09/08/new-mexico-is-first-state-in-nation-to-offer-universal-child-care/","author":"governor.state.nm.us","translator":"","tags":["other"],"priority":2},"html":"<p>新墨西哥州将于2025年11月1日起成为美国第一个提供普遍儿童保育的州。该计划取消了收入资格要求和家庭共同支付，使所有新墨西哥州的家庭都能获得儿童保育服务，预计平均每年每个孩子可为家庭节省12000美元。此举旨在减轻家庭经济负担，支持经济发展，并确保每个孩子都有成长和发展的机会。同时，新墨西哥州还将投资于儿童保育设施建设和扩建，提高早期教育工作者的工资，并扩大儿童保育服务范围，以满足不同家庭的需求。政府希望通过普遍儿童保育，为儿童和家庭创造更好的未来，并促进新墨西哥州的长期繁荣。</p>"}},{"node":{"frontmatter":{"title":"西班牙蓬特韦德拉宣布其整个市区为“限行区”","publish":true,"cover":"https://www.greeneuropeanjournal.eu/wp-content/uploads/2025/08/Road-and-the-sidewalk-are-indistinguishable-in-the-city-center_Elena-Ledda-2048x1532.jpg","showCover":null,"date":"2025-09-20","category":"other","url":"https://www.greeneuropeanjournal.eu/made-for-people-not-cars-reclaiming-european-cities/","author":"Elena Ledda","translator":"","tags":["other"],"priority":1},"html":"<p>文章讲述了西班牙城市蓬特韦德拉如何通过将整个城市区域定义为“限行区”，成功地改善了空气质量，减少了交通事故，并为居民创造了更多的公共空间。</p>\n<p>核心措施包括：</p>\n<ul>\n<li><strong>优先考虑行人：</strong> 将行人置于交通体系的首位，之后是自行车、滑板车、公共交通，最后才是私家车。</li>\n<li><strong>限制车辆通行：</strong> 禁止过境车辆和寻找停车位的车辆进入市区，只允许必要的车辆通行（如紧急车辆、公共服务车辆、残疾人用车等），并对装卸货等行为规定了时间。</li>\n<li><strong>拓宽人行道和步行区：</strong> 扩大步行空间，鼓励人们步行或骑自行车。</li>\n<li><strong>降低车速限制：</strong> 中心区域的限速非常低，以确保行人安全。</li>\n<li><strong>提供免费停车场：</strong> 在市中心步行距离内提供免费停车场，方便通勤者。</li>\n</ul>\n<p>文章还提到了其他欧洲城市在可持续发展方面的尝试，例如德国的弗莱堡和挪威的奥斯陆。</p>"}},{"node":{"frontmatter":{"title":"欧盟法院裁定核能是清洁能源","publish":true,"cover":"https://static.wixstatic.com/media/dccfdc_1744e9223bae4f338ddd5d15499c1763~mv2.jpg/v1/fill/w_1480,h_986,al_c,q_85,usm_0.66_1.00_0.01,enc_avif,quality_auto/dccfdc_1744e9223bae4f338ddd5d15499c1763~mv2.jpg","showCover":null,"date":"2025-09-20","category":"other","url":"https://www.weplanet.org/post/eu-court-rules-nuclear-energy-is-clean-energy","author":"Ia Aanstoot","translator":"","tags":["other"],"priority":1},"html":"<p>欧盟法院驳回了奥地利对欧盟将核能纳入可持续金融分类的诉讼，确认了核能在欧盟绿色金融规则中的地位。作者认为这是一个重要的胜利，表明坚持科学是可能的，核能对环境的影响极低，且安全可靠。尽管德国等国过去反对核能，但现在态度开始转变。然而，绿色和平组织 仍然反对核能，作者对此表示不满，认为这阻碍了应对气候危机的进程。</p>"}},{"node":{"frontmatter":{"title":"美国财政部正在扩大《爱国者法案》以打击比特币自托管","publish":true,"cover":"https://www.tftc.io/content/images/2025/09/Screenshot-2025-09-11-at-9.59.52---PM.png","showCover":null,"date":"2025-09-20","category":"other","url":"https://www.tftc.io/treasury-iexpanding-patriot-act/","author":"Marty Bent","translator":"","tags":["other"],"priority":1},"html":"<p>美国财政部正试图扩大《爱国者法案》的适用范围，以打击比特币的自我托管。具体来说，财政部和金融犯罪执法网络(FinCen)正在制定新的指导方针，计划禁止或限制比特币用户使用CoinJoin、原子互换、单一地址以及交易广播时间延迟等隐私保护工具。文章作者认为这些工具是比特币自我托管的最佳实践，限制使用将严重侵犯用户的金融隐私。一旦这些规定生效，使用这些工具的用户将被标记为可疑对象，通过受监管的服务发送包含涉及这些工具的UTXO将被拒绝，甚至可能面临牢狱之灾。作者认为，政府不应该为了极少数罪犯而牺牲绝大多数守法公民的利益，而应该努力改善环境，提高执法效率。</p>\n<p>文章还提到了其他几个方面：</p>\n<ol>\n<li>比特币正在融入传统金融基础设施，波动性正在降低。比特币期货的波动性甚至低于铂金期货，这得益于ETF、期权、期货等传统金融工具的普及，但也限制了其爆发式的增长潜力。</li>\n<li>新闻头条包括：一项新的战略比特币储备法案、美国证券交易委员会将于10月17日举办加密货币圆桌会议、一项研究提出比特币作为火星贸易标准。</li>\n<li>Unchained和TFTC合作，Tom Honzik讲解如何安全地存储比特币，讨论交易所、ETF、单签、多签的优缺点。</li>\n<li>Obscura VPN由前Bitcoin Core贡献者Carl Dong创建，可以通过闪电网络支付，保护用户隐私。</li>\n<li>Ten31是一家专注于比特币的投资者，已经通过三个基金在30多家公司投资了2亿美元。</li>\n</ol>"}}]}}