<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>代码质量 | 锤子前端</title><description>Now vibe coding, so learning hammer FE ?</description><link>https://channel.meo-ai.com</link><item><title>《Uncle Bob 的 ub-mode：给 AI 编程助手装上&quot;纪律开关&quot;》</title><link>https://channel.meo-ai.com/posts/729</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/729</guid><pubDate>Thu, 29 Oct 2026 01:22:56 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《Uncle Bob 的 ub-mode：给 AI 编程助手装上&quot;纪律开关&quot;》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;br /&gt;&lt;a href=&quot;/search/result?q=%23%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B&quot; title=&quot;#软件工程&quot;&gt;#软件工程&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23AI%E7%BC%96%E7%A8%8B%E8%BE%85%E5%8A%A9&quot; title=&quot;#AI编程辅助&quot;&gt;#AI编程辅助&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23TDD&quot; title=&quot;#TDD&quot;&gt;#TDD&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F%E9%97%A8%E7%A6%81&quot; title=&quot;#代码质量门禁&quot;&gt;#代码质量门禁&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：&lt;br /&gt;这是 Robert C. Martin（Uncle Bob）发布的一个 AI 智能体技能（agent skill），用于在 AI 编写或修改代码时强制执行严谨的软件工程纪律。它部分借鉴了 poteto-mode 的规则体系并加以精简，同时配套一组确定性的质量门禁工具（复杂度、重复率、变异测试），让&quot;先让它能工作，再让它正确，最后持续练习&quot;的原则可度量、可落地。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;1. &lt;b&gt;核心理念分三层&lt;/b&gt;：先让它能工作（懒惰协议、TDD、先减后加、领域建模、边界与类型纪律等），再让它正确（修复根因、测试行为而非实现、持续重构），最后落实到日常练习（记日志、守护上下文窗口、小而有序的提交）。&lt;br /&gt;2. &lt;b&gt;规则部分借鉴并精简自 poteto-mode&lt;/b&gt;：作者明确说明 ub-mode 是 &lt;a href=&quot;https://t.me/poteto&quot; target=&quot;_blank&quot; title=&quot;@poteto&quot;&gt;@poteto&lt;/a&gt; 规则集的删减版，与确定性工具搭配使用。&lt;br /&gt;3. &lt;b&gt;配套四个质量门禁工具仓库&lt;/b&gt;：crapper 计算圈复杂度与 CRAP 分数（要求 CRAP &amp;lt; 10），dryer 检测结构重复（相似度 ≥ 0.8 即需消除），mutator 做变异测试揪出&quot;测试杀不死的活口&quot;，uml-viewer 可视化组件、覆盖率与依赖方向。&lt;br /&gt;4. &lt;b&gt;安装方式极简&lt;/b&gt;：只需把 &lt;a href=&quot;http://SKILL.md/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;SKILL.md&quot;&gt;SKILL.md&lt;/a&gt; 复制到所用 AI 工具的 skills 目录（如 /.claude/skills/ub-mode/），然后输入 /ub-mode 即可调用。&lt;br /&gt;5. &lt;b&gt;目标很明确&lt;/b&gt;：把 Uncle Bob 倡导的软件工艺原则变成 AI 编码时可检查、可强制执行的硬约束，而不是口头建议。&lt;br /&gt;&lt;br /&gt;URL：&lt;a href=&quot;https://github.com/unclebob/ub-mode&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://github.com/unclebob/ub-mode&quot;&gt;https://github.com/unclebob/ub-mode&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://github.com/unclebob/ub-mode&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Contribute to unclebob/ub-mode development by creating an account on GitHub.&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;GitHub&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;GitHub - unclebob/ub-mode&quot; src=&quot;/static/https://cdn4.telesco.pe/file/UCJZ6O172muiQrjDs86JRYzCntG2IYYu_YcYM1Ie_1JgonITIEfmT1cxER_597SNQRoxhPTensGDoR9uUZvWN-9_v-V6fNqGMGYEOcbUJwWuXIvUghfooTEHUZnJxdAqgXD56j3Y2o-mO8YoyPoFxloXhlUfYXgTODQFpG24s1YXK6mNapa20UiNsohKt4t2o06_lrLHgKaZBHPaArtEYDTpeYpM8r5F99iNKNGf1JfzdNt5d9xlpZTKZZ9oISKONIpfjhO-ISEseAS2S2mZV3461-PFh88V65RnBRj6EzCleBvzLzX7rTJjKLSVAfciiTycTQT1zcHjLOes-7mBZQ.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;GitHub - unclebob/ub-mode&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;Contribute to unclebob/ub-mode development by creating an account on GitHub.&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《十个防止 AI 代码泛滥的前端项目护栏》</title><link>https://channel.meo-ai.com/posts/705</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/705</guid><pubDate>Thu, 10 Sep 2026 23:23:08 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《十个防止 AI 代码泛滥的前端项目护栏》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;br /&gt;&lt;a href=&quot;/search/result?q=%23%E5%89%8D%E7%AB%AF&quot; title=&quot;#前端&quot;&gt;#前端&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23TypeScript&quot; title=&quot;#TypeScript&quot;&gt;#TypeScript&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23React&quot; title=&quot;#React&quot;&gt;#React&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23AI%E7%BC%96%E7%A8%8B&quot; title=&quot;#AI编程&quot;&gt;#AI编程&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F&quot; title=&quot;#代码质量&quot;&gt;#代码质量&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23ESLint&quot; title=&quot;#ESLint&quot;&gt;#ESLint&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8B%E8%AF%95%E7%AD%96%E7%95%A5&quot; title=&quot;#测试策略&quot;&gt;#测试策略&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23CI_CD&quot; title=&quot;#CI_CD&quot;&gt;#CI_CD&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E5%AE%A1%E6%9F%A5&quot; title=&quot;#代码审查&quot;&gt;#代码审查&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%B7%A5%E7%A8%8B%E5%AE%9E%E8%B7%B5&quot; title=&quot;#工程实践&quot;&gt;#工程实践&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：&lt;br /&gt;&lt;br /&gt;本文针对 AI 生成代码速度远超人类审查能力的前端项目，提供了一套实用的十项防护清单。核心思路是通过自动化工具链（类型系统、Linter、变异测试、CI 门禁）在代码合并前拦截机械性错误，而非依赖人工逐行审查。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;&lt;br /&gt;1. &lt;b&gt;用 OpenAPI 契约替代手写类型&lt;/b&gt;：通过 Hey API 等工具从 OpenAPI 规范直接生成 TypeScript 类型、客户端和 Zod 校验，避免 AI 臆造不存在的 API 字段（如 &lt;code&gt;user.fullName&lt;/code&gt;），让编译器在构建期就报错。&lt;br /&gt;&lt;br /&gt;2. &lt;b&gt;开启严格 TypeScript 配置&lt;/b&gt;：启用 &lt;code&gt;noUncheckedIndexedAccess&lt;/code&gt; 等严格标志，让数组索引访问返回 &lt;code&gt;T | undefined&lt;/code&gt;，迫使代码显式处理边界情况，减少 AI 常见的&quot;想当然&quot;代码。&lt;br /&gt;&lt;br /&gt;3. &lt;b&gt;把 Linter 当作行为过滤器&lt;/b&gt;：使用 SonarJS、react-you-might-not-need-an-effect、vitest/playwright 插件、jsx-a11y 等 ESLint 插件，自动拦截认知复杂度过高、不必要的 Effect、可访问性违规等问题。&lt;br /&gt;&lt;br /&gt;4. &lt;b&gt;设定架构层边界&lt;/b&gt;：使用 eslint-plugin-boundaries 或 dependency-cruiser 强制实施分层架构（如 UI 层不得直接访问 API 层），防止 AI 生成的代码逐渐退化为&quot;GitHub 平均水平&quot;的混乱结构。&lt;br /&gt;&lt;br /&gt;5. &lt;b&gt;将重复出现的错误转化为自定义 Linter 规则&lt;/b&gt;：当同一种 bug 第二次出现时，立即编写自定义 ESLint 规则禁止该模式。例如禁止在服务层函数中使用 &lt;code&gt;Math.round&lt;/code&gt; 和 &lt;code&gt;toFixed&lt;/code&gt;，避免双重取整导致的薪资计算错误。&lt;br /&gt;&lt;br /&gt;6. &lt;b&gt;把规则直接喂给 AI 模型&lt;/b&gt;：通过项目规则文件（如 &lt;code&gt;.cursor/rules&lt;/code&gt;、&lt;code&gt;CLAUDE.md&lt;/code&gt;）或技能文件（如 react-doctor），将项目约定、架构决策和禁止模式直接提供给 AI，让模型在生成代码时就遵循规范。&lt;br /&gt;&lt;br /&gt;7. &lt;b&gt;用变异测试验证测试有效性&lt;/b&gt;：使用 Stryker 故意破坏代码（翻转运算符、反转条件、交换返回值），检查现有测试是否能捕获这些变异。存活的变异体通常暴露&quot;只测形状不测内容&quot;的无效测试。一个项目约 4,700 个变异体在 6 分钟内完成扫描。&lt;br /&gt;&lt;br /&gt;8. &lt;b&gt;用 Knip 清理死代码&lt;/b&gt;：Knip 可以检测未使用的文件、导出和依赖，配合自定义可达性脚本填补其盲区，防止 AI 生成大量&quot;以防万一&quot;却无人调用的冗余代码。&lt;br /&gt;&lt;br /&gt;9. &lt;b&gt;用 jscpd 检测重复代码&lt;/b&gt;：AI 倾向于在不同地方生成几乎相同的逻辑，jscpd 能发现这些重复，提示抽象机会或错误的复制粘贴。&lt;br /&gt;&lt;br /&gt;10. &lt;b&gt;将所有检查强制设为 CI 门禁&lt;/b&gt;：上述所有工具（类型检查、Lint、测试、变异测试、重复检测）必须作为 CI 的强制通过项，而非可选建议，确保 AI 生成的代码无法绕过质量关卡。&lt;br /&gt;&lt;br /&gt;11. &lt;b&gt;成本与局限&lt;/b&gt;：这些护栏会产生噪音（误报）、规则过时和新人上手摩擦等成本，建议按&quot;类型 → Lint → 测试 → CI&quot;的顺序渐进式推行。同时需注意，这些检查只能捕获机械性错误，无法识别糟糕的品味或错误的抽象。&lt;br /&gt;&lt;br /&gt;URL：&lt;br /&gt;&lt;a href=&quot;https://evilmartians.com/chronicles/ten-anti-ai-slop-moves-for-frontend-projects-going-faster-than-humans-can-review&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://evilmartians.com/chronicles/ten-anti-ai-slop-moves-for-frontend-projects-going-faster-than-humans-can-review&quot;&gt;https://evilmartians.com/chronicles/ten-anti-ai-slop-moves-for-frontend-projects-going-faster-than-humans-can-review&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://evilmartians.com/chronicles/ten-anti-ai-slop-moves-for-frontend-projects-going-faster-than-humans-can-review&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Ten checks that catch what AI-written frontend code hides: contract codegen, boundary linting, mutation testing, and dead-code detectors.&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;evilmartians.com&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;10 anti-AI slop moves for frontend projects going faster than humans can review—Martian Chronicles, Evil Martians’ team blog&quot; src=&quot;/static/https://cdn4.telesco.pe/file/M8U_Fe7M2gHOVcQM8XPpszalMyQIXRzmCokcCm_4dgcjkvIzQMlUYvsgmehUQC-NXCJGc3I8VY2eVIBkKPAVZkYiGTqLga5hRE0vlrIEN-NkyQMSO8-2Jvw2KDqQbQreg_haZqG_9bJF5WftGhdMmwjZOuCvSjmydEd5cT5fncbj22jwHNKyE0bKDJsBv9lYte-NCz1-Luv1TDht4195efFJApkQ1lPvOF_LBJz_mw8fvv9SPSbysOMKWZ8GCcH5JGEb56pCMV7ioa2QMiq3Xu84zYM95pDo-s18Pce77OetyKD2n7Yn8M6J_CVFGam6c__TEJncp_jGmxQsYu7KLQ.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;10 anti-AI slop moves for frontend projects going faster than humans can review—Martian Chronicles, Evil Martians’ team blog&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;Ten checks that catch what AI-written frontend code hides: contract codegen, boundary linting, mutation testing, and dead-code detectors.&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《5 个实用的 npx 辅助工具》</title><link>https://channel.meo-ai.com/posts/691</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/691</guid><pubDate>Sat, 15 Aug 2026 12:45:43 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《5 个实用的 npx 辅助工具》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;br /&gt;&lt;a href=&quot;/search/result?q=%23Web%E5%BC%80%E5%8F%91&quot; title=&quot;#Web开发&quot;&gt;#Web开发&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23NodeJs&quot; title=&quot;#NodeJs&quot;&gt;#NodeJs&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%B7%A5%E5%85%B7&quot; title=&quot;#命令行工具&quot;&gt;#命令行工具&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Npx&quot; title=&quot;#Npx&quot;&gt;#Npx&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%8C%96&quot; title=&quot;#前端工程化&quot;&gt;#前端工程化&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F&quot; title=&quot;#代码质量&quot;&gt;#代码质量&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Markdown&quot; title=&quot;#Markdown&quot;&gt;#Markdown&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%9B%BE%E7%89%87%E4%BC%98%E5%8C%96&quot; title=&quot;#图片优化&quot;&gt;#图片优化&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BE%9D%E8%B5%96%E7%AE%A1%E7%90%86&quot; title=&quot;#依赖管理&quot;&gt;#依赖管理&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%8B%BC%E5%86%99%E6%A3%80%E6%9F%A5&quot; title=&quot;#拼写检查&quot;&gt;#拼写检查&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;1. cspell：一个拼写检查器，适合快速排查拼写错误，建议搭配配置文件使用自定义白名单，运行方式如 &lt;code&gt;npx cspell **/*.md&lt;/code&gt;&lt;br /&gt;2. markdown-link-check：专门检查 Markdown 文件中的链接是否有效，能帮助防止链接失效，推荐配合配置文件使用&lt;br /&gt;3. image-guard：作者自己开发的工具，用于自动化近无损图片压缩，也适合在命令行中快速压缩图片，运行 &lt;code&gt;npx image-guard&lt;/code&gt; 即可&lt;br /&gt;4. npm-check-updates：快速检查 &lt;code&gt;package.json&lt;/code&gt; 中的依赖是否有更新版本，适合在新仓库工作或手动处理依赖更新时使用&lt;br /&gt;5. knip：功能比 npm-check-updates 更广，还能检查未使用的文件和导出，但文件和导出检查可能会有误报，运行 &lt;code&gt;npx knip&lt;/code&gt; 即可&lt;br /&gt;&lt;br /&gt;URL：&lt;a href=&quot;https://meiert.com/blog/5-npx-helpers/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://meiert.com/blog/5-npx-helpers/&quot;&gt;https://meiert.com/blog/5-npx-helpers/&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://meiert.com/blog/5-npx-helpers&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Joy on the command line.&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;Jens Oliver Meiert&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;5 Useful npx Helpers&quot; src=&quot;/static/https://cdn4.telesco.pe/file/VowQpiSoIknIA-ta7NiVkMYhMJhcw9LECn5TcPwNYHnVYMuWmyjt_-ASs8o7FOVaHPlk8EwV9lPmP7OBkGVhuVESVWuJCYYPyIol8FgvYtZ-nP4hy8LeNyGLpL8Xd-lXhv4l39_T7w162qp706-Yw5zP6VBUuSNL1GB5ir4u1JF3dO6umj20ZEVmfCWiUF8UbHsET-B-W3U6O8KpIimdDFgKd6CJApDVrrzpwg45aReTGaVyXH99duX316hv0MS4wmhzAvffd38QqsPA7e3zWANASg9oQcQ_Q1DIu_-EZ8vEZeSTsnezEBmH-4TFvwV2RacOvDbiLE6H2HIjKB1McA.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;5 Useful npx Helpers&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;Joy on the command line.&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《现代工程价值观：AI 时代的效率与品味》</title><link>https://channel.meo-ai.com/posts/660</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/660</guid><pubDate>Fri, 12 Jun 2026 01:47:25 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《现代工程价值观：AI 时代的效率与品味》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;a href=&quot;/search/result?q=%23%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B&quot; title=&quot;#软件工程&quot;&gt;#软件工程&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23AI%E7%BC%96%E7%A8%8B&quot; title=&quot;#AI编程&quot;&gt;#AI编程&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E5%AE%A1%E6%9F%A5&quot; title=&quot;#代码审查&quot;&gt;#代码审查&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%9B%A2%E9%98%9F%E7%AE%A1%E7%90%86&quot; title=&quot;#团队管理&quot;&gt;#团队管理&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%8A%80%E6%9C%AF%E6%A0%88&quot; title=&quot;#技术栈&quot;&gt;#技术栈&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%BC%80%E5%8F%91%E8%80%85%E4%BD%93%E9%AA%8C&quot; title=&quot;#开发者体验&quot;&gt;#开发者体验&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%B7%A5%E7%A8%8B%E7%AE%A1%E7%90%86&quot; title=&quot;#工程管理&quot;&gt;#工程管理&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：&lt;br /&gt;作者 Christoph Nakazawa（cpojer）分享了他近半年完全依赖 AI 编码代理完成多个项目的实战经验，指出编程已从&quot;手写代码&quot;转向&quot;指挥系统生成代码&quot;。文章提炼了 AI 时代仍至关重要的五大工程价值观：强所有权、品味至上、严格约束与快速反馈、代码库即上下文、掌控技术栈，并强调管理需更技术化。作者用数据证明效率提升 3 倍，认为未来瓶颈不再是写代码，而是判断力与品味。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;1. **AI 编码已成常态**：作者过去数月多个项目（Vite+、fate、Codiff、Athena Crisis 等）90%-100% 由 AI 编写，代码质量甚至超越手写，且能在几分钟内完成过去数周的工作&lt;br /&gt;2. **Codex CLI 是最佳搭档**：使用 GPT 5.5 high 配合 Codex CLI，配合&quot;先写失败测试再修复&quot;的策略，能极大提高一次性正确率；多项目并行时建议每个项目独立窗口，利用空间记忆提升效率&lt;br /&gt;3. **强所有权比代码更重要**：AI 放大了&quot;懂行&quot;与&quot;不懂行&quot;的差距，小团队（2-3 人）+ 清晰边界 + 独立仓库比大团队协作更高效，审查应聚焦对齐而非代码细节争论&lt;br /&gt;4. **品味是防&quot;垃圾&quot;泛滥的护城河**：AI 能全天候生成大量平庸代码，工程师的核心价值转向判断&quot;什么值得做&quot;，团队应花更多时间思考方向而非盲目堆功能&lt;br /&gt;5. **严格约束 = 速度**：把代码规范、自动化测试、快速验证等&quot;护栏&quot;做得越严，AI 迭代越快（1 分钟 vs 60 分钟的差距）；工具必须支持增量检查，避免随代码量增长而变慢&lt;br /&gt;6. **代码库即唯一上下文**：将设计文档、产品行为、决策记录全部沉淀在仓库内，让 AI 和人类都能快速理解；代码越简洁、越易读，AI 修复和迭代越高效&lt;br /&gt;7. **自研技术栈重新划算**：过去依赖第三方库是因为手写代码慢，现在 AI 降低了自研成本，掌控核心依赖能避免被外部框架绑架，获得完全的产品体验控制权&lt;br /&gt;8. **保留选择权（Option Value）**：任何架构改动都应保留未来大幅调整的可能性，AI 虽让重构变快，但把自己逼进死胡同依然难以脱身&lt;br /&gt;9. **管理必须更技术化**：执行成本降低后，管理者不能只做方向把控，必须保持领域 expertise，能亲自改代码、做技术决策，&quot;技术型管理&quot;（Tech Lead Management）将成为主流&lt;br /&gt;10. **效率数据惊人**：近 30 天日均提交 770 次、修改 15k 行代码，是两年前的 3 倍；过去手写巅峰一天 1200 行，现在 AI 辅助可达 10 倍且质量更高&lt;br /&gt;&lt;br /&gt;URL：&lt;br /&gt;&lt;a href=&quot;https://cpojer.net/posts/modern-engineering-values&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://cpojer.net/posts/modern-engineering-values&quot;&gt;https://cpojer.net/posts/modern-engineering-values&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://cpojer.net/posts/modern-engineering-values&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Modern engineering values.&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;cpojer.net&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;Modern Engineering Values&quot; src=&quot;/static/https://cdn4.telesco.pe/file/QweQSg_0hDrvvz2zXk-R-Ju-75cWc1HOdlKdeNp7Zb_GfqU6PR38V0YJ4u3jG6pGyyYo1fQxxQjKwDy47W5iTzD-tL1G16rw_JVFhjxmYQZ2meOFMRKxpxSADw8IvwtKcB8cVca2RXu9VvGQfbczjSRppl_NlJRt3WTmCAD6ejYmZyD8kmbxyshlGP35-xCATRJJdTsJtjExYXp7S6L_AkCKFBmmuLBSZAvmaCer349QQyD9RoJ1LawETQuW4n7tkbDEwv4xyCi5HbNP1fVJyp9aHNxIv1IHnnQkRoHosSIBqARiCMpk0CRGIpkxTkDZJKogKKkR7LiTcBimtujlEA.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;Modern Engineering Values&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;Modern engineering values.&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《TypeScript 每个人都该知道的实用技巧》</title><link>https://channel.meo-ai.com/posts/657</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/657</guid><pubDate>Sat, 06 Jun 2026 12:23:20 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《TypeScript 每个人都该知道的实用技巧》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;a href=&quot;/search/result?q=%23TypeScript&quot; title=&quot;#TypeScript&quot;&gt;#TypeScript&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91&quot; title=&quot;#前端开发&quot;&gt;#前端开发&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F&quot; title=&quot;#代码质量&quot;&gt;#代码质量&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：&lt;br /&gt;&lt;br /&gt;这是一份精心整理的 TypeScript 实战模式合集，涵盖 15 个核心技巧，从基础类型安全到高级类型体操，帮助开发者写出更安全、更可维护、更愉悦的代码。每条建议都配有简洁示例，强调&quot;类型安全不等于运行时安全&quot;这一关键认知，适合各阶段 TS 开发者查漏补缺。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;&lt;br /&gt;1. 用 &lt;code&gt;unknown&lt;/code&gt; 替代 &lt;code&gt;any&lt;/code&gt;：强制做类型校验，守住类型安全的第一道防线，防止类型泄漏&lt;br /&gt;2. 让类型推断为你工作：减少不必要的显式注解，避免类型拓宽和维护负担，代码更简洁&lt;br /&gt;3. 用 &lt;code&gt;satisfies&lt;/code&gt; 代替 &lt;code&gt;as&lt;/code&gt;：既验证类型兼容性，又保留具体推断，比强制断言更安全&lt;br /&gt;4. 从值推导类型：用 &lt;code&gt;as const&lt;/code&gt; + &lt;code&gt;typeof&lt;/code&gt; 让运行时和编译时保持同步，告别手动维护两份定义&lt;br /&gt;5. 用可辨识联合建模不可能状态：用 &lt;code&gt;status&lt;/code&gt; 标签区分状态，比松散的可选属性对象更可靠、更易扩展&lt;br /&gt;6. 用 &lt;code&gt;never&lt;/code&gt; 做穷尽检查：在 switch 的 default 分支里赋值 &lt;code&gt;never&lt;/code&gt;，让未来漏改直接变成编译错误&lt;br /&gt;7. 配置和常量用 &lt;code&gt;as const&lt;/code&gt;：把对象属性收窄为字面量类型，比如 &lt;code&gt;&quot;dark&quot;&lt;/code&gt; 而不是宽泛的 &lt;code&gt;string&lt;/code&gt;&lt;br /&gt;8. 用类型谓语做可复用的收窄：把运行时检查写成 &lt;code&gt;value is User&lt;/code&gt; 形式，让编译器理解你的守卫逻辑&lt;br /&gt;9. 从现有类型构建新类型：掌握 &lt;code&gt;Pick&lt;/code&gt;、&lt;code&gt;Omit&lt;/code&gt;、&lt;code&gt;Partial&lt;/code&gt; 等工具类型，用变换思维代替重复定义&lt;br /&gt;10. 运行时校验外部数据：TypeScript 不验证 API 响应，配合 Zod 等库在边界做运行时校验&lt;br /&gt;11. 多数场景避免 &lt;code&gt;enum&lt;/code&gt;：字面量联合类型通常更易重构、更易序列化、运行时行为更可控&lt;br /&gt;12. 优先使用可推断的泛型：好的 API 设计让用户无需手动传泛型参数，靠上下文自动推断&lt;br /&gt;13. 开启严格编译选项：&lt;code&gt;strict&lt;/code&gt;、&lt;code&gt;noUncheckedIndexedAccess&lt;/code&gt; 等标志是 TS 真正发挥价值的地方&lt;br /&gt;14. 学习模板字面量类型：用 `` &lt;code&gt;/api/${string}&lt;/code&gt; `` 这类模式约束路由、事件名、CSS 工具类等字符串&lt;br /&gt;15. 类型安全 ≠ 运行时安全：TS 提升正确性，但不替代校验、不保证架构、不消除运行时错误&lt;br /&gt;&lt;br /&gt;URL：&lt;a href=&quot;https://github.com/AllThingsSmitty/typescript-tips-everyone-should-know&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://github.com/AllThingsSmitty/typescript-tips-everyone-should-know&quot;&gt;https://github.com/AllThingsSmitty/typescript-tips-everyone-should-know&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://github.com/AllThingsSmitty/typescript-tips-everyone-should-know&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Practical TypeScript patterns for writing safer, more maintainable code. 🗃 - AllThingsSmitty/typescript-tips-everyone-should-know&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;GitHub&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;GitHub - AllThingsSmitty/typescript-tips-everyone-should-know: Practical TypeScript patterns for writing safer, more maintainable…&quot; src=&quot;/static/https://cdn4.telesco.pe/file/LErS1D_aC9DZOQ0dcYdTeEnseY55QWY3nTnnFt8v1kb_Z13PIUXkoctCIWZ8w5uw3mlXJSWn7SOoDDpfFTsOWiVX6gsPjPHPgxPKG0H8lySaUXDldcK4f_GaY-oKz8BMi9Kzbp0RON47d9LsUk-r1GmM8YmSIWd6pUNeGZbr8jKWs-RfYKy0vz6Ap25dzaKQl7V9PdI9MAX9fLJ1eHbMerRTlPbbiSUlFRHtGwqTUpReIyT_zur0HouriuOKPSSgvOAQhSldKAmcqEW7XzMR7Ip03hGXjwhEiRynO3knk4hb7wMBRoOEWhvR8GwKyZ2UfIyzqEkhLCorAptNg3WuSg.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;GitHub - AllThingsSmitty/typescript-tips-everyone-should-know: Practical TypeScript patterns for writing safer, more maintainable…&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;Practical TypeScript patterns for writing safer, more maintainable code. &lt;i class=&quot;emoji&quot; style=&quot;background-image:url(&apos;//telegram.org/img/emoji/40/F09F9783.png&apos;)&quot;&gt;&lt;b&gt;🗃&lt;/b&gt;&lt;/i&gt; - AllThingsSmitty/typescript-tips-everyone-should-know&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《AI编码代理生产级工程技能集》</title><link>https://channel.meo-ai.com/posts/612</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/612</guid><pubDate>Sun, 26 Apr 2026 09:39:26 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《AI编码代理生产级工程技能集》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;a href=&quot;/search/result?q=%23AI%E8%BE%85%E5%8A%A9%E7%BC%96%E7%A8%8B&quot; title=&quot;#AI辅助编程&quot;&gt;#AI辅助编程&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%BC%80%E5%8F%91%E5%B7%A5%E5%85%B7&quot; title=&quot;#开发工具&quot;&gt;#开发工具&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23AI_Agent&quot; title=&quot;#AI_Agent&quot;&gt;#AI_Agent&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%B7%A5%E7%A8%8B%E8%A7%84%E8%8C%83&quot; title=&quot;#工程规范&quot;&gt;#工程规范&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23ClaudeCode&quot; title=&quot;#ClaudeCode&quot;&gt;#ClaudeCode&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Cursor&quot; title=&quot;#Cursor&quot;&gt;#Cursor&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E5%AE%A1%E6%9F%A5&quot; title=&quot;#代码审查&quot;&gt;#代码审查&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%B5%8B%E8%AF%95%E9%A9%B1%E5%8A%A8%E5%BC%80%E5%8F%91&quot; title=&quot;#测试驱动开发&quot;&gt;#测试驱动开发&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23CI_CD&quot; title=&quot;#CI_CD&quot;&gt;#CI_CD&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：&lt;br /&gt;这是一个为AI编码代理（如Claude Code、Cursor、GitHub Copilot等）设计的生产级工程技能仓库，由Addy Osmani维护。它将资深工程师在真实项目中的工作流、质量门禁和最佳实践编码为20个结构化技能，覆盖从需求定义到上线发布的完整开发生命周期，让AI代理在每次编码时都能保持一致的专业水准，避免走&quot;最短路径&quot;而跳过测试、审查等关键环节。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;- 六阶段开发流水线：从Define（定义需求）→ Plan（拆解任务）→ Build（增量编码）→ Verify（验证测试）→ Review（质量门禁）→ Ship（安全发布），像工厂流水线一样规范AI的每一步动作&lt;br /&gt;- 7个斜杠命令即开即用：&lt;code&gt;/spec&lt;/code&gt;写需求文档、&lt;code&gt;/build&lt;/code&gt;增量开发、&lt;code&gt;/test&lt;/code&gt;跑测试、&lt;code&gt;/review&lt;/code&gt;代码审查……输入命令就能自动激活对应的技能组合，非常顺手&lt;br /&gt;- 20个实战技能全覆盖：从API设计、前端工程、TDD测试驱动，到性能优化、安全加固、Git工作流、CI/CD自动化，每个技能都自带步骤清单、验证标准和&quot;反找借口&quot;表格（比如AI想跳过测试时，会被技能里的反驳论据怼回去&lt;i class=&quot;emoji&quot;&gt;&lt;b&gt;😄&lt;/b&gt;&lt;/i&gt;）&lt;br /&gt;- 多工具无缝兼容：Claude Code一键插件安装，Cursor复制到rules目录，Gemini CLI、Windsurf、GitHub Copilot、Kiro等主流AI编程工具都能直接用，技能就是纯Markdown，通吃所有支持系统提示词的代理&lt;br /&gt;- Google工程文化落地：融入了Hyrum定律、Beyonce规则、测试金字塔、Chesterton围栏等Google实战智慧，不是泛泛而谈的理论，而是嵌入到每一步工作流中的可执行标准&lt;br /&gt;&lt;br /&gt;文章URL：&lt;a href=&quot;https://github.com/addyosmani/agent-skills&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://github.com/addyosmani/agent-skills&quot;&gt;https://github.com/addyosmani/agent-skills&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://github.com/addyosmani/agent-skills&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Production-grade engineering skills for AI coding agents. - addyosmani/agent-skills&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;GitHub&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;GitHub - addyosmani/agent-skills: Production-grade engineering skills for AI coding agents.&quot; src=&quot;/static/https://cdn4.telesco.pe/file/WHNfK72X7uIvl7HomZ1N3nJ3eC-hgi7SQJGFZSACWGt_T7b5NaLB3xeF4ysK3mRr7Y-xKHpIiEOTs4i_choatyBczlf8yAaU-0WLVirv-aSPwi7vv43bGlC3Rpbq8gmiEpCqqwNVf2v25zMlvAr-CfF8cry-_sSxsiRuyofQ5QtYw2hN-PZn5xZ71Bo1OyNcJdRhjsjeq5riOSV-16rYuYi9iay3xO4IqdEZwGhzk_dzQVwL1iHTE3vyExw12iuD-Bv2W6iVwjHHrq2vCdvqWOalJOfW5sxeh4aDNtBFgJn79d5JU9POVq3DCxzPg5RljayWYNpuw_xlblCg_5XGiA.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;GitHub - addyosmani/agent-skills: Production-grade engineering skills for AI coding agents.&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;Production-grade engineering skills for AI coding agents. - addyosmani/agent-skills&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《基于Andrej Karpathy观察的Claude Code行为优化指南》</title><link>https://channel.meo-ai.com/posts/604</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/604</guid><pubDate>Mon, 20 Apr 2026 01:29:14 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《基于Andrej Karpathy观察的Claude Code行为优化指南》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;a href=&quot;/search/result?q=%23AI%E8%BE%85%E5%8A%A9%E7%BC%96%E7%A8%8B&quot; title=&quot;#AI辅助编程&quot;&gt;#AI辅助编程&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23ClaudeCode&quot; title=&quot;#ClaudeCode&quot;&gt;#ClaudeCode&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23LLM%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5&quot; title=&quot;#LLM最佳实践&quot;&gt;#LLM最佳实践&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F&quot; title=&quot;#代码质量&quot;&gt;#代码质量&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结：该项目将Andrej Karpathy对LLM编程缺陷的观察转化为可落地的CLAUDE.md规范文件，通过&quot;编码前思考、极简优先、精准修改、目标驱动&quot;四大原则，系统性解决AI助手常见的过度假设、过度工程化和无关修改等问题，帮助开发者获得更精准、简洁、可控的AI编程辅助体验。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;- 问题诊断：LLM常犯的错误包括擅自假设却不验证、过度复杂化代码、擅自修改无关代码等，Karpathy一针见血地指出了这些痛点&lt;br /&gt;- 编码前思考原则：不确定时要主动提问而非猜测，有歧义时呈现多种解读，该拒绝时要敢于说&quot;这样更简单&quot;&lt;br /&gt;- 极简优先原则：只做被明确要求的功能，不为单用场景造抽象，不把200行代码写成50行就算过关&lt;br /&gt;- 精准修改原则：只碰该碰的代码，不动&quot;看起来不顺眼&quot;的邻居代码，自己的烂摊子自己收拾，但别碰别人留下的&lt;br /&gt;- 目标驱动原则：把&quot;加个验证&quot;改成&quot;写测试让非法输入失败，再让它通过&quot;，给AI明确的验收标准，它会自己循环到达标&lt;br /&gt;- 使用方式：支持Claude Code插件一键安装，或下载CLAUDE.md文件到项目根目录，Cursor用户也有对应规则文件可用&lt;br /&gt;- 取舍提醒：这套规范偏向谨慎而非速度，简单改错别字不必上全套，但复杂任务能帮你避开返工噩梦&lt;br /&gt;&lt;br /&gt;文章URL：&lt;a href=&quot;https://github.com/forrestchang/andrej-karpathy-skills&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://github.com/forrestchang/andrej-karpathy-skills&quot;&gt;https://github.com/forrestchang/andrej-karpathy-skills&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://github.com/forrestchang/andrej-karpathy-skills&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;A single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy&apos;s observations on LLM coding pitfalls. - multica-ai/andrej-karpathy-skills&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;GitHub&lt;/div&gt;
  
  &lt;div class=&quot;link_preview_title&quot;&gt;GitHub - multica-ai/andrej-karpathy-skills: A single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy&apos;s…&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;A single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy&apos;s observations on LLM coding pitfalls. - multica-ai/andrej-karpathy-skills&lt;/div&gt;
