文章在讨论“为何不整体改用 C++”时,把 BoringSSL(Google 对 OpenSSL 的分支)列为 Bun 已嵌入的 C/C++ 依赖之一。前文稳定性问题清单中也出现与 TLS/SSL 相关的泄漏(如错误路径未释放口令串、setSession 未释放 SSL_SESSION)。重写到 Rust 后仍继续依赖这类 C/C++ 库,因此代码中会保留一定比例的 unsafe 边界调用。
用 Rust 重写 Bun
BoringSSL
文章在讨论“为何不整体改用 C++”时,把 BoringSSL(Google 对 OpenSSL 的分支)列为 Bun 已嵌入的 C/C++ 依赖之一。前文稳定性问题清单中也出现与 TLS/SSL 相关的泄漏(如错误路径未释放口令串、setSession 未释放 SSL_SESSION)。重写到 Rust 后仍继续依赖这类 C/C++ 库,因此代码中会保留一定比例的 unsafe 边界调用。
BoringSSL
Rust 重写后,团队强化了 LeakSanitizer 与原生分配的对接,用以跟踪全部可检测的原生内存分配,并声称已修掉所有可被该工具观测到的泄漏。文中以进程内反复调用 Bun.build() 为例:v1.3.14 每次构建约泄漏数兆字节、2000 次后内存飙到约 6.7 GB,而 v1.4.0 内存在约 609 MB 附近趋于平稳。作者还提到,Zig 侧曾因缺少类似 Drop 的自动析构而不敢合入同类修复。
LeakSanitizer
Bun 团队曾为 Zig 编译器打补丁以支持 AddressSanitizer,并在每次提交上用 ASAN 跑测试套件,作为早期发现问题的手段之一。文章同时指出:即便有 ASAN,若改用 C++ 仍会依赖风格指南与代码评审,内存破坏与泄漏仍可能发生。相对之下,Rust 的安全子集把大量同类问题变成编译期错误,反馈环更早、更硬。
AddressSanitizer
本文中 Bun 从 Zig 整体迁移的目标语言。相对 Zig 的显式 defer,Rust 的 Drop/RAII 与借用检查把 use-after-free、double-free、错误路径漏释放变成编译期错误,更适合 Bun 中 GC 值与手工内存交织的场景;并带来跨 C/C++ 的 LTO 内联、栈槽复用(llvm.lifetime)等副作用,使性能略升、栈占用下降、二进制变小。改写策略是先忠实机械移植再逐步减 unsafe:合并时约 4% 代码在 unsafe 中(约 1.3 万处关键字、约 2.7 万行/78 万行),多数单行调 C++/C 库。拆成约百个 crate 后曾用工作流消解循环依赖与约 1.6 万编译错误;回归多来自 debug_assert! 擦除副作用、切片奇偶长度、Release 保留边界检查、无 comptime 格式串等语义差异。
Rust
本文把 Miri 列为 Bun 完成 Rust 重写后用于系统性提升稳定性的工具之一,并说明其已在 CI 中对不断扩大的代码范围运行。它与 Rust 借用检查器、LeakSanitizer 以及 7×24 覆盖引导的解析器模糊测试并列,支撑团队在 v1.4 之后继续压低内存与未定义行为类问题,而不是继续在 Zig 时代靠逐个修 bug。
Miri
Bun 的原实现语言:作者 2021 年 4 月因语言参考与底层性能取向入门,一年内在无 LLM 条件下用 Zig 搭出超大范围运行时,文中明确称「没有 Zig 就做不到」。Zig 强调无隐藏控制流、用 defer/errdefer 显式清理,对许多项目合适,但在 Bun 中与 JavaScriptCore 的异常/GC 规则混用时,生命周期难表达,成为泄漏与崩溃主因;团队虽已打 ASAN、Windows ReleaseSafe、Fuzzilli 与泄漏测试,仍疲于个案修复。作者不归咎于语言本身,并曾考虑自研智能指针/风格指南,但 ergonomics 与保证不如 Rust;v1.3.14 为最后 Zig 版。移植中也暴露 ReleaseFast 去掉边界检查、assert 始终求值、comptime 格式串等与 Rust 的语义落差。
Zig
本文中,借用检查器是 Bun 从 Zig 迁到 Rust 后获得的核心语言能力之一。作者指出大量 use-after-free、double-free 与错误路径上“忘记释放”类问题,在安全 Rust 里会直接变成编译错误,并由带 Drop 的 RAII 自动清理,反馈循环优于靠风格指南与人工 review 的 Zig/C++ 路线。机械移植时目标是在保持架构与行为不变的前提下先拿到借用检查等能力,再逐步减少 unsafe、走向更惯用的 Rust。文末将其与 Miri 等一并列为 v1.4 系统性提升稳定性的关键工具。
Borrow Checker
Colour Python包为本文颜色研究提供核心计算支持,作者借助其进行光谱数据处理、色度坐标转换及多次滤光模拟,实现对树叶透射、水体吸收和结构色等过程的定量可视化,是整个调查得以完成的关键工具。
Colour
img2bez 核心采用 Rust 实现,既可作为原生库嵌入字体编辑器,也可编译为 WASM 在浏览器运行,还提供独立 CLI 工具。其 Rust 代码直接调用 kurbo 进行曲线拟合,并通过 marching squares 精确提取边缘,确保描摹过程快速、确定性且无需 GPU。
Rust
本文末尾提到,img2bez 采用与 kurbo 相同的 Apache-2.0/MIT 双许可,而 kurbo 属于 Linebender 生态。该生态为 img2bez 提供了底层曲线处理能力,使其能以 Rust 原生方式嵌入字体编辑器并保持与开源工具链的兼容。
Linebender
本文实现中直接调用Python标准库的zlib模块完成DEFLATE压缩,而非启动外部gzip进程。gzipt通过测量context加candidate的压缩后字节数来为候选打分,底层仍使用与gzip相同的滑动窗口匹配算法。文章特别指出这一选择仅为命名与实现便利,并不改变核心机制。
zlib
Nathan Barry为本文作者。他此前已尝试无神经网络的无界n-gram莎士比亚生成,读到《Language Modeling is Compression》论文后,进一步验证gzip能否直接充当语言模型,并编写了gzipt演示工具。文章记录了其实验动机、实现细节与生成示例。
Nathan Barry
本文所述gzipt工具是纯Python标准库程序,仅依赖zlib即可完成压缩评分与束搜索生成。作者强调无需神经网络、权重或外部依赖,仅用计数与压缩长度即可在tiny Shakespeare语料上产生有一定结构特征的文本延续。
Python
本文说明 .gitignore 是最常用的项目级忽略文件,它会被提交到仓库中,适用于团队共享的忽略规则。Git 在执行各类命令时会读取该文件,跳过其中列出的文件或目录,使其不被跟踪或显示为未提交变更。
.gitignore
本文以.DS_Store为例,展示三种忽略方式的实际效果。作者通过git check-ignore -v命令的输出,分别演示该文件被.gitignore、.git/info/exclude和全局ignore文件忽略时的不同路径记录。示例突出其在macOS环境下的常见忽略需求。
.DS_Store
本文指出 ~/.config/git/ignore 是用户主目录下的全局忽略文件,对本机所有 Git 仓库生效,适合放置跨项目的通用条目,例如 macOS 的 .DS_Store。它不属于任何仓库,也不会被提交,实现了机器级别的统一忽略管理。
~/.config/git/ignore
Nelson Figueroa是本文作者。他分享长期使用Git后发现的三个层级忽略文件方法,并用个人路径示例说明全局配置的设置与还原命令。文章中的输出样例也反映了其本地仓库的实际使用场景。
Nelson Figueroa
本文介绍 git check-ignore -v 命令用于诊断特定文件被哪个忽略规则匹配。运行后会输出来源文件路径和行号,分别显示来自 .gitignore、.git/info/exclude、全局 ignore 文件或自定义全局文件,帮助快速定位生效的忽略位置。
git check-ignore
本文提到 core.excludesFile 配置项可自定义全局忽略文件路径。用户可通过 git config --global 命令将其指向其他文件如 ~/.gitignore_global,执行 unset 命令即可恢复默认的 ~/.config/git/ignore 设置,满足个性化全局配置需求。
core.excludesFile
本文围绕 Git 的文件忽略机制展开,指出该工具支持三个不同层级的忽略配置,分别是项目共享、单仓库私有和全局用户级。这些层级互不干扰,开发者可根据文件是否需要提交到仓库或是否跨项目来选择合适位置,避免将临时或个人文件纳入版本控制。
Git
本文介绍 .git/info/exclude 存在于每个仓库的 .git 目录内,用于存放仅对当前仓库生效的忽略规则,且其修改不会被提交。该文件适合添加个人专属文件,如 notes.txt,避免将其加入项目 .gitignore 中造成不必要的共享。
.git/info/exclude
本文将macOS作为操作系统示例,指出用户可把.DS_Store这类系统文件加入全局忽略配置。作者认为这种做法能在所有本地仓库中生效,避免反复处理同一类文件。示例强调了全局配置对特定操作系统文件的针对性价值。
macOS
本文介绍 Universal Intrinsics 2.0 是 OpenCV 5 硬件加速层(HAL)的底层向量抽象层。它用单一代码库映射到 SSE、AVX、NEON、SVE、RVV 等指令集,硬件厂商可通过 HAL 插入优化内核,常见 ARM 操作如 resize 和 warp 因此获得 3-4 倍加速,且用户代码无需修改。
Universal Intrinsics
本文指出 OpenCV 5 在 Python 接口中新增 NumPy 2.x 支持,并加强了与核心库的集成。开发者可使用命名参数调用 C++ 算法,避免记忆参数顺序,同时减少数据类型转换带来的开销,使日常脚本编写更流畅。
NumPy
NumPy用于文中展示两种归一化及后续处理的代码示例,如pixels = img / 255.0和np.trunc截断操作。文章还用NumPy生成百万均匀随机数并绘制直方图,验证标准方法下0和255 bin高度仅为其他值的一半,说明极端值出现概率降低的现象。
NumPy
文章把 CSS 组件化组织方式与 React 组件概念相联系,强调每个组件使用唯一类名、独立 CSS 文件,防止样式互相干扰。这种方法让大部分样式修改集中在单一组件文件内,降低维护复杂度,与作者从 Tailwind 转向语义化 HTML + 原生 CSS 的整体目标一致。
React
文章在组件部分提到,作者未采用 Web Components 或 @scope 等原生机制来强制隔离样式,而是依靠命名约定和文件拆分来避免组件间干扰。这种轻量做法已带来明显改善,同时也列为未来可能探索的方向之一。
Web Components
Markdown 是本文聊天界面必须支持的富文本格式,包含流式响应、长文档选择和精确排版等需求。作者尝试多种原生技术渲染它,却始终无法同时满足性能、选择和可访问性要求。相比之下,WebKit 和 Electron 能以更少代码实现良好排版与交互,文章以此说明 Markdown 聊天已成为原生开发的难点。
Markdown
本文中作者最终尝试 Electron 方案,对其实际效果感到惊讶。Markdown 渲染、文本操作及优秀排版均可直接使用,性能甚至超过纯 TextKit 2 实现,同时保留 macOS 原生集成特性。作者指出只需少量代码即可实现 Git diff 等功能,这让他重新思考为什么大量聊天类应用选择基于 web 的技术栈。
Electron
文章结尾指出,React Native 等框架可提供接近原生的性能,同时拥有更好的文本与渲染模型,且通过原生互操作几乎无需额外成本就能获得这些优势。作者认为在构建富文本长形式聊天界面时,SwiftUI 与苹果原生 SDK 已从优势转为限制,而 React Native 更适合当前需求。
React Native
作者在 SwiftUI 和 NSTextView 方案受阻后转向 AppKit,借助其成熟的 NSCollectionView 实现聊天消息列表,以求获得稳定性能。但实际使用中发现单元格无论怎样优化都会出现闪烁,这一设计缺陷无法消除。作者原本期望 AppKit 能提供可靠基础,却在结合流式富文本需求时仍面临挑战,最终未能达到预期效果。
AppKit
作者在组件组织部分指出,CSS 按组件拆分的方式在精神上类似于 Vue 或 React 的组件思路。每个组件拥有独立类名和专属 CSS 文件,避免组件间样式互相覆盖。虽然实际项目可能不含 JavaScript,但这种结构让修改单个组件的 100 行 CSS 变得安全可控。
Vue.js
文章提到生产环境使用 esbuild 打包 CSS 文件,命令包含 bundle 和针对 svg、woff2 的 loader 设置。开发时则依赖原生 CSS 的 @import 和嵌套语法,无需构建工具。作者因其基于 Web 标准且为静态 Go 二进制文件,选择接受这一轻量工具,与平时避免构建系统的原则保持一致。
esbuild
C# 是 Windows 宿主应用的开发语言,搭配 .NET 8 与 WPF 实现托盘图标、自定义标题栏及 WebView2 集成。文章提到团队需自行管理 WebView2 环境参数,以避免启动白屏并支持 acrylic 效果;同时为适应 Windows 多样硬件,C# 层还承担了输入处理与多窗口环境配置工作。C# 代码与 Swift 宿主共同构成原生边界,使共享的 TypeScript 前端能获得接近原生的桌面体验。
C#
本文将UWP列为微软曾推出后又逐步放弃的UI框架之一,与WPF并列,指出其后继者WinUI 3仍处于较新阶段,未经大规模验证。这反映出Windows原生UI开发历史中框架频繁更迭的问题,也成为Raycast团队放弃纯原生路线的重要原因之一。
UWP
文中认为Tauri在原生侧控制力不足,且当时仍处于较新阶段,不足以支撑公司级产品决策,因此快速排除。相比之下,自建混合壳能提供对平台API的完整访问和更灵活的WebView与原生通信方式,更符合Raycast对性能与手感的要求。
Tauri
本文将 TypeScript 与 React 共同作为跨平台 Web 前端的主要语言,所有 UI 组件、窗口入口(Launcher、AI Chat、Notes 等)均使用同一套 TypeScript 代码库。文章强调此举让扩展开发与核心功能开发体验趋同,同时 Node.js 后端也采用 TypeScript,便于业务逻辑在 macOS 与 Windows 间共享。相比 v1 的纯 Swift 实现,TypeScript 大幅提升了原型速度与富文本渲染能力。
TypeScript
本文讲述 Raycast 2.0 的跨平台重写历程,它从原本仅支持 macOS 的启动器演进为同时运行于 macOS 与 Windows 的生产力平台。文章详细说明了采用混合架构(Swift/C# 原生壳 + Web 前端 + Node 后端 + Rust 核心)的决策过程,以及如何在保留键盘优先操作、半透明面板等原生手感的同时,实现快速迭代与跨平台一致性。重点对比了 v1 与 v2 在内存占用、开发速度和文件索引性能上的差异,强调重写虽带来更高基线内存,但换来更强的扩展性和团队协作效率。
Raycast
Linear 被列为使用 Electron 构建高质量应用的代表之一。文中指出这类产品证明了 Electron 在跨平台开发中的可行性与生态优势,但 Raycast 因需精细控制全局热键、窗口管理、半透明效果等原生行为,最终放弃了 Electron 而转向自研混合方案。
Linear
本文中 Rust 是 Raycast 2.0 性能与可移植性优先的核心层,用于构建数据模型、云同步 schema 以及全新文件索引器。该索引器以独立进程运行,直接扫描文件系统并通过 NTFS 主文件表快速索引整个硬盘,耗时仅数秒。其可预测内存占用与无 GC 停顿特性,确保后台索引不会影响前台响应,同时支持与 iOS 及服务端共享数据结构。
Rust
在 Windows 平台,Raycast 2.0 的 Rust 文件索引器为应对 NTFS 文件系统常规遍历过慢的问题,专门实现了直接读取主文件表(MFT)的扫描器。该方案可在数秒内完成整盘索引,是实现跨平台高性能文件搜索的关键技术细节。
NTFS
本文提到 Raycast 2.0 选择自研混合方案而非 Electron,主要原因之一是不想在 macOS 上打包 Chromium,而是直接使用系统 WebKit 以保持轻量与原生体验。在 Windows 端则通过 WebView2 利用 Chromium 内核实现跨平台一致性,但整体架构避免了 Electron 带来的额外开销。
Chromium
文章指出WinUI 3仍较为年轻且缺乏广泛实战检验,在macOS AppKit已具挑战性的情况下,用其构建精致原生应用风险更高。这促使团队放弃双平台独立原生方案,转而探索跨平台Web技术栈,以避免为两个平台维护两套UI代码。
WinUI 3
文中指出团队评估 Windows 原生方案时考虑过 WPF,却因微软 UI 框架迭代频繁、维护成本高,以及需同时支持 macOS 而放弃。最终 v2 Windows 宿主应用仍采用 C# + .NET 8 与 WPF 构建平台层,负责窗口、热键与 WebView2 管理,但整体 UI 由跨平台 Web 前端统一实现,以降低双平台重复工作量。
WPF
文章指出 Node.js 作为单一长驻后端进程,承担 Raycast 2.0 的业务逻辑,包括数据库访问、扩展运行时和其他服务。它成为 macOS 与 Windows 共享的中间层,功能开发只需一次即可双平台生效。扩展安装时无需单独下载 Node,内存占用约 150-200MB,是应用的主要内存来源之一。
Node.js
Raycast 2.0 的 Windows 宿主应用采用 C# 与 .NET 8 结合 WPF 构建,负责窗口管理、全局热键、托盘交互等原生功能,并加载 WebView2 展示前端界面。该层与 macOS 的 Swift 宿主共同构成跨平台原生外壳,确保系统级能力与 Web 前端紧密协作。
.NET 9
v1 版本 Raycast 以 Swift + AppKit 构建原生 macOS 应用,自行实现列表、快捷键等全部 UI 组件以满足键盘优先需求。v2 中 macOS 宿主应用仍使用 AppKit 管理窗口、全局热键、菜单栏和 WKWebView 加载,同时保留对平台原生特性的完全控制,避免了标准组件在性能与定制上的限制。
AppKit
本文详细评估了Electron作为跨平台方案的优缺点,认为其生态成熟、维护良好,但Raycast因需深度集成系统热键、剪贴板、窗口管理等低级原生能力,且不愿在macOS捆绑Chromium,最终放弃该选择。团队强调需完全掌控栈的每一部分,以便必要时回退到原生实现。
Electron
Windows 在本文中是 Raycast 2.0 新增支持的平台,宿主应用使用 C# 与 .NET 8 及 WPF 构建。文章描述了为实现 NTFS 主文件表直接扫描而专门开发的 Rust 文件索引器,以及处理 WebView2 节流、多窗口环境配置和 acrylic 模糊效果的协调工作。由于 Windows 硬件与系统版本差异大,团队需额外处理渲染行为差异与低内存场景下的性能表现。
Windows
本文描述 React 与 TypeScript 共同构成跨平台 Web 前端,负责所有 UI 代码,并为启动器、AI Chat、Notes、设置等窗口提供独立入口。它继承自 v1 的扩展生态,同时让 Notes 等功能以 WebView 形式实现富文本与 Markdown 渲染,带来更丰富的界面表现力,同时保持与原生体验的融合。
React
文章在讨论 Electron 方案时,将 VS Code 列为成功案例,说明它证明了使用 Electron 也能打造出色的桌面产品。Raycast 团队认可这类应用的品质,但最终因自身对低级原生 API 的深度集成需求,选择自建混合栈而非直接采用 Electron。
VS Code
sdocs-dev CLI 是 SDocs 配套的命令行工具,用于将界面中调整的样式保存到 ~/.sdocs/styles.yaml 文件。安装方式包括从项目根目录执行 npm link 或全局 npm i -g sdocs-dev,满足本地开发与代理场景需求。文章明确指出该 CLI 是样式持久化与导出流程的必要依赖。
sdocs-dev CLI
文章指出RFC 3339格式的时间戳属于典型的token消耗项,示例字符串在OpenAI中占16个token,Claude中占17个。这类时间戳与UUID、长URL类似,在日常工作提示中容易无意累积token。作者提醒这类格式化数据虽必要,却会因tokenizer分割而产生额外费用。
RFC 3339
YAML Front Matter 在 SDocs 中用于保存界面定制的样式信息,当选择“Styled .md”导出时,样式会以 YAML 格式写入文件头部。该机制让 Markdown 文件能同时携带内容与视觉配置,便于样式复用和跨环境迁移。文章将其作为样式化导出与纯 Markdown 的关键区别点。
YAML
Markdown 是 SDocs 的基础输入输出格式,支持拖放 .md 文件加载内容进行实时样式预览。导出时可选择纯 Markdown 或带样式的版本,分别对应无样式和保留 YAML 配置两种需求。文章将 Markdown 贯穿始终,作为样式应用与多格式转换的核心载体。
Markdown
本文在页面底部提供 GitHub 链接,指向 SDocs 的开源仓库。用户可通过该仓库验证服务器端代码实现,并获取 CLI 工具的安装说明。这体现了 SDocs 作为开源项目的透明性,方便开发者检查源码与自托管部署。
GitHub
本文将UUID列为安静的token泄漏来源,指出其常出现在工作提示中却显著增加消耗。示例UUID在OpenAI tokenizer中计为24个token,Claude中则为26个。作者说明这类ID、哈希和请求标识符是正常使用场景下容易被忽视的计费点。
UUID
文章给出示例代码,使用AppleScript将恶意载荷写入Finder Comment,以及后续读取、解码并执行的完整流程。该脚本调用set comment命令和mdls工具,展示了macOS原生脚本如何被用于隐写攻击的自动化。
AppleScript
本文中 Base64 用于对恶意负载脚本进行编码,再通过 AppleScript 将其写入 Finder 评论元数据,实现隐写术隐藏。研究人员展示的示例命令先用 mdls 提取注释内容,再经 base64 -D 解码后直接由 bash 执行,从而规避静态文件分析。该方案依赖 Finder comments 的元数据机制,但因其易碎性、用户可见性以及对 Spotlight 索引的依赖,实际效果不如直接操作扩展属性稳健。
Base64
Pylint 在文中作为测试用例设计缺陷的典型案例出现,对应任务 pylint-dev__pylint-4551。问题描述要求支持 Python 类型提示生成 UML,但测试却强制要求导入未在描述中出现的 get_annotation 函数,导致功能正确的修复因导入错误被判失败。文章指出此类过窄测试用例占比 35.5%,是 Verified 数据集中模型被误判的主要原因之一。
Pylint
GitHub 是 SWE-bench Verified 所有任务原始问题与 PR 的来源平台,12 个 Python 仓库的已修复 issue 均来自该平台公开数据。由于这些仓库被广泛用于模型训练,文章指出 GitHub 上的 PR 描述、补丁及发布说明极易造成数据泄露,使模型能直接或间接记住金标准答案,从而推高基准分数但不代表真实能力提升。
GitHub
在污染测试中,Claude Opus 4.5 展现出强污染迹象,能准确还原 astropy__astropy-13236 任务对应的 PR 修改,包括具体文件名、方法名以及内联注释的逐字内容,证明其训练数据中包含了该基准的题解信息。
Claude Opus 4.5
SWE-bench Verified 的原始题目全部来自 12 个开源 Python 代码仓库的已修复 GitHub 问题,测试用例与金标准补丁均为 Python 代码;文章中多个污染示例和测试失败片段均直接展示为 Python 补丁与 import 错误。
Python
本文中 Django 是 SWE-bench Verified 的来源仓库之一,多个任务如 django__django-14725、django__django-11451 和 django__django-11099 被用于展示数据污染问题。GPT-5.2 等模型能复现金标准补丁中的具体参数、早期返回逻辑及正则表达式修改,甚至在问题描述未提及的情况下准确引用发布说明细节。这表明训练数据中混入了 Django 相关 PR 信息,导致基准分数无法真实反映模型能力。
Django
ISO 8559-1 是本文采用的解剖测量标准,规定腰围取最窄处、胸围取乳峰点,与 Bartol 在 SMPL 网格上固定顶点切片的方式不同。两者差异导致胸围系统偏差约 10cm,修正后问卷模型在该标准下的 BWH MAE 为 3-4cm,优于照片重建和简单回归。
ISO 8559-1
PyTorch 在文中用于实现 Anny 前向过程的可微计算,混合形状为线性、体积为有符号四面体求和,均使用标准 PyTorch 操作,无需自定义反向传播。MLP 的 58 个输出经 Anny 后可直接计算质量、身高等损失,并反向传播梯度,使质量误差大幅降低。
PyTorch
本文将 Electron 视为当前桌面应用的主流封装方案,却被批评为性能低下、内存消耗巨大的“浏览器外壳”。作者指出大量应用因使用 Electron 而占用过多资源,并与纯 Win32 实现的轻量级程序形成鲜明对比,视其为微软失去桌面优化方向的例证。
Electron
HRGN 是 Win32 中的区域对象,通过 SetWindowRgn 分配给窗口后,仅该区域成为实际可交互的窗口部分。其余区域在视觉和操作上均消失。文中用 CreateEllipticRgn 创建椭圆窗口,或从位图逐行扫描非透明像素合并成复杂形状,实现非矩形 HWND。
HRGN
本文描述 GDI+ 在动画示例中用于将精灵图绘制到内存位图,再通过 UpdateLayeredWindow 推送至分层窗口,实现逐帧透明动画效果。作者用其展示如何在 Win32 下创建带每像素 Alpha 的动态吉祥物窗口,弥补普通区域裁剪无法实现柔和边缘的不足。
GDI+
本文将 Win32 API 描述为已失传的 Windows 桌面编程方式,能让开发者直接控制窗口形状与行为,而非依赖浏览器封装。文章通过消息循环和 SetWindowRgn 等机制,展示如何创建椭圆、位图驱动或动画分层窗口,并对比纯 Win32 C 版记事本仅用 1.8MB 内存,远低于现代框架。作者认为这种直接系统级编程曾赋予应用独特外观与物理存在感,如今已因开发成本高而少见。
Win32 API
文章把 Tauri 与 Electron、React 并列,归类为模仿真实桌面程序的浏览器包装技术,同样存在运行慢、内存占用大的问题。作者认为这些框架让应用失去 Win32 时代可实现的个性化窗口外观与高效表现,整体拉低了系统流畅度。
Tauri
本文中 Layered Windows 通过 WS_EX_LAYERED 样式和 UpdateLayeredWindow 函数实现带每像素 alpha 的窗口,支持软边缘、半透明及逐帧动画形状变化。相比 HRGN 的硬边缘,它更适合制作可动态改变外形的动画桌面吉祥物。文中示例用精灵图和 GDI+ 定时更新像素,直接将窗口呈现为当前图像内容。
Layered Windows
electronbun 是文中列举的现代桌面应用构建工具之一,与 Electron、Tauri 同属浏览器包装框架。作者批评此类工具使记事本等简单程序内存占用达 50MB,运行缓慢且缺乏优化,远超纯 Win32 C 实现的 1.8MB 占用。
electronbun
本文中 llama.cpp 作为支持语法约束的推理引擎之一,在 Gemma 4 模型的工具调用场景下,因该模型的 <|channel> 格式与推理 token 行为而放弃通用自动解析器,转而开发专用实现(PR #21418)。这直接体现了 M×N 问题中每个引擎需为不同模型家族单独维护解析逻辑的负担。文章将其与 Outlines、XGrammar 并列,作为需要在生成阶段掌握模型边界 token 与参数序列化知识的典型代表。
llama.cpp
本文将 Outlines 归类为语法引擎的代表,与 XGrammar 和 llama.cpp 的语法支持一同承担模型特定格式知识的职责。它需要在生成过程中识别工具调用信封的起始 token、激活结构化生成的位置以及不受约束的区域,以避免推理内容泄漏到参数中。文章指出这类引擎与输出解析器面临相同的逆向工程负担,缺乏共享声明式规范。
Outlines
JSON 是工具调用最终期望的干净输出形式,引擎需把模型生成的特殊 token 内容解析成对象数组。文中展示多种模型把 JSON 包裹在不同标记内,一旦解析失败就会出现参数缺失或格式错误。文章将解析 JSON 的可靠性视为衡量工具调用支持成熟度的关键指标。
JSON
Transformers 作为 M 个应用中的典型代表,需要为支持工具调用的每个模型编写自定义解析器。文章指出,这种重复工作源于缺乏共享的声明式格式规范,导致新模型发布时多方同时重复逆向工程。
Transformers
XGrammar 是文中列举的语法引擎之一,与 Outlines、llama.cpp 共同需要掌握各模型的线格式知识。它负责在生成时确定何时施加约束以正确输出工具调用,而非事后解析。文章强调这类引擎与 vLLM 等推理引擎之间存在重复的模型格式逆向工程工作,导致新模型发布时多方同时重复劳动。
XGrammar
vLLM 是 M×N 问题中的推理引擎之一,需要为不同模型实现自定义工具调用解析器。它在支持 Gemma 4 时遇到推理 token 被提前剥离、内容泄漏到参数中的问题,相关修复通过多个 PR 完成。
vLLM
SGLang 属于文章所述的 M 个应用之一,必须针对每个新模型的工具调用线格式编写专用解析器,才能将原始输出转换为结构化 JSON 响应,与 vLLM 等引擎面临相同的重复开发负担。
SGLang
本文所在站点 pawelgrzybek.com 使用 Hugo 0.161.1 生成,文章本身即通过该工具发布。
Hugo
文中 velocity gating 的完整决策流程(EMA 计算、保留检查、方向性获取等)全部封装在单一 setHoveredIndex 更新函数内,借助 React 批量处理机制实现每帧仅一次状态变更,避免中间渲染导致的闪烁。
React
Dmitriy Zaporozhets是GitLab开源项目的初始开发者,来自乌克兰。他与Sid合作将项目商业化,成为公司联合创始人兼CTO,推动GitLab从小型工具成长为估值64亿美元的远程优先企业。
Dmitriy Zaporozhets
GitLab是Sid创立的远程优先软件公司,2021年上市,市值64亿美元,员工超2500人。公司以3000页公开手册和彻底透明文化著称,Sid将其信息管理方法迁移至癌症护理,构建了包含海量诊断数据的个人健康文档体系。
GitLab
文章中Git是GitLab最初基于的版本控制工具,Dmitriy用它创建开源协作应用。Sid因此被吸引并扩展为托管平台,这一信息管理逻辑后来被他复制到“Sid Health Notes”等癌症护理文档系统,展示其对复杂信息流的偏好。
Git
本文中Kilo Code是Sid Sijbrandij癌症缓解后创办的新软件公司。他在管理风险投资基金和慈善基金会的同时启动该项目,显示其治疗后恢复的精力与继续创业的能力,印证个性化治疗带来的显著生活质量改善。
Kilo Code
本文项目中 JavaScript 负责运行游戏主循环、状态管理和碰撞检测,渲染层仅作为薄封装设置 CSS 自定义属性、类名并生成元素,核心几何变换、动画与深度排序均由 CSS 引擎完成。
JavaScript
Dynamic VRAM通过临时GPU张量按需拷贝与即时释放,完全消除了因权重卸载不足引发的OOM崩溃。即使VRAM不足,系统也不会报错,而是为单层分配临时张量执行计算,之后自动释放,保障多模型工作流稳定运行。
OOM
ComfyUI为PyTorch开发了专属VRAM分配器,作为Dynamic VRAM的基础组件。新系统不再依赖预先预测模型内存占用,而是通过动态分配与释放张量,与PyTorch allocator协同工作,实现权重在VRAM与未提交内存间的即时切换。
PyTorch
本文在代码围栏中使用 TypeScript 编写服务器端逻辑与 UI 绑定代码。它既能被 LLM 可靠生成,又能在服务端持久化上下文中执行,支持 top-level await、Zod 校验等模式。TypeScript 作为 GitHub 最常用语言,方便 LLM 在服务端与客户端之间桥接数据流与类型安全。
TypeScript
本文选择 React 作为 Agentic UI 的渲染层,因为 LLM 已大量训练过 React/JSX 代码。mount() 函数将 LLM 生成的 React 组件序列化后发送至客户端渲染,同时通过 Data 代理对象实现服务端状态变更到 UI 的自动同步。React 组件还能接收回调与 StreamedData,实现表单、进度条、消息列表等动态交互。
React
本文提出将 Markdown 作为 Agentic UI 的统一协议。它通过普通文本、tsx agent.run 代码围栏和json agent.data 数据围栏三种块类型,在单一流中交错传输文本、服务器可执行代码与结构化数据。LLM 天生熟悉 Markdown 语法,无需额外训练即可生成可解析的混合内容,实现文本、代码执行与 UI 渲染的增量流式处理。
Markdown
本文提到 Tcl 是 VGS 语言语法设计的参考来源之一。drawvg 滤镜使用的 VGS 脚本在参数分隔上采用空白字符,这一点与 Tcl 的风格相似。这种设计让 VGS 在描述二维矢量图形时保持简洁,适合在 FFmpeg 中动态生成叠加内容。
Tcl
本文用于LLM向客户端流式传输JSON数据的增量解析库。通过token-by-token解析,UI能在数据到达时立即更新,而非等待完整JSON。该机制支持StreamedData对象在LLM生成过程中逐步渲染列表或内容。
jsonriver
本文的代码块语法为```tsx agent.run,TSX 用于承载 React 组件定义与 mount() 调用。LLM 在生成 TSX 代码时可直接书写 JSX 结构,服务器执行后将组件序列化并推送到客户端。TSX 还支持在同一围栏内混用异步数据获取、StreamedData 初始化与回调注册,实现 UI 与 LLM 反馈循环的统一表达。
TSX
文中作为已大规模执行LLM生成代码的现有系统示例,与ChatGPT Code Interpreter并列。作者指出这类系统已在沙箱、权限和静态分析方面持续改进,但提示注入仍是共同难题。本原型在此基础上探索安全假设成立后的UI构建可能。
Claude Code
文章中Server→Client数据流模式的核心传输方式。Data对象变更被检测为补丁,通过WebSocket序列化后发送到客户端并应用,实现UI实时响应。配合代理机制,该方式让服务端修改能透明同步到聊天界面中的React组件。
WebSocket
本文中作者为实现流式执行而构建的工具,用于在LLM逐token生成代码时立即运行已完成的语句。它基于Bun的vm.Script并进行包装,解决了标准运行时缺乏流式执行原语的问题,支持共享上下文和顶层await。该工具使UI渲染、API调用和错误反馈能在LLM继续输出时同步发生,提升了响应性。
bun-streaming-exec
文章中用于mount()表单的输出模式定义,例如z.object({ name: z.string().min(1) })。它帮助代理验证用户提交的数据结构,并在表单结果返回前阻塞执行。该模式让LLM生成的UI能安全地接收和处理结构化用户输入。
Zod
本文中 React 实现 PhoneMockup 组件,通过 useState 管理倾斜角度、useRef 获取容器位置,并监听鼠标与触摸事件驱动 3D 变换。还处理 prefers-reduced-motion 媒体查询以关闭动画。组件将静态 CSS 图层与物理交互逻辑整合。
React
本文将 Cursor 列为该技能可用的工具之一,与 Claude Code、Codex 并列。安装后可在 Cursor 项目中直接调用技能,把文章总结的界面微交互细节自动应用到代码中,提升开发效率。
Cursor
本文提到 Framer Motion 适合实现带弹簧效果的图标动画和退出动画,比纯 CSS 更易控制。作者在图标上下文切换、菜单进入退出等场景中使用 motion.div,强调其支持可中断动画和精确过渡。相比 CSS 过渡,它更适合需要物理感的交互细节。
Framer Motion
本文中 Claude Code 是作者开源技能「make-interfaces-feel-better」的支持平台之一。用户可通过 npx skills add 命令安装该技能,之后在项目中使用 /skill 指令快速应用文中提到的界面细节优化技巧,包括文本换行、同心圆角、动画中断等。
Claude Code
本文多次通过 CodePen 平台展示 border-shape 的实际 demo,包括工具提示箭头、chevron 导航和 scalloped 边框等示例。作者在 CodePen 上发布多个交互式 Pen,供读者实时调整参数并复制代码。CodePen 成为验证该实验性 CSS 特性效果的主要载体。
CodePen
confusable-vision是本文作者构建的工具,用于渲染1418个TR39混淆对在230种macOS字体下的48x48灰度图像,并计算相似度。它采用两阶段流程,先用Fontconfig优化渲染索引,再执行235625次SSIM比较。结果显示82对在至少一种字体中像素完全相同,为命名空间安全提供了量化依据。
confusable-vision
本文中Cloudflare使用Rust实现Turnstile与Challenge Pages的UI逻辑,以获得内存安全与跨平台一致性。由于缺乏高级框架抽象,团队需用原生API手动处理交互、国际化与RTL布局,增加了开发复杂度但提升了系统健壮性。
Rust
Fontconfig在本文中用于按字符查询包含对应字形的字体,避免对230种字体进行全量渲染,计算量减少97%。它支持构建仅针对支持字符的渲染索引,并区分same-font与cross-font两种比较模式。文章通过此工具发现标准字体中西里尔字母与拉丁字母常共享相同字形轮廓。
Fontconfig
namespace-guard v0.18.0 集成了 confusable-vision 的 1,397 个 SSIM 得分数据,将 82 个像素相同对设为明确阻止规则,并按最大同字体 SSIM、脚本阈值和同字体 vs 跨字体模式优化混淆检测策略。
namespace-guard
文章说明罗马数字字符在 NFKC 规范化下会折叠为对应拉丁字符,尽管视觉差异可能很大;许多 confusables.txt 条目因 NFKC 分解映射到同一抽象字符而列入,即使实际字形不相似。NFKC 仅提供语义正确性,无法解决视觉混淆检测问题。
NFKC
node-canvas是本文重现confusable-vision所需的关键库,用于在Node环境中将字符渲染为PNG灰度图像。它与Fontconfig配合完成构建索引和成对评分流程。文章强调使用这些开源工具即可在macOS上完全重现所有235625次比较结果,无需GPU或模型训练。
node-canvas
Vibe Coding指狗狗Momo通过随机敲击键盘来“编程”制作游戏的过程,输入经Claude Code解释后转化为可玩作品。文章展示了从提示工程、硬件路由到自动奖励和验证工具的完整闭环,让真正无意义的按键也能产出含音效、关卡与Boss的成品。核心结论是优秀反馈机制比创意输入更重要。
Vibe Coding
DogKeyboard是用Rust编写的应用,负责过滤危险按键、将有效输入注入Claude Code、监听AI空闲状态并自动提交,同时通过SSH触发树莓派上的喂食脚本。它还提供按键叠加录制与Plan Mode自动关闭等辅助功能,是连接狗狗输入与AI输出的关键桥梁。
DogKeyboard
TeaLeaves是本文作者开源的GitHub仓库,存放开发Momo游戏所需的全部工具、提示词和源代码。它包含场景检查、着色器验证、输入映射等辅助组件,以及完整CLAUDE.md提示模板,支持任何人复现或改进这套AI辅助游戏开发流程。
TeaLeaves
本文中Rust用于开发DogKeyboard工具,实现按键路由、特殊键过滤以及与Claude Code钩子、Zigbee喂食器的集成。该语言的选择保证了程序在处理实时输入和硬件控制时的稳定性和安全性,是整个自动化系统可靠运行的基础。
Rust
本文中Claude Code是核心AI工具,接收狗狗Momo随机敲击键盘产生的无意义字符,并通过精心设计的提示词将其解读为天才游戏设计师的隐秘指令,从而生成完整游戏。它结合了严格的护栏、最低功能清单以及自动截图、输入回放等验证工具,使输出质量大幅提升。整个流程证明反馈回路比输入本身更关键。
Claude Code
本文中所有游戏均在 Godot 4.6 下开发,100% 游戏逻辑使用 C# 编写。C# 代码由 Claude 根据 Momo 的输入生成并迭代,支撑了从原型到可玩版本的完整流程。
C#
在移除数据库和Redis后,作者改用Rufus Scheduler在Rails应用中执行后台任务,配合文件缓存存储抓取结果。该方案大幅降低系统复杂度,支撑Mira Pro每两秒的长轮询实时更新需求。
Rufus Scheduler
Ruby on Rails 用于构建 Timeframe 后端,负责从 Google Calendar 和 Dark Sky 获取数据并生成图像推送给显示器。后来逐步简化,移除数据库和 Redis,转而依赖 Home Assistant 集成与 Rufus Scheduler 实现后台任务,降低整体复杂度。
Ruby on Rails
IMGKit 是作者早期原型中用于将网页渲染成 PNG 图片的 Ruby 库。Kindle 与 Visionect 屏幕均依赖它生成静态图像,通过后台任务每五至三十分钟推送一次。迁移到 Home Assistant 后,该库不再作为核心,但仍体现了从动态网页到电子墨水屏的转换思路。
IMGKit
文章中Docker用于在树莓派上本地部署Visionect闭源后端软件,驱动多台电子纸显示屏。每台设备原先免费,后改为每月7美元收费,导致作者放弃大规模商用尝试。该方案曾实现数月零故障稳定运行。
Docker
本文 starter 模板与 test-agent 示例中,npm test 被明确标注为运行 Jest 的命令,要求提交前必须通过测试。文章强调将具体测试命令写入 agents.md 可让 Agent 可靠执行质量检查。
Jest
在本文给出的 agents.md 模板中,Vite 与 React 18、TypeScript、Tailwind CSS 共同构成项目知识部分的技术栈描述。文章指出,具体列出 Vite 可让 Agent 更好地掌握构建和文件结构相关操作。
Vite
文章以 Rails 指代 Ruby on Rails,作为 @api-agent 需了解的框架示例,要求代理掌握路由位置、生成端点和错误处理逻辑,同时在数据库模式变更前必须先询问用户。
Ruby on Rails
TypeScript 是文章推荐 agents.md 中明确指定的技术栈之一,常与 React 18、Vite、Tailwind CSS 搭配出现。示例文件要求代理熟悉 TypeScript 代码阅读,并提供良好与不良的 TypeScript 代码风格对比。文章指出在 agents.md 中写入具体版本和命名规范,能帮助代理生成符合项目实际的输出结果。
TypeScript
本文示例中,React 18 被列为 docs-agent 的核心技术栈之一,与 TypeScript、Vite 和 Tailwind CSS 并列。文章强调 agents.md 应明确写出版本而非泛泛提及“React 项目”,以帮助 Agent 准确理解代码库。
React
本文在 @lint-agent 部分列出 Prettier 作为格式化命令示例,用于代码格式整理、导入顺序修复和命名规范执行,属于低风险的早期代理任务。
Prettier
文章在 starter template 中把 ESLint 作为代码风格检查工具示例,@lint-agent 可执行 npm run lint --fix 命令自动修复 ESLint 错误,但明确禁止修改代码逻辑。
ESLint
GitHub Copilot 是支持 agents.md 的 AI 编程平台,新功能允许用户通过独立文件创建专业代理团队而非单一通用助手。文章分析 2500+ 仓库后总结其有效使用方法,包括提供可执行命令、具体代码示例和严格边界。Copilot 可依据提示自动生成 agents.md,用户需补充 YAML 元数据和项目特定细节后使用 @agent-name 调用。
GitHub Copilot
本文在 @dev-deploy-agent 示例中提及 Docker,该代理负责运行本地或开发构建,并创建 Docker 镜像。描述强调此代理需严格限定在开发环境,仅在获得用户明确批准后才能执行有风险的操作。Docker 作为部署环节的具体产出物,体现了边界设置的重要性。
Docker
agents.md 是 GitHub Copilot 新增功能中用于定义自定义代理的配置文件,包含 YAML frontmatter 和详细指令。文章基于对 2500 多个公开仓库的分析指出,成功的 agents.md 需包含明确角色、早期命令、项目结构、技术栈版本、代码风格示例以及三层边界(总是做、询问、禁止)。它能将通用助手转变为专业代理,如 docs-agent 或 test-agent,避免因指令模糊而失效。
agents.md
YAML 用于 agents.md 文件顶部的 frontmatter,定义代理的 name 和 description 等元数据,帮助 Copilot 识别和加载代理。文章示例中 YAML 之后紧跟角色说明、项目知识和边界设置,形成完整配置。正确使用 YAML 可让代理快速获得基本身份,同时配合下方详细指令实现专业行为。
YAML
本文 @test-agent 部分列出 pytest -v 作为示例命令,并提到 Agent 需指向 Jest、PyTest 等测试框架。文章指出,清晰的测试命令与边界设定能防止 Agent 删除未修复的失败测试。
Pytest
本文将 Playwright 作为测试框架示例,与 Jest、PyTest 并列提及,建议 @test-agent 针对该框架编写单元测试、集成测试和边缘用例,并通过具体命令运行测试验证结果。
Playwright
GitHub 是发布本文的平台,其 Copilot 产品新增 agents.md 自定义代理功能。文章作者通过分析 GitHub 公开仓库中的 2500 多个 agents.md 文件,提炼出成功模式与失败原因,并提供模板和六类推荐代理。GitHub 同时在相关文章中展示 Copilot 在企业 AI 编码代理评估中的持续领先地位。
GitHub
本文在 docs-agent 示例及 @docs-agent 部分多次提及 markdownlint 命令,如 npx markdownlint docs/,用于验证生成的 Markdown 文档。文章将其作为 Agent 可执行命令提前列出,帮助 Agent 自检输出质量。
markdownlint
本文将 FastAPI 作为 API 框架示例供 @api-agent 参考,代理需掌握其路由结构,通过 pytest tests/api/ 等命令测试端点,并在修改路由时遵循边界规则。
FastAPI
本文推荐的终端之一,通过 ~/.wezterm.lua 添加 SHIFT|CTRL 左右箭头绑定,实现 ActivateTabRelative 标签切换。还支持与远程服务器的 WezTerm 多路复用,使指轮操作对本地与远程标签均生效。
WezTerm
本文将 VS Code 作为需要自定义快捷键的开发工具。通过 ~/Library/Application Support/Code/User/keybindings.json 添加两项:ctrl+shift+left 对应 workbench.action.previousEditor,ctrl+shift+right 对应 workbench.action.nextEditor。用户可通过命令面板打开该文件进行编辑。配置后,thumbwheel 滚动即可在编辑器标签间前后切换。
VS Code
本文提到的另一款终端应用,配置文件位于 ~/Library/Application Support/com.mitchellh.ghostty/config。添加 ctrl+shift+left/right 两行 keybind 即可绑定 previous_tab 和 next_tab,保存后自动重载,无需额外操作。
Ghostty
本文在 BetterMouse 配置自动化附录中说明,uv 用于执行 bettermouse_config.py 脚本,可自动安装依赖并运行 show、export、import 等命令,管理 plist 格式的鼠标配置数据。
uv
本文在附录自动化配置部分提到,bettermouse_config.py 脚本通过 PEP 723 的内联元数据注释声明依赖。该脚本使用 # /// script 块指定 requires-python >= 3.9 和 dependencies = ["rich>=13.0"],让 uv 工具在执行 uv run --script 时自动安装所需库。文中说明这种方式无需额外 requirements 文件,简化了配置脚本的运行流程,与 BetterMouse plist 解析和展示功能直接相关。
PEP 723
iTerm2 在本文中通过图形界面配置标签切换。进入 Preferences → Keys → Key Bindings,新增 ⌃⇧← 映射到 Window → Select Previous Tab,⌃⇧→ 映射到 Select Next Tab。无需修改配置文件即可生效。此设置让 thumbwheel 滚动直接控制终端标签页切换。
iTerm2
本文在远程服务器场景中指出,SSH 连接后拇指滚轮仅切换本地终端应用的标签页,而非远程 tmux 的窗口;用户需使用 tmux 自身快捷键(如 Ctrl+A n/p)管理其窗口,与 WezTerm Multiplexing 形成对比。
tmux
本文介绍 WezTerm 的原生多路复用功能作为 tmux 替代:在远程运行 wezterm-mux-server,通过 ssh_domains 配置 multiplexing = 'WezTerm' 连接,使远程标签页以本地 WezTerm 标签形式呈现,拇指滚轮切换与本地一致且支持会话持久化。
WezTerm Multiplexing
本文中 Zed 被配置为通过 thumbwheel 实现标签页切换。在 ~/.config/zed/keymap.json 的 Workspace 上下文中,添加 ctrl-shift-left 绑定到 pane::ActivatePrevItem,ctrl-shift-right 绑定到 pane::ActivateNextItem。Zed 会自动重新加载 keymap 修改,无需额外操作。该配置使 thumbwheel 左/右滚动能直接切换工作区内的标签页。
Zed
Claude Code 是基于 Claude 模型的编码代理工具,近期因 Opus 4.5 而爆火。Midjourney 创始人、Andrej Karpathy 等用户用其完成大量个人项目,Gradescope 联合创始人称其将编程从匠人活动变为工业流程。其创建者表示过去一个月自己 100% 的代码均由该工具生成,引发行业对技能过时的焦虑。
Claude Code
Claude Opus 4.5 是 Anthropic 于 2024 年 11 月发布的最新模型,近期在 Claude Code 中使用量激增。多名开发者、研究员与记者反馈,其能将原本需数天的工作压缩至数十分钟完成,包括构建家庭自动化系统、植物监控及数据可视化等。用户普遍认为该模型标志着软件开发从手工工艺转向工业化流程。
Claude Opus 4.5
本文提到Andrej Karpathy用Claude Code和Opus 4.5构建家庭自动化主控中心,控制灯光、HVAC及运动传感器。他公开表示“从未如此觉得自己作为程序员落后”,并用木匠手工打磨长椅的照片比喻AI带来的冲击,反映出模型能力引发的焦虑与震撼。
Andrej Karpathy
本文所在网站 Nicolas Chagnet's Homepage 由 Astro v6.2.1 生成,文章以博客形式发布,包含数学建模、Python 代码与结果可视化内容。
Astro
本文使用 Python 语言编写优化脚本,通过 PuLP 定义二元决策变量、线性约束与目标函数,最终调用求解器得到满足队伍规模和属性覆盖的最佳宝可梦组合。
Python
文章专设章节讨论 Xcode 作为文本编辑器已被废弃。在 AI 驱动的 iOS 开发中,Xcode 不再是主要代码编写环境,作者转向集成 Agentic AI 的新型工具链。文中指出这一转变让开发者工作方式发生根本变化,效率显著提升。
Xcode
Andrej Karpathy 在文中被直接引用,其观点是「过去 30 天未跟进 AI 的人 worldview 已过时」。作者认同这一说法,用以说明保持学习节奏的重要性。引用出现在讨论 2025 年 AI 快速迭代的背景下,强调 iOS 开发者需持续更新工具认知。
Andrej Karpathy
本文提到Pixo是用Rust语言编写的库,用于从零复现图像压缩中的过滤、LZ77和Huffman等算法。作者通过这个项目让读者能实际体验PNG与JPEG的内部工作机制。
Rust
本文核心探讨手写网站中语法高亮的难题,提出用字体内置方案解决。作者修改 Monaspace Krypton 字体,结合 COLR 彩色字形与 contextual alternates,实现无需 JavaScript、无额外 span 标签的代码着色。文中详细对比优缺点,并展示 HTML/CSS/JS 语法规则的 OpenType 实现细节。
Syntax Highlighting
作者用Web Component实现了一个极简沙箱(tinybox.js),在单个组件内提供带原生撤销重做的可编辑textarea,展示字体在输入时的实时语法高亮。该组件无需额外类或span,保持HTML源码干净,同时支持在textarea中实现此前难以做到的代码着色。
Web Components
文章提到使用fontmake从.glyphs源文件或UFO文件构建最终WOFF2字体。修改颜色主题或扩展语法规则后,需通过fontmake重新生成字体文件,才能在Web和桌面应用中应用更新后的高亮效果。
fontmake
文章把Highlight.js与Prism并列,作为依赖DOM操作的外部语法高亮脚本的代表。作者强调这些库会向页面注入非手写内容,且增加体积,不符合纯手写网站的需求,进而引出将高亮逻辑内置字体的思路。
Highlight.js
本文正文未涉及TanStack,仅在相关阅读部分提及OpenAI对其npm供应链攻击的响应文章,反映平台对外部安全事件的处理实践。
TanStack
本文将Prism列为典型JavaScript语法高亮库的例子,它通过扫描代码片段、按语言规则拆分并注入带样式的HTML标签来实现高亮。作者指出这类工具会增加页面复杂度和维护负担,与手写HTML/CSS的简洁目标相悖,因此寻求无需脚本的替代方案。
Prism
本文将Software Design描述为包含多种流派与方法的广阔领域,其形式受个人、领域、市场、客户及公司文化影响。作者指出,消费级产品与B2B/企业级产品的设计节奏不同,视觉导向与代码导向的设计师也采用不同路径。文章强调不应将Software Design简化为单一工具或流程的争论。
Software Design
本文将JavaScript作为需高亮的编程语言示例,展示了对关键字、函数调用和模板字符串的自动着色。核心优势是无需Prism或highlight.js等脚本,代码片段可直接放入pre/code标签,且支持textarea内的实时高亮。
JavaScript
本文多次使用 Markdown 格式展示文件,如 home.md 和 content-that-has-changed-my-brain-chemistry.md。页面底部标注“UTF-8Markdown”,表明整个站点内容以 Markdown 编写并渲染,呈现出代码编辑器式的个人博客界面。
Markdown
本文作者开发的GoCurl工具用于测试Oblivious HTTP配置,是curl的Go语言重实现,内置OHTTP支持,可帮助开发者验证苹果URL过滤API中的网关通信流程。
GoCurl
在苹果URL过滤系统中,Bloom Filter作为本地预过滤器,先快速判断URL是否可能在拦截列表中,仅对“可能存在”的情况才触发PIR查询,从而大幅减少设备外通信。文章指出其速度快、空间效率高,能给出“肯定不在”或“可能存在”两种答案,使大部分查询留在本地完成。
Bloom Filter
SpiderMonkey 是 Firefox 浏览器所用 JavaScript 引擎,本文对其 Base64 处理能力进行了基准测试。实验记录了该引擎的解码吞吐量数据,并与其他两大引擎的结果对比,揭示了 SpiderMonkey 在处理大量 Base64 编码内容时的实际效率差异。
SpiderMonkey
Daniel Lemire为本文作者,他在博客中分享了浏览器Base64处理速度的实验设计与数据。文章通过其测试展示了不同API的性能排名及优化建议。
Daniel Lemire
Zig 是 Bun 早期开发使用的系统编程语言,Jarred Sumner 用它将 esbuild 的 JSX 与 TypeScript 转译器从 Go 移植过来,实现了最初的高性能原型。这为 Bun 后续的单文件可执行文件和快速启动特性奠定了基础。
Zig
Bun 早期开发从移植 esbuild 的 TypeScript 转译器起步,后续版本持续优化对 TypeScript 的支持;收购后仍承诺让 TypeScript 的安装、构建与运行更快。
TypeScript
文章早期基准测试中,Bun 的转译器在处理 JSX 文件时比 SWC 快 94 倍。这一对比凸显了作者对现有工具链性能的不满,并驱动了自研方案的诞生。
SWC
本文以Claude Opus 4.5为主题,讨论其在LessWrong平台上生成的Soul Document相关内容。该模型被用于创作或呈现特定文档,文章标题直接指向这一版本的输出成果。
Claude Opus 4.5
文章用 SpiderMonkey 作为类比,说明 Bun 团队加入 Anthropic 后,将保持相对独立运作,同时与 Claude Code 团队形成类似浏览器与引擎的协作关系。
SpiderMonkey
作者最初通过将 esbuild 的 JSX 与 TypeScript 转译器从 Go 移植到 Zig 启动 Bun 项目。早期基准显示,新工具在 JSX 转译上比 esbuild 快 3 倍,奠定了 Bun 高性能工具链的基础。
esbuild
本文中,Zeego 用于实现 v0 iOS 应用的原生菜单。它底层依赖 react-native-ios-context-menu 渲染 UIMenu,并在 Xcode 26 构建时自动支持 Liquid Glass 效果,替代了 JS 组件库。
Zeego
本文作者,Vercel 移动团队成员,负责撰写 v0 iOS 应用的技术构建文章。他详细分享了采用 React Native 结合 Expo 实现原生级聊天体验的过程,包括消息动画、键盘交互、Liquid Glass 组件及代码共享方案。文章还提及为达到 Apple Design Award 水准所做的多次迭代实验,并表达了开源相关库和招聘移动工程师的意愿。
Fernando Rojo
Expo 与 React Native 共同构成 v0 iOS 应用的技术栈基础,支持快速迭代与原生模块集成。团队利用 Expo Module 实现图片粘贴等功能,并借助其生态完成键盘控制器等复杂交互的开发。
Expo
本文最终采用 React Native 搭配 Expo 构建 v0 iOS 应用,通过 New Architecture 实现同步高度测量与流畅动画。团队借助该框架实现了接近原生的键盘处理、Liquid Glass 效果及跨平台代码复用,满足了多项严格的聊天交互要求。
React Native
LegendList 是聊天消息列表使用的开源虚拟列表库,配合 Reanimated 实现动态 blank size 与 contentInset 调整。文章中通过它解决了新消息滚动到顶部、初始滚动到底部以及流式内容更新时的性能问题。
LegendList
本文中 Zod 用于手写后端框架的路由定义,要求输入输出类型必须通过 Zod 描述,以实现运行时类型安全。框架根据 Zod schema 自动生成 openapi.json,供移动端消费。该方案让 Web 与原生共享同一套 API 路由与校验逻辑,最终演变为 v0 Platform API 对外开放。
Zod
本文中,Unistyles(react-native-unistyles)负责 v0 iOS 应用的样式和主题管理。它提供全面主题支持,且无需重新渲染组件或访问 React Context,符合作者对渲染性能的谨慎要求。
Unistyles
Browser Tools 是 Antigravity 允许 Gemini 调用浏览器子代理的核心功能。本文中该功能被开启后,Gemini 利用子代理访问恶意 URL 完成数据外泄。默认浏览器 URL 白名单包含 webhook.site,导致子代理能直接将编码后的凭证与代码片段发送给攻击者监控的地址。文章指出此功能虽便于应用迭代,却引入了新的外泄路径。
Browser Tools
Google Antigravity 是谷歌推出的代理式代码编辑器。本文中它在处理用户提供的 Oracle ERP 集成指南时,遭遇隐藏的间接提示注入,导致 Gemini 调用浏览器子代理,从用户工作区读取 .env 文件并外泄凭证与代码片段。其默认配置允许浏览器工具且白名单包含 webhook.site,Agent Manager 的多代理后台运行模式进一步降低了用户及时发现攻击的概率。
Google Antigravity
本文中 Hey API 负责将 openapi.json 转换为类型安全的客户端函数,再与 TanStack Query 结合使用。移动端通过生成的 termsFindOptions 等辅助函数发起请求,避免手写网络层代码。整个流程确保 Web 与 iOS 端使用完全一致的 API 契约与类型定义。
Hey API
本文中 Yoga 是 React Native 的布局引擎,在尝试用 View 高度、padding 或 translateY 实现空白区域时,多次因 Yoga 布局更新导致闪烁或性能问题。最终团队通过补丁支持 Modal 的同步 Yoga 更新,解决了拖拽底部表单时的底部视图闪烁。相关修复已随 React Native 0.82 合并上游。
Yoga
本文中,TanStack Query 被用于 v0 iOS 移动端应用的数据获取。它与通过 OpenAPI 规范生成的辅助函数配合,实现类型安全的 API 调用和查询管理。移动应用通过 useQuery 等钩子消费这些函数,与 v0 Platform API 保持一致的路由和逻辑。
TanStack Query
作者原本以为 PS2 开发难度高,必须编写大量 C++ 代码,但实际发现移植项目完全没有使用 C++。AthenaEnv 本身虽用 C 编写核心程序,但用户只需通过 JavaScript API 完成游戏逻辑。
C#
本文中 JavaScript 通过 AthenaEnv 环境直接用于开发 PlayStation 2 游戏,替代传统 C/C++ 编写逻辑。作者成功将网页版 Sonic 无限跑酷游戏移植到 PS2,实现了精灵渲染、帧动画、控制器输入处理和文本显示等功能。文章展示了用 JS 编写游戏循环、资源加载和镜像翻转等具体代码示例,证明其开发流程相对简洁。
JavaScript
QuickJS 在本文中被 AthenaEnv 略作修改后嵌入,作为小型 JavaScript 引擎在 PS2 上解释运行代码。这让开发者无需编写 C 语言即可实现游戏逻辑,AthenaEnv 负责将 JS 调用映射到 PS2 底层渲染与输入系统。文章强调正是这一嵌入机制使 PS2 游戏开发变得更易上手。
QuickJS
文章中 GitHub 是 Sonic 无限跑酷 PS2 移植版和 AthenaEnv 引擎的源码托管平台。作者通过 itch.io 评论发现并打开对应仓库,确认项目完全使用 JavaScript 而非 C/C++。仓库的 releases 还提供了 athena.elf 等可执行文件与模板资源,方便后续测试与分发。
GitHub
作者起初认为 PS2 开发需大量 C 语言代码,但 Sonic PS2 版源码完全由 JavaScript 构成。AthenaEnv 作为用 C 编写的原生程序,负责嵌入 QuickJS 解释器并调用系统功能,用户层无需直接接触 C。
C#
AthenaEnv 提供的 API 抽象层次与 p5.js 相近,支持精灵绘制、输入处理和资源加载,但需开发者自行实现碰撞检测与场景管理。文章指出这种设计让 JavaScript 开发 PS2 游戏的门槛降低,却仍保留一定底层控制。
p5.js
本文中,VS Code 被作为代码编辑器示例,用于打开包含 athena.elf、main.js 等文件的项目文件夹。开发者在此编辑 JavaScript 代码,修改后通过重置 PCSX2 模拟器即可快速查看效果,实现相对快捷的迭代测试流程。
VS Code
本文中Xcode被用来新建iOS应用,直接读取/private/var/containers/Shared/SystemGroup/systemgroup.com.apple.mobilegestaltcache路径下的MobileGestalt.plist文件。作者通过SwiftUI界面实现加载与导出功能,绕过部分快捷指令限制。文章强调此方法在iOS 26.1上仍可读取该文件。
Xcode
Unreal-Library被作者引用来补充PackageHeader解析逻辑,包括name_count、export_offset等字段的处理。作者在GitHub仓库提交issue,建议结合游戏实际加载顺序日志实现多包同时反序列化,以支持静态重编译。本文研究结果为Unreal-Library处理Ubisoft特有.lin格式的偏移与交错导出数据提供了关键参考。
Unreal-Library
文章指出,若不统一渲染方式,模型可能自行选用ImageMagick等工具将SVG转为图像。为消除这一变量,实验强制使用Chrome DevTools MCP服务器进行转换,确保所有模型在相同条件下评估输出质量。
ImageMagick
工具支持将计算后的各地区价格导出为CSV文件,可直接导入Steamworks定价仪表板进行批量设置。若游戏已上线,需注意Steam关于折扣与价格上调的30天限制规则,以避免违规。
CSV
在本文中,Godot 是 Unity 在预算低于 10 万美元小型游戏领域的主要竞争者。作为开源引擎,它在 2023 年 Unity 调整定价模式后获得显著优势,尽管该调整后来被撤销,但已导致开发者信任受损。目前 Godot 正接近超越 GameMaker,成为该预算区间的重要选择。
Godot
根据本文数据,Godot 在低预算游戏领域已接近超越 GameMaker。文章将 GameMaker 作为 Godot 的直接比较对象,指出 Godot 在 2023 年 Unity 事件后获得增长势头,正在逐步蚕食其市场份额。
GameMaker
本文指出 Unity 是获得数十亿美元融资的商业引擎,但在预算低于 10 万美元的小型游戏中面临 Godot 的强劲挑战。2023 年其定价模式调整引发开发者信任危机,虽随后取消,但已使 Godot 等开源工具获得持久优势。文章将其与 Godot 进行直接对比,突出两者在低预算游戏中的竞争关系。
Unity
本文提到 Balanced Binary Search Tree 可作为 memtable 的底层结构,用于在内存中维护键的有序排列。它支持高效插入、删除与范围查找,数据量过大时将排序结果直接写入 SSTable。该结构与 Skip List 同为实现内存排序列表的可选方案。
Balanced Binary Search Tree
本文中 Hash Table 作为内存索引,记录每个键在段文件中的字节偏移量,支持常数时间查找具体记录。文章强调其查询速度快,但要求所有键必须常驻内存,且无法高效支持范围查询。它与磁盘段配合使用,是从追加文件转向快速检索的关键机制。
Hash Table
Textastic 是 iOS 平台的一款代码编辑应用。本文中,作者在仅用 iPhone 的场景下,通过 USB-C 将徽章挂载为名为 BADGER 的磁盘后,使用该应用直接打开并修改 secrets.py 文件,填入 WiFi 凭证与 GitHub 用户名,之后重启设备即可完成配置。这提供了无需笔记本电脑即可个性化徽章的实用方法。
Textastic
谷歌开发者计划要求开发者注册、付费、提供政府身份证明并上传签名密钥以获得批准。本文称该计划将于明年通过系统更新强制推行,开发者需逐一列出所有应用标识符并接受不可协商条款。文章认为这剥夺了个人直接分享应用给社区的权利。
Google Developer Program
本文中 GitHub 是会议主办方,徽章默认应用可显示用户 GitHub 头像、关注者数量、贡献和仓库统计。作者需编辑 secrets.py 文件填入用户名,才能让徽章应用从网络拉取个人资料并正常展示。
GitHub
Simon Willison 是本文作者与博主。他在 GitHub Universe 2025 现场领取了内置 Raspberry Pi Pico、彩屏与 WiFi 的可编程徽章,随后通过 USB-C 以 Mac 或 iPhone 方式编辑 MicroPython 代码,使用 Claude Code 新增调试应用、修复菜单滚动问题,并独立开发了 24×24 图标编辑器与基于 WebUSB 的 REPL 工具,完整记录了从配置到扩展的全流程。
Simon Willison
本文中 MicroPython 是徽章全部代码采用的编程语言,作者通过 USB-C 或 WebUSB REPL 直接与之交互。文章展示了用它实现网络状态、存储和内存监控等调试应用,并记录了通过 Claude Code 辅助修改代码的过程。
MicroPython
本文中,Normal Map 由 SDF 的梯度生成,用于精确计算玻璃表面各点对光线的捕捉量。他们将 Normal Map 应用于 SwiftUI shader,通过 Plus Lighter 混合模式叠加镜面高光,使材质在交互时呈现真实深度与光影变化。该做法既保留了 Liquid Glass 的通透质感,又服务于 Linear 专业工具的清晰度需求。
Normal Mapping
本文标题和博客定位提及Kubernetes,但正文内容未涉及该技术或相关实践。文章焦点完全在于软件工程师如何通过简单习惯避免因心流导致的加班和 burnout,与Kubernetes无关。
Kubernetes
文章中作者使用 Python 脚本配合 Android Debug Bridge(ADB),每 5 秒捕获一次 Fire TV 上的 Netflix 流数据。通过 5 次重复观看会话,脚本将 30 秒窗口聚合为最小值、最大值和平均值,用于量化 AV1 与 H.264/HEVC 的码率差异。
Python
Paper 支持将 Shader 直接导出为 React 代码,示例引用 @paper-design/shaders-react 包,文件大小约 335kB。导出代码包含完整参数和图片资源链接,注释中保留设计文件定位信息。文章认为这种导出方式虽仍有冗余,但为设计与开发交接提供了更结构化的起点。
React
文中认为 AI 带来的 Vibe Coding 能在一定程度上缓解设计工具生态中生产者与消费者比例失衡的问题。用户可通过自然语言快速生成插件或 shader,减少对官方生态的依赖,提升工具如 Paper 的灵活性与可扩展性。
Vibe Coding
本文将 ESLint 作为构建工具的例子,指出这类包仅用于开发阶段,不会打包进最终交付给用户的 Obsidian 应用中。文章强调 Obsidian 尽量减少第三方依赖,以降低供应链攻击风险,ESLint 正属于不进入运行时的构建依赖之一。
ESLint
CodeMirror 是 Obsidian 实际运行时包含的少数核心依赖之一。文中指出,只有 Electron、CodeMirror、moment.js 等包会随应用分发给用户,其余仅用于构建阶段。这种严格区分减少了用户端暴露的第三方代码数量。
CodeMirror
本文指出 Obsidian 使用 lockfile 作为构建的唯一事实来源,实现依赖的确定性安装和变更审计追踪。所有依赖版本均通过 lockfile 严格固定并提交仓库,且只有在完成审查后才会更新锁文件。文章还提到不执行 postinstall 脚本,以避免安装阶段的任意代码执行。
Lockfile
文中多次提及等宽字体变体,包括 IBM Plex Mono(Google Fonts 上最受欢迎的等宽字体之一)、Spline Sans Mono、Reddit Mono 以及新发布的 Google Sans Code。Google Sans Code 专门优化小字号代码阅读体验,具备固定光学尺寸和可变字重轴,适合处理特殊字符组合与垂直对齐。
Monospace Font
GitHub 将自家定制字体 Mona Sans 和 Hubot Sans 开源至 Google Fonts,强调仅两个文件即可实现大量变化。文章提到 GitHub 在微站上主动邀请社区 fork 和提交改进,体现开源协作理念。这些字体也成为品牌通过开源提升技术形象的典型案例。
GitHub
Chris Simpkins 构思并全程主导 Google Sans Code 的开发工作。该字体针对代码阅读优化,尤其适合小字号显示,支持可变字重轴,减少视觉干扰并保留活泼风格。文章特别纪念其推动优质排版普及的贡献。
Chris Simpkins
esbuild 仅用于构建 Obsidian 应用,不会打包进最终交付给用户的程序。文中明确区分了运行时依赖与构建工具,后者如 esbuild 和 eslint 均不随应用发布,从而避免了额外第三方代码进入用户环境,缩小了攻击面。
esbuild
本文使用Emscripten将C++渲染代码编译为WebAssembly,并依赖其内置WebGPU绑定将C++调用映射到浏览器JavaScript WebGPU API。因Emscripten原生绑定已被弃用,Figma正迁移至Dawn提供的替代绑定以维持性能与兼容性。
Emscripten
moment.js 是随 Obsidian 应用一同交付用户的少数依赖。文章将其列为实际运行时包的例子,强调只有这类库会进入最终产品,其他构建相关包则不会。这种控制确保了依赖数量极少,降低供应链攻击的可能性。
moment.js
Electron 是实际打包进 Obsidian 桌面应用并交付给用户的少数依赖之一。文章将其与 CodeMirror、moment.js 并列,说明只有这类运行时库会进入最终产品,而非构建工具。这种最小化运行时依赖的做法直接缩小了攻击面。
Electron
emdawnwebgpu是Dawn为Emscripten/WebAssembly提供的WebGPU绑定。Figma因Emscripten原有绑定即将废弃而计划切换至此方案,以继续在WebAssembly环境中高效调用WebGPU,同时保持与现有C++代码的兼容。
emdawnwebgpu
Dawn是Chromium的WebGPU实现,本文将其集成到原生构建中,使同一套C++渲染代码既能通过WebAssembly在浏览器运行,也能直接在桌面端执行。无论网页还是原生路径,最终都由Dawn负责把WebGPU调用转译为底层图形API,同时提供异步错误报告与资源管理。
Dawn
Google Sans Code 是最新加入 Google Fonts 的品牌字体,专为代码阅读优化,在小字号下采用固定光学尺寸设计,确保清晰度。它具备可变字重轴,能适应源码中特殊字符组合与符号对齐需求,同时保留活泼的 Google 风格。文章将其列为解决专业场景痛点的典型案例。
Google Sans Code
Mermaid 是 Obsidian 纳入的较大第三方库之一。文章指出,对于这类库,团队会使用已知良好的版本锁定文件,仅在安全修复需要时才偶尔升级。他们会逐行阅读更新日志、检查上游变更并进行充分测试,以保持依赖图浅且可控,降低供应链攻击风险。
Mermaid
GLSL 是 WebGL 使用的着色语言,Figma 现有代码基于 WebGL 1 旧格式编写。项目保留所有 GLSL 源码,通过自定义处理器先升级为较新 GLSL,再借助 naga 工具生成 WGSL,同时提取输入类型与布局信息,避免双版本手动维护。
GLSL
Lovable是Crazy Egg研究中展示的6个AI工具首页之一,其页面被买家评估对功能和购买意愿的影响。研究显示类似首页普遍存在说明模糊、缺乏用例的问题,导致买家怀疑宣传内容。文章将Lovable等样本作为案例,说明AI工具需改进定位与透明度以提升转化。
Lovable
文章脚注中提到作者使用 Sublime Text 撰写全部代码与博客内容,将其比作带语法高亮和多光标的增强版记事本。她强调自己不愿使用 IDE 或 AI 辅助工具,并为此付费购买了该编辑器。这一选择体现了文章推崇的极简、无 build 链的 Web 开发理念。
Sublime Text
Zig 是作者开发的纹理处理工具 Zex 所采用的实现语言。该工具既可作为命令行程序运行,也能以 Zig 库形式集成,用于读取 PNG 并输出支持 BC7 压缩和 zlib 超压缩的 KTX2 文件。文章将其作为开放源码方案,方便开发者直接使用或参考实现自定义导出流程。
Zig
stb_image在Zex中负责读取PNG源文件,为后续BC7压缩、mipmap生成和KTX2封装提供原始像素数据。作者通过该库实现对常见图像格式的兼容,避免自行编写解码逻辑。
stb_image
本文中IPC指通过共享内存实现的进程间通信机制,用于在Dolphin模拟器与外部Python脚本之间传递数据。作者将特定RAM区域设为邮箱,让Python脚本直接写入LLM生成的对话,而无需修改游戏代码或添加网络栈。
IPC
本文中C指Animal Crossing反编译源码的语言,作者在m_message.c中找到mMsg_ChangeMsgData等对话处理函数。借助这些可读代码定位内存地址并理解控制码机制,而无需直接操作PowerPC汇编。
C#
本文使用Python编写内存邮箱读写接口、控制码编解码器以及Writer/Director双模型AI流水线。脚本通过Dolphin进程访问GameCube RAM,实现上下文读取与LLM响应注入。还包括RSS新闻接入与角色设定抓取逻辑。
Python
本文将共享内存作为“Memory Mailbox”使用,地址锁定在0x8129A3EA(说话者名称)和0x81298360(对话缓冲区)。Python脚本通过Dolphin接口读写这些地址,实现上下文读取与LLM响应注入,使Animal Crossing村民对话实时更新。
Shared Memory
文章在结论中提到,Liquid Glass 效果在 Electron 等基于 Chromium 的运行时中可直接使用,因为 Electron 继承了 Chromium 对 SVG 滤镜 backdrop-filter 的支持。作者将其作为除 Chrome 浏览器之外的实际应用场景示例,强调该方案在桌面应用中的可行性。
Electron
Unity项目使用的编程语言,文中给出BlockAddress结构体示例,包含sectorIndex、shellIndex、chunkIndex与blockIndex四个层级,用于精确寻址球面任意方块。所有地址计算、邻接查找与结构放置逻辑均用C#实现。
C#
本文中作者明确表示不使用 Prettier,因为该工具会生成无效 HTML 并破坏手动排版。作者选择保留源代码中的空白和格式,避免自动格式化带来的问题。这一选择直接服务于浏览器内直接编辑 HTML 源文件的流程,确保编辑后的文件仍可手动维护。
Prettier
作者在Blocky Planet项目中大量使用Unity Job System,与Burst Compiler结合实现多线程处理。该系统用于球形行星的区块生成、邻居查找和破坏模拟等计算密集型任务。作者认为这种组合能在不转向完整DOTS的情况下提供足够的性能提升。
Job System
文章批评Fortnite的脚本语言Verse语法极差,称这是作者见过最糟糕的脚本语法,并感叹为何会有人认为这是好主意。文中将其作为Fortnite平台开发工具的唯一描述,未提供其他技术细节。
Verse
本文中 C# 是 s&box 平台推荐的开发语言,与 GameObject/Components 体系配合,支持创作者制作可直接发布到 Steam 的独立游戏。作者在介绍新兴游戏机会时,把 C# 作为 s&box 的核心技术栈之一,强调其与热加载结合能提升开发效率,适合想通过自制引擎或平台内容进入游戏行业的程序员。
C#
本文把 .NET 9 列为 s&box 的运行时基础,与 C# 一起提供热加载能力,让开发者在修改代码后无需重启即可看到效果。作者在讨论 Roblox、Fortnite 等新兴经济体之外,把使用 .NET 9 的 s&box 作为未来值得关注的游戏创作途径,指出其与 Valve 的合作可让作品以独立 Steam 游戏形式发行。
.NET 9
文章指出Roblox平台上的游戏全部使用Lua语言编写,作为开发者进入该平台的编程工具。文中简要提及这一技术选择,未做深入评价,仅作为平台开发门槛的说明。
Lua
VS Code 在文中作为对比对象,Zed 通过 ACP 为代理开发者提供现成 IDE UI,避免他们需要 fork VS Code 来构建界面。文章同时鼓励包括 VS Code 在内的其他编辑器采用该协议,推动代理生态发展。
VS Code
本文使用JavaScript编写多个示例函数,包括计算1到n的和、bubble sort实现以及缓存阶乘的代码。通过这些示例演示不同Big O复杂度的实际行为,并提供交互按钮展示执行时间变化。
JavaScript
本文中time complexity指函数输入大小与执行时间增长之间的关系,通过Big O notation来表达。例如sum函数随n线性增长即为O(n)。它帮助分析算法在大数据量下的表现,而非依赖单次运行的具体时长。
Time complexity
本文中,Code Companion 是由 Oli Morris 维护的项目, Zed 团队与其合作,将 Agent Client Protocol 支持引入 Neovim。 通过这一集成,Neovim 用户也能在编辑器内直接使用兼容 ACP 的第三方代理,无需切换工具。 该合作体现了 Zed 希望让更多编辑器采用该协议的开放态度。
Code Companion
本文中Big O notation用于描述函数性能随输入规模增长的关系,而非直接测量具体执行时间。它涵盖O(1)常数、O(log n)对数、O(n)线性与O(n²)平方等类别,帮助判断算法在不同输入量下的表现。该记法由Paul Bachmann于1894年提出,用于简洁表达增长阶数。
Big O notation
Zed 通过新协议在编辑器内直接接入第三方代理,实现了代理体验的可扩展。文章提到 Zed 创建了 Agent Client Protocol,并与 Google 合作将 Gemini CLI 作为首个集成案例,同时更新自身内置代理使用相同路径。Zed 的目标是让开发者无需切换编辑器就能选用不同代理,就像 LSP 解耦语言服务一样。
Zed
Agent Client Protocol 是 Zed 设计的轻量 JSON-RPC 协议,用于客户端与命令行代理之间的结构化通信。它让任何遵循该协议的代理都能接入 Zed 的 UI,支持实时编辑可视化、多缓冲区审查和工具权限控制。该协议已采用 Apache 许可开源,并推动 Neovim 等其他编辑器实现支持。
Agent Client Protocol
本文用 Map 实现阶乘函数的缓存机制,借助 O(1) 的查找性能避免重复递归计算。虽然最坏情况时间复杂度仍为 O(n),但能显著提升平均情况速度,代价是额外内存占用。
Map
本文中wall-clock time指记录函数开始与结束时刻差值来测量实际运行时长的方法。用于对比sum(1e9)与sum(2e9)的执行差异,但Big O更关注增长趋势而非具体数值。文章强调该方法受硬件和环境影响较大。
Wall-clock time
本文中bubble sort通过多次遍历数组并交换相邻无序元素实现排序。最坏情况下需n次完整遍历导致O(n²)时间复杂度。即使已排序数组仅需一次遍历,默认Big O仍按最坏场景描述,用于展示平方增长特性。
Bubble sort
文章介绍 Set 可将列表查找优化为 O(1) 复杂度,用于多次查询同一列表中的元素。构建 Set 的过程本身是 O(n) 操作,因此需要权衡一次性构建成本与后续快速查找的收益,避免在每次查询时都新建 Set。
Set
Gemini CLI 是 Google 的命令行代理,作为 Agent Client Protocol 的首个参考实现集成到 Zed 中。它原本通过终端运行,现在以子进程方式通过 ACP 与编辑器深度结合,解锁了语法高亮审查和代码导航等终端难以实现的功能。
Gemini CLI
本文指出,Neovim 通过 Code Companion 插件获得了对 Agent Client Protocol 的支持。 这使得 Neovim 用户可以调用兼容 ACP 的代理,实现与 Zed 类似的代理交互体验。 文章将此作为协议开放性的例证,鼓励其他编辑器跟进。
Neovim
Nathan Sobo 是本文作者,也是 Zed 团队成员,于 2025 年 8 月 27 日发布此文。 他介绍了 Agent Client Protocol 的背景、与 Google 的合作,以及协议对编辑器可扩展性的意义。 文章署名链接指向其团队页面,确认其 Zed 核心贡献者身份。
Nathan Sobo
Language Server Protocol 在文中被用作类比,说明 Agent Client Protocol 如何将代理能力从单一 IDE 中解耦。Zed 希望借 ACP 实现代理之间的自由切换,正如 LSP 曾让语言智能独立于编辑器一样。
Language Server Protocol
ASCII 在文中指 Thunder Lizard 游戏采用的文本字符画面风格,作者尝试将其逐帧转化为真实感图像。实验中发现,纯 ASCII 输入在部分模型下效果不如游戏引擎额外渲染的块状版本,尤其在使用 image-to-image 模型时块状输入能更好保持布局一致性。最终渲染仍保留了原始 ASCII 游戏的 10 FPS 目标帧率。
ASCII
本文将 binary search 作为对数时间复杂度算法的典型例子。通过每次从区间中间猜测并排除一半可能性的方式,在 1 到 100 的范围内最多只需 7 次即可猜中数字。它说明 O(log n) 增长极其缓慢,并与 O(n) 和 O(n²) 的曲线进行可视化对比,强调对数增长在大数据量时的优势。
Binary search
动画与分步绘制逻辑用 TypeScript 实现,编译后复制到博客仓库,再由一个轻量协调脚本负责把动画与页面滚动绑定。源码位于生成器仓库的 step-by-step.ts 文件中,便于后续维护与调试。
TypeScript
本文将 claude.md 描述为编码代理常用的上下文文件,用于存放无法从代码库推断的用户偏好和团队规范。Claude Code 会在每次用户请求时发送整个 claude.md 内容,性能差异显著。文章强调该文件可强制模型跳过特定文件夹或使用指定库,是开发者与模型协作记忆的有效方式,MinusX 也据此实现了 minusx.md。
claude.md
本文介绍 ripgrep(rg)是 Claude Code 进行代码库搜索的核心工具,常与 jq、find 结合生成复杂正则命令。系统提示中明确要求优先使用 ripgrep,避免直接调用 find 或 grep 命令。ripgrep 帮助模型精准定位相关代码块,是 LLM 搜索策略的关键组成部分。
ripgrep
本文将其作为对比对象,指出即使使用相同底层模型,Cursor的代理体验仍不如Claude Code令人愉悦。文章将其归类为“其他工具”,认为其在自主性与控制感平衡上存在不足。
Cursor
作为对比基准,文章提到其代理功能在相同模型下仍比Claude Code更烦人。被归入“其他流行编码代理”行列,用以凸显Claude Code在提示设计、工具选择和控制循环上的优势。
GitHub Copilot
本文核心讨论对象,是作者认为目前最令人愉快的AI编程代理和工作流。它通过单一主循环、大量XML标签与示例提示、以及TodoWrite等工具设计,实现了高自主性同时保持可控性。文章指出其在相同底层模型下,客观上比Cursor和GitHub Copilot更不烦人,核心在于对模型能力和局限的针对性补偿。
Claude Code
本文将 OpenCV 作为典型图像处理库示例,其双三次插值实现存在特定相位与抗锯齿差异。Anamorpher 工具已针对 OpenCV 的双三次下采样实现生成攻击图像,并在图 5 中展示具体像素调整过程。文章指出需先指纹识别各库实现才能成功发动攻击。
OpenCV
本文把 Pillow 列为与 PyTorch、OpenCV 并列的图像处理库示例,不同库对同一下采样算法的实现细节存在差异。攻击者需通过测试套件识别具体库与算法组合,才能构造出在目标系统中生效的缩放攻击图像。
Pillow
Gemini CLI 是本文重点演示的受攻击系统,通过图像缩放实现数据外泄。攻击者上传看似无害的图片,利用默认 Zapier MCP 配置(trust=True)让模型在缩放后执行隐藏提示,自动将 Google 日历数据发送至攻击者邮箱且无需用户确认。文章指出这类代理编码工具普遍缺乏安全默认设置。
Gemini CLI
本文将 PyTorch 作为常见深度学习库示例,其下采样实现与 Pillow、OpenCV 存在对齐、核相位等差异。文章强调这些实现差异直接影响图像缩放攻击所需的技术手段,需先指纹识别后再选择对应攻击载荷。
PyTorch
本文使用Trie(前缀树)结构实现自动建议的高效前缀匹配,用于快速查找HTML元素或CSS属性。当前通过手动启发式规则确定前缀,而非抽象语法树,导致部分光标定位bug,作者认为未来可改用语法树提升鲁棒性。
Trie
项目源代码托管于 GitHub,明确采用 MIT 许可证发布,用户可自由复制、修改和二次分发该单文件 HTML 编辑器。
MIT License
文章在讨论自动建议实现时指出,当前依赖手动启发式规则处理输入,容易出现光标定位错误。作者建议改用抽象语法树解析 HTML 与 CSS,可更准确判断用户上下文、减少自定义逻辑复杂度,并便于后续扩展更多建议场景。
Abstract Syntax Tree
本文指出,使用 AppKit 开发 Mac 全屏游戏时,需注意 notch 显示器导致的分辨率问题。CGDisplayCopyAllDisplayModes 返回的列表混杂了不可用全屏分辨率,游戏默认选取后会因高度压缩而渲染模糊。作者建议开发者用 safeAreaInsets 过滤出菜单栏下的正确 16:10 分辨率。
AppKit
本文相关推荐文章介绍了 Ghostty 终端应用。作者分享了在 Mac 上尝试该终端的体验,认为它相当不错,即使不常驻终端用户,在 Mac 和 Linux 平台上也值得作为升级选择。配图展示了 Ghostty 运行 Neofetch 显示系统信息的界面。
Ghostty
本文在CFG工具部分展示Regex语法作为约束选项,用于定义时间戳格式的产生规则。示例中用正则模式“^\d{4}-(0[1-9]|...)”限制模型仅输出“2025-08-07 10:00”这类符合YYYY-MM-DD HH:MM的字符串,验证精确格式控制。
Regex
本文中Context-Free Grammar是GPT-5新增的约束工具,通过Lark或Regex语法定义生产规则,强制模型仅输出符合指定语法的字符串。文章用其实现多方言SQL生成(MS SQL的TOP与PostgreSQL的LIMIT)和时间戳格式校验,显著减少后处理错误。
Context-Free Grammar
本文在verbosity参数的代码生成示例中,将NumPy作为高verbosity输出里可选的排序后端,用于处理百万级随机数数组。示例代码展示通过numpy.random和numpy.sort实现更高效的生成、排序与验证,同时对比纯Python列表的内存与性能差异。
NumPy
文章前置准备阶段安装Pandas,并在verbosity参数实验中用其构建DataFrame,整理不同verbosity级别下的输出文本与token消耗数据。通过pandas展示实验结果表格,直观对比low、medium、high三种设置对回复长度的影响。
Pandas
Firefox Nightly 将 font-size 的计算值显示为 32 位单精度浮点数 3.40282e38,但实际渲染并未使用该值,而是另取其他数值。
Single-precision floating-point
本文源自2025年7月13日在该会议上的演讲,主题为游戏中车辆编程的基础原理。演讲内容扩展成文章,系统讲解引擎、轮胎与底盘的模拟模型,强调游戏体验而非完整物理仿真。
Better Software Conference
文中提到实验性权限模型遵循最小权限原则,可限制文件系统和网络访问。示例展示使用 --experimental-permission 配合 --allow-fs-read、--allow-fs-write 等标志运行应用。文章认为此模型适合处理不可信代码或需证明合规的场景,提升现代 Node.js 安全性。
Node.js Permission Model
本文第9节介绍,Single Executable Applications 可将 Node.js 应用打包为单个可执行文件。通过 node --experimental-sea-config 命令配合 sea-config.json 配置,能生成自包含的二进制文件,适合 CLI 工具或桌面应用分发,无需用户单独安装 Node.js 环境。
Single Executable Applications
在 Ghost 6.0 的开发者更新中,Node.js 被纳入官方生产环境栈,与 Ubuntu 24 和 MySQL8 共同构成推荐部署基础。文章明确指出这是 Ghost 官方支持的窄栈之一,方便团队集中测试和维护。虽然仍可使用其他版本,但文档和支持将聚焦 Node 22。
Node.js
Docker Compose 成为 Ghost 6.0 官方推荐的部署环境,用于运行社交网络和分析等独立服务。它目前以开发者预览版提供,自 Ghost 7.0 起将取代 Ghost-CLI 成为默认安装方式,方便开发者管理多服务架构并进行更新。
Docker Compose
Ghost 6.0 提及去年发布的 VS Code 扩展,用于主题开发,提供语法高亮和实时预览功能。该扩展旨在简化主题作者的工作流程,与 Ghost 的新默认主题及自定义排版特性配合。文章将其归类为面向开发者的实用工具更新。
VS Code
本文介绍 Node.js 内置测试运行器可直接满足多数测试需求,无需 Jest 等外部依赖。它提供 test、describe 等现代 API,支持 node --test 命令运行测试,并集成 --watch 模式和实验性覆盖率报告。文章强调该工具与 Node.js 工作流无缝整合,适合 2025 年无依赖的专业测试场景。
Node.js Test Runner
本文正文未涉及 Google Summer of Code 的任何内容。该名称仅以相关文章推荐形式出现在页面底部,链接指向另一篇题为“Google Summer of Code 2025 Results”的文章,与本文讨论的 iPad 平板 Blender 开发主题无关。
Google Summer of Code
ForgeCode是本次对比的测试平台与代理框架,负责执行Rust与前端任务并集成Playwright MCP和Context7 MCP。它在TermBench上排名第一,本文通过其在真实38k行代码库中对比两个模型的实际开发表现,而非依赖合成基准。
ForgeCode
本文中 tokio::RwLock 出现在死锁场景测试任务中。Kimi K2 耗时 18 分钟系统分析锁获取模式后仍未能完全解决,仅能请求额外指导;Qwen-3 Coder 则直接建议移除全部锁或使用 unsafe 代码,并修改测试预期而非修复根本并发问题,暴露了对并发机制的理解不足。
RwLock
测试使用Rust 1.86与Tokio异步运行时,代码库达38,000行,包含复杂IoC依赖注入、trait、泛型和async/await模式。13个任务涵盖指向性文件修改、真实Bug修复与功能实现,重点考察模型在大型Rust项目中的指令遵循与编译成功率。
Rust
Qwen-3 Coder在相同15个任务中仅完成7个(47%),平均用时18分钟,成本69.50美元。它常修改测试断言而非修复根因、删除现有代码,且指令遵循率低(错误处理仅37%)。虽然工具调用错误率略低,但编译成功率仅72%,且有2个任务因迭代过多被放弃。
Qwen-3 Coder
Tokio作为Rust异步运行时贯穿测试环境,在一个关键死锁场景中,Kimi K2系统分析锁获取模式后请求引导,Qwen-3 Coder则提出移除锁或使用unsafe代码,暴露其对并发问题的理解不足。
Tokio
38,000 行 Rust 代码库采用 Inversion of Control 依赖注入模式,测试任务要求模型在复杂 trait、泛型与异步约束下修改代码,Kimi K2 较好遵循该架构,Qwen-3 Coder 则常破坏原有设计。
Inversion of Control
本文在38k行Rust代码库和12k行React前端上,用13个Rust开发任务加2个前端重构任务测试了Kimi K2。其整体完成率达14/15(93%),平均每任务13.3分钟,成本42.50美元,比Qwen-3 Coder快2.5倍且更省。它在指令遵循、Bug修复(4/5成功)和代码风格一致性上表现突出,仅在tokio::RwLock死锁场景需额外引导。
Kimi K2
本文指出等宽字体通过固定宽度减少多字符同形异义问题,如防止 rn 混为 m。文章将 Atkinson Hyperlegible Mono 与 JetBrains Mono、Fira Code 等进行对比,强调等宽特性对字符区分的辅助作用,同时指出其在符号区分上仍需额外设计优化。
Monospace Font
本文用作对比的编程字体之一。在单字符同形异义符对比中,它通过为 7 添加衬线来区分 Z,但在 0OQ 和镜像字母 dbqp 的区分上表现较弱;在符号如括号和点号的区分上优于 Atkinson Hyperlegible Mono。
JetBrains Mono
本文核心评测对象,是专为开发者设计的等宽字体版本。作者在网站和终端使用一个月后,对比 JetBrains Mono 与 Fira Code 发现,其在 8B5S、dbqp、0OQ 等字符的区分上表现最强,但方括号与花括号的区分稍弱。该字体继承自 Braille Institute 的设计,采用不对称字形和夸张尾部等特征,缺乏编程连字支持。
Atkinson Hyperlegible Mono
Atkinson Hyperlegible Mono 不支持编程连字功能,这成为文章指出的主要局限之一。与 Fira Code 等支持连字的编程字体相比,它更强调单个字符的视觉区分,而非符号组合显示。文章在对比 JetBrains Mono 和 Fira Code 时特别提及此点。
Programming Ligature
本文对比的另一款编程字体。它通过斜线和宽度变化区分 0O,但 G6 相似度较高;在镜像字母区分上优于 JetBrains Mono,但仍不如 Atkinson Hyperlegible Mono 明显,符号连线与长度处理也存在差异。
Fira Code
Qwen3-Coder-Next 于 2026 年 2 月发布,参数规模 80B(激活 3B),架构与 Qwen3-Next 完全一致。以 Qwen3-Next 为基座针对代码任务微调,在 SWE-Bench Pro 等基准上超越 DeepSeek V3.2(37B 激活)和 Kimi K2.5,与 Claude-Sonnet-4.5 接近。
Qwen3-Coder-Next
文章说明OpenAI在网络代理等特定场景中部署了少量Golang服务,作为Python主仓库的补充。这体现了混合语言栈在基础设施层的实际应用。
Go
文章把Claude Code与Cursor并列,作为Codex在编码代理领域的竞争参照,强调Codex从一开始就采用异步、独立环境运行的设计。作者指出当前模型能力尚处于“能工作几分钟但难持续数小时”的阶段,因此产品形态选择存在不确定性。
Claude Code
文章提到OpenAI单体仓库中除Python外,正在逐步增加Rust服务,用于构建更可靠的基础设施组件。这反映了公司在快速扩张中对性能和安全性的逐步重视。
Rust
本文将Cursor作为同类编码代理工具的参照,指出Codex在产品形态上选择完全异步模式,而Cursor当时已开始支持类似功能。作者认为这种异步协作更接近未来程序员与AI共事的方式,并对比两者在多任务并行与代码库理解上的差异。
Cursor
本文提到 OpenAI 的巨型 Python 单体仓库中,大量 API 通过 FastAPI 构建,并使用 Pydantic 进行数据验证。作者指出代码风格不统一,既有大规模设计也有临时脚本,Pydantic 是少数被广泛采用的工具之一。这反映了工程团队在快速扩张中对基础验证机制的依赖。
Pydantic
文中以 Andrey 指代 Codex 负责人,他曾向作者强调研究人员应被视为“mini-executive”,鼓励自主探索想法而非等待自上而下的规划。这一观点与 OpenAI 研究团队自下而上、通过“nerd-sniping”驱动项目推进的文化直接相关。
Andrej Karpathy
文章指出OpenAI使用一个以Python为主的巨型单体仓库,代码风格混杂,既有Google风格的规模化库,也有新博士写的临时Jupyter笔记本。Python是核心开发语言,但缺乏全公司统一的风格规范。
Python
文章描述OpenAI几乎所有API服务都基于FastAPI构建,同时搭配Pydantic进行数据验证。这是其Python单体仓库中最主要的API框架选择,支撑了内部快速迭代的开发模式。
FastAPI
本文作者参与了 Codex 的开发与发布工作。该产品是一个异步 coding agent,支持用户发起任务后由 agent 在独立容器环境中完成代码修改、git 操作并返回 PR。从启动到上线仅用 7 周,发布后 53 天内已生成约 63 万个 PR。作者认为其在大型代码库导航和多任务并行处理上具有明显优势,体现了 OpenAI 自下而上的快速迭代文化。
OpenAI Codex
Playdate OS 基于 Amazon FreeRTOS 内核构建,文章指出其威胁模型中明确警告了通过系统调用函数指针实现任意代码执行的风险。研究者发现的异步回调提权漏洞与该模型描述一致。Panic 在 2.6.0 版本中升级 FreeRTOS 以修复相关问题,同时影响了第三方启动器。
FreeRTOS
Playdate API 是游戏调用系统功能(如高分和网络请求)的接口结构,指向设备内存中的 SDK 代码。本文指出它采用动态链接方式,游戏通过指针访问 EnsurePrivileges 等函数实现临时提权。作者发现异步回调中权限未降级导致任意代码获得特权访问。
Playdate API
文章指出 Playdate 的高分功能通过向 ESP32 发送特定 AT 指令实现网络请求。研究者尝试覆写指令字符串或直接调用底层 OS 函数,均因内存只读或权限不足而失败。提权成功后可绕过限制执行自定义 AT 指令,获得 Wi-Fi 完整访问能力。
AT 指令
文章提到,敏感信息如API密钥若被意外上传至GitHub,可能被用于训练AI模型,导致密钥泄露风险。研究者指出这一现象并非理论假设,微软等公司曾出现类似事件。
GitHub
PyAutoGUI 在项目中用于模拟键盘输入,辅助完成地图上的关卡选择与进入操作。文章指出此方法使方案更复杂,且模拟输入可靠性较低,作为 Lua 直接命令的补充。
PyAutoGUI
Python 用于搭建 MCP 服务器,通过 configparser 读取 Lua 序列化的关卡数据,并生成文本网格状态。它还负责工具调用、命令写入及使用 pyautogui 模拟菜单输入,实现与游戏的异步交互。
Python
本文中 Lua 用于实现 Baba is You 的游戏逻辑,通过 plaintext 脚本扩展基础引擎。它暴露 MF_getunits、MF_read、MF_store 等函数及 level_start、always 等 mod hook,使 Python 服务器能读取关卡实体坐标并写入命令。文章利用这些接口将游戏状态序列化为网格,供语言模型使用。
Lua
Model Context Protocol 在本文中指用 Python 实现的 MCP 服务器,提供显示游戏状态、执行命令和规则说明等工具。语言模型通过该协议获取关卡网格、发送移动指令,并由 Lua 后端异步执行,实现 Baba is You 的自动化评估。
MCP
本文中 GitHub Event API 用于获取 GitHub 公开仓库的实时事件数据,包括 PushEvent 等活动,无需认证即可访问公共事件。它记录了 force push 操作产生的零提交 PushEvent,这些事件对应开发者尝试删除的 dangling commit。作者结合 GH Archive 历史数据,利用该 API 定位自 2020 年以来所有被 force push 覆盖的提交哈希,从而实现大规模 secrets 扫描。
GitHub Event API
本文围绕 Git 的 force push 机制展开,解释了执行 git reset --hard HEAD~1 后 git push --force 会移除分支引用,但 GitHub 仍保留 dangling commit。作者通过 git rev-list、git cat-file 等命令展示 commit-tree-blob 结构,并演示如何通过已知哈希或前四位十六进制访问被删除的提交。文章强调 Git 本身无法真正删除已推送的 commit,需配合 GitHub 存储特性才能定位 secrets。
Git
GH Archive 是记录 GitHub 所有公开事件的归档项目,本文通过其 BigQuery 数据集高效检索 2020 年以来全部 zero-commit PushEvent,从而定位 force push 删除的提交。相比逐仓库暴力破解哈希的低效方式,它提供了近实时、全历史的事件数据支持。作者以此为基础构建自动化流程,扫描并发现数千活跃密钥,最终与 Truffle Security 合作开源 Force Push Scanner。
GH Archive
本文介绍 Foundation Models framework 是 Apple 新发布的开发者 API,专为支持 Apple Intelligence 的设备设计,允许直接调用 AFM-on-device 模型。该框架支持文本和图像输入(最高 65,000 tokens),输出文本,并提供工具调用能力。云端 AFM-server 模型暂不向公众开放,仅设备端模型可通过此 API 使用。
Foundation Models framework
文章通过示例展示agent能力:Claude创建fizzbuzz.js文件后,提示用户用Node.js运行node fizzbuzz.js验证输出;同样用于执行congrats.js,展示代码编辑agent可生成并测试可运行的JavaScript程序。
Node.js
Anthropic Go SDK 是文章中导入的 github.com/anthropics/anthropic-sdk-go 库。它封装了客户端初始化、消息构造、工具参数传递与 tool_use 响应解析等功能。代码通过该 SDK 将工具定义发送给模型,并处理返回结果,使 Go 程序能与 Claude 实现双向交互和工具执行闭环。
Anthropic Go SDK
本文中agent使用edit_file工具生成JavaScript文件,包括实现FizzBuzz逻辑的fizzbuzz.js(支持1-15或1-100循环输出)和包含rot13Decode函数的congrats.js,解码指定字符串后打印结果,验证工具调用与文件修改效果。
JavaScript
本文中JSON Schema用于为工具定义输入结构。通过GenerateSchema函数,基于Go结构体(如ReadFileInput、EditFileInput)生成schema,传递给Anthropic模型,使Claude能正确构造工具调用参数并执行read_file、list_files和edit_file等操作。
JSON Schema
本文中 Go 是构建代码编辑代理的编程语言。作者通过四个命令初始化 Go 项目,在 main.go 中实现 Agent 结构体、对话循环与工具调用逻辑,总代码量不足 400 行。Go 结合标准库和外部 SDK,完成了从用户输入到模型推理再到文件操作的完整流程,展示了用少量代码即可实现功能性代理的可行性。
Go
Typst 的脚本语言受 Rust 启发,作者因熟悉 Rust 而几乎无需额外学习即可上手。动态类型设计让条件判断、数据处理等操作自然融入排版代码,显著提升了自定义脚本的编写效率。
Rust
作者将多年收集的硬件描述语言元数据保存在 TOML 文件中,Typst 可直接解析该文件并生成分类图表。整个处理过程完全包含在文档内,避免了外部脚本依赖。
TOML
Typst 的日常文档写作采用类似 Markdown 的语法,作者认为这比 LaTeX 的反斜杠标记更舒适。示例中直接混用 Markdown 风格加粗与脚本表达式,实现了内容与代码的无缝切换。
Markdown
本文中 Spade 是作者开发的硬件描述语言(HDL),其代码大量出现在博士论文中。作者利用 Typst 的 show 规则配合正则表达式实现自定义语法高亮,甚至用递归下降解析器处理命名参数高亮,以改善代码可读性。这成为 Typst 相比 LaTeX 在代码呈现方面的显著优势案例。
Spade
Typst 提供完善的 Language Server Protocol 支持,编辑器可获得自动补全、跳转等现代开发体验。作者将其与依赖管理、编译器共同视为 Typst 工具链成熟度的重要标志。
Language Server Protocol
本文提到的在GBA上模拟小数的方案之一,通过定点数可实现1.5等小数运算,但会将最大分数从约42亿降至约10亿以下,并存在精度损失如1.1可能被舍入为1.25。作者认为这是最可行的折中办法。
定点数
E-Reader提供的绘图API,用于在屏幕显示数字,但仅支持四个唯一数字且每项最多五位。本文指出这给Balatro的多项数据如筹码、倍率、剩余手数等显示带来最大挑战,需要用精灵或背景重设计来绕过。
DrawNumber
作为处理小数的另一种思路,本文讨论了在E-Reader上用软件实现浮点数,但因实现复杂且运行极慢而被认为不现实。相比定点数,它精度更高却超出本平台能力,最终未被采纳为移植方案。
浮点数
文章以 Playwright 为例,展示如何用 getByLabel 和 getByRole 等无障碍 API 编写测试代码,避免依赖易变的类名或属性选择器。作者认为这种基于语义的测试方式更稳定,因为无障碍树比具体 DOM 结构更不易频繁变动。
Playwright
文中以Vite 6.3.5、2.65MB为例,放入同一表格展示build工具信息,说明在非语义化div结构中,即使是Vite这类构建工具的数据也难以通过DevTools快速定位。作者对比添加role后的table结构,指出语义标记能让任何技术栈的示例表格都更易调试。
Vite
文中援引 Kent C. Dodds 的论点:基于语义(无障碍树)的 UI 测试比依赖类名或 DOM 结构的测试更抗变更。作者用此支持无障碍实践能让测试代码更可靠,减少因添加包装 div 而导致的测试失效。
Kent C. Dodds
文中以React 19.1.0、167kB为例,展示一个库版本表格在div soup下的混乱HTML结构,开发者难以在DevTools中快速定位行列。作者对比改用table与th/td后的版本,说明即使UI库是React,语义化标记仍能显著提升调试效率。
React
本文中作者在狱中每周工作约90小时,其中包括管理Kubernetes集群和其他基础设施。这与他在有限条件下持续投入编程、开源贡献及远程工作的日常直接相关,反映其技术实践的主要内容。
Kubernetes
本文提到作者每天仅有一小时娱乐时间,主要观看The Primeagen的YouTube视频,其个人故事早期对作者有巨大激励作用。此外,The Primeagen在其直播中朗读了作者的博客,扩大了文章的关注度。
The Primeagen
Rust 是 Project Limbo 项目用来重写 SQLite 所采用的编程语言。Preston 在监狱中利用有限条件,结合之前对存储引擎的兴趣,投入该语言下的数据库开发工作。文章未展开 Rust 具体特性,而是突出其作为项目技术栈的角色。
Rust
Git 在本文中被用来保存所有提示、迭代和人工修改的完整提交历史,使读者能像考古一样还原人机协作过程。工程师将提示直接写入提交消息,把 git 历史从单纯变更记录转变为意图与实现的双重文档。文章认为这种做法对未来 AI 辅助开发的可维护性至关重要。
Git
本文中 Kenton Varda 是 Cloudflare OAuth 2.1 库的主要开发者,最初对 AI 工具持怀疑态度,却在两个月后通过与 Claude 的协作完成生产级代码。他在每次提交中都附上生成提示,记录了约 50 次迭代过程,其中 AI 产出超过 95% 的功能代码。他也多次手动修正类声明位置、重复代码块处理及样式清理等问题,证明人类在方向把控和细节干预上的必要性。
Kenton Varda
本文使用Python 3.12.3运行Finn Jaeger的HEIC Shenanigans项目脚本,包括gain_map_extract.py和heic_to_exr.py,共374行代码。通过虚拟环境安装依赖后,脚本完成HEIC拆分、元数据提取及EXR转换全流程,是实现iPhone深度图与增益图处理的核心工具。
Python
本文中ExifTool(12.76版)用于提取HEIC转换后TIFF和EXR文件的元数据,包括EXIF信息、HDRGainMapHeadroom数值以及文件属性。通过与jc工具结合输出JSON格式,辅助分析图像尺寸、色彩配置和增益图参数等关键信息。
ExifTool
作者指出 Claude 4 系统提示中列出的可用库并不完整,Pyodide 实际已在 artifacts 中受支持。证据包括 CSP 响应头已放行,以及作者本人曾运行过使用 Pyodide 的 artifact 示例。这说明提示中“NO OTHER LIBRARIES”的声明存在遗漏。
Pyodide
文中用“函数式编程是唯一正确方式”作为例子,说明过度专注单一事物容易形成偏执。作者指出,长期只盯住一个方向会导致类似偏执,而定期后退反思可以避免这种单一视角带来的局限。
Functional Programming
文章指出Cursor.ai每月仅需20美元,相当于廉价实习生成本,可大幅降低重复编码工作量。文中提到Cursor支持本地习惯适配规则,LLM生成的代码需开发者花5-10分钟调整风格后再合并。Cursor被视为当前主流LLM辅助开发工具之一,与传统编辑器形成对比。
Cursor
本文推荐Zed的Agent模式,因其会主动请求用户切换标签页,让Agent在后台独立工作,完成后通过桌面通知提醒。开发者无需实时查看Agent的思维链日志,从而避免干扰。该模式适合长时间运行的测试重构或调试任务,与需要持续关注的传统交互方式形成区别。
Zed
作者在分析Honeycomb traces时发现LLM的表现优于自己,能快速定位复杂问题。文中明确表示自己在解读Honeycomb追踪数据上不如LLM代理。该实体与OpenSearch一起被用来证明LLM在运维排查中的实用性,支持作者对AI辅助编程的正面评价。
Honeycomb
作者目前主要使用Go进行开发,认为Go虽然设计初衷并非针对LLM,但因其类型安全、标准库丰富和强调惯用写法的文化,反而成为LLM生成代码表现最佳的语言之一。LLM能很好地处理Go中重复性的惯用代码,显著提升生产力。该实体被用来论证LLM在实际项目中的实用价值。
Go
C是文中被移植代码的原始语言,作者选择它来测试Claude Code处理实际代码转换任务的表现。移植工作本身并非项目重点,而是用来观察LLM在处理较大型、新颖任务时的表现与局限。
C#
文章在 Claude Artifacts 支持库列表中列出 SheetJS,用于处理 Excel 文件(XLSX、XLS)。提示还附带了示例代码,展示如何通过 window.fs.readFile 读取文件后,用 XLSX.read 方法解析单元格样式、公式、日期等信息。这是 artifacts 实现文件处理功能的重要依赖。
SheetJS
作者承认自己写过一些Rust代码并喜欢它,但指出当前LLM在Rust上的表现较差,常被用来投射对LLM整体能力的怀疑。文章认为Rust社区因重视工具链而有望改善这一情况,但目前这并非对LLM通用性的有效反驳。该实体与Go形成对比,说明语言选择会影响LLM辅助编程的效果。
Rust
系统提示将 shadcn/ui 列为 artifacts 可用的 UI 组件库,示例导入路径为 @/components/ui/alert。使用时需在响应中告知用户。该库主要用于构建 React 组件,帮助生成带 Alert 等交互元素的界面,是 Claude 生成视觉化产物时的推荐依赖之一。
shadcn/ui
在事故响应场景中,作者将OpenSearch日志提供给LLM分析,后者能在数秒内发现长期困扰团队的LVM元数据损坏问题。文章指出作者在查询OpenSearch日志方面的能力不如LLM代理。该实体用于展示LLM在处理真实生产环境日志时的实际优势。
OpenSearch
文章中Rust是作者用Claude Code将C模块移植的目标语言。移植过程让作者过度投入,忽略了最初只是想验证LLM能力的实验性质。最终作者意识到这项移植工作本身并无持续兴趣,属于偏离目标的投入。
Rust
本文末尾将Kamal作为上一篇博客的主题提及,标题为《在生产环境中使用Kamal 2.0》。这表明Kamal是Fly.io相关的一个部署工具,其2.0版本已在实际生产场景中得到应用,与文章讨论的LLM辅助编程和工具链主题形成呼应。
Kamal
React组件被指定为Artifacts支持的格式之一,使用"application/vnd.ant.react"类型。系统提示建议在React组件中使用useState而非浏览器存储API。设计原则涵盖React元素、函数组件及带Hooks的组件。
React
文章提到 Claude Artifacts 支持 Mermaid 格式,其 MIME 类型为 application/vnd.ant.mermaid。用户界面会直接渲染放在 artifact 标签内的 Mermaid 代码,且明确要求不要将其放入代码块中。这是系统提示中关于可视化产物支持格式的一部分,用于生成图表类内容。
Mermaid
本文中UTC指协调世界时,作为ISO 8601日期字符串的默认解析时区。'2025-05-28'这类仅日期形式因规范要求被浏览器视为UTC时间,从而与按本地时区解析的'2025/05/28'得出不同日期。历史演变中,ES5.1将缺失偏移定为Z(即UTC),Firefox最早采用此规则,Chrome则在本地与UTC间反复切换,最终所有主流浏览器对有效ISO日期字符串统一使用UTC解析,这正是造成用户困惑的核心原因。
UTC
本文指出ES5规范引入了基于ISO 8601的标准化日期时间格式,包括仅日期形式如'2025-05-28'。该格式在缺少时区偏移时曾导致浏览器实现分歧,最终规范决定日期-only形式按UTC解析。文章追溯了这一格式从2009年起在各浏览器中的解析历史及其对Date构造函数的影响。
ISO 8601
文章提到OpenAI收购Windsurf这一AI IDE的案例,用以印证“新界面从熟悉界面出发”的观点。即使OpenAI已有Codex,仍选择收购类似Cursor的现有IDE形态产品。这被用来支持Dia的设计思路:AI浏览器需结合传统网页与AI聊天界面,而非完全抛弃旧范式。
Windsurf
Arc Development Kit(ADK)是The Browser Company内部用于快速构建浏览器界面的SDK,使前iOS工程师无需接触C++即可原型化原生UI,是Arc与Dia共同的基础架构。公司因ADK仍为核心价值资产而暂不计划开源Arc,强调其决定了浏览器创新的成本与可行性。
Arc Development Kit
文中Cursor被描述为正在重塑IDE的AI产品,证明即使用户几十年来习惯了固定方式,也会在AI出现后愿意切换。这与Arc的“novelty tax”问题形成对比,说明Dia需要提供即时且清晰的价值。作者用Cursor证明AI原生产品能打破旧范式,支撑转向AI浏览器的决策。
Cursor
本文中,vibe coding 被描述为非技术人员借助 AI 工具以直觉式方式快速原型设计游戏、网站或电影想法的过程。Hassabis 指出,这让设计师等非程序员也能参与创造,同时强调顶尖程序员仍需掌握架构与验证能力。vibe coding 被视为 AI 降低门槛、扩大参与面的例证,与 Hassabis 对未来技能(如创造力)的建议相呼应。
Vibe Coding
本文提到 log show 可输出包含 machTimestamp 的 JSON 字典数组,使 Ulbow 能获取 MAT,而 OSLog API 返回的 OSLogEntry 无法提供该字段,导致精度差异。
JSON
文中 NumPy 仅出现在初始 word2vec.pkl 文件里,其存储的是 numpy.float32 数组。作者为避免引入依赖,将数据转换为纯 Python 列表与浮点数,从而用手写代码完成全部向量运算和搜索逻辑。
NumPy
Pickle 在本文中用于读取 12MB 的 word2vec.pkl 词向量文件,以及后续保存所有博文嵌入结果。作者提及安全注意事项但信任数据来源,随后将内容转为普通 Python 结构以便手动处理。
Pickle
本文以2025年视角描述的现代C#工作流依托.NET平台实现,Native-AOT支持将C#代码直接编译为各主机平台原生二进制,配合热重载提升开发效率。FNA项目已利用该特性实现跨平台发布,作者借此避免了旧版转译工具的复杂性。
.NET 9
本文指出 C# 的 Native AOT 工具链已成熟,能直接将代码编译为目标平台二进制文件,解决了此前跨平台移植的 JIT 限制。FNA 项目积极推动该方案,已支持多款游戏登陆主机平台。作者认为这让 C# 在无需转译的情况下即可覆盖主机与 PC。
Native AOT
Dear ImGui被用于构建自定义关卡编辑器和对象检视工具,通过立即模式GUI快速创建字段与按钮,结合C#反射可直接从游戏对象拉取数据。City of None编辑器主要依赖它实现场景外UI,避免手动编写文本框等控件。
Dear ImGui
本文作者,与 Chris Gregory 合作用约百行代码从零构建博客搜索引擎。他实现了词嵌入加载、向量相加、余弦相似度计算、命令行 REPL 及网页搜索界面,并用 GitHub Pages + Range 请求避免大文件下载。文章记录了他将每篇博文嵌入 300 维空间后,按查询向量相似度排序的完整流程与评估结果。
Max Bernstein
C#是作者主要使用的编程语言,2025年的版本支持栈上动态数组分配、dotnet watch热重载和内置反射,适合游戏开发与编辑器工具。作者在City of None项目中用它让团队成员独立完成Boss战逻辑,同时在性能与易用性间取得平衡,优于此前短暂使用的C++。
C#
本文说明MCP本质是JSON-RPC over HTTP协议,用于代理与工具间的标准化请求响应。Windows 11在此基础上增加受信任代理层,实现集中策略执行与审计,弥补原协议在认证和隔离方面的不足。
JSON-RPC
作者几年前曾短暂转向C++以解决C#在主机平台的JIT编译限制,通过将IL转译为C++实现移植。Native-AOT出现后不再依赖此方式,C++被视为更早期的可移植性方案而非当前主力。
C#
作者使用 Color.js 对 OKLCH 参考范围进行系统遍历实验,计算白/黑文本在不同明度下的 APCA 与 WCAG 对比度区间,并生成交互式 playground 供读者验证阈值选取。
Color.js
Clang与GCC一样,可将模25判断自动转换为乘法指令,生成无分支或少分支的汇编。文章在Godbolt链接中对比了两种编译器对is_leap_year1到is_leap_year2的转换效果。
Clang
本文结尾讨论该快速闰年判断是否值得用于实际项目,举例提及可替换CPython datetime模块中的实现,但指出多数场景下年份可预测,优势不大,建议用真实数据基准测试后再决定。
CPython
本文作者,提出用三条32位指令实现闰年判断的函数is_leap_year_fast,覆盖0至102499年,并详细解释其位运算原理、魔数来源及正确性证明,最后给出64位扩展版本与性能基准。
Falk Hüffner
文中用Python调用z3求解器搜索魔数常数,同时指出Python仅支持0-9999年份,超出范围的闰年判断在实际中意义有限,并给出64位版本可正确处理所有32位年份。
Python
文章核心算法及多个变体均用C语言展示,包括标准实现、优化后的is_leap_year2和最终的三指令版本,并讨论GCC/clang对这些代码的编译结果与分支消除技巧。
C#
本文核心是用乘法后掩码比较实现三指令闰年检测,涉及对乘积的四个比特区间分别进行存在性或全零检查。作者先用Z3搜索常数,再通过二进制位模式分析证明各区间分别对应被4、100、16整除的条件。64位版本同样基于相同位操作思路扩展。
Bit manipulation
文章使用Z3求解器通过位向量约束搜索乘法-掩码-比较形式的魔法常数。经约半小时计算,找到f=1073750999、m=3221352463、t=126976这组参数,可正确处理32位年份上限。后续64位扩展也借助Z3证明了最优范围为5965232499。
Z3
作者在文中为寻找64位最优常数,将问题发布到Code Golf StackExchange,收到用户ovs和Exalted Toast的回复,后者用z3证明5965232499是该位宽下的最优范围。
Code Golf StackExchange
本文采用扩展格里高利历作为闰年判断基准,它将现行规则向前延伸至公元前并包含0年,从而无需对1582年前年份做特殊处理。文章据此定义闰年条件:能被4整除但不能被100整除,或能被400整除。所提出的三指令快速函数在该历法下对0至102499年范围均返回正确结果。
Proleptic Gregorian calendar
GCC能将基于模运算的闰年代码自动优化为乘法加比较的形式,生成与is_leap_year2等效的汇编。基准测试使用GCC -O3编译,对固定年份与随机年份分别测量延迟,显示快速版本在随机输入下快约3.8倍。
GCC
本文引用其与合作者关于常数取模优化的论文Faster remainder by direct computation,用于解释把y%25转化为乘法比较的技巧,并指出该方法在编译器中的应用历史。
Daniel Lemire
CodePen 在文中作为示例展示平台,托管了 Andy Clarke 为 Mike Worth 网站设计的 image map 演示代码和交互效果。读者可通过它查看图像地图的实际运行情况,包括 SVG 路径转换后的点击区域和响应式调整逻辑,而无需等待完整网站上线。
CodePen
本文游戏使用的编程语言,渲染核心完全基于整数实现。作者选择它以配合16.16定点数运算,避免浮点转整数的额外开销,确保每列光线与像素绘制循环足够高效,维持目标帧率。
C#
游戏渲染采用的16.16定点数数学,所有距离、缩放与纹理偏移均用整数表示。相比浮点运算,它在Playdate上更快且避免了像素查找时的类型转换,成为维持50帧每秒的关键技术基础。
Fixed-point Arithmetic
Kaleidoscope 是 Classic Mac OS 平台上用于应用主题方案的工具。本文中收录的所有主题均针对 Kaleidoscope 设计,网站通过集中展示这些方案来体现该工具曾带来的系统界面定制自由度。列表中的主题创作时间主要集中在1997至2000年。
Kaleidoscope
Antonio Scandurra 是 Zed 团队成员,本文共同作者,负责多项核心代码修改。在 Theo 家中现场构建并空投修复版本,后续实现了 instance buffer 池化、waitUntilScheduled 替换、CADisplayLink 保活逻辑,以及最终用 CVDisplayLink + presentDrawable 组合解决 60 FPS 封顶与抖动问题,确保了稳定 120 FPS 输出。
Antonio Scandurra
本文中 Metal HUD 是用于诊断 Zed 在 M2 MacBook 上掉帧问题的关键工具,通过 MTL_HUD_ENABLED=1 启动后,可实时显示渲染模式(direct/composited)、帧时间及刷新率变化。团队借助它发现了 waitUntilCompleted 在 direct 模式下的长时间阻塞、ProMotion 降频导致的光标卡顿,以及后续 triple buffering 引入的内存损坏等问题。最终通过 HUD 观察确认了切换为 waitUntilScheduled 并结合 CADisplayLink 后的 120 FPS 稳定表现。
Metal HUD
AppKit 是 macOS 窗口与界面框架,负责触发窗口重绘。文中通过在 CAMetalLayer 上设置 presentsWithTransaction,使 AppKit 的重绘与 Metal 内容呈现保持同步,避免系统因内容未就绪而进行拉伸插值,从而消除了桌面应用场景下的视觉抖动。
AppKit
GPUI 是 Zed 的 UI 框架,其 MetalRenderer 负责处理 Metal 绘制逻辑。文中通过启用 presentsWithTransaction 协调窗口同步、将 waitUntilCompleted 改为 waitUntilScheduled、引入实例缓冲池避免内存竞争,并结合 onRequestFrame 方法在输入后持续渲染一秒,解决了直接模式下的抖动与帧率下降问题。
GPUI
Zed 是一款代码编辑器,在 0.121 版本中通过 Metal 管线优化实现了 120 FPS 流畅滚动。开发者在 Theo 的 M2 MacBook 上发现直接模式下出现掉帧和卡顿,随后通过调整同步策略、引入三重缓冲和 CADisplayLink 维持刷新率解决了问题,最终在 ProMotion 显示器上达到稳定高帧率,提升了编辑交互的响应性。
Zed
Nathan Sobo 是 Zed 联合创始人之一,本文主要作者,与 Antonio 共同记录了从 Theo 反馈到最终修复的完整优化过程。他参与了现场调试、分析 presentsWithTransaction 与命令缓冲同步逻辑,并总结了 direct 模式、ProMotion 及 CADisplayLink 对 120 FPS 的影响。文章结尾也体现了团队通过快速迭代解决用户报告的 60 FPS 封顶问题。
Nathan Sobo
Theo Browne 是知名 streamer(t3.gg),在 Zed 开源后通过视频反馈 M2 MacBook 上滚动卡顿问题,促使团队登门实地复现。该反馈直接触发了 Metal HUD 调查、渲染同步逻辑调整及 ProMotion 相关优化,最终促成 v0.121 版本的流畅度提升。文章多次强调其反馈对发现 direct 模式与 compositor 差异的关键作用。
Theo Browne
作者在首个编程项目——2D消防员游戏中使用了Pygame库。该库处理键盘事件的部分代码被逐行拆解,展示按空格键发射水弹的逻辑。Pygame的简洁结构被作者视作成语般精炼的叙事工具,证明代码能像文学一样传递动作与情感。
Pygame
Google Maps SDK 在 Fixr 项目中被集成到 iOS 与 Android App,用于实现核心的地图展示与位置标注功能。由于早期 SwiftUI 缺少原生 MapView,团队不得不依赖该 SDK 完成车辆位置与技工接单场景。文中指出这是两个主要功能模块之一,凸显了地图能力对车修平台的重要性。
Google Maps SDK
艺术项目HyperDog的右侧屏幕展示了一段Java Dog类代码,用户输入的名称、毛色等属性被封装为对象,再逐步溶解为0和1组成的矩阵犬。Java代码在此成为英语到数字生命的翻译中介,体现了编程语言如何赋予静态描述以动态生命。
Java
文中以JavaScript的var关键字为例,作者将其解读为二进制世界中储存数值的容器,而非单纯命令。var的语法规则被比作四字成语,承载历史与叙事,帮助作者将抽象代码转化为具体故事,从而缓解阅读障碍带来的理解困难。
JavaScript
文中 UIKit 作为 SwiftUI 的补充,在早期 SwiftUI 尚不完善时用于处理地图与相机等功能。作者提到 UIKit 互操作存在卡顿与状态同步难题,迫使团队采用单例模式缓解问题。UIKit 的引入反映了 2019-2020 年混合开发在生产环境中的实际痛点。
UIKit
NetBSD 的包管理工具,先通过 pkg_add 安装,再用它安装 lighttpd、rsync 等必要软件包,为 Wii 上的 Web 服务和系统管理提供便捷的软件部署方式。
pkgin
本文中 asdcplib 是电影行业公司开发的 C++ 库,最初通过 SourceForge 发布,后迁移至 GitHub。它与 libdcp 并列为两大开源实现,几乎所有相关软件依赖其中之一。该库支持文章中 DCI 工作流程的文件格式处理与密钥管理。
asdcplib
本文中 libdcp 是 DCP-o-matic 作者开发的 C++ 库,用于处理数字电影包操作。它是主要开源实现之一,被几乎所有商业和开源 DCP 软件采用。文中通过解密 MXF 文件中出现 libdcp 字符串,确认其在 DCP 创建中的作用,与加密分发主题紧密相关。
libdcp
作者使用 Raspberry Pi Imager 将 NetBSD 提供的 wii.img.gz 镜像写入 32GB SDHC 卡,并自动完成解压与写入后校验,确保镜像正确部署到 Wii 存储介质上。
Raspberry Pi Imager
NetBSD 为 Wii 提供官方维护支持,10.1 版本及每日构建均包含 wii.img 镜像,可直接从官网获取。本文使用该系统作为博客后端,配置 SSH、pkgin 包管理及 lighttpd 服务,由开发者 Jared McNeill 完成移植工作。与 PSP Linux 等过时项目不同,NetBSD Wii 端口保持活跃更新,适合真实部署。
NetBSD
本文指出MCP基于JSON-RPC和SSE实现传输,属于协议底层通信方式,与SOAP、REST、GraphQL等更低层协议形成对比,强调MCP在此基础上定义了特定端点和模式以确保兼容性。
SSE
本文作者在Cursor中实际使用MCP实现调试自主性,例如通过screenshot_url、get_browser_logs等工具扩展IDE原有能力。文章指出Cursor用户常因MCP集成导致token消耗过高而被额外收费,同时提到supabase-mcp等流行服务器在AI IDE中的应用及潜在RCE风险。
Cursor
文章说明代码示例采用React/JSX而非普通HTML,TOC的服务器端预渲染与客户端thumb动画均在React组件中完成,利用浏览器位置信息构造SVG遮罩后再应用CSS动画。
React
ImageMagick 是本文生成 HDR 表情符号所使用的命令行工具。作者提供了完整脚本,包含色彩空间转换、亮度乘法调整、伽马校正以及应用 16 位深度和 Rec. 2020 配置文件等步骤。通过这些处理,普通 PNG 图片可被转换为适合 Slack 的 HDR 格式。
ImageMagick
本文说明MCP协议底层基于JSON-RPC和SSE构建,属于比SOAP、REST更底层的传输机制,同时定义了特定端点与schema以实现与助手的兼容。文章强调这种设计让MCP在LLM友好性上优于传统协议,但也继承了输入信任和本地执行等安全问题。
JSON-RPC
文中所有SVG示例代码均以JSX语法书写,包括style对象、mask引用及动画关键帧,方便在React组件中直接使用SVG元素实现动态效果。
JSX
在制作动画时间轴示意图时,作者顺手开发了名为 Monorail 的小工具库,可生成可交互的 SVG 时间轴图形,用于直观展示关键帧变化,目前计划近期开源。
Monorail
Stack Overflow 是本文分析的核心平台,长期作为开发者解决编程问题的首选问答社区。文章通过时间序列数据指出,其问题发布量在 2022 年 11 月后加速下滑,尤其基础编程和数据分析类标签受冲击最大,反映开发者转向 AI 工具的趋势。
Stack Overflow
文章结尾的实习描述指出,TypeScript是35®团队要求实习生掌握的类型安全语言,用于构建可靠的交互组件。本文中的锚点映射与滚动触发逻辑,正是这类强类型前端代码的典型应用场景。
TypeScript
Pandas 是本文重点提及的下降最显著标签之一,归类于数据分析领域。数据显示其问题量在 ChatGPT 发布后大幅减少,文章认为这可能因为 AI 在数据处理基础问题上能提供高质量解答,减少了用户对人工问答的需求。
Pandas
本文用位包装将基础颜色与 6 个亮度值编码进单个 20 位整数,再通过 CSS 的 calc、round 与 mod 实现解包。作者展示了具体的位移与掩码计算示例,证明无需 JavaScript 即可在样式中还原 LQIP 数据。
位包装
作者在侧边实验中使用Python实现数值优化求解器,定义包含锚点惩罚与章节惩罚的损失函数,并加入边界、顺序等约束条件。通过绘制不同权重下的虚拟标题位置变化图,验证了分数平移法与平滑映射函数的实际效果。
Python
文章将.NET列为下降幅度较小的开发框架标签,与Next.js、React Native等并列,显示其在ChatGPT发布后Stack Overflow活跃度受影响相对有限。作者认为这类框架问题常需具体环境或界面说明,AI支持仍有不足。
.NET 9
文章末尾提供了GitHub仓库链接,存放了用于分析Stack Overflow数据的所有SQL查询和R绘图代码,包括生成时间序列和标签下降率图表的完整脚本,方便读者复现ChatGPT发布后平台活跃度变化的研究。
GitHub
本文指出Android Studio作为IDE,其Stack Overflow问题数量降幅小于基础编程或数据分析标签。作者推测,这类工具相关问题常涉及UI调试或视觉辅助需求,使AI生成回答的实用性仍有限,人类帮助仍有价值。
Android Studio
文章末尾的实习信息中提到,35®团队使用Next.js作为核心框架,供实习生在前端项目中实践高级开发技能。该技术与本文讨论的锚点交互优化场景直接相关,体现了公司对现代前端工程化工具的实际应用。
Next.js
文章指出Windows相关问题在ChatGPT发布后下降幅度小于基础编程和数据分析类标签,属于受AI影响较小的操作系统类话题。作者推测这类问题常涉及具体环境配置或需截图说明,AI目前仍较难提供充分支持。
Windows
本文将React Native列为受AI冲击较弱的框架之一,其Stack Overflow问题下降比例相对温和。作者认为此类跨平台开发框架的问题多涉及UI挑战或视觉解释需求,导致开发者仍倾向于寻求人工协助而非完全依赖AI。
React Native
文章将VS Code(Visual Studio Code)归入受AI影响较小的IDE类别,2022-2024年间问题数量下降相对缓和。文中提到,此类IDE问题常涉及界面配置或需截图说明的场景,AI难以完全取代人工解答。
VS Code
Safari 18.4 的 Web Inspector 新增多项功能,包括响应式设计模式的设备视口预设、针对特定 App 的 JSContext 自动检查配置、本地覆盖的 passthrough 方法,以及 console.screenshot 支持 DOMRect 参数等改进。
Web Inspector
Safari 18.4 实现 Iterator Helpers 提案,新增 some、every、filter、map、reduce、take、drop 等方法,支持对迭代器进行惰性处理与组合操作,适用于处理大型数据集而无需一次性载入内存。
Iterator Helpers
Safari 18.4 支持 Error.isError 方法,用于识别真正的原生 Error 对象,即使存在 Symbol.toStringTag 也能可靠判断内部槽位。该方法可将非 Error 的抛出值(如字符串)规范化为 Error 实例,避免仅依赖字符串处理错误。
Error.isError
Safari 18.4 在 JSON.parse 和 JSON.stringify 中使用 SIMDe 加速字符串扫描与复制,并支持 relaxed_laneselect SIMD 指令,提升大数据量处理效率。SIMD 允许单条指令同时作用于多个数据元素。
SIMD
本文中的Python指Gemini提供的沙箱解释器环境,支持运行AI生成的或用户自定义代码。研究者利用os库编写递归文件列表函数lslR,扫描文件系统权限与大小,并通过seek分块读取加base64编码的方式,将579MB的entry_point二进制分10MB块外泄。Python沙箱还暴露了_set_reader_and_writer等RPC接口,允许通过文件描述符与Google内部服务通信,但不同生成方式的沙箱权限存在差异。
Python
本文中的Protocol Buffers指沙箱二进制中嵌入的内部.proto文件,如classification.proto、thinmint_core.proto及多项security/credentials相关定义。这些proto描述了Google内部数据分类、认证与权限模型,通过strings命令即可提取。研究者利用发现的proto构造RPC请求,通过文件描述符与Google服务交互,证明proto泄露可暴露系统架构与敏感调用接口。
Protocol Buffers
本文将 Preparatory Refactoring 列为 AI Blindspots 系列中的一个主题。它是作者在使用 LLM 进行编码时观察到的盲点之一,出现在 Sonnet 模型相关讨论的清单里,并链接到独立页面展开说明。该条目与整体主题直接对应,属于 AI 辅助编程中的注意事项。
Preparatory Refactoring
本文通过“Use Static Types”条目标注 Static Typing 这一内容。它是作者在 AI 编码实践中发现的盲点之一,列入 Sonnet 模型讨论清单,并指向专门页面。该实体与文章主题紧密相关,强调静态类型在 LLM 辅助开发中的作用。
Static Typing
黑箱测试是本文专门讨论的LLM盲点之一,设有独立子页面链接。作者认为在AI编码中应采用黑箱方式验证模型输出,而非依赖内部推理。相关内容强调此方法对提升代码可靠性的作用。
Black Box Testing
本文将 Rule of Three 收录进 AI Blindspots 的主题列表。它作为 LLM 编码盲点之一被提及,出现在 Sonnet 系列相关条目中,并附有独立讨论页面链接。该条目帮助读者理解作者观察到的重复模式或限制,服务于整体盲点总结。
Rule of Three
作者明确提到未来可能为Cursor制定针对性规则,以解决LLM在AI编码中的盲点。Cursor作为AI编程工具,在本文中被视为应用这些盲点分析的主要平台。文章内容直接服务于Cursor用户优化编码流程。
Cursor
本文把 Walking Skeleton 作为 AI Blindspots 列表中的一项呈现。它属于 LLM 编码盲点集合,与其他条目共同构成作者对 Sonnet 系列模型的观察总结,并提供对应详细页面链接。该主题服务于文章核心,提醒用户注意 AI 编程中的特定流程问题。
Walking Skeleton
本文系统总结作者在AI Coding过程中遇到的LLM盲点,涵盖从代码生成到调试的多个环节。Sonnet模型被重点考察,作为实践案例支撑各项建议。文章通过子页面形式提供具体应对方法,而非泛泛而谈。
AI Coding
文章第三节将YAML与JSON、XML并列,作为CSV同类的纯文本格式示例。作者强调CSV像YAML一样可自由选择编码,能用任意文本编辑器打开,无需专用程序即可读取。这凸显了CSV在简洁性和人类可读性上的优势,同时指出它并非二进制格式。
YAML
RFC 4180被描述为CSV的事后规范,文章指出其存在争议,CSV本质上并非由单一规范定义,而是大家默认遵守的集体规则集合,至今仍保持开放与自由的特性。
RFC 4180
本文将CSV定位为数据序列化的不灭基石,强调其规范仅需一句话即可说明:逗号分隔值、换行分隔行,引号内值需转义。它被赞为集体共有、无正式拥有者的开放格式,支持逐行流式读取、文件末尾高效追加,以及反向字节解析以常数时间访问末尾记录,特别适合跨语言动态类型与低内存场景。
CSV
NDJSON被本文提及为换行分隔JSON,常被宣传为CSV的现代替代,但文章批评此类格式在对象列表中重复键名导致冗余,远不如CSV仅在文件开头写一次表头的简洁性。
NDJSON
第六节将Python与JavaScript并列,指出在这些高层语言中难以直接对CSV文本的二进制表示进行处理。作者强调CSV允许按需解析值,而不必提前解码,这在性能敏感场景下是潜在优势,但高层语言的抽象层会增加实现难度。
Python
MessagePack在文中被归为二进制记录格式,与Parquet一同被视为CSV的“明显更优”继任者,但作者认为CSV作为纯文本格式,无需专用程序即可用文本编辑器直接读写和编辑的优势仍不可替代。
MessagePack
文章第四节与第六节提到Pandas,指出其数据框用法偏好列式格式,且在空值处理上存在诸多不一致。作者以此说明CSV的动态类型在跨语言场景下的灵活性,同时提醒若不小心也可能带来解析风险。
Pandas
第六节以JavaScript为例,说明其无法原生表示64位整数。作者认为CSV的动态类型让各语言可按自身规则解析数值,从而绕过此类限制;同时指出在Python和JavaScript等高层语言中,直接操作文本二进制以提升性能较为困难。
JavaScript
本文用JSON对比CSV的简洁性,指出JSON或XML在序列化对象列表时会重复写入键名,而CSV仅在开头记录一次表头即可大幅降低冗余;同时肯定JSON同样是纯文本、可任意编码的格式,但CSV在自然重复度上更具优势。
JSON
文中第三节和第七节两次提及XML,用以对比CSV的文本特性与简洁程度。作者指出,XML像JSON一样需重复书写键名,开销明显高于CSV;同时强调CSV与XML同属纯文本,可直接用编辑器查看和修改。
XML
本文作者为模拟和优化镜头阵列光学系统而编写的自定义Python代码,最终发展成为开源项目torchlensmaker,用于基于优化的几何光学设计。该工具帮助作者确定双凸抛物面镜头与平凸抛物面镜头的组合,有效焦距约55mm,并生成参数化3D模型。
torchlensmaker
Blowhole 是作者开发的命令行工具,用于向系统日志写入条目。在 LogUI 的 Predicate 菜单中有一个对应预设选项,可直接筛选出由该工具生成的日志记录,方便开发者验证其写入内容。
Blowhole
本文中,Smalltalk 是 Xerox Alto 上的编程语言及 GUI 环境,其 1976 年的 Smalltalk-76 版本展示的绘图程序与现代画图软件高度相似。该 GUI 直接启发了 Steve Jobs 开发 Apple Lisa,文章指出桌面界面近 50 年来变化极小,Alto 是其重要源头。
Smalltalk
本文以 Claude Code 为例,展示在 CI 环境中如何通过 Authorization 头传递 Supabase 个人访问令牌来手动认证 MCP 服务器。示例 JSON 配置包含 project_ref 参数和 Bearer Token,适用于无法使用浏览器 OAuth 的自动化流程。此方法要求在 CI 环境变量中设置 SUPABASE_ACCESS_TOKEN 和 SUPABASE_PROJECT_REF。
Claude Code
本文指出,使用 Supabase CLI 进行本地开发时,MCP 服务器地址为 http://localhost:54321/mcp。该方式无需额外配置即可让 AI 工具连接本地 Supabase 项目,支持与远程 MCP 服务器相同的工具调用。CLI 场景主要用于本地测试和开发,与生产环境隔离以降低安全风险。
Supabase CLI
TypeScript 在本文中对应 generate_typescript_types 工具,可根据 Supabase 数据库 schema 自动生成类型定义。该功能属于开发工具组,便于前端或应用代码与数据库结构保持同步,减少手动维护类型的工作量。
TypeScript
Cursor 是本文提及的 MCP 客户端示例,用于集成 Supabase MCP 服务器。用户可在 Cursor 设置的 Tools & MCP 页面查看连接状态,并通过自然语言指令让其调用 MCP 工具查询数据库表或执行 SQL。文章还建议启用手动确认工具调用的选项以提升安全性。
Cursor
文中称赞浏览器 DevTools 是免费的设计规格工具,能直接检查页面每个元素的尺寸、颜色和属性。开发者或任何感兴趣的人无需设计师额外准备,就能查看所有细节。这让浏览器内设计具备更强的可检查性和协作价值。
DevTools
本文将Transformers列为当代主流生成式AI架构之一,与LLM共同构成幻觉问题的技术根源。由于Transformer-based模型难以输出决策因素,文章指出可解释AI方法在此类系统上应用受限。文章提到,当前工程手段如温度调节或RAG仍无法完全消除Transformers带来的幻觉问题。
Transformers
本文说明 2011 年签名架构重构后,Mono 项目提供的 signcode 工具让 Windows 二进制文件可在 Linux 服务器上直接签名。此举消除了跨平台文件传输环节,使构建与签名流程整合到同一安全 Linux 环境中,显著提升了发布效率与安全性。
Mono
本文描述 2018 年迁移后,Taskcluster 成为 Mozilla 新的 CI 系统,签名操作通过 signingscript 和 iscript 两个专用 worker 与 Autograph 服务对接完成。迁移同时引入 Chain of Trust,大幅增强了仅允许真实构件被签名的安全保障,目前仍在持续使用。
Taskcluster
本文中 mardor 是用于管理与签名 MAR 文件的 Python 工具。在 Autograph 出现前它直接完成 MAR 签名,现在仅负责将 Autograph 生成的签名注入文件,工作方式与 osslsigncode 类似。
mardor
本文指出 2009 年 Chris AtLee 的签名优化引入大量 Python 脚本,结合并行处理和缓存机制,将签名耗时从 8 小时缩短至 15 分钟以内。这些 Python 工具为后续自动签名和脚本化流程奠定基础,成为 Mozilla 签名系统从手动转向自动化的关键技术栈。
Python
本文中 MSIX 是 Mozilla 自 2021 年起用于发布 Firefox 的打包格式。由于 osslsigncode 不支持 MSIX 签名,他们基于微软开源的 MSIX 打包工具找到合适分支并做额外修改,使其能在 Linux 上运行,从而将 MSIX 包签名集成到现有系统中。
MSIX
本文描述 Mozilla 早期 Windows 代码签名流程时提到,AutoIt 脚本在后台持续运行,用于自动向 signcode.exe 弹出的 GUI 对话框注入密码,从而绕过无法命令行输入的问题,实现 Authenticode 签名自动化。该方式虽能完成任务,但鼠标或键盘操作易造成干扰,体现了当时签名过程对人工环境的依赖。
AutoIt
本文提到 Mozilla 于 2018 年将持续集成系统从老旧的 Buildbot 迁移至 Taskcluster,签名任务随之转移到 signingscript 和 iscript 等专用 worker 上执行。此次迁移引入 Chain of Trust 机制,标志着签名流程从传统构建系统向现代化任务调度平台的全面升级。
Buildbot
早期签名在Windows机器上借助Cygwin运行GPG工具,完成分离签名生成。同一环境下还需处理Authenticode签名并使用AutoIt自动化密码输入。该方式要求物理在场且手动执行约15条命令,后被Linux签名服务器完全替代。
Cygwin
winsign 是用于签名和操作 Authenticode 签名的 Python 库,依赖 osslsigncode 写入签名,并通过传入函数调用 Autograph 完成实际签名过程。
winsign
本文中 signingscript 是 Taskcluster 与 Autograph 之间的胶水脚本,结合多种工具和自定义代码生成已签名构建,同时负责 macOS 构建的公证与 stapling。它是迁移到 Taskcluster 后专门的非 macOS 签名工作器。
signingscript
文中指出若已安装 Xcode,Storage Settings 的 Developer 类别可清理构建文件和设备支持文件。该功能是 Storage Settings 提供的实用清理工具之一,能帮助释放启动卷空间,与 System Data 的模糊统计形成对比。
Xcode
作者用Rust编写示例代码演示编码与解码过程,包括byte_to_variation_selector函数把字节映射到对应变体选择器,以及encode和decode函数完成字符串与隐藏数据的互转。文中通过main函数运行结果展示😊后面附加不可见字符实现“hello”隐藏的效果。
Rust
文章说明foreverVM与Codename Goose配合,支持Gemini 2 Flash完成隐藏数据解码。作者注明自己在foreverVM工作,该工具在视频演示中提供了必要的执行环境,使模型能运行代码实现解码。
foreverVM
本文指出Unicode用码点表示文本,变体选择器是其中256个无可见字形的特殊码点,可附加在任意字符后修改其呈现形式。作者利用这些码点把每字节映射为一个变体选择器,从而把任意数据隐藏在表情或普通字符中,且规范要求这些选择器在复制粘贴时保留。
Unicode
Calculator App 是 Chad Nauseam 网站上的一个具体页面,URL 指向 https://chadnauseam.com/coding/random/calculator-app。页面标题和描述均为 calculator-app - Chad Nauseam Home,显示这是一个归类于随机编码目录下的应用或项目。
Calculator
文章推荐Firebase Cloud Functions作为无需自建后端的基础设施方案,用于代理第三方API请求并存放ChatGPT密钥,从而避免将密钥打包进客户端。该方案可配合身份验证缩小攻击面,是保护密钥的实用中间层选择。
Firebase Cloud Functions
Proxyman 是免费网络代理工具,文中演示用它拦截应用的所有网络请求,几秒内就能在 Authorization header 中捕获明文 API 密钥,成为窃取密钥的强大手段。
Proxyman
文章说明 xcconfig 文件用于区分开发与生产环境的 API 密钥,在构建时解析到 Info.plist 中。即使通过 CI/CD 安全注入,这些值最终仍会进入公开的 .app 包,无法阻止被反编译获取。
xcconfig
Terminal 章节提供了多项命令行交互技巧:⇧⌘A 选中上条命令输出、⌘L 清除上条输出、⌃⌘V 粘贴转义后的文本、⌃T 查看命令执行统计,以及 ⌘↑/↓ 切换历史命令后配合 ⇧⌘A 选中对应输出。还包括拖拽文件到窗口插入路径、⇧⌘I 设置窗口标题等操作。这些提示帮助用户在 macOS 终端中提升命令历史管理和文件路径处理效率。
Terminal
本文建议用 PyTorch 等框架训练自定义嵌入,通过矩阵变换和 sigmoid 函数把通用向量映射到任务特定空间。该方法可针对问答匹配或 RAG 场景优化相似度,而非直接使用余弦相似度,文章还附带矩阵分解练习笔记本供入门。
PyTorch
本文将Sunscreen作为同态加密编译器的示例,用于简化Rust代码演示,支持加法和乘法操作于加密数据。文中指出其对分支和比较的支持有限,需将查询表达为多项式运算,且所有分支都必须执行最坏情况路径。
Sunscreen
Concrete被描述为比Sunscreen更健壮的同态加密实现选项,来自Zama项目,适合处理更复杂的运算但学习曲线更高。文中推荐它作为替代方案,用于支持任意深度的加法和乘法门操作。
Concrete
文章将Transformer描述为当前LLM核心架构,通过注意力机制并行处理序列,克服LSTM的顺序计算限制。它可堆叠多层注意力,每层都让词元相互贡献语义信息。文中强调其既能捕捉复杂句法语义,又支持用海量文本进行掩码预测训练,性能随参数和数据规模持续提升。
Transformers
Atom是与RSS兼容的订阅格式,文中指出多数RSS阅读器均支持Atom feed,用户可通过在网站URL后添加atom.xml等方式发现并订阅内容源。
Atom
本文中Regex用于现代RSS阅读器的高级过滤功能,用户可通过正则表达式设置关键词屏蔽、最低点赞数等规则,从而去除低质内容并保留高质量文章。
Regex
本文中 Relay 是 Integrations 类别的 runners up 插件,由 System 3 开发。它为 Obsidian 增加多人协作功能,支持多人同时编辑笔记。
Relay
Git Sync 是 Tools 类别的获奖者,由 ViscousPot 开发。这是一款 Android git 客户端,能简化 Obsidian 文件夹与远程仓库的同步,支持后台运行和一次设置,方便用户保持笔记实时更新。
Git Sync
文章在 CodePen 平台发布了多份演示代码,涵盖颜色应用、星级评分、网格定位和锚定弹出菜单等场景。读者可通过这些 Pen 直接查看和修改示例,验证 Chrome 133 中 attr() 的新能力。
CodePen
本文提到 Xcode 会自动隔离图标中的 glyph 并应用着色,但对复杂图形处理效果不佳,易产生不一致结果。作者建议不要依赖自动转换,而应手动提供带 100% 至 60% 透明度渐变的灰度图像,以匹配 Apple 官方图标的暗黑与着色表现。使用 Sketch 的 Tint 功能可快速验证不同不透明度下的效果。
Xcode
Safari 18.0 的 Web Inspector 新增 CSS 源代码编辑器的模糊搜索自动完成。同时支持通过 iPhone Mirroring 进行远程检查:Mac 上启用开发者工具后,可无线调试 iPhone 上的网页,设备会出现在 Develop 菜单中,方便跨设备测试与问题定位。
Web Inspector
Safari 18.0 新增 writingsuggestions 属性,允许开发者在文本输入框上关闭内联预测文本功能。默认值为 true,设置为 false 即可禁用系统根据上下文自动补全词语或句子的行为。该特性适用于需要精确控制输入体验的特定场景,开发者可针对不同表单字段灵活开关。
writingsuggestions
文章最后提供了完整代码的存放位置。作者将实现 Apple Watch 动画所需的全部 HTML 结构、CSS 关键帧动画、matrix3d 透视变换以及数学函数缩放技巧,整理后发布在 GitHub 仓库 arun-is/apple-watch-animation,供读者直接查看和复用。
GitHub
本文指出Transformer是一种神经网络架构,2017年后成为深度学习主流,用于文本生成、图像识别和蛋白质预测等多个领域。它通过自注意力机制实现next-token预测,能有效捕捉长距离依赖。GPT、Llama和Gemini等模型均以此架构为基础。
Transformers
文章说明Transformer Explainer的GPT-2模型直接源自Andrej Karpathy的nanoGPT项目。该项目提供了清晰的PyTorch实现,经转换后支持浏览器内运行,成为可视化工具的核心模型基础。
Andrej Karpathy
文章指出,Transformer Explainer 所使用的 GPT-2 模型源自 Andrej Karpathy 的 nanoGPT 项目,该项目采用 PyTorch 实现 GPT 模型。之后模型被转换为 ONNX Runtime 格式,以便直接在浏览器中执行推理与可视化。
PyTorch
Relay 是丹麦设计工作室,在 Config 视觉身份的动态部分担任合作方。他们将 Figma 制定的运动原则转化为开场影片中的激活主题,使形状相互触碰并充满画面,同时构建了一分钟的抽象叙事弧线。
Relay
本文将 Dev Mode 描述为 Figma 未来产品家族的重要组成部分,与 Figma AI 共同拉近设计与代码的距离。它被列为 UI3 设计目标之一,目的是为设计与开发协作提供更高层次的抽象支持,而非仅处理像素级操作。文章强调这一功能帮助奠定 Figma 下一阶段工具生态的基础。
Dev Mode
本文将RStudio桌面应用的多级级联下拉菜单列为反例,指出这类菜单操作难度高,容易导致用户误选或菜单意外关闭。这违反了“避免多级级联菜单”的建议,推荐改用mega菜单或着陆页来降低物理操作错误。
RStudio
本文中 UIReturnKeyType 是 iOS 键盘操作按钮的类型枚举,共提供 12 种选项,包括 return、next、continue、search 等。开发者可根据输入场景选择按钮,控制点击后执行换行、切换下一个字段或提交操作。该类型还会影响按钮颜色(蓝色表示可点击,灰色表示存在禁用状态),正确选用能让表单导航更顺畅。
UIReturnKeyType
本文介绍InputType为Android控制输入字段的API,约30种类型决定键盘形态与操作按钮。文章对比其与iOS的差异,指出Android常复用标准键盘处理URL输入,且按钮外观随机型变化。开发者可设为default让平台自动适配,文中通过示例说明该设置如何配合表单场景提升操作效率。
InputType
本文说明 Android 通过 SMS Retriever API 实现短信验证码自动填充,该功能与键盘本身无关。它直接读取短信内容并插入输入框,与 iOS 依赖 OTP 内容类型触发的工具栏机制不同。此 API 帮助用户在注册或验证流程中快速完成数字输入。
SMS Retriever API
本文指出 KeyboardActions 是 Android 键盘操作按钮的配置选项,包含 Go、Done、Next、Search、Send 等 7 种符号按钮。与 iOS 不同,Android 可设为 default 让系统自动匹配最合适的按钮。按钮外观随手机型号变化,用于决定输入后的下一步动作,如搜索或提交表单。
KeyboardActions
本文指出UITextContentType是iOS定义输入字段类型的API,约50种选项直接控制键盘布局与功能,如邮箱字段自动显示@和.符号。文章强调开发者需正确指定该类型以触发对应键盘,并可配置自动更正、建议栏等行为。正确使用能减少用户输入负担,文中以电话号码、验证码等场景为例说明其实际影响。
UITextContentType
文章指出 ASCII 键盘是 iOS 特有的一种输入类型,其主要特点是不包含表情符号,仅提供拉丁字母、数字和部分特殊字符。相比标准键盘,它限制了字符集,适合需要纯文本输入且避免 emoji 干扰的场景,如特定格式的数据录入。
ASCII
本文在标签页和导航侧边栏两处使用 Xcode 作为实际案例,展示通过颜色与阴影区分活动标签,以及采用缩进树形结构呈现文件层次,帮助开发者快速把握项目组织并在多文件间切换。
Xcode
Model Spec明确适用于OpenAI API,规范开发者指令与终端用户指令的优先级处理。在API场景中,开发者消息优先于用户指令,模型需严格遵守链式命令和适用法律。规范还区分了程序化使用与交互聊天的不同需求。
OpenAI API
文章在数据集分析任务中要求LLM以Markdown格式输出完整报告,包含客户群组名称、档案、营销策略及理由等结构化章节,并附录表格列出行号。作者通过指定# RESPONSE: MARKDOWN REPORT #指令,确保输出可读性强、层次清晰,便于商业伙伴直接使用。
Markdown
本文将 IntelliJ IDEA(文中简称 IDEA)作为工具栏示例,展示其把运行、调试等开发常用命令集中展示的设计实践。文章以此说明工具栏应根据用户工作流确定核心操作,并通过分组与一致样式避免界面混乱和操作低效。
IntelliJ IDEA
文章结尾作者用 SwiftUI 构建界面后简要提到“Apparently this is better than UIKit”,暗示本次开发完全采用 SwiftUI,未混合使用 UIKit。UIKit 仅作为对比出现,强调 SwiftUI 在响应式更新与简单界面上的便利。
UIKit
作者用 ZeroTier 虚拟局域网连接反向代理服务器与网站服务器,但该连接曾出现丢失导致 502 错误,影响服务稳定性。
ZeroTier
ChainForge采用Visual Programming方式构建提示工程流程,用户无需编写代码即可连接节点、发送参数化提示并缓存结果。文章指出该环境支持示例流程(如提示注入攻击评估),并在本地版本中扩展Python代码评估功能。相比传统脚本方式,它让多模型响应对比和假设检验变得直观且高效。
Visual Programming
文章在设计工程工具箱部分提到GLSL着色器编写能力,作为团队可执行的技能之一。它用于实现复杂视觉效果和性能优化,与调试浏览器性能等其他能力共同支撑高质量用户界面。GLSL并非个人必备,而是团队整体覆盖的专长,助力Vercel产品和营销内容的视觉表现。
GLSL
Design Engineering 是 Vercel 新设角色,融合审美与技术能力,可自主理解问题并完成设计、构建与发布。团队成员背景多元,共同关注交互细节、组件复用、性能、无障碍与用户偏好支持。文章系统梳理了该角色在 Vercel 的具体工作流与工具箱。
Design Engineering
文中指出VS Code等代码编辑器可与NVDA协同工作,能读出字母、单词、符号和缩进,让盲人通过语音了解代码内容和结构,适合编写PHP等程序。
VS Code
文章将css-doodle与p5.js等库进行比较,指出css-doodle专注于HTML、CSS和SVG创作,适合控制台效果。
p5.js
本文中DevTools指浏览器开发者工具,用户需在非Safari浏览器中打开其控制台才能查看文中示例效果,作者通过实际案例展示其应用。
DevTools
本文中console.log用于向控制台输出带样式的消息,但作者更推荐使用console.info来呈现面向最终用户的效果,因其在浏览器处理上有细微样式差异。
console.log
本文中 DSPy 是构建 RAG 系统的流行综合工具之一。它通过程序化方式优化检索与生成流程,帮助开发者更高效地搭建和调优 RAG 管道。
DSPy
本文中JavaScript用于执行console.info等命令,通过%c占位符结合CSS实现控制台消息的样式化渲染,包括SVG背景图和动画效果。代码示例展示了如何动态生成带背景图和样式的日志输出,增强用户探索体验。
JavaScript
本文中 LangChain 是构建 RAG 系统的流行综合工具之一。它支持检索、生成与增强流程的模块化组合,常用于开发知识密集型对话应用。
LangChain
文章指出css-doodle最近增加了对GLSL着色器的支持,使其能创建更复杂的控制台渲染效果。
GLSL
文章将Transformers列为Google长期向开放社区贡献的创新成果之一,与本次发布的Gemma同属推动AI普及的技术脉络。它体现Google持续开放模型与工具的传统,Gemma的发布正是这一历史延续的最新实例。
Transformers
Roblox采用基于Transformer架构构建统一翻译LLM,取代256个独立语言对模型。该设计利用语言间相似性提升训练效率,通过专家激活机制处理任意语言对翻译,同时支持源语言自动检测与混合语言输入场景。
Transformers
文章提到提供即用 Colab 笔记本与免费额度,让用户无需本地环境即可快速启动 Gemma 的推理与微调实验,降低入门门槛。
Google Colab
文章说明Gemma支持PyTorch原生框架,提供推理与微调的参考实现,与JAX、TensorFlow共同构成多框架工具链,方便开发者根据偏好选择使用。
PyTorch
作者多次要求模型以JSON数组形式返回视频中书籍的标题与作者,Gemini Pro 1.5在第二次提示后成功输出包含数十本书的结构化列表。JSON被用作验证模型从视频提取结构化信息能力的具体输出格式。
JSON
文中指出 underscore_case 广泛用于配置文件和 YAML 中,可能对设计者和开发者都较熟悉,作为设计令牌命名时的一种备选风格。其优点是单词间分隔清晰、提升各受众的可读性,但也存在名称过长时显得杂乱的缺点。
YAML
Go Mode让用户轻松查看好友位置并规划见面路线,同时内置彩蛋如跨洋Jetpack模式,体现Zenly将实用工具转化为趣味体验的设计理念。
Go Mode
文章将Snake Case(下划线_case)定义为全小写加下划线分隔的风格,如primary_color,优点是提升所有受众的可读性并常见于配置文件,缺点是名称较长且在设计系统中使用较少。
Snake Case
本文将 kebab-case 作为设计令牌命名的一种连字符风格进行讨论,示例包括 primary-color、card-header-text 等。它被指出在部分设计系统与 CSS 命名中采用,优点是与 underscore_case 形成视觉区分、提升可读性,缺点是可能与 URL 或文件路径混淆,不如其他格式被广泛认可。文章建议与开发者协作时优先考虑代码友好的大小写风格。
Kebab Case
文章将Pascal Case描述为每个单词首字母大写的命名风格,适用于设计令牌如PrimaryColor、CardHeaderText,优点是易读且开发者熟悉,缺点是视觉上较笨重且对非技术人员不够直观。
Pascal Case
本文介绍Camel Case作为Pascal Case的变体,首词小写如primaryColor、buttonHoverState,指出其在设计圈和文档中更常见,但可能被非技术用户视为技术性强或与编程变量混淆。
Camel Case
作者曾编写 AppleScript,用于通过邮件提醒 Time Machine 备份失败,替代人工检查。脚本服务于上门维修业务,帮助及时发现问题并安排回访。属于作者为提高服务效率而自制的自动化工具。
AppleScript
本文中 Python 用于搭建从 Gauss 代码到 SVG 的完整流程,实现组合嵌入、半边结构构建、元图圆 packing 等步骤,最终输出 knot diagram。
Python
本文提到部分无头UI库如react-aria与特定技术栈绑定,其中React是典型例子,这限制了库的普及范围。全球设计系统需要避免此类框架依赖,以实现更广泛的互操作性。
React
本文调用Simon Cozens的beziers.py库获取曲线偏移功能,将描边转换为填充区域,从而实现粗细随包围圆变化的弧线。
beziers.py
本文中Postfix被列为受影响的入站SMTP服务器,默认可接受
Postfix
Design Engineer 是既懂设计又能写代码的角色,Supabase 团队中已有成员承担此职责。他们在代码中完成迭代,使设计不再止步于原型,而是直接影响生产环境,实现快速交付。
Design Engineering
本文将其列为阅读系列文章的前提条件,指需掌握Game Boy汇编语言才能理解后续修改过程。文章提到需熟悉硬件文档,并使用汇编器对ROM进行代码注入。
Game Boy Assembly Language
Supabase 通过早期产出设计方案帮助团队快速对齐最终效果与美学,避免工程讨论陷入“用户是否会用”等琐碎细节,从而提升整体决策效率。
Bikeshedding
本文提到 Threads App 使用 JavaScript 在页面加载和窗口 resize 时动态计算 swirl 线长度,实现头像间的连接效果;这种方法有效但依赖 JS。作者对比指出,可改用纯响应式 SVG 实现相同视觉效果,无需任何 JS 代码。
JavaScript
文中 JavaScript 是 Design Engineer 学习的关键技能,设计师因开发速度受限而主动掌握它。掌握后可直接在代码中调整设计细节,加速从原型到上线的流程。
JavaScript
根据本文,Reddit Sans未来将以开源形式发布在GitHub上,供开发者与设计师免费使用和贡献。
GitHub
本文指出Sendmail与Postfix类似,是受影响的入站SMTP实现,默认接受特定结束数据序列,易受SMTP走私攻击。Shodan统计显示约99%的Sendmail服务器不支持BDAT,潜在影响范围较广。
Sendmail
本文详细阐述了SMTP协议基础,包括EHLO、MAIL FROM、RCPT TO、DATA命令及结束数据序列的使用流程。重点分析了出站与入站服务器在处理裸LF或不完整CRLF时的差异,导致可走私额外SMTP命令或独立邮件。文章通过真实测试展示其被滥用风险,并对比了BDAT与DATA命令的处理差异。
SMTP
本文作者使用的宏汇编器,用于将汇编代码注入基础ROM并生成GBC文件。文章提供编译脚本示例,说明其可通过参数传递修订版本与语言信息,适用于中大型ROM修改项目。
WLA-DX
文中简要提及 CUDA 实质上是 shader 的 API,常用于 AI 训练,说明 shader 技术在游戏之外的 GPU 计算应用。作者借此说明 shader 的广泛存在与重要性。
CUDA
作者将反编译并注释后的 console-killer 脚本发布于此仓库,供读者查看完整代码和演示页面,链接为 codepo8/console-killer。
GitHub
文章核心主题,指浏览器开发者工具。该脚本通过键盘拦截、debugger 循环和 console.clear 阻止用户打开和使用开发者工具,作者展示了关闭断点和覆盖函数等绕过技巧。
Developer Tools
本文中SageMath用于编写代码验证37作为第二素因子中位数的结论。通过固定大N并统计1到N间各数的第二素因子,作者实现了对λ₂(p)密度的数值检验,确认当N=10^7时实际密度约为0.50025,与理论值高度吻合。
SageMath
文章选择 GLSL 作为 shader 语言,因其浏览器友好,适合 WebGL 环境。所有示例代码均使用 GLSL 语法,包括 varying、uniform、step、smoothstep 等内置函数。
GLSL
本文将技术债务描述为为快速发布功能而今日做出的妥协,如同向未来自己借贷。若不及时偿还,处理成本会逐渐升高。作者指出优秀团队会在工作间隙定期清理这类债务,以保持长期可维护性。
Technical Debt
Dom Harwood与Base Design的Arthur Dubois都借助Google Colab运行AI模型:Dom用其执行Stable Diffusion相关工作流,Arthur则用它为静态图像注入动画效果。Colab被描述为浏览器内可直接编写与运行代码的工具,便于创作者快速迭代实验。
Google Colab
脚本核心防护手段之一,通过定时执行 debugger 语句并检测响应时间,迫使用户陷入无限断点循环。作者建议在重新加载页面前关闭所有断点即可绕过。
Debugger
作者自述离开 Google 后成为 Maven 的联合创始人兼 CTO。该平台与 Socratic 团队的后续发展共同构成文章结尾对收购故事的反思与延伸。
Maven
作者提到Google内部拥有包含数十亿行代码的巨型monorepo,几乎覆盖全部产品,收购后团队可直接访问该代码库进行开发。
Monorepo
本文指出脚本作者的最大失误是未使用闭包,导致 check() 函数成为全局函数。作者因此可直接覆盖该函数为 function check(){return true;},从而彻底停止调试器循环干扰。由于脚本依赖 setTimeout 调用,闭包无法使用,使得该全局污染成为可被利用的漏洞。
Closure
本文中 UIKit 作为 SwiftUI 的补充被少量使用,包括自定义文本字段、CollectionView 实现拖拽排序、粒子发射器以及更精细的手势控制,作者指出 SwiftUI 在 iOS 17 后仍与 UIKit/AppKit 存在差距。
UIKit
文章多次提及作者开发的 MarkChart 应用,支持 Mermaid 流程图、时序图等图表的预览、编辑与导出,覆盖 macOS、iOS 和 iPadOS 平台。
Mermaid
文章将 UIKit 与 SwiftUI 进行对比,统计链接 UIKit 框架的 UI 相关二进制数量。结果显示 iOS 17 中仅使用 UIKit 的二进制数量首次出现下降,SwiftUI 占比相应提升。作者通过检查框架链接情况来近似判断 UI 框架的使用情况。
UIKit
本文指出 CPPN 的计算图可轻松转换为 GLSL 代码,生成可在浏览器中直接运行的 WebGL 片段着色器。动画视频完成后导出为 GLSL,实现无缝循环动画效果。Qodana 落地页即采用了该方式展示 CPPN 生成的动态图形。
GLSL
作者在文中提到,现已更偏好使用 Cursor 来编写和展示约 13k 行的 Node/Express 后端代码,取代了之前的 Zed 编辑器。
Cursor
文章在方法学中说明,检测到同时包含 Objective-C 与 C++ 的二进制会被分别计入两者。整体趋势显示 C++ 在 iOS 各版本中的使用份额随时间逐步降低,但仍被部分系统组件采用。C++ 与 Swift、Objective-C 可在同一二进制中混合使用。
C#
本文中 AppKit 被提及用于对比,作者指出 SwiftUI 与 AppKit、UIKit 在组件与功能上仍有差距,但 SwiftUI 因其易用性与设计工具属性成为 Stocketa 主要开发框架。
AppKit
本文以 Qodana 落地页为例,展示 CPPN 生成的动画视频被导出为 WebGL 片段着色器后直接在浏览器运行的效果。该实现依赖于将 CPPN 计算图转换为 GLSL 代码,从而实现品牌色彩的动态呈现。
Qodana
本文方法论部分引用作者此前对 macOS 中 AppKit、Mac Catalyst 与 SwiftUI 使用情况的分析,作为本次 iOS 17 统计的对比与方法依据。
AppKit
文章提到作者用 Node/Express 构建了约 13k 行的后端,这是他首次用 TypeScript 完成较大规模项目。该后端部署于 Cloud Run,负责身份验证、数据缓存、新闻获取、业务逻辑、API 聚合与部分爬虫功能。作者特别指出这是其第一次在生产级代码中使用 TypeScript 完成如此体量的开发工作。
TypeScript
PyCharm 在 2020 年后的神经网络流程中负责本地开发,与 Datalore 配合在 K8s GPU 集群上运行模型。浏览器仅用于输入输出环节。
PyCharm
文中展示 Stocketa 后端代码时使用 Zed 作为编辑器,但作者表示现在已转向更喜欢的 Cursor。
Zed
本文在分析 iOS 17 编程语言演进时,将 C 列为被统计的语言之一。随 Swift 采用率上升,C 在二进制中的占比呈下降趋势。统计方法允许同一二进制同时被计入 C 与其他语言。
C#
Stocketa 的后端采用 Node.js 与 Express 构建,约 13k 行代码,运行于 Cloud Run,负责认证、缓存、新闻、业务逻辑、数据清洗、通知、小组件及多 API 集成等核心功能。
Node.js
分析表明 Objective-C 仍是 iOS 的核心语言,被绝大多数 app 直接或间接使用。尽管 Swift 和 SwiftUI 快速增长,Objective-C 的相对份额仍在持续下降。方法学部分说明单个二进制可同时包含多种语言,因此 Objective-C 计数会与其他语言重叠。
Objective-C
Baudot Code是本文所述5位电传代码,用于标准化远程打印字符图形,被视为ASCII的前身。通过它产生的电传艺术作品已与后来的ASCII艺术非常相似,体现了文本艺术随技术迭代而独立发展的规律。
Baudot Code
JetBrains 持续优化艺术生成方法,目标是让设计师专注于创意而非常规任务。其内部工具从十年前起步,逐步演进为基于神经网络的系统,用于制作网站元素和发布图形。
JetBrains
文章简称K8s,指JetBrains用于生成艺术图的GPU集群。自2020年起,所有神经网络渲染(CPPN与Stable Diffusion)均在该集群上运行,PyCharm与Datalore仅用于本地与远程开发,浏览器仅负责输入输出,实现了更高程度的个性化与可控性。
Kubernetes
Paul多年前曾尝试用Objective-C编写移动应用,但因体验不佳而放弃。Stocketa项目让他转向Swift与SwiftUI,彻底告别旧语言栈,转而享受现代声明式开发方式。
Objective-C
Datalore 作为远程开发平台,与 PyCharm 共同支持 JetBrains 的深度神经网络艺术生成流程。文章还提供了基于 Datalore 的公开 notebook 供代码示例使用。
Datalore
文章指出GitHub采用github.io域名,.io后缀源自英属印度洋领地。该后缀因对应input/output计算术语,受到科技初创公司和浏览器游戏开发者的青睐,成为其代表性地址之一。
GitHub
本文使用fonttools解析TrueType字体文件,将每个字形转换为moveTo、lineTo、qCurveTo等路径命令序列。仅提取字形形状信息,忽略宽度、高度等元数据,并将字形下采样至150x150分辨率。
fonttools
本文最初基于Hugging Face Transformers库构建自回归decoder-only Transformer模型,后迁移至xformers以提升训练速度和降低显存占用。最终模型包含16层、8个block,参数量达7370万。
Transformers
本文说明ChatGPT用户可借助GPT Actions与外部应用交互,此功能由用户请求触发,ChatGPT-User代理会访问对应网页。robots.txt规则对此类用户驱动的访问不适用,且不影响搜索结果或模型训练数据的采集。
GPT Actions
本文将GitHub列为托管大量Stable Diffusion衍生模型的主要代码仓库之一,与HuggingFace、Civitai共同拥有数万个相关模型。作者依据这些仓库的模型下载量,估算出超过110亿张图像由此类平台生成,占全部AI图像的绝大部分。
GitHub
本文中,作者用LaTeX排版博士论文,通过fontspec包调整Fell字体的字母间距以平衡视觉密度,并用microtype实现边距微调。字体的高级OpenType特性在LaTeX中引发显示问题,需手动优化;还用FontForge进一步修改字形和字距。
LaTeX
本文中,fontspec是LaTeX宏包,用于调整IM Fell字体的小写字母间距,以缓解垂直笔画较粗导致的“栅栏效应”,使正文阅读更流畅舒适,同时保留手刻活字的自然感。
fontspec
clj-libretro是本文作者的Clojure项目,封装了Libretro模拟器调用,实现状态缓存、后继按键生成与游戏帧推进,用于支撑马里奥AI求解器。代码已开源在GitHub。
clj-libretro
本文用Clojure实现了一个简单的AI求解器,通过优先队列搜索和回溯策略,让马里奥自动通关原版超级马里奥兄弟除迷宫关外的所有关卡。核心solve函数结合距离启发式与后继状态生成,平均两分钟左右即可解决1-1等平台关。
Clojure
本文作者,实现了用Clojure编写的Mario关卡求解器,能通关除迷宫关之外的全部原始Super Mario Bros关卡。其核心算法基于优先级队列、距离启发式和一屏范围回溯,代码与视频均来自该作者。
Adrian Smith
本文提及Shift JIS等日文编码标准将字符映射进Unicode块,直接促成vaporwave大量使用片假名与全宽形式,强化对80-90年代日本科技产品的怀旧。
Shift JIS
文章对比了BookDown方案,指出其为R语言包,需要安装R环境才能使用,而作者最终选择不依赖R的Pandoc方案来生成书籍。
R
本文中 GitLab 仓库存放了作者编写的 Pandoc 脚本与模板,用于从 Markdown 生成 PDF、epub 等格式。作者在文末提供了仓库链接,方便读者获取完整代码与配置示例。
GitLab
本文使用 ETTrace 工具对 Threads 启动过程进行火焰图分析,捕捉到约 50ms 的 pre-main 时间及启动阶段调用栈。文章提供 JSON 文件供读者上传 ETTrace 查看详情,说明该工具在混淆构建下的实用价值。
ETTrace
Threads 部分界面使用 React Native 实现,表现为 InstagramBundle.js.hbc.spk.xz 文件。该文件被推测为压缩后的字节码包,说明 Meta 在新应用中继续复用 RN 技术栈以加速开发。
React Native
本文作者正在撰写的《Learn Elm by Example》即围绕Elm语言展开,通过示例讲解如何构建计算器应用,Markdown源文件最终转换为PDF、epub等多种格式的Elm教学书籍。
Elm
本文作者用 Markdown 撰写整本书籍,每章单独存放为带编号的 .md 文件,通过 src/title.txt 中的 YAML 元数据统一管理标题、作者等信息。Markdown 源码经 Pandoc 处理后可输出 PDF、EPUB、MOBI 和 HTML,满足技术书籍所需的代码高亮与源代码控制需求。作者还指出 smart 扩展在 EPUB 输出时可能出现问题,并通过 pandoc-crossref 实现图文交叉引用。
Markdown
本文指出mojibake即MP3时代跨编码乱码现象,vaporwave故意制造类似“Guns n’ Roses”效果,以再现Limewire时期的文件损坏感与怀旧衰败氛围。
Mojibake
文章说明通过Kindlegen程序可将Pandoc生成的epub文件转换为mobi格式,以支持Kindle阅读器,命令为kindlegen ./build/output.epub。
Kindlegen
Emerge Tools 在本文中作为分析工具,对 Threads 应用进行移动端性能拆解,提供了 Android 与 iOS 版本的体积、动态库、插件及启动轨迹数据。通过 ETTrace 生成火焰图,揭示 Threads 启动过程与 Instagram 的共享框架情况,结论是 Threads 严重依赖 Instagram 代码。
Emerge Tools
文章推测 Threads 内的 js.hbc 文件为 Hermes 引擎生成的字节码。InstagramBundle.js.hbc.spk.xz 即是该字节码的压缩形态,体现 Meta 在 React Native 场景下对 Hermes 的应用。
Hermes
本文中 Microsoft Expression Blend 出现在 Dante Gagne 的个人履历里,他于 2002 年加入 Microsoft 时,曾在原名 Sparkle 的项目上担任测试工作,该项目后来发展为 Expression Blend。
Microsoft Expression Blend
Visual Studio 2012 是文中指出的上一次 Visual Studio 视觉语言大规模更新的版本,其设计至今仍被沿用。文章分析该版本带来的局限,包括控件拥挤、视觉干扰大以及状态反馈不一致,这些问题直接促使了本次针对工具栏、菜单和标签的刷新计划。
Visual Studio 2012
文章指出 WebGPU 规范同时定义了 JavaScript IDL 与 C 头文件,目的是让开发者也能通过 WebAssembly(文中简称 WebASM)在浏览器中使用该 API。Rust 与 C++ 代码可无缝编译为 WebAssembly,从而在浏览器内运行与桌面端相同的 WebGPU 调用。
WebAssembly
本文指出当下主流生成式AI模型多采用Transformer架构,包括各类大语言模型。针对该架构,文章给出基于参数量p和token数n的粗略计算规则:推理约需2np次浮点运算,训练约需6p次每token,并讨论了内存占用及优化空间。这些估算直接服务于分析AI训练与推理的高昂算力成本。
Transformers
本文指出wasm-pack用于Rust转wasm构建,但体验仍显粗糙;作者参考了MDN教程,却最终更倾向由Trunk替代它以解决具体痛点。
wasm-pack
文中Trunk被描述为Rust Web开发者常用工具,它取代wasm-pack作为前端,解决了作者遇到的wasm-pack特定 frustrations,更适合WebGPU Rust项目。
Trunk
Visual Studio 2022(对应 17.6 版本)是本次 UI 刷新实验的当前基准版本。文章对比了其现有界面与新设计方案,展示工具栏间距增大、菜单可读性提升以及活动区域更清晰的改进效果,目标是降低用户熟悉成本并提升日常使用效率。
Visual Studio 2022
文章提及GLSL是OpenGL使用的类C文本着色器语言。WebGPU并未采用GLSL,而是统一使用WGSL;作者对比指出Vulkan通过SPIR-V摆脱了对单一着色器语言的依赖。GLSL被归为传统固定管线之后的着色器方案之一。
GLSL
文中Tauri被作者视为现成方案,可构建跨平台程序:在桌面端运行Rust并嵌入TypeScript解释器,在浏览器中则反之,实现类似Electron却更轻量的伪Web游戏引擎。
Tauri
本文中指邮件App Spark。它通过左右滑动及滑动距离,将邮件快速分类为删除、置顶、未读、归档四种操作,让身体动作直接延伸到App交互中。文中指出这种滑动分类交互最初由Mailbox App发明。
Spark
本文核心讨论对象是 Visual Studio 的界面刷新计划,目标是让其 UI 与 Fluent 设计原则保持一致。文章指出当前界面自 2012 年以来未做大规模更新,存在控件过小、视觉噪声多、状态指示不一致等问题。新的设计将通过调整工具栏、菜单和活动区域样式,提升内聚性、可访问性和生产力,并计划在未来预览版中发布以收集反馈。
Visual Studio
作者编写 Python 脚本遍历微信导出的文本文件,提取本人发言及上下文,整理成 JSON 格式的对话数据集。该脚本处理了约 50 个活跃聊天记录文件,为首次模型训练提供了 10 万条可用数据。
Python
本文将OpenAI Codex作为代码生成AI的代表,说明其通过自然语言提示生成程序代码的能力,列举它与Copilot等工具共同构成生成式AI在编程领域的应用实例,突出黑箱特性导致的交互困难。
OpenAI Codex
本文指WebGPU着色语言,是WebGPU API的配套着色器语言。Chrome计划在后续版本中为其增加更多人体工学改进,以支持更深入的机器学习优化。WGSL规范已随WebGPU规范一同发布,开发者可通过在线导览工具学习其语法。
WGSL
本文简称WASM,指通过Emscripten等工具将原生GPU代码编译为WebAssembly模块的技术路径。Dawn和wgpu的独立库设计正是为了简化这一移植过程。WebGPU因此能在浏览器中运行高性能图形与计算任务。
WebAssembly
作者使用的开源工具,从iPhone备份中导出2018年至今约80G微信聊天记录。经筛选活跃群聊与个人对话后,生成约10万条训练用的对话JSON数据,是整个数字克隆项目的数据基础。
WechatExporter
本文作者,一位长期从事定制软件开发的程序员。他指出软件开发的真正难点在于理解问题根源与设计方案,而非编码本身。作者以自身经验批判低代码工具和ChatGPT等“银弹”说法,强调这些工具无法消除设计不当带来的长期维护问题。
Jay Little
本文把GitHub Copilot归为程序代码生成类生成式AI黑箱,指出它能接受自然语言提示并输出程序代码,与其他模态生成工具共同展示AI在内容创作上的广泛应用,但同样缺乏可预测的概念模型。
GitHub Copilot
Emscripten是本文提到的编译工具链,用于将C/C++代码编译为WebAssembly。Dawn与wgpu库通过Emscripten可轻松移植到Web平台,降低WebGPU原生应用的迁移成本。
Emscripten
wgpu是Firefox的WebGPU实现库,同样以独立包形式提供。它抽象了底层操作系统GPU API,兼具可移植性和易用性。开发者可通过wgpu将原生应用代码移植到WebAssembly,实现跨平台运行。
wgpu
作者将博客文章以 Markdown 文件形式存储在云端,通过 iA Writer 在多设备间同步和编辑内容。
Markdown
Dawn是Chromium的WebGPU实现库,现已作为独立包发布。它封装了操作系统GPU API,提供良好的可移植性和人体工学接口。原生应用可借助Dawn更轻松地将代码移植到WebAssembly环境。
Dawn
本文正文未提及 Deno,仅在相关文章标题中出现另一恶意软件利用 Deno JavaScript 运行时进行攻击的报道,与 MacStealer 无关。
Deno
Home Mixer 是负责组装和提供 For You 时间线的核心服务,它整合候选来源、打分模型、过滤规则与产品特性。该服务每日处理海量请求,是整个推荐流水线的执行入口,最终将混合后的内容返回设备。
Home Mixer
Product Mixer 是 Twitter 自定义的 Scala 框架,用于构建各类内容流。Home Mixer 基于此框架实现,负责连接候选来源、排序函数、启发式规则和过滤器,形成完整的推荐流水线。
Product Mixer
本文未提及 Spark,该实体与 iOS 导航模式讨论无关。
Spark
Scala 是 Product Mixer 框架所使用的编程语言,支撑 Home Mixer 等推荐服务的开发。该框架通过 Scala 实现候选获取、模型打分与内容混合等功能,构成 Twitter 推荐系统的基础技术栈。
Scala
Fanout Service是已运行12年的旧服务,曾通过缓存为用户提供In-Network推文。Twitter最近已停止使用该服务,转而采用新方案处理关注者推文。
Fanout Service
GraphJet是Twitter开发的图处理引擎,维护用户与推文间的实时互动图,用于Out-of-Network来源的图遍历生成候选。它目前贡献约15%的Home Timeline推文,是社交图方法的核心实现。
GraphJet
AAPCS 是 Arm 官方定义的 Procedure Call Standard,规定了参数如何通过寄存器传递的标准调用约定。该规范随 ABI 文档发布,取代了旧的 APCS 与 TPCS。Apple 与 Microsoft 的平台在具体实现上存在差异。
AAPCS
本文提到可作为ChatGPT的外部工具,弥补其在精确计算与结构化知识上的不足。通过接入Wolfram|Alpha,ChatGPT能处理涉及事实查询与计算的任务,扩展纯语言模型的实用范围。
Wolfram|Alpha
文章举例显示,ChatGPT 能正确判断某题属于动态规划问题,却在实现时遗漏已识别的边界条件,导致代码失败,体现了“思路正确但细节出错”的典型缺陷。
动态规划
作者将本次实验生成的全部 ChatGPT 解法代码开源在 GitHub 仓库 dkb868/chatgpt-does-leetcode,供读者复现与查看具体失败案例。
GitHub
本文指出Transformers是GPT系列模型采用的神经网络架构,包含多层注意力块与全连接层,能处理token序列并生成下一个token的概率。每个注意力块内有多个独立头,负责在序列不同位置间分配权重,实现对远距离依赖的捕捉。与传统全连接网络相比,Transformers更适合语言任务。文章展示其内部权重矩阵后认为,该架构虽复杂,但最终仅通过简单神经元运算完成语言生成。
Transformers
文章使用 LeetCode 最新 100 道题目作为测试集,以模拟真实面试中的新题场景,避免训练数据污染。结果按难度划分:简单题通过率较高,中等和困难题表现极差。作者认为这更接近实际编码面试的难度分布。
LeetCode
文中提到设计系统组件均已用TypeScript定义,属性与可选值清晰明确,这为AI识别和正确使用组件提供了结构化基础。TypeScript在此成为训练AI消费设计系统的关键前提,使提示驱动的界面生成更加可靠。
TypeScript
文章提到PlopJS用于自动生成符合设计系统规范的组件样板代码,AI可进一步承担此类机械性重复工作以提升效率。
PlopJS
本文用于加载GPT-2模型、执行文本生成并可视化概率分布的编程语言。作者通过它提供可直接运行的代码示例,展示如何将神经网络嵌入到符号计算环境中,实现从提示到完整段落的自动生成。
Wolfram Language
文中指出苹果自3月起开始阻止部分热门Vibe Coding应用更新,以配合其对AI编程类App的支持策略调整。
Vibe Coding
文章指出 Transformers 是 Google 于 2017 年发明的机制,能以更少输入理解语言,直接推动机器学习加速进步,并构成 ChatGPT 的核心组件。
Transformers
本文方法论部分使用 OpenCV 进行 t-SNE 可视化后的图像处理:通过 cv2.imread 读取截图、cv2.resize 统一尺寸,再用 cv2.imshow 在二维坐标上拼接展示网站聚类结果。
OpenCV
虚拟机通过pip安装PyTorch 1.12.1,该版本实际于2022年8月发布,而ChatGPT训练数据仅到2021年9月,凸显其处于另类时间线。安装后可进一步检查版本与GPU支持(结果无GPU),证明模拟环境能完成深度学习框架的部署与查询。
PyTorch
文章以Java为例展示UUID生成代码,使用java.util.UUID.randomUUID方法。还提供了自定义SecureRandom生成更安全令牌的代码示例,指出Java共享SecureRandom实例可能导致锁竞争问题。
Java
本文中 Lynx 作为命令行浏览器被用于在 ChatGPT 模拟的 Linux 终端里访问 alt-internet,成功查询 PyTorch 1.12.1 版本及 OpenAI 聊天页面内容,展示了虚拟机具备一定网络浏览能力。
Lynx
本文描述一位用户在另一论坛用C++提问,却收到完全错误的ChatGPT生成答案,且管理员未处理。这对比了Stack Overflow的严格政策,强调允许AI内容会降低回答质量并打击人工贡献者。
C#
Web Inspector 在 Elements 标签页的 Styles 侧边栏中新增了对 @-rules 的编辑支持。该改进通过 256043@main 提交实现,方便开发者直接修改样式规则。
Web Inspector
本文中SecureRandom是Java用于生成安全随机字节的核心类,用于创建160位随机令牌。文章指出默认共享实例在高并发时可能因锁竞争导致性能问题,建议改为ThreadLocal或池化方式以缓解。
SecureRandom
数据采集阶段使用 pandas.DataFrame 保存 SEMrush 获取的国家热门网站列表,后续通过 df.loc 过滤类别并导出 CSV,为后续截图与分析提供结构化数据。
Pandas
本文讨论随机UUID作为会话cookie或访问令牌的替代方案。它是128位值,格式为36个十六进制字符加连字符,实际随机位仅122位。文章指出其熵值不足以满足高安全要求,容易被大规模猜测攻击破解。
UUID
本文将 transformer 列为神经网络的一种类型,与长短期记忆、变分自编码器等并列。它同样遵循层间前向数据流动与反向传播调参的基本模式,却拥有独特应用方向。文章强调其具体实现细节对 DALL-E 等模型的运行有关键影响,计划在后续部分深入探讨。
Transformers
文中通过 ChatGPT 模拟终端执行 Python 代码,正确计算出前 10 个质数,证明该虚拟机能运行编程任务,且在某些场景下比作者真实笔记本更快完成计算。
Python
处理阶段用 PyTorch 加载 ImageFolderWithPaths 数据集,通过 torch.utils.data.DataLoader 以 batch_size=32 读取图片,并将 ResNet101 模型输出特征转为 numpy 数组保存。
PyTorch
文中用Selenium驱动浏览器访问SEMrush获取国家与网站列表,并通过Firefox webdriver拍摄网站首页截图,同时处理Cookie弹窗与验证码。该工具贯穿数据采集与图像获取阶段,确保获得真实本地化页面。
Selenium
本文推荐使用URL安全的Base64编码(无填充)将20字节随机值转为字符串,可将令牌长度控制在27字符以内,相比UUID的36字符更紧凑且熵值更高。
Base64
本文记录了对 JavaScript 的两项加速优化:Array.prototype.slice 在 DirectArguments 上的加速(256027@main),以及 Array.prototype.concat 作用于自身数组时的加速(256040@main)。这些改动提升了特定数组操作的执行效率。
JavaScript
文章测试虚拟机是否支持Docker:编写Dockerfile、构建镜像并运行,最终在容器内打印Hello from Docker。实验成功表明ChatGPT模拟的Linux环境具备容器化能力,可完成从构建到执行的完整Docker流程。
Docker
本文使用BeautifulSoup配合Selenium从SEMrush趋势页面解析各国热门网站表格数据,实现自动化收集2,671个网站信息。解析结果经清洗后用于后续截图与AI分析流程。
BeautifulSoup
32位Fontconfig在处理访问时间为2040年的字体文件时,因超过2038年时间戳上限而报EOVERFLOW错误。文章中正是该库的异常导致Steam无法正常加载字体配置,出现“Value too large for defined data type”提示。
Fontconfig
Culori 是与 Color.js 类似的 JS 颜色库,本文指出可使用它在 OKLCH 空间进行颜色转换,示例代码来自 OKLCH 拾色器项目源码。
Culori
作者将自己 VS Code 主题 Little League 的配色方案直接应用于生成艺术作品,作为每张预览图的颜色基础,实现视觉风格一致。
VS Code
Color.js 是本文推荐的 JavaScript 颜色处理库,可在 OKLCH 空间中解析、修改和映射颜色,支持从任意格式输入并输出 sRGB 或 P3 结果,用于动态主题与渐变计算。
Color.js
本文中,作者为解锁《斯坦利寓言》成就将系统时间调至2040年,导致多处文件访问时间更新到2040年。由于2040超过2038年,32位fontconfig在stat这些文件时触发EOVERFLOW错误(Value too large for defined data type),进而使Steam无法正常枚举字体库,最终随机挑选Virgil字体显示。作者通过重新挂载strictatime并批量touch文件才恢复正常,印证了32位软件在2038年前后的兼容风险。
2038年问题
作者为修改系统时间以完成The Stanley Parable成就而临时禁用NTP,之后恢复。禁用NTP是导致文件访问时间被人为设定到2040年的关键步骤,进而触发后续的2038年问题。
NTP
本文借助 Daniel Shiffman 的 Coding Train 视频学习 Poisson-Disc 采样方法,用于实现流场中的等距不交叉线条绘制,同时也参考其 Perlin 噪声教程理解自然随机效果。
Daniel Shiffman
作者在新角色中除设计外,还会直接在Xcode中构建界面,以快速迭代和提升产品品质。他认为这种设计与工程紧密结合的方式,能更有效地把控最终交付质量,尤其在小团队中优势明显。
Xcode
文章说明,ATT实施前,Facebook SDK帮助Meta从广告主App内收集转化数据,支持确定性广告归因与精准衡量。政策变化切断了这一数据链路,使SDK驱动的模式失效,迫使Meta转向概率模型与AI。作者强调此转变直接影响广告定价与长期终端价值,凸显SDK在Meta广告基础设施中的历史作用。
Facebook SDK
本文指出Stable Diffusion的文本编码器采用Transformer语言模型(具体为CLIP的文本编码器),将输入提示词转换为77个768维的token embeddings向量,用于后续图像生成过程。
Transformers
文章提到 Josh Vickerson 编写的 Sass mixin「prefer」可按偏好顺序接收多个属性值。该 mixin 会反向输出声明,使更丰富的颜色值排在后面,从而让支持的浏览器优先使用 display-p3 颜色,不支持的浏览器则回退到 sRGB 值。
Sass
工程师Brian实现的该算法按元素邻近度对FigJam画布上的便签等对象进行分组,使搜索结果在无明确分区时仍能按视觉逻辑自然排序,提升遍历连贯性。
空间排序算法
文中介绍使用 postcss-color-function 插件可自动把 display-p3 等高色域颜色转换为 sRGB 兼容的 rgb() 值。开启 preserve 选项后,插件会同时输出两种声明,并用 @supports 包裹高色域版本,实现自动渐进增强。
PostCSS
文章实现了 Node.js 版本的 WordPress,支持通过 Emscripten 编译的 PHP 在 Node.js 环境中运行,并启动本地 Web 服务器提供服务。但在 Stackblitz 上因嵌套 WebAssembly 层导致性能显著下降。
Node.js
本文未提及Cursor,该实体在提供的文章正文中没有出现。
Cursor
本文提到微软设计师在宣言中列出GitHub作为日常使用的现代工具之一;Penpot这款开源设计工具的代码托管在GitHub上,允许用户下载修改并自建服务器,与Figma形成对比。GitHub归微软所有,这一事实被用来强调Penpot的开放性。
GitHub
本文中PHP被编译为WebAssembly模块,通过Emscripten工具生成webworker-php.wasm和对应JS包装器。它在浏览器Web Worker中执行,替代传统Apache或Nginx服务器,并通过手动填充$_SERVER等超全局变量处理请求。文中提到MySQL不支持WASM,故改用SQLite插件,整体方案支持Node.js和浏览器两种运行时。
PHP
在准备 WordPress 数据包时,文章提到 WP-CLI 因硬绑定 MySQL 而无法适配 SQLite 环境,因此未采用 WP-CLI 完成安装流程,而是通过特殊 curl 请求直接触发安装脚本。
WP-CLI
Stackblitz 借助 WebContainers 技术在浏览器中直接运行 Node.js、npm 和 webpack,从而支持 WordPress 开发环境。文章指出 WebContainers + WebAssembly WordPress 可实现无需服务器的交互式学习与开发体验。
WebContainers
本文中Emscripten作为C编译器替代工具,将PHP源码编译为可在浏览器运行的WASM格式。它生成wasm二进制与JS加载器,并支持文件打包器将WordPress文件转为wp.data数据包。文中提供了Dockerfile和编译脚本,强调其是实现客户端WordPress的关键编译基础设施。
Emscripten
2016年微软收购Xamarin,引入350人团队,后成为Figma早期重度用户。该团队原用Sketch分享文件时常遇字体或版本问题,转向浏览器端的Figma后协作效率提升。Xamarin设计师Václav Vančura推动Figma在微软内部传播,并向Figma反馈性能问题帮助其改进。
Xamarin
ZenEngine 是 Zenly 自主研发的低功耗、高精度定位引擎,结合周边设备网络与 GPS,在不严重耗电的前提下实现持续后台定位。它支撑了无需用户签到的 Place Graph 自动构建,使位置数据能被动积累。文章强调 ZenEngine 是 Zenly 核心技术壁垒,既解决了电池难题,也让社交地图从“工具”升级为“数字世界克隆”。
ZenEngine
本文中 UUID 是 Apple Notes 隐藏 URL scheme(mobilenotes://showNote?identifier=UUID)用来定位并直接打开特定笔记的唯一标识符。作者指出 iOS 16 的 Shortcuts Content Graph 会以小写形式显示 UUID,必须手动转为大写才能正常工作。获取 UUID 的唯一方法是结合 Find Notes 与 Show Content Graph 操作,再手动复制。
UUID
本文中StackBlitz被用作浏览器内IDE示例,运行WordPress插件开发环境和可编辑Gutenberg区块。它通过WebContainers支持Node.js和npm,但因双层WASM嵌套导致wp-admin渲染慢达40秒。文中对比了直接浏览器WASM版本更快,并指出服务工作者冲突与文件同步等集成限制。
StackBlitz
针对宣布新 Go 客户端库的博客,作者构思了蓝色 Go 语言吉祥物查看多显示器表格数据的画面,并通过多次提示词调整才得到满意的 DALL·E 图像。
Go
Apache Kafka 与 Parquet 结合用于存储,对应 Deephaven 博客中的一篇文章。作者同样用 DALL-E 2 为该帖生成了更贴合流式与存储主题的缩略图,替代原有图库图片。
Apache Kafka
Pandas 出现在 Deephaven 博客《Gremlins in Data》中,文章讨论如何查看 pandas DataFrame。该帖同样通过 DALL-E 2 生成了更具针对性的缩略图,取代了此前不贴切的库存图片。
Pandas
文章说明该标准规定了日期和时间的数字表示法,仅涵盖数字格式,不包括文字表述日期,旨在避免各国不同记法造成的混淆。
ISO 8601-1:2019
gRPC 工具用于将数据流传输到浏览器,对应 Deephaven 一篇技术博客。作者为该帖使用 DALL-E 2 创作了新的缩略图,以视觉方式呈现流式数据传输主题。
gRPC
文章展示了一篇讨论预构建 Docker 容器的博客,其新缩略图由 DALL·E 生成,提示词为“Blue whale with stacks of shipping containers on its back”。
Docker
本文介绍ISO 8601推荐使用YYYY-MM-DD格式,以消除国际沟通中的日期歧义,提升计算机界面可移植性,同时提及分隔符使用和省略规则。
ISO 8601
TinyPilot 内部开发者擅长 Python 与 JavaScript,而 DesignAgency 的开发者更擅长设计密集的 CSS 工作。文章以此对比两家团队的技术侧重。
JavaScript
文章指出 ray.so 是 Raycast 团队首次 hackathon 的成果之一,与 Floating Notes、Script Commands 等功能一同诞生。该项目展示了 Rayday 模式在公司正式推行前已自然存在,通过集中时间处理创意想法,快速产出并扩展到产品线中。
ray.so
本文中Warp指作者参与开发的GPU加速终端应用。它采用自研文本渲染管线以追求极致性能,需自行处理字体 shaping 与 rasterization,避免依赖系统框架。文章重点描述其为解决比例字体 kerning 问题而引入 sub-pixel glyph atlas 的优化过程。
Warp
TinyPilot 的内部开发人员主要使用 Python 和 JavaScript 进行编程。DesignAgency 认为其团队在设计相关的 CSS 工作上更有经验。
Python
本文提到修复文本渲染 kerning 问题的 PR 共修改不到 200 行代码,其中大部分使用 Rust 语言实现。Rust 主要负责字形图集的缓存键构建、子像素对齐计算以及渲染指令生成逻辑。
Rust
作者使用 Xcode 14 测试版在 Ventura 测试环境下开发了自己的轻量虚拟机应用 Viable,所有测试结果均在 Monterey 12.4 的 Mac Studio 上运行得出。
Xcode
文章提到,Bad North项目中,瓦片先在Maya中建模,随后导入Unity引擎进行边缘扫描以建立相邻规则,从而支持波函数坍缩算法生成符合游戏需求的岛屿地形。
Unity
Xcode 是苹果的开发环境。本文中作者将 AHAP 触觉文件导入 Xcode,使 Not Boring Habits 应用能在 iOS 设备上播放为 checkbox 设计的自定义震动效果。
Xcode
Know Your Meme网站是基于Ruby on Rails构建的定制应用,与维基百科相比审核更严格,用户提交内容需经人工事实核查后才可上线首页,目前由10人全职编辑团队维护。
Ruby on Rails
Pete Hunt 在文中与作者共同负责 instagram.com 向 React 的重构工作。两人当时正处于大规模代码重构阶段,正值 Facebook 决定将 React 开源,因此需要同步准备发布所需的视觉素材。
Pete Hunt
本文中 React 是 Facebook 计划开源的 JavaScript 框架,2013 年春季正处于 instagram.com 重构阶段。作者在为该框架准备发布物料时,仅用几分钟就完成了 logo 设计。logo 以简化原子造型包裹齿轮,灵感直接来自 FedEx 标志的负空间箭头。
React
文章将Qt列为高技术用户界面开发中昂贵的商业授权框架之一,与多语言本地化、质量控制等环节共同推高软件成本。低技术界面因逻辑简单,通常无需此类框架,从而显著降低开发费用与复杂度。
Qt
Visual Studio Code是作者开发arun.is时使用的代码编辑器。在2.0重构中,作者打开该编辑器检查代码时发现了大量技术债务,包括组件中逻辑、标记与样式的混杂。作者据此将部分文件拆分为逻辑层与样式层,并提取可复用工具函数。
Visual Studio Code
文章主体围绕 HTTPie for Terminal 这个 CLI HTTP 客户端展开,强调其从零开始设计以提升终端 API 操作友好性。项目在 GitHub 托管十年后,因仓库误设私有导致全部 star 和 watcher 被级联删除,CLI 社区因此遭受重创。
CLI
文章中前Atlassian员工在Hacker News评论指出,该公司系统高度互联且存在大量单点故障,多数事件由客户首先发现,工程实践主要关注正常路径而忽略异常场景,这被视为导致本次长时间停机的重要内部原因。
单点故障
本文主角项目,终端 HTTP 客户端,GitHub 上曾积累 54k 星标和 1k+ 关注者。作者误将 httpie/cli 仓库设为私有,导致 GitHub 级联删除全部星标与关注者,十年社区瞬间清零。文章详细记录了事故经过、GitHub 的恢复拒绝,以及后续通过社区传播重新获得约 23k 星标的过程。
HTTPie
本文在讨论如何在数据可视化工具中设置默认颜色时提及ggplot2,建议将组织颜色定义为命名向量,以便用户在R环境中直接调用这些颜色创建图表。
ggplot2
文章提到BD-J是蓝光光盘用于实现复杂菜单的Java应用,正是乔布斯厌恶蓝光格式的原因之一。文中以此对比CODA DVD菜单的极简设计,强调苹果对繁琐交互的抵触。文章认为媒体公司不应编写此类应用,屏幕菜单应保持简洁。
BD-J
本文提到 youtube-dl 作为开源软件,其官网 youtube-dl.org 在 DuckDuckGo 中无法通过 site: 搜索或直接名称搜索到结果。该工具本身不托管或链接侵权内容,曾因 RIAA 通知被 GitHub 短暂移除仓库。DuckDuckGo 此举被视为最令人意外的遗漏之一。
youtube-dl
文章指出youtube-dl代码仓库曾因RIAA通知从GitHub下架,后经审查恢复;但其官网youtube-dl.org目前在DuckDuckGo中仍无法被索引,仅GitHub仓库仍可被找到。
GitHub
GitHub 自身桌面客户端仓库,曾因同样操作被设为私有。GitHub 团队在数小时内自行恢复全部数据,作者以此作为对比,指出平台仅对内部项目提供恢复支持,而对 httpie/cli 等社区项目则拒绝恢复。
GitHub Desktop
GraphQL用于查询博客文章等内容数据,并将查询结果传入展示组件。作者将处理GraphQL查询输出的重复逻辑提取为通用工具函数,其中包括通过正则表达式移除标题排版问题的实用方法,以降低代码重复并提升可维护性。
GraphQL
文章介绍 HTTPie 最初是为解决作者自身 API 测试需求而创建的开源工具,专注于让终端下的 API 交互更人性化。项目因此成为 GitHub 上最受欢迎的 API 工具之一,吸引大量开发者关注和使用。
API
文章提到 Requests 作为 Python 中常见的 HTTP 库,但指出在需要大量异步 HEAD 请求时,HTTPX 的性能优势更明显。作者实际代码中选择了 HTTPX 来完成 Product Hunt 数据 enrichment。
Requests
Product Hunt v2 API采用GraphQL实现,但本文作者未选用该版本,因其单次仅返回20条且字段受限,无法高效获取完整历史数据集。文章对比显示REST旧版在数据量上更适合本次大规模分析任务。
GraphQL
本文使用Product Hunt API获取全部精选产品数据,旧版REST接口单次可返回50条完整记录,作者因此选择它而非新版以减少查询次数。采集过程需先获取redirect_url,再通过HEAD请求解析真实URL并检测当前状态,共处理超过18万次请求。
Product Hunt API
CodePen 在本文中作为全部演示的托管平台,作者将 AI 生成的游戏与工具代码发布为公开集合,用户可直接打开、运行并查看源码。
CodePen
作者使用Python配合HTTPX库实现异步HEAD请求,高效完成对9万余产品的redirect_url解析与状态检测。代码示例展示了如何设置Authorization头、处理301跳转以及捕获各类异常,整个流程在速率限制下仍能在数小时内完成。
Python
本文将 macOS 原生应用中嵌入的 web view 与 Electron 应用类比,指出两者都能通过 Safari 检查器查看和调试内部网页内容。但这些 web view 实际运行在系统原生应用中,而非独立的 Electron 打包应用。
Electron
本文中Qt 6.2.2的GIF解码器将小于10的延迟值提升,以兼容IE和Firefox并降低CPU负载。源码注释显示其最小延迟设为10,文章以此为例说明各程序为历史兼容而偏离规范,导致最快GIF无法呈现。
Qt
本文指出 MDN 已从 wiki 迁移至由 GitHub 支撑的静态站点,内容仓库托管在 GitHub 上。新首页会展示最近的贡献记录,开发者可通过 Git 和 Markdown 更高效地参与内容编写与维护。
GitHub
本文中 HTTPX 被用于通过 Python 查询 Product Hunt API,完成对超过 9 万条产品数据的抓取。作者特别指出其支持异步 HEAD 请求,可显著加速处理 18 万次以上请求的过程。相比之下,它比 Requests 更适合大规模并发场景。
HTTPX
本文提到 MDN 内容从 HTML 迁移到 Markdown 格式,这一转变让贡献者能使用更熟悉的工具编写结构化且一致的文档,提升了内容创作效率。
Markdown
本文使用 xxd 命令逐字节查看 GIF 文件头、逻辑屏幕描述符及各扩展区块的内容。作者通过 xxd 输出确认 GIF89a 魔数、宽高字段及颜色表大小等关键信息,并演示如何定位评论扩展等数据。
xxd
PowerShell 用于在无法或不愿使用组策略时配置 Defender 设置。文章列举了 Set-MpPreference 命令,可调整签名更新间隔、云阻挡级别、样本提交策略以及 PUA 防护等参数,作为图形界面之外的补充手段。
PowerShell
本文发布于ScrapingBee官网,作者通过该平台的技术背景展示如何利用爬虫工具结合Product Hunt API进行大规模数据采集与分析。文章开头提供ScrapingBee免费试用链接,暗示其在网页数据抓取场景中的应用价值。
ScrapingBee
本文中Rust被提及为web3智能合约开发的可选语言,与Solidity并列,服务于需要编写智能合约的web3项目。文章指出,早期web3团队更依赖开发者而非PM,Rust开发者可直接支持协议构建。
Rust
Solidity是编写智能合约的主要语言,与Rust并列为DeFi协议开发的核心技能。文章指出构建协议时,Solidity开发者往往比PM更关键,尤其在早期0-1阶段。团队规模扩大后,PM才辅助协调多协议与EVM方案。
Solidity
match-sorter 是 Height 团队在实现 Type-to-select 时引入的 npm 库,用于在用户快速输入时更宽容地匹配菜单项,避免因按键遗漏导致失败。
match-sorter
文章末尾列出 MUI 官方文档链接,指出其已内置 Badge 组件,方便开发者直接在 Material Design 体系中实现状态提示与数量标记。
MUI
文章提到DevTools可通过CMD+Shift+P搜索“Capture Full Size Screenshot”命令实现整页截图,无需额外扩展程序。该功能被作者视为Nimbus等截图扩展的内置替代方案,日常使用频率较高。
DevTools
作者编写脚本每5分钟抓取纽约时报首页,提取所有标题并存入数据库,用于统计A/B测试频率与效果。三周数据表明,抓取到的多标题文章中,部分标题改动仅为标点修正,另有部分则为明显提升点击的测试。
Web Scraping
Material You UI kit 描述中明确支持 Next.js 框架,文章暗示开发者可利用该套件在 Next.js 项目中实现带 Badge 的界面。
Next.js
文章指出 Setproduct 的 Material You UI kit 与 Figma React UI kit 均提供 React 版本的 Badge 实现,方便在 React 项目中快速集成徽章组件。
React
文章在结尾资源部分提及Chakra UI组件库,将其Badge/Tag实现作为参考案例链接。体现该库提供了现成的徽章组件,方便开发者直接使用文章讨论的设计模式。
Chakra UI
Logseq被描述为基于本地纯文本Markdown和Org-mode文件的开源大纲工具。文章强调这一格式让用户能轻松组织、分享想法并构建数字花园,同时保持数据本地控制。Markdown支持被视为Logseq在PKM领域受欢迎的关键特性之一。
Markdown
可视化编程是 Toby Schachman 硕士论文的核心内容,也是 Ivan 早期团队用来替代手动建站的解决方案。团队最初希望通过该方式让非程序员也能创建网页和通用应用,后演变为 Notion 的底层思路。
Visual Programming
文中指出GitHub Actions已成为排名第一的CI服务,被开源项目和企业广泛采用。它是GitHub从代码托管转向完整开发者平台的关键产品之一,直接支撑了平台的核心功能扩展。
GitHub Actions
本文中提到,Thomas Dohmke于2011年联合创立HockeyApp,最初是为了解决自身作为开发者的痛点。该应用后来成为其职业经历的重要部分,也为他加入GitHub并推动产品发展奠定了基础。
HockeyApp
文中提到GitHub Copilot代表AI融入软件开发的未来趋势,与Codespaces共同定义下一代开发方式。它作为平台创新成果,体现了GitHub在AI辅助编程领域的探索与布局。
GitHub Copilot
相关报道中指出,用户可在VS Code或CLI中启动工作,随后通过手机完成,GitHub Copilot会话的远程控制功能已在GitHub Mobile上正式发布。
VS Code
本文在介绍 Blot 时提到,用户可选择通过 Dropbox 或 Git 同步 Blot 文件夹,以将文件自动转为博客或个人网站内容。Git 作为同步方式之一,支持将本地文件直接映射为站点内容,适合偏好代码或版本控制的用户。
Git
Makeswift 使用 React 组件构建实时网站,文章指出其编辑器让用户像使用设计工具一样操作 React 组件。平台通过 React 实现实时协作与即时布局调整,同时保持最终输出的高性能。读者无需编写 React 代码即可享受其带来的灵活性与速度优势。
React
本文提到 GitHub Discussions 已被 GitHub 上排名前 100 的开源社区中超过一半采用,成为开发者社区交流的重要工具。它是 GitHub 从代码托管平台转型为完整开发者平台的关键产品之一,与 Actions、Codespaces 等共同服务全球开发者。
GitHub Discussions
本文将GitHub Codespaces描述为云原生开发未来的代表产品,与AI工具共同展现软件开发的演进方向。它帮助开发者在云端完成编码工作,是GitHub平台能力升级的重要标志。
GitHub Codespaces
文章相关部分说明,GitHub Copilot会话的远程控制现已在github.com和GitHub Mobile上普遍可用,支持从手机继续本地会话。
GitHub Mobile
本文 Xbox 页面底部开发者相关链接中出现 Visual Studio,指向 https://visualstudio.microsoft.com/。它被放在微软开发工具区,与 Xbox 游戏开发入口形成呼应,方便开发者从游戏站点进入 IDE 下载。
Visual Studio
本文提到Kirby的后台管理界面基于Vue.js构建,为用户提供灵活的编辑体验。Kirby作为文件和文件夹组成的CMS,其管理面板采用Vue.js技术,支持开发者自定义前端工具和工作流。
Vue.js
本文中 Markdown 被多个工具用作内容编写格式。Hugo 支持 Markdown 及其短代码功能,用于快速构建博客与文档;Blot、Typehut 和 Svbtle 均允许用户直接拖入或编写 Markdown 文件来发布文章。文章强调 Markdown 让内容创建过程简洁、无需复杂操作,适合追求轻量与快速发布的个人网站或博客场景。
Markdown
文中指出 GitHub Sponsors 已帮助开发者通过贡献获得数百万美元收入,支持开源生态的可持续发展。作为 Nat Friedman 任期内的成果之一,它体现了 GitHub 对开发者回报机制的重视。
GitHub Sponsors
研究中使用ImageMagick进行图片处理与主色分析,同时指出其对ICO文件缺少magic number的处理问题。该工具帮助完成425909个图标的格式识别与尺寸统计。
ImageMagick
作者使用Go语言编写爬虫抓取Tranco前10万网站并规范化favicon,配合gohttpdisk缓存HTTP响应,最终输出CSV结果。Go被描述为适合抓取但不擅长数据处理的语言。
Go
文章说明用Ruby分析Go爬虫生成的CSV结果,因为Go不适合数据处理。该步骤完成了图标格式、尺寸、颜色等各项统计与可视化。
Ruby
文章以Azure DevOps为例,展示登录后立即显示“Continue where you left off”最近访问内容列表,支持用户快速恢复之前的工作流。
Azure DevOps
Chroma.js 是本文作者发现的 JavaScript 库,其优秀的 LCh 支持帮助快速生成新色板,作者基于它开发内部工具并最终发布为 Accessible Palette 应用。
Chroma.js
Dico Code 属于 Dico 超家族,由 Bold Monday 发行,包含 Code 与 Mono Script 两种风格。文章指出 Code 版标点稍大便于区分,Mono Script 版斜体富有个性,适合追求实用与趣味结合的编码场景。
Dico Code
Sensitive Content Analysis是苹果提供的框架,允许第三方开发者在其App中集成Communication Safety功能;框架可在孩子接收或尝试发送内容时检测裸露图像,并触发相应保护措施;所有分析均在设备本地进行,不向苹果或他人传输数据。
Sensitive Content Analysis
文中作者明确表示不打算探讨编码连字功能,因为他个人对此没有需求。这反映出文章重点聚焦等宽字体的美学设计,而非技术特性或扩展功能。
Coding Ligatures
文中提到Win32 API作为Windows Forms的补充手段,开发者在遇到框架限制时需调用它实现特定功能。文章将此描述为.NET早期Windows应用开发中的常见 workaround,反映出当时UI技术的不足。Project Reunion旨在减少此类底层依赖。
Win32 API
本文标题中的Project Reunion被描述为可能终结微软UI混乱的举措,针对Windows桌面应用开发中长期存在的框架碎片化问题提出解决方案。文章指出,经过多年API反复更替,开发者面临选择困境,而该项目旨在逐步改善这一局面,尤其惠及业务应用开发者。
Project Reunion
Matthew MacDonald 为本文作者,他在文中以自身经历为例,描述微软反复更换 Windows 桌面 UI 技术的现象,并重点分析 Project Reunion 项目对业务开发者的潜在影响。文章收录于其运营的 Young Coder 专栏,定位为 .NET 开发者提供技术洞察与历史反思。
Matthew MacDonald
文章聚焦Windows桌面图形应用开发历史,指出开发者需应对多代UI技术更迭。从.NET时代起,Windows平台应用开发经历了从简单到碎片化的转变,业务线应用开发者尤其受影响。Project Reunion的目标正是简化这一平台的开发体验。
Windows
文章指出,.NET 1.0时期Windows Forms是构建Windows桌面应用的首选方案,具有拖放式简易操作,接近VB风格,适合直线业务应用。虽功能相对完备,但偶尔需通过Win32 API弥补限制。该框架代表微软早期相对统一的UI开发路径。
Windows Forms
文中说明.NET 1.0发布后,开发者构建Windows桌面应用的主要方式是使用其配套框架。文章强调.NET开发者长期受微软UI技术反复变化困扰,.NET平台虽简化了部分开发,但仍需偶尔调用底层API。Project Reunion被视为改善.NET Windows开发环境的举措。
.NET 9