- Published on
2025-第五十周
- Authors

- Name
- AgedCoffee
- @__middle__child
该周报主要为各个地方内容的汇总整理
技术
锚点定位与内嵌修改的包含块(IMCB)
本文解释了 CSS 锚点定位中“插入修改包含块”(IMCB)的概念及其作用,通过可视化工具演示了如何通过调整inset、align-self和justify-self属性来控制锚定元素的位置。
- 🧩 IMCB(插入修改包含块)是理解 CSS 锚点定位的关键概念,它通过
inset属性调整包含块的大小和位置。 - 🔀 使用
position-area选择“位置区域网格”中的一个区域作为锚定元素的包含块,再通过inset调整形成 IMCB。 - 🛠️ 通过
align-self和justify-self属性可以在 IMCB 内微调锚定元素的位置,例如实现右上角定位。 - 🎥 作者创建了交互式演示工具,可视化 IMCB 和包含块,并允许动态调整
inset、align-self和justify-self属性。 - 💡 默认情况下
inset值为 0,因此包含块与 IMCB 通常相同,但调整inset可改变锚定元素的定位区域。
工具
keichi/binary-parser:用于二进制数据的极速声明式解析器构建工具
binary-parser 是一个用于 JavaScript 的二进制解析器构建工具,允许以声明式方式编写高效的二进制解析器。它支持解析结构化二进制数据所需的所有常见数据类型,并通过即时动态生成和编译解析器代码来实现接近手写解析器的性能。
- 🚀 高性能解析器构建工具 – 通过即时编译生成高效代码,性能接近手写解析器。
- 📦 支持丰富数据类型 – 包括整数、浮点数、位字段、字符串、数组、选择结构和指针等。
- 🔧 声明式 API 设计 – 提供链式方法调用,可直观构建复杂解析逻辑。
- 🧩 灵活的数据处理 – 支持动态长度数组、条件解析、嵌套结构和自定义格式化。
- 🔄 递归与自引用解析 – 通过
namely()方法支持解析递归数据结构。 - 📏 上下文变量支持 – 可选启用
$parent、$root等上下文变量,便于跨层级数据访问。 - 🧪 完善的错误处理与断言 – 提供
assert选项进行数据验证,确保解析正确性。 - 🌐 广泛的编码支持 – 字符串解析支持多种编码,包括 UTF-8 和十六进制等。
- 📄 活跃的开源项目 – 采用 MIT 许可证,拥有活跃的社区维护和丰富的示例。
paulmillr/readdirp: 递归版 fs.readdir,内存与 CPU 占用极低。
readdirp 是一个递归读取目录的 Node.js 库,提供流式 API 和 Promise API,具有低内存和 CPU 占用。它支持文件/目录过滤、深度控制、符号链接处理等功能,适用于高效遍历文件系统。
- 📦 递归读取目录:提供 fs.readdir 的递归版本,支持流式与 Promise 两种 API。
- 🚀 高性能设计:通过流式处理实现低内存和 CPU 占用,适合处理大量文件。
- ⚙️ 灵活过滤选项:支持通过 fileFilter 和 directoryFilter 自定义文件与目录的包含/排除规则。
- 📏 深度与类型控制:可设置递归深度(depth)和输出类型(文件、目录或全部)。
- 🔗 符号链接支持:可配置 lstat 选项以包含符号链接条目。
- 📄 详细文件信息:返回 EntryInfo 对象,包含路径、基础名、状态统计等数据。
- 🛠️ 多版本兼容:支持 Node.js 8+ 版本,最新版本使用 TypeScript 重写,提供 CommonJS 和 ESM 模块。
- 📜 开源许可:基于 MIT 许可证发布,由社区维护并广泛使用。
paulmillr/chokidar:轻量高效的跨平台文件监控库
Chokidar 是一个跨平台文件监控库,以其高效和轻量著称,适用于 Node.js 环境,支持递归监控、符号链接、文件过滤等功能,并优化了事件处理和资源使用。
- 📁 跨平台文件监控库 – 提供高效、轻量的文件系统监控,支持 macOS、Windows 和 Linux。
- 🔄 优于原生 fs.watch – 解决了事件重复报告、文件名丢失等问题,提供更可靠的事件响应。
- ⚙️ 丰富配置选项 – 支持忽略特定文件、递归深度限制、原子写入检测和轮询模式等。
- 📦 广泛使用与稳定 – 自 2012 年发布,被数千万仓库使用,经过生产环境验证。
- 🚀 持续更新优化 – 最新版本 v5 仅支持 ESM,减少依赖并提升性能,要求 Node.js v20 以上。
- 🛠️ 易于集成使用 – 通过简单 API 监听文件变化,支持添加、删除、更改等多种事件。
- ⚠️ 故障处理与兼容 – 提供解决文件句柄耗尽等常见问题的方法,并说明版本升级变化。
tinylibs/tinybench: 🔎 一个简单、小巧且轻量级的基准测试库!
Tinybench 是一个简单、轻量级的 JavaScript 基准测试库,适用于多种运行时环境,提供精确的计时和统计分析功能。
- 🔎 轻量级设计:库体积小巧,仅约 10KB(压缩后约 2KB),无外部依赖。
- ⏱️ 精确计时:基于 Web API(如
performance.now或process.hrtime)提供准确的时间测量。 - 📊 统计分析:支持延迟与吞吐量的统计分析,包括标准差、误差范围、方差和百分位数等。
- 🔄 并发支持:支持任务级别和基准测试级别的并发执行模式。
- 🎯 事件驱动:兼容
Event和EventTarget,可监听任务周期、中止等事件。 - 🤖 自动异步检测:能自动识别异步函数,也支持手动设置异步选项。
- 📈 结果表格化:提供
bench.table()方法,可将结果转换为适合console.table()的格式。 - 💾 样本保留:可选择保留原始样本数据,便于进一步分析或可视化。
- ⏹️ 可中止测试:支持通过
AbortSignal在基准测试或任务级别中止执行。 - 🔧 自定义时间戳:允许使用不同的时间戳提供程序(如
hrtime、performance.now或自定义实现)。
更新
设计
AI
译:AI 如何改变 Anthropic 的工作方式
Anthropic 公司于 2025 年 8 月对内部 132 名工程师和研究员进行了调研及访谈,结合 Claude Code 使用数据分析,探讨了 AI 如何改变其工作方式。研究发现,AI 显著提升了生产力并拓宽了工作范围,但同时也引发了技能退化、协作减少和职业不确定性等挑战。工程师们正从编码者转向 AI 管理者,而 AI 的自主性增强也促使工作性质发生根本性变革。
- 🐛 调试与理解代码成为 AI 核心用途:工程师最常使用 Claude 进行代码调试(55% 每日使用)和代码理解,以快速解决问题和学习新代码库。
- 📈 生产力大幅提升,但伴随新问题:员工在 59% 的工作中使用 Claude,自述生产力平均提高 50%,但部分人因需审查 AI 输出而耗时增加,且技能实践机会减少。
- 🆕 AI 催生全新类型的工作:27% 的 AI 辅助工作属于“若无 AI 则不会进行”的任务,如扩展项目、构建工具或探索性工作,增强了工作广度。
- 🤖 委托策略基于验证难度与风险:工程师倾向将低风险、易验证或枯燥的任务委托给 AI,而保留高层级设计、战略决策和需“品味”的任务。
- 🔄 技能集拓宽但深度可能退化:AI 帮助工程师胜任全栈工作(如后端人员处理前端),但也导致底层编码技能和“附带学习”机会减少,引发监督能力下降的担忧。
- 👥 工作场所社交动态变化:AI 替代了部分同事间的问答,减少了初级员工向资深者求助的机会,可能削弱导师制和协作氛围。
- 🧭 职业角色转向 AI 管理:工程师越来越多地扮演“AI 代理管理者”角色,审查和整合 AI 输出,但对软件工程职业的长期前景存在不确定性。
- 📊 AI 自主性增强,处理任务更复杂:Claude Code 在六个月内连续执行动作的次数增加 116%,人类干预回合减少 33%,显示 AI 正以更高自主性处理更困难任务。
- 🛠️ 团队利用 AI 扩展核心能力:不同团队借助 AI 弥补技能短板(如安全团队分析代码、研究员进行前端可视化),推动全员向“全栈”发展。
- 🔮 未来聚焦适应与转型:Anthropic 正探索 AI 增强下的团队协作、职业发展路径和教育调整,以应对工作性质的根本性变革。
译:万亿美元的 AI 软件开发技术栈
本文探讨了生成式 AI 如何颠覆软件开发领域,并催生一个潜力巨大的万亿美元市场。文章指出,AI 编码助手已能显著提升开发者效率,而未来更完整的 AI 技术栈可能将生产力翻倍,对全球经济产生巨大贡献。当前,AI 软件开发领域已从单一工具演变为一个包含规划、编码、审查、测试、文档等环节的完整生态系统,吸引了大量创业公司和投资。文章详细描绘了 AI 编码技术栈的构成、工作流程、新兴工具类别及市场格局,并讨论了其对开发者角色、软件成本和教育体系的深远影响。最后,作者认为这是软件史上最大的变革之一,也是创业的绝佳时机。
- 🚀 市场潜力巨大:AI 引爆的第一个巨大市场是软件开发。全球约 3000 万开发者每年创造约 3 万亿美元经济价值,AI 编码助手有望将此生产力大幅提升,甚至翻倍,其经济影响堪比世界第七大经济体。
- 🔄 工作流范式转变:现代 AI 编码遵循“规划 -> 编码 -> 审查”的循环。AI(LLM)成为合作伙伴,从项目规划阶段就深度参与,协助制定规范、做出架构决策,并生成和审查代码。
- 🛠️ 工具生态繁荣:AI 编码已发展成一个庞大生态系统,涵盖多个工具类别:规划工具(汇总需求、分解任务)、编码助手(Tab 补全、聊天编辑、后台 Agent)、应用构建器、专为 AI 设计的版本控制(如 Gitbutler)、测试与文档生成工具等。
- 🤖 为 AI 而设计的新范式:出现了专为 LLM 而非人类设计的知识库(如编码规则集)和工具(如代码搜索索引、执行沙箱)。文档也开始同时服务于人类和 LLM,确保信息一致。
- 💰 成本与商业逻辑演变:使用高级模型进行 AI 编码成本可能很高,但平台正通过多模型支持和优化来管理成本。软件开发成本结构从几乎全是人力成本,转变为包含可观 LLM 运营支出的新模式。
- 👨💻 开发者角色进化,而非被取代:AI 不会在可预见的未来取代软件开发者,但彻底改变了工作性质。开发者需要掌握与 AI 协作、审查和修正 AI 输出等新技能。传统的计算机科学教育面临重大改革压力。
- ⚡ 软件的未来:自我扩展与代码持久性:长远看,AI 可能使软件具备根据用户描述自我添加功能的能力。然而,由于执行效率的巨量差异,经过优化的代码相比纯 LLM 解释执行仍有巨大优势,因此“代码”仍将长期存在。
- 🏁 创业的黄金时代:技术超级周期为初创公司创造了极佳机会。即使在有巨头(如 GitHub Copilot)的领域,初创公司(如 Cursor)也能凭借创新有效竞争。现在是投身 AI 软件开发领域创业的最佳时机之一。