&lt;/a&gt;</content:encoded></item><item><title>《从写代码到管 Agent：斯坦福首门 AI 软件开发课的启示》</title><link>https://channel.meo-ai.com/posts/570</link><guid isPermaLink="true">https://channel.meo-ai.com/posts/570</guid><pubDate>Mon, 02 Mar 2026 08:48:45 GMT</pubDate><content:encoded>&lt;span class=&quot;post-title-source&quot;&gt;《从写代码到管 Agent：斯坦福首门 AI 软件开发课的启示》&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;标签：&lt;a href=&quot;/search/result?q=%23AI&quot; title=&quot;#AI&quot;&gt;#AI&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Agent&quot; title=&quot;#Agent&quot;&gt;#Agent&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B&quot; title=&quot;#软件工程&quot;&gt;#软件工程&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%96%AF%E5%9D%A6%E7%A6%8F&quot; title=&quot;#斯坦福&quot;&gt;#斯坦福&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%81%8C%E4%B8%9A%E5%8F%91%E5%B1%95&quot; title=&quot;#职业发展&quot;&gt;#职业发展&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BA%BA%E6%9C%BA%E5%8D%8F%E4%BD%9C&quot; title=&quot;#人机协作&quot;&gt;#人机协作&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E4%BB%A3%E7%A0%81%E8%B4%A8%E9%87%8F&quot; title=&quot;#代码质量&quot;&gt;#代码质量&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;总结&lt;br /&gt;&lt;br /&gt;本文是对斯坦福讲师 Mihail Eric 访谈的解读，他是全美首门 AI 原生软件开发课程 CS146S 的负责人。文章分析了初级开发者面临的&quot;三重风暴&quot;（裁员潮、毕业生激增、AI 替代压力），提出 AI 时代工程师的核心竞争力已从写代码转向&quot;管理 Agent&quot;——即编排多个 AI Agent 完成复杂任务的能力。同时强调 Agent 友好的代码库需要充分的测试覆盖、一致的文档和清晰的设计模式，这些本质上也是对人友好的工程实践。文章还指出资深开发者往往因路径依赖抗拒 AI 工具，而初级工程师的&quot;无知无畏&quot;反而成为快速适应新范式的优势。&lt;br /&gt;&lt;br /&gt;文章要点：&lt;br /&gt;&lt;br /&gt;- **初级开发者的三重困境**：COVID 后企业裁员 20-30%、CS 毕业生十年翻倍、雇主倾向&quot;少招人+AI&quot;策略，叠加导致新人求职难度激增&lt;br /&gt;- **Agent 编排是顶级技能**：能同时管理多个 Agent 的工程师属于顶尖 0.1%，但应从单个 Agent 开始逐步增加，避免盲目追求数量&lt;br /&gt;- **上下文切换是核心挑战**：管理多 Agent 需要频繁切换注意力并记住各任务进度，这与管理人类团队的能力高度相似&lt;br /&gt;- **Agent 友好代码库三要素**：充分的测试覆盖（作为显式合约）、README 与代码一致性、统一的设计模式，Agent 会在错误基础上快速复合错误&lt;br /&gt;- **品味决定软件质量**：功能性软件与卓越软件的分界在于&quot;最后一公里&quot;的打磨，顶尖工程师在发现可能性时加速而非完成任务即停止&lt;br /&gt;- **初级工程师的独特优势**：没有历史包袱，学习 AI 工具更快；&quot;无知无畏&quot;的特质使其敢于挑战行业难题，这是创业所需的完美品质&lt;br /&gt;- **避免过度工程化陷阱**：AI 让构建变得太容易，可能导致造出精美但无人需要的产品，需先验证需求再动手开发&lt;br /&gt;&lt;br /&gt;文章URL：&lt;a href=&quot;https://baoyu.io/blog/2026-02-27/from-writing-code-to-managing-agents&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://baoyu.io/blog/2026-02-27/from-writing-code-to-managing-agents&quot;&gt;https://baoyu.io/blog/2026-02-27/from-writing-code-to-managing-agents&lt;/a&gt;&lt;a class=&quot;tgme_widget_message_link_preview&quot; href=&quot;https://baoyu.io/blog/2026-02-27/from-writing-code-to-managing-agents&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;斯坦福首门 AI 软件开发课讲师 Mihail Eric 谈初级开发者的三重困境、多 Agent 编排的真正难点、Agent 友好代码库的标准，以及为什么初级工程师的&apos;无知无畏&apos;在 AI 时代反而是超能力。&quot;&gt;
  
  &lt;div class=&quot;link_preview_site_name accent_color&quot;&gt;baoyu.io&lt;/div&gt;
  &lt;img class=&quot;link_preview_image&quot; alt=&quot;从写代码到管 Agent：斯坦福首门 AI 软件开发课的讲师说，大多数工程师还没准备好&quot; src=&quot;/static/https://cdn4.telesco.pe/file/Qedcuvlj6-6V0EG7Ccej2fGwNGPSkYbNp-gMlnpYkKzxT8KzEo5071vepsWtaPLTpm3zhcmDPYP_qR2NOZBzcsgdUQ7EJr4M7RsfX59cMjjZ1ACQjRpCXMHREEh7rB-jUp7pnBWSy6eTC4ahfchkfHBHu0GVVucQepgx_MT3IgB2rf4eT-dgzXBUsRafZWtbUKtn9Zr4a8ZXeERKeEBOSHE0zjHVj7F2gOhg4p7mQECwv1aTuXIBp3ZltOBnUWDop49YqzIsI1r5A2ZN9DveYpgcyIAtiXjE_afhnS2aQ7yz2_A1wSogCOC42hdStVgyAwDj0j_Ec1L8Tm4LFF9OjA.jpg&quot; width=&quot;1200&quot; height=&quot;630&quot; loading=&quot;eager&quot; /&gt;
  &lt;div class=&quot;link_preview_title&quot;&gt;从写代码到管 Agent：斯坦福首门 AI 软件开发课的讲师说，大多数工程师还没准备好&lt;/div&gt;
  &lt;div class=&quot;link_preview_description&quot;&gt;斯坦福首门 AI 软件开发课讲师 Mihail Eric 谈初级开发者的三重困境、多 Agent 编排的真正难点、Agent 友好代码库的标准，以及为什么初级工程师的&apos;无知无畏&apos;在 AI 时代反而是超能力。&lt;/div&gt;
&lt;/a&gt;</content:encoded></item></channel></rss>