<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>既往不恋</title>
    <link>https://deusyu.app/</link>
    
    <image>
      <url>https://deusyu.app/img/favicon3.PNG</url>
      <title>既往不恋</title>
      <link>https://deusyu.app/</link>
    </image>
    
    <atom:link href="https://deusyu.app/feed.xml" rel="self" type="application/rss+xml"/>
    
    <description>feedId:68151213587131392+userId:66377220103030784</description>
    <description>Beauty will save the world.</description>
    <pubDate>Tue, 14 Apr 2026 21:18:00 GMT</pubDate>
    <generator>http://hexo.io/</generator>
    
    <item>
      <title>Harness Engineering 驭缰工程：AI 时代的编程范式转移</title>
      <link>https://deusyu.app/posts/ai-harness-engineering/</link>
      <guid>https://deusyu.app/posts/ai-harness-engineering/</guid>
      <pubDate>Tue, 14 Apr 2026 01:36:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="两个月没更新，我去研究了一个-AI-工程的新范式"><a href="#两个月没更新，我去研究了一个-AI-工程的新范式" class="headerlink" title="两个月没更新，我去研究了一个 AI 工程的新范式"></a>两个月没更新，我去研究了一个 AI 工程的新范式</h1><p>两个月没写东西了。上一篇还在聊 Claude Cowork 的体验，这篇直接跳到了一个更大的问题：<strong>AI 写代码已经这么猛了，工程师到底该干什么？</strong></p><p>这不是我的原创问题。2026 年 2 月，OpenAI 发了一篇博文：3 个工程师，5 个月，从空仓库到 100 万行代码，零手写。他们给这套方法论起了个名字叫 Harness Engineering——驭缰工程。核心主张是：工程师不再写代码，而是设计环境、约束和反馈回路，让 AI 智能体在这个”缰绳”里可靠地干活。</p><p>这个概念击中了我。不是因为它多新——lint、CI、代码规范我们一直在做。而是因为它把这些零散的实践提升到了<strong>范式</strong>的高度：你的产出不再是代码，而是让 AI 产出好代码的系统。</p><p>然后我发现了一个有趣的现象：OpenAI 发完之后的两个月里，又出现了十几篇文章讨论这件事——Fowler 站、Anthropic、LangChain、Stanford、GitHub，甚至有个人开发者写了万字复盘。每一篇都在 OpenAI 的乐观叙事上补了一块拼图。但没有人把这些拼图拼在一起看。</p><p>所以我花了两个月干了这件事。</p><hr><h2 id="这个项目长什么样"><a href="#这个项目长什么样" class="headerlink" title="这个项目长什么样"></a>这个项目长什么样</h2><p>一个 GitHub 仓库：<a href="https://github.com/deusyu/harness-engineering">harness-engineering</a>。</p><p>数字上看：</p><ul><li><strong>15 篇核心文章</strong>的深度阅读和结构化摘要</li><li><strong>11 篇翻译</strong>（含 2 篇学术论文，总计超过 5 万字）</li><li><strong>5 篇独立思考</strong>（不是读后感，是跨文章的交叉分析）</li><li><strong>1 篇综合分析</strong>——15 篇文章拼在一起之后才能看到的那个故事</li></ul><p>但数字不是重点。重点是这个项目本身就是一次 Harness Engineering 的实践。</p><p>仓库的组织方式用了 OpenAI 提出的”渐进式披露”——每个目录有自己的 <a href="http://agents.md/">AGENTS.md</a> 导航文件。翻译工作用了术语对照表（40+ 条）作为”自定义 linter”，五轮流水线作为反馈飞轮，长论文拆块并行翻译作为多智能体协调。<strong>约束 + 反馈 + 分治 + 持久化——我用 Harness Engineering 的方法研究了 Harness Engineering。</strong></p><hr><h2 id="两个月下来，我的三个核心判断"><a href="#两个月下来，我的三个核心判断" class="headerlink" title="两个月下来，我的三个核心判断"></a>两个月下来，我的三个核心判断</h2><p>读了 15 篇文章、翻了 11 篇、写了 5 篇思考之后，我对 Harness Engineering 的态度从”这是新东西”变成了”这是一场未完成的革命”。三个判断：</p><h3 id="1-它不是一个统一的方法论，而是四个学派在争论"><a href="#1-它不是一个统一的方法论，而是四个学派在争论" class="headerlink" title="1. 它不是一个统一的方法论，而是四个学派在争论"></a>1. 它不是一个统一的方法论，而是四个学派在争论</h3><p>OpenAI 说多加约束（约束派），Böckeler 说设计控制论闭环（控制论派），Anthropic 说让 Harness 本身可替换（架构派），一个叫 YDD 的博主用数据证明你加速的可能根本不是瓶颈（怀疑派）。</p><p>四个学派都有数据支撑，但作用在完全不同的层次上。约束派告诉你今天该做什么，控制论派告诉你怎么系统地做，架构派告诉你怎么让做的东西活过下一次模型升级，怀疑派告诉你什么时候该停下来想想方向对不对。</p><p><strong>同时持有四个视角，比选哪个重要得多。</strong></p><h3 id="2-评估是整个体系的阿喀琉斯之踵"><a href="#2-评估是整个体系的阿喀琉斯之踵" class="headerlink" title="2. 评估是整个体系的阿喀琉斯之踵"></a>2. 评估是整个体系的阿喀琉斯之踵</h3><p>所有文章都在讨论怎么引导和约束 AI——更好的 <a href="http://agents.md/">AGENTS.md</a>、更严的 linter、更巧的架构。但它们集体回避了一个问题：<strong>你怎么知道 AI 做的事情是对的？</strong></p><p>不是”代码能编译”，不是”测试通过了”，而是——它真的解决了用户的问题吗？</p><p>一个叫 lalitm 的开发者给了最痛的数据点：500 个测试全部通过，但设计是完全错误的，最终全部推倒重来。测试验证的是”AI 认为的正确”，不是”用户需要的正确”。</p><p>Böckeler 在 Fowler 站上最诚实地命名了这个问题：行为验证是房间里的大象。但命名不等于解决。15 篇文章读完，没有一篇给出令人信服的答案。</p><h3 id="3-人类不会消失，但角色在重新定义"><a href="#3-人类不会消失，但角色在重新定义" class="headerlink" title="3. 人类不会消失，但角色在重新定义"></a>3. 人类不会消失，但角色在重新定义</h3><p>从 OpenAI 到 Anthropic 的最新文章，人类的角色在渐次消解：从”设计整个环境”到”写几行提示词”到”文章里压根不提人类”。</p><p>但 lalitm 的经验给了一个有力的反例。他经历了两种模式：vibe-coding 月（把设计和实现都委派给 AI，结果全部推倒重来）和 Harness 月（自己做设计、AI 做实现、持续审查，项目成功发布）。</p><p>他的顿悟值得所有用 AI 编码的人记住：<strong>AI 是力量倍增器，但倍增的是你的判断力——如果你没有判断力，它倍增的是你的错误。</strong></p><hr><h2 id="综合分析：15-篇文章不会告诉你的那个故事"><a href="#综合分析：15-篇文章不会告诉你的那个故事" class="headerlink" title="综合分析：15 篇文章不会告诉你的那个故事"></a>综合分析：15 篇文章不会告诉你的那个故事</h2><p>以上只是我思考的切面。完整的分析在这里：</p><p><a href="https://github.com/deusyu/harness-engineering/blob/main/works/harness-engineering-chinese-interpretation.md"><strong>驭缰工程的隐秘叙事：15 篇文章不会告诉你的那个故事</strong></a></p><p>这篇万字长文不是摘要集。它讲的是 15 篇文章拼在一起之后才能看到的叙事——从”约束模型”到”与模型共演化”的范式转移，以及这场转移中暴露出的结构性裂缝。</p><p>如果你在用 AI 写代码（大概率你已经在了），这些裂缝决定了你在什么条件下可以信任这个范式，在什么条件下必须保持警觉。</p><hr><h2 id="给不同读者的入口"><a href="#给不同读者的入口" class="headerlink" title="给不同读者的入口"></a>给不同读者的入口</h2><p>如果你是<strong>个人开发者</strong>，最值得看的是我的思考：<a href="https://github.com/deusyu/harness-engineering/blob/main/thinking/harness-for-solo-developers.md">个人开发者的 Harness Engineering</a>——OpenAI 的六大概念哪些对你有用，哪些是噪音。</p><p>如果你关心<strong>评估问题</strong>：<a href="https://github.com/deusyu/harness-engineering/blob/main/thinking/evaluation-elephant-in-the-room.md">评估是房间里的大象</a>——所有人都在讨论怎么约束 AI，没人讨论怎么验证 AI。</p><p>如果你是 <strong>Java&#x2F;Spring 开发者</strong>：<a href="https://github.com/deusyu/harness-engineering/blob/main/thinking/harnessability-and-java.md">可驾驭性与 Java 的结构性优势</a>——为什么强类型语言在 AI 时代可能比动态语言更有优势。</p><p>如果你什么都不想看，只记住一句话：<strong>先记录 AI 犯的错，再写规则阻止它。反馈飞轮比完美计划更有价值。</strong></p><hr><p>仓库在这里：<a href="https://github.com/deusyu/harness-engineering">github.com&#x2F;deusyu&#x2F;harness-engineering</a></p><p>欢迎 Star，欢迎讨论。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/">人工智能</category>
      
      <category domain="https://deusyu.app/categories/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/">软件工程</category>
      
      
      <category domain="https://deusyu.app/tags/%E9%A9%AD%E7%BC%B0%E5%B7%A5%E7%A8%8B/">驭缰工程</category>
      
      <category domain="https://deusyu.app/tags/%E7%BC%96%E7%A8%8B%E8%8C%83%E5%BC%8F/">编程范式</category>
      
      <category domain="https://deusyu.app/tags/AI%E6%99%BA%E8%83%BD%E4%BD%93/">AI智能体</category>
      
      <category domain="https://deusyu.app/tags/%E8%A1%8C%E4%B8%BA%E9%AA%8C%E8%AF%81/">行为验证</category>
      
      <category domain="https://deusyu.app/tags/AI%E8%BE%85%E5%8A%A9%E5%BC%80%E5%8F%91/">AI辅助开发</category>
      
      <category domain="https://deusyu.app/tags/%E8%AE%A4%E7%9F%A5%E5%8D%87%E7%BA%A7/">认知升级</category>
      
      <category domain="https://deusyu.app/tags/Harness-Engineering/">Harness Engineering</category>
      
      
      <comments>https://deusyu.app/posts/ai-harness-engineering/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>两部电影的观影随笔</title>
      <link>https://deusyu.app/posts/cinema-time-existence/</link>
      <guid>https://deusyu.app/posts/cinema-time-existence/</guid>
      <pubDate>Fri, 13 Feb 2026 09:10:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="两部电影的观影随笔"><a href="#两部电影的观影随笔" class="headerlink" title="两部电影的观影随笔"></a>两部电影的观影随笔</h1><p>昨天和前天分别看了两部老片：1982 年的《银翼杀手》和《本杰明·巴顿奇事》。记录一些想法。</p><hr><h2 id="《银翼杀手》（1982-年版）"><a href="#《银翼杀手》（1982-年版）" class="headerlink" title="《银翼杀手》（1982 年版）"></a>《银翼杀手》（1982 年版）</h2><p>特效放在当年应该很震撼，但用现在的眼光看，说实话比较一般。不过特效不是重点。</p><p>让我印象最深的是结尾。那个复制人明明打得过人类特工，全程基本是碾压，但最后他没有杀人，就那么坐在雨里，正常地死了。</p><p>其实整部片子讨论的是一个伦理问题：一个被造出来的生命，他会恐惧，会渴望活下去，也有尊严。那他算不算人？这条线到底画在哪？</p><p><img src="https://r2.deusyu.app/45d29ec1-4620-421e-bccf-8aacba91505d.png"></p><hr><h2 id="《本杰明·巴顿奇事》"><a href="#《本杰明·巴顿奇事》" class="headerlink" title="《本杰明·巴顿奇事》"></a>《本杰明·巴顿奇事》</h2><p>说到底还是个爱情故事。一个越活越年轻的人，和一个正常衰老的人，在四十多岁的时候交汇了，生了女儿。然后本杰明越来越小，他知道自己迟早会变成对方的负担，就选择了离开。最后女主老了，他变回婴儿，慢慢死去。</p><p>但最打动我的是片头那座逆时针的钟。</p><p>一个盲人钟表匠，儿子上战场死了。他就造了一座倒着走的时钟。他看不见这个世界，但他用自己唯一会的手艺，造了一个违反物理规则的东西，来表达一个很简单的愿望：希望时间能倒回去，希望儿子还活着。</p><p><img src="https://r2.deusyu.app/c7328e5a-7035-4ffb-b011-bc994f05584c.png.jpg"></p><p>你再想想本杰明的逆生长。时间确实倒转了，但没有带来任何救赎。钟表匠盼着倒流能把儿子带回来，可本杰明的一生证明了，就算时间真的倒着走，该失去的还是会失去。</p><p>两个人的生命像两条相向的线，只在中间那一小段重合。前面和后面，都在离彼此越来越远。他走，不是因为不爱。是因为他太清楚接下来会发生什么。</p><p><img src="https://r2.deusyu.app/441015ed-646d-4914-84be-5731cde85e94.png.jpg"></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%94%B5%E5%BD%B1%E8%AF%84%E8%AE%BA/">电影评论</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%9C%AC%E6%9D%B0%E6%98%8E%C2%B7%E5%B7%B4%E9%A1%BF%E5%A5%87%E4%BA%8B/">本杰明·巴顿奇事</category>
      
      <category domain="https://deusyu.app/tags/%E9%93%B6%E7%BF%BC%E6%9D%80%E6%89%8B/">银翼杀手</category>
      
      
      <comments>https://deusyu.app/posts/cinema-time-existence/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>简单说下我最近用 Claude Cowork 的体验</title>
      <link>https://deusyu.app/posts/claude-cowork-trial/</link>
      <guid>https://deusyu.app/posts/claude-cowork-trial/</guid>
      <pubDate>Thu, 12 Feb 2026 09:20:00 GMT</pubDate>
      
      <description>Claude Cowork 看似走“本地文件为主+Connectors+MCP+Project”的路线，但真实使用却暴露出不少断点。你会遇到代理无法接管导致的403、Project只写本地session不做云端实时同步，以及本地Skills 难以调用的生态割裂。本文帮你快速定位这些摩擦点，判断它目前适合的使用场景与替代策略。</description>
      
      
      
      <content:encoded><![CDATA[<p>简单说下我最近用 Claude Cowork 的体验。</p><p>我理解它的设计思路是：以本地文件为核心，再接一堆 Connectors（比如 Notion、Google Drive、Google 日历），加上一些基于 MCP 的插件服务，最后配合它自家的 Project 功能来串起来。</p><p><img src="https://r2.deusyu.app/51cbbf99-af2c-4861-8ab5-4a609b961415.png.jpg"></p><p>但实际用下来坑还不少。虽然它现在只是实验性的预览版，主要问题大概有这几个：</p><p>1）<strong>代理接管问题</strong></p><p>如果本地代理工具没开 TUN 模式，它访问 microsoft365.mcp.claude.com 的请求就接管不到，结果就是功能用不了，还会直接报 403。</p><p>2）<strong>Project 的同步机制</strong></p><p>改 Project 的时候，它只是在本地写了一个 session，并不会把本地文件夹里的修改实时同步到云端线上的 Project 中的文件。实际用起来挺别扭的。</p><p>3）<strong>技能集成度偏低</strong></p><p>它没法很好地调用我本地装的 Claude Skills，目前基本只能用内置的一些 plugin，体验很割裂。</p><p><img src="https://r2.deusyu.app/21efe8a7-daff-4150-8825-0d7c27254422.png.jpg"></p><p>总的来说，虽然这个能力是在 Claude 的 macOS App 里做出来的，但跟整个 Claude 生态的衔接还挺弱的。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      
      <category domain="https://deusyu.app/tags/Claude-Cowork/">Claude Cowork</category>
      
      
      <comments>https://deusyu.app/posts/claude-cowork-trial/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>从《诡秘》这部伟大的作品中，看权力制衡的艺术</title>
      <link>https://deusyu.app/posts/solomon-empire-checks-balances/</link>
      <guid>https://deusyu.app/posts/solomon-empire-checks-balances/</guid>
      <pubDate>Tue, 27 Jan 2026 09:20:00 GMT</pubDate>
      
      <description>所罗门第一帝国为何总被读成“失败者传记”，却能在神灵格局几乎无法稳定的时代撑近三百年？
文章用权力结构拆解所一：政教分仓、贵族独占、第三方阀门与对外拖延联盟的系统工程。
你会看清它成败不在个人强弱，而在核心绑定的上限与仇恨负债如何决定帝国的宿命。</description>
      
      
      
      <content:encoded><![CDATA[<p><img src="https://r2.deusyu.app/51b94a7f-c477-44da-8c98-e148f6b68560.webp"></p><p>所罗门第一帝国是第四纪最容易被误读的一段历史。</p><p>很多读者提到所罗门，第一反应往往是负面的：黑皇帝含金量下降，死了两次，像是被历史嘲笑的失败者。但如果只用“成败”去看他，会错过更核心的东西：在一个几乎不可能稳定的神灵格局里，他用极高水平的政治设计，把帝国撑到了将近三百年。</p><p>这篇文章试图用“权力结构”而不是“人物好恶”来还原所罗门第一帝国。你会发现，这段历史的主线并不是谁更强，而是谁更会做制衡，谁的结构更稳，谁背后的核心又决定了结构的上限。</p><h2 id="一、先把名词摆正：帝国与王国不是装饰词"><a href="#一、先把名词摆正：帝国与王国不是装饰词" class="headerlink" title="一、先把名词摆正：帝国与王国不是装饰词"></a>一、先把名词摆正：帝国与王国不是装饰词</h2><p>《诡秘》的西幻背景大量借鉴现实欧洲，而欧洲政治史有一个很重要的特点：国家层级极其细，名号不是面子，是制度的边界。</p><p>“帝国”与“皇帝”在概念层次上共生共灭。称帝意味着统治结构的升级，也意味着下属政治实体在名义上要降一层，通常就是王国。类似地，公爵与侯爵对应的应当是公国与侯国。前缀不是花活，它决定的是政治秩序如何识别彼此。</p><p>把这个前提放在这里，是为了后面讨论所罗门帝国贵族体系时，不把“贵族爵位”“政治归属”“宗教归属”混成一锅。</p><h2 id="二、所罗门帝国的真正核心不是所罗门"><a href="#二、所罗门帝国的真正核心不是所罗门" class="headerlink" title="二、所罗门帝国的真正核心不是所罗门"></a>二、所罗门帝国的真正核心不是所罗门</h2><p>书接纷争年代。所罗门在真实造物主的扶持之下，以“黑皇帝”之姿登顶，建立所罗门帝国。</p><p>但这个帝国的核心从来不是“奉旨成神的皇帝”，而是“发布旨意的人”。也就是说，帝国真正的核心是真实造物主，而所罗门更像是被推到台前的执行者与统治节点。</p><p>这会立刻引出第一层结构性矛盾。</p><p>黑皇帝途径天然侧重统治。所罗门一旦成神，就不可避免要与真实造物主在权力层面发生摩擦。更麻烦的是，真实造物主并非“正常的神灵”，他处在一种既不干净也不稳定的状态。所罗门如果夺权夺得太多，真实造物主会不会像处理“黑皇帝”（位格）那样处理所罗门本人，这并不是一个可以轻易排除的风险。</p><p>换句话说，所罗门面对的不是一个可预测的盟友，而是一个强大但不稳定的核心。你要依赖他建国，又不能让他感觉你要取代他。</p><p>在这种前提下，所罗门在“信仰占有”上表现出非常强的分寸感。</p><p>游记里莫贝特说过“所有生灵都臣服于皇帝陛下”。这更像是政治意义上的臣服，比如公民承认帝国国籍，承认皇权合法性。它不是信仰层面的独占。原因很简单：帝国内部本就存在真实造物主教会，所罗门不可能也不敢把全体信仰都攥在自己手里。</p><p>真正体现独占性的，是另一句：“所有贵族都信奉皇帝陛下。”</p><p>贵族体系是帝国治理秩序的一部分，是统治仪式的一部分。这个体系必须独占性地隶属于黑皇帝，否则统治就无法闭合。真实造物主扶持黑皇帝，就必须接受这一点，或者说必须付出这一代价。</p><p>这就是所罗门的第一层手法：他不碰那些会触发核心神经的高压线，但在必须独占的秩序上寸步不让。</p><p><img src="https://r2.deusyu.app/2f9c45a1-e361-4db2-b9d3-beade3bce271.webp"></p><h2 id="三、帝国内部的权力分配：政教分离不是口号，是分仓"><a href="#三、帝国内部的权力分配：政教分离不是口号，是分仓" class="headerlink" title="三、帝国内部的权力分配：政教分离不是口号，是分仓"></a>三、帝国内部的权力分配：政教分离不是口号，是分仓</h2><p>所罗门帝国的大贵族是第四纪讨论度最高的话题之一。它的顶层贵族结构可以概括为“三大四小”。</p><p>三大，是三大公爵家族：亚伯拉罕、查拉图、索罗亚斯德。他们的共同点是至少掌握一份序列 1 特性。</p><p>四小，是没有公爵爵位的强势贵族：图铎、特伦索斯特、奥古斯都、卡斯蒂亚。他们最强者只是序列 2 天使。</p><p>到这里还只是“贵族地图”。真正的关键在于另一组人：梅迪奇与乌洛琉斯。</p><p>他们在所罗门帝国的地位与帝国公爵大致相当，但他们并没有帝国爵位。这不是细节，这是制度。</p><p>它意味着所罗门帝国的政教分离做得非常彻底：教会属于真实造物主，贵族属于所罗门。双方互相承认彼此的存在与地位，但权力体系分仓存放，互不吞并。</p><p>这样一来，所罗门帝国的底层逻辑就清晰了：</p><p>真实造物主带班底扶持所罗门建立帝国。所罗门建立帝国后承认真实造物主教会，并给予教会系统中不归他管辖的人极高的社会地位。于是形成一种“上帝的归上帝，凯撒的归凯撒”的结构。</p><p>区别在于，所罗门不是装作信神，他是真的信。于是皇帝与神之间的权力摩擦被叙事包装成内部矛盾，而不是公开的争权夺利。这就是标准的君权神授模型在《诡秘》语境下的真实用法。</p><h2 id="四、伯特利·亚伯拉罕：最特殊的第三方阀门"><a href="#四、伯特利·亚伯拉罕：最特殊的第三方阀门" class="headerlink" title="四、伯特利·亚伯拉罕：最特殊的第三方阀门"></a>四、伯特利·亚伯拉罕：最特殊的第三方阀门</h2><p>贵族体系里还有一个更精妙的设计点：伯特利·亚伯拉罕。</p><p>伯特利是远古太阳神钦点的选民，宗教出身很重。但他没有加入真实造物主教会，而是成为帝国大贵族。这件事背后很耐人寻味。</p><p>因为宗教出身的伯特利，如果站进真实造物主教会，会让教会系统更强，会让真实造物主更强，也会让所罗门更危险。而伯特利自己又并不像信仰远古太阳神那样去信仰真实造物主，他在真实造物主面前会天然尴尬。</p><p>所罗门的处理方式非常高明：他把伯特利从宗教口拉到了贵族口。你不想进教会，那就来当贵族，帮我管理国家。</p><p>但这里还有第二层分寸感。伯特利不信真实造物主，那更不应该去信仰“信真实造物主的所罗门”。于是伯特利虽然在贵族体系里，但他的实际位置更像是游离于政教之外的第三方势力。</p><p>这个第三方的存在带来三个收益。</p><p>第一，算派系时不必强行把伯特利归进所罗门阵营。所罗门可控力量更清晰。</p><p>第二，真实造物主教会那边依然有梅迪奇与乌洛琉斯撑门面，真实造物主作为“大哥”的地位稳固，所罗门作为“老二”的位置也更体面。</p><p>第三，伯特利不必屈居任何人的麾下。三方都能接受，系统就稳。</p><p>这就是所罗门的第二层手法：他不是把所有力量都收编，而是刻意保留第三极，让整体权力结构更难发生零和吞并。</p><p><img src="https://r2.deusyu.app/594a6be5-e94a-4c9f-9eca-e8aa2275eb64.webp"></p><h2 id="五、帝国外部：所罗门没有统治大陆的硬实力，他靠拖延联盟续命"><a href="#五、帝国外部：所罗门没有统治大陆的硬实力，他靠拖延联盟续命" class="headerlink" title="五、帝国外部：所罗门没有统治大陆的硬实力，他靠拖延联盟续命"></a>五、帝国外部：所罗门没有统治大陆的硬实力，他靠拖延联盟续命</h2><p>如果说内部是权力分仓，那么外部就是更残酷的现实：所罗门帝国其实并没有统治北大陆的硬实力。</p><p>北大陆的神灵不是只有真实造物主与所罗门，还有六位真神：列奥德罗、奥赛库斯、赫拉伯根、阿曼尼西斯、巴德海尔、欧米贝拉（莉莉丝代打）。</p><p>从实力角度出发，真实造物主与所罗门最多与他们中的三位相抗衡。说得更直白：所罗门帝国不具备“强压全大陆”的能力。</p><p>那帝国国祚为什么能延续将近三百年。</p><p>答案只能来自结构。六神之间存在一种奇妙状态：他们隐隐联合，但又无法稳定合作。</p><p>关于“索伊时期”六位真神的状态，有两种描述方式。</p><p>一种来自莫贝特的叙述：六神中的五位与他人存在对峙关系，因此无法稳定合作。</p><p>另一种来自设定问答：六神抱团取暖，组建联盟。</p><p>这两种表述并不矛盾。本质是一件事：他们想联盟，但联盟内部始终存在对峙与不信任。</p><p>这种不信任来自第二块亵渎石板泄露的“旧日信息”。旧日意味着吞噬，意味着你我都有可能成为彼此的食物。于是形成一种公开的默契：你想吃我，我也想吃你。</p><p>更细化看，六神内部还有更微妙的分层。</p><p>黑夜、战神、大地母神属于更早的一批真神，彼此更熟。</p><p>风暴、烈阳、智慧属于更晚的一批真神，背景更接近。</p><p>结果最尖锐的矛盾反而在这两批更熟悉的人内部。熟悉带来历史，历史带来债。</p><p>再加上大地母神明面上扮演欧米贝拉，她不得不倾向战神，但暗地里又与黑夜存在暗盟。于是她必须同时做两件事：公开帮助战神，暗地里拉扯黑夜。关系越复杂，联盟越难高效。</p><p>所罗门正确判断了这一点。他以世界为棋盘，以真神为棋子，把风白智与黑战地都纳入制衡体系中，持续延缓六神从“隐隐联合”走向“真正一体化联盟”的时间。</p><p>所以所罗门帝国的核心竞争力不是碾压，而是拖住。拖住就是赢。</p><p><img src="https://r2.deusyu.app/8191c35e-7d19-4a06-8bc5-9eff70933079.webp"></p><h2 id="六、收益最大者：萨林格尔，以及所一的致命弊端"><a href="#六、收益最大者：萨林格尔，以及所一的致命弊端" class="headerlink" title="六、收益最大者：萨林格尔，以及所一的致命弊端"></a>六、收益最大者：萨林格尔，以及所一的致命弊端</h2><p>所罗门的制衡艺术中，收益最大的是新晋死神萨林格尔。</p><p>无论是所罗门的放任，还是死神抓住所罗门与诸神博弈的空隙，总之死神非常果断地统一丰收平原与远古森林，建立拜朗王国，后续改王国为帝国，成为君临南大陆的冥皇。</p><p>死神作为真神，与真实造物主之间没有结构性仇恨。他既没有在第三纪被远古太阳神追杀近千年，也没有风白智那种背叛行为。于是死神反而成为所罗门帝国难得的盟友候选。</p><p>而这恰恰指出了所一时期最致命的弊端。</p><p>所罗门帝国真正的核心并非所罗门，而是真实造物主。作为当权者，真实造物主树敌过多。核心的仇恨负债决定了帝国的上限。</p><p>从读者视角看，你甚至会忍不住提出一个假设：如果所罗门帝国一开始不是放任死神去做制衡，而是主动去分化六神，结局会不会不同。</p><p>比如，在死神尚未成神时，如果真实造物主与所罗门把拉拢黑夜作为第一要务，莉莉丝就可能成为关键时刻背刺战神的盟友。再比如永暗之河在卡尔德隆，而卡尔德隆是亚伯拉罕发现的，亚伯拉罕又属于帝国势力。以此为筹码换取黑夜友谊，从策略上看很可能可行。</p><p>这样配置下，即使风白智与战神联合，再加上后续成神的死神，所罗门一方依然可能占据上风。</p><p>但问题在于，这条路需要核心愿意这么走。</p><p>所罗门说了不算，当家的是真实造物主。</p><h2 id="七、结局：成也真造，败也真造；以及所罗门的忠诚"><a href="#七、结局：成也真造，败也真造；以及所罗门的忠诚" class="headerlink" title="七、结局：成也真造，败也真造；以及所罗门的忠诚"></a>七、结局：成也真造，败也真造；以及所罗门的忠诚</h2><p>所以所罗门第一帝国可以用一句话概括。</p><p>成也真实造物主，败也真实造物主。</p><p>第四纪 396 年，真实造物主的仇恨压垮了六神心中的天平。六神摒弃成见，完成联盟。那个曾统治整个大陆的庞然大物，在顷刻间化为过眼云烟。</p><p>所罗门第一帝国 284 年的统治至此终结，图铎-特伦索斯特联合帝国登上历史舞台。</p><p>从策略角度看，所罗门最后其实还有一条翻盘之路。</p><p>既然六神联合归根结底是因为真实造物主，那么所罗门如果选择抛弃真实造物主，与六神联盟，图铎-特伦索斯特未必还能上台，所罗门帝国甚至可能更长久。</p><p>但所罗门没有这么做。</p><p>他以一种近乎极端的忠诚，放弃了自己的千秋万代，选择为真实造物主流尽最后一滴血。</p><p>这也是所一时期的真正悲剧感：你看见了结构的精密，看见了手法的高明，也看见了上限被核心绑定后注定坍塌的宿命。</p><p><img src="https://r2.deusyu.app/6384d87f-db92-4c20-af7d-86f042656e9b.webp"></p><h2 id="结语：第四纪的画风并不是乱，是复杂"><a href="#结语：第四纪的画风并不是乱，是复杂" class="headerlink" title="结语：第四纪的画风并不是乱，是复杂"></a>结语：第四纪的画风并不是乱，是复杂</h2><p>第四纪不是乌贼重点描述的时代，很多细节需要读者用有限设定去补完。但正因为设定空白较多，才更能让人用“权力结构”的眼光去理解历史。</p><p>所罗门不是一个只会被嘲笑的名字。对内，他完成了政教分离与第三方阀门的精细设计。对外，他把六神的矛盾编织成一张延缓联盟的网，硬生生把帝国撑到三百年边缘。</p><p>他输的不是“不会玩”，而是核心太不稳定，树敌太多，债太大。</p><p>这就是所罗门第一帝国的制衡艺术，也是它的宿命。</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><p><a href="https://www.bilibili.com/video/BV1NZ1MB1ErX/">https://www.bilibili.com/video/BV1NZ1MB1ErX/</a></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BB%84%E7%BB%87%E4%B8%8E%E5%88%B6%E5%BA%A6%E8%AE%BE%E8%AE%A1/">组织与制度设计</category>
      
      <category domain="https://deusyu.app/categories/%E7%BB%84%E7%BB%87%E4%B8%8E%E5%88%B6%E5%BA%A6%E8%AE%BE%E8%AE%A1/%E5%AE%97%E6%95%99%E4%B8%8E%E6%9D%83%E5%8A%9B/">宗教与权力</category>
      
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      <category domain="https://deusyu.app/tags/%E8%AF%A1%E7%A7%98%E4%B9%8B%E4%B8%BB/">诡秘之主</category>
      
      <category domain="https://deusyu.app/tags/%E6%9D%83%E5%8A%9B%E7%BB%93%E6%9E%84/">权力结构</category>
      
      <category domain="https://deusyu.app/tags/%E6%94%BF%E6%95%99%E5%88%86%E7%A6%BB/">政教分离</category>
      
      <category domain="https://deusyu.app/tags/%E8%81%94%E7%9B%9F%E4%B8%8D%E4%BF%A1%E4%BB%BB/">联盟不信任</category>
      
      
      <comments>https://deusyu.app/posts/solomon-empire-checks-balances/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>请立刻开始用语音输入：从“我很抵制”到“这是关键变量”</title>
      <link>https://deusyu.app/posts/voice-thought-throughput/</link>
      <guid>https://deusyu.app/posts/voice-thought-throughput/</guid>
      <pubDate>Sat, 13 Dec 2025 20:05:00 GMT</pubDate>
      
      <description>我也曾认为语音输入是偷懒，直到AI模型改变了规则。
本文记录了我如何打破键盘依赖，利用Whisper本地模型将语音变为“思维高速入口”。
这不只是工具的切换，更是提升思维吞吐率的关键变量。</description>
      
      
      
      <content:encoded><![CDATA[<p>我以前是抵制语音输入的。</p><p>原因很简单：<strong>它太像“没过脑子的流水账”</strong>。</p><p>敲键盘的时候，你会天然地停顿、删改、组织结构；而对着麦克风输出，很容易变成一串未经压缩的原始想法——混乱、跳跃、没逻辑。更早期的模型也接不住这种“毛坯输入”，你说一堆，它回一堆，观点也不够稳。</p><p>但从 <strong>O3 之后</strong>，我对语音输入的态度完全变了：</p><p><strong>语音输入不再是“偷懒”，而是提升思维吞吐率的关键工具。</strong></p><hr><h2 id="语音输入的核心优势：它的流速-≈-你的思维速度"><a href="#语音输入的核心优势：它的流速-≈-你的思维速度" class="headerlink" title="语音输入的核心优势：它的流速 ≈ 你的思维速度"></a><strong>语音输入的核心优势：它的流速 ≈ 你的思维速度</strong></h2><p>键盘输入有个天然瓶颈：手速。</p><p>你脑子里已经跑到“第二段结论”了，你的手还在敲“第一段铺垫”。</p><p>语音输入不一样。它的速度很接近思维流速。</p><p>你想法刚出来，就能顺势丢出去——这意味着你可以把更多“尚未成形但很有价值的洞见”先保存下来，再慢慢加工。</p><p>以前我担心：这样输入太粗糙。</p><p>现在我反而觉得：<strong>粗糙没关系，关键是先把高价值的“原矿”采出来。</strong></p><p>模型负责把它精炼成结构，你负责提供含金量。</p><hr><h2 id="我最近甚至接了个语音输入相关的商单（钱不多，但产品化挺对）"><a href="#我最近甚至接了个语音输入相关的商单（钱不多，但产品化挺对）" class="headerlink" title="我最近甚至接了个语音输入相关的商单（钱不多，但产品化挺对）"></a><strong>我最近甚至接了个语音输入相关的商单（钱不多，但产品化挺对）</strong></h2><p>我发现一个很现实的点：</p><p><strong>Whisper 这种开源模型，能力已经“够用到离谱”。</strong></p><p>尤其是我的场景：</p><ul><li>中英混输（经常一句中文夹英文名词）</li><li>偶尔夹一点日语</li><li>更在意“稳定好用”和“随手就能叫出来”，而不是论文指标</li></ul><p>Whisper（尤其是 <strong>Whisper Large V3 Turbo (Q8)</strong> 这种形态）基本能把我需求覆盖掉。</p><p>那为什么还需要“产品”？</p><p>因为“模型”是一块发动机，“产品化”是把发动机装进车里，让你真的能每天开。</p><hr><h2 id="模型能跑-≠-你会用：产品化真正值钱的是这几件事"><a href="#模型能跑-≠-你会用：产品化真正值钱的是这几件事" class="headerlink" title="模型能跑 ≠ 你会用：产品化真正值钱的是这几件事"></a><strong>模型能跑 ≠ 你会用：产品化真正值钱的是这几件事</strong></h2><p>你当然可以自己糊一个：</p><p>脚本、快捷键、录音、转写、粘贴……能用就行。</p><p>但一个好用的语音输入产品，真正的价值在于：</p><ol><li><strong>跨平台的稳定界面</strong>（Mac &#x2F; Windows &#x2F; Linux）</li><li><strong>快捷键随叫随到</strong>（像打开手电筒一样打开输入）</li><li><strong>本地模型&#x2F;额外模型的调度</strong>（你不用操心怎么跑得快）</li><li><strong>把“能用”做到“顺手”</strong>（这就是产品和玩具的区别）</li></ol><p>我自己在手机或 ChatGPT 客户端里用语音输入（在线 Whisper）也很好用，但它有硬伤：</p><ul><li>看网络质量（尤其是梯子&#x2F;VPN）</li><li>看响应时间（经常要等几秒）</li><li>在你最想“连续输出”的时候，它那几秒延迟会打断节奏</li></ul><hr><h2 id="本地语音输入：隐私、稳定、低延迟，但也有代价"><a href="#本地语音输入：隐私、稳定、低延迟，但也有代价" class="headerlink" title="本地语音输入：隐私、稳定、低延迟，但也有代价"></a><strong>本地语音输入：隐私、稳定、低延迟，但也有代价</strong></h2><p>本地跑的好处太明显了：</p><ul><li><strong>不联网</strong>：隐私直接拉满</li><li><strong>延迟更低</strong>：体验更像“键盘输入的替代”而不是“语音识别服务”</li><li><strong>不吃网络波动</strong>：你在地铁&#x2F;弱网&#x2F;开会间隙都能稳定用</li></ul><p>代价也存在：</p><ul><li>吃本地资源（内存&#x2F;CPU&#x2F;GPU，取决于你怎么部署）</li><li>需要优化到“够快、够省”，否则它会变成新的负担</li><li>模型选择受限：对我来说，<strong>其他模型中英混输不够稳</strong>，所以基本锁死 Whisper Large V3 Turbo (Q8)</li></ul><p>但总体结论是：</p><p><strong>对于“高频输入”的人，本地语音输入一旦顺手，性价比爆炸。</strong></p><hr><h2 id="我真正想要的下一代语音输入：它得有“记忆”"><a href="#我真正想要的下一代语音输入：它得有“记忆”" class="headerlink" title="我真正想要的下一代语音输入：它得有“记忆”"></a><strong>我真正想要的下一代语音输入：它得有“记忆”</strong></h2><p>我现在用的方案“够用”，但我脑子里已经开始畅想终极形态了。</p><p>因为语音输入最烦的一类问题，不是识别错一个字，而是识别错“你专属的词”：</p><p>比如：</p><ul><li>“姥爷”这种词（很多模型会误成“老爷”）</li><li>人名、产品名、你的常用术语</li><li>你自己的口头禅、你常提的项目&#x2F;地名&#x2F;缩写</li></ul><p>所以我理想的产品应该是：</p><h3 id="1）它在本地学习我的“专属词典”"><a href="#1）它在本地学习我的“专属词典”" class="headerlink" title="1）它在本地学习我的“专属词典”"></a><strong>1）它在本地学习我的“专属词典”</strong></h3><p>它不需要联网，不需要把数据上传。</p><p>它只要在本地做两件事就够了：</p><ul><li><strong>词频分析</strong>：我常说什么？</li><li><strong>纠错反馈</strong>：我每次改了哪里？我是在纠正哪个词？</li></ul><p>你注意，这里有个关键闭环：</p><blockquote><p>语音输入 → 你手动编辑 → 产品记录你编辑的位置与替换内容 → 下次优先纠正&#x2F;提示</p></blockquote><p>这才叫“记忆”。不是聊天机器人那种记忆，是输入法意义上的记忆。</p><h3 id="2）它像一个轻量-RAG：能检索、能二次确认"><a href="#2）它像一个轻量-RAG：能检索、能二次确认" class="headerlink" title="2）它像一个轻量 RAG：能检索、能二次确认"></a><strong>2）它像一个轻量 RAG：能检索、能二次确认</strong></h3><p>当它发现某个词存在歧义（姥爷&#x2F;老爷），它可以在你说完后做一个很轻的确认：</p><ul><li>“你刚才说的是：姥爷（外祖父）对吗？”</li><li>或者直接按你的历史习惯默认选择</li></ul><p>这会让语音输入真正从“识别”进化为“懂你”。</p><h3 id="3）它还能顺便当我的发音教练"><a href="#3）它还能顺便当我的发音教练" class="headerlink" title="3）它还能顺便当我的发音教练"></a><strong>3）它还能顺便当我的发音教练</strong></h3><p>我已经体验到一个很有趣的副作用：</p><p>Whisper 这种东西，真的能帮你纠正发音。</p><p>比如你英文里某个词总读歪，系统老识别成另一个词——你就会被迫去调整口型&#x2F;重音。</p><p>这是一种“被动训练”，但长期非常有效。</p><hr><h2 id="免费的终极形态很难有市场，但买断制可能行"><a href="#免费的终极形态很难有市场，但买断制可能行" class="headerlink" title="免费的终极形态很难有市场，但买断制可能行"></a><strong>免费的终极形态很难有市场，但买断制可能行</strong></h2><p>现实一点说：</p><p>如果一个语音输入产品把“本地模型 + 记忆 + 纠错闭环 + 跨平台体验”做得很好，它会非常值钱。</p><p>但它也很容易被大厂复制：</p><p>尤其是当大厂开始把本地模型能力铺到系统层（甚至直接做成 OS 级输入法）。</p><p>所以我更倾向的商业模式是：</p><ul><li><strong>买断制</strong>（一次买断，长期用）</li><li>可选增值：<strong>整合各家 API</strong>（OpenAI &#x2F; Google &#x2F; Anthropic…）<ul><li>让用户用更低的价格获得“可切换”的能力</li><li>你赚的是“调度与体验”，而不是“训练一个模型”</li></ul></li></ul><hr><h2 id="结尾：为什么我现在敢说“请立刻使用语音输入”"><a href="#结尾：为什么我现在敢说“请立刻使用语音输入”" class="headerlink" title="结尾：为什么我现在敢说“请立刻使用语音输入”"></a><strong>结尾：为什么我现在敢说“请立刻使用语音输入”</strong></h2><p>因为我终于确认了一件事：</p><blockquote><p>语音输入不是用来“替代键盘”的。<br>它是用来“捕捉你思维里那些来不及打出来的东西”的。</p></blockquote><p>在模型能力足够强之后，你不需要把输入打磨得像文章。</p><p>你只需要把“有价值的原矿”吐出来。</p><p>剩下的——结构、逻辑、提纲、润色——交给模型。</p><p><strong>从今天开始，把语音输入当成你的“思维高速入口”。</strong></p><p>你会发现自己产出的不是更多废话，而是更多可被加工的洞见。</p><blockquote><p>BTW：该篇也是使用语音输入后修改后完成</p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%94%9F%E4%BA%A7%E5%8A%9B/">生产力</category>
      
      <category domain="https://deusyu.app/categories/%E7%94%9F%E4%BA%A7%E5%8A%9B/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/">人工智能</category>
      
      
      <category domain="https://deusyu.app/tags/%E8%AE%A4%E7%9F%A5%E5%8D%87%E7%BA%A7/">认知升级</category>
      
      <category domain="https://deusyu.app/tags/%E8%AF%AD%E9%9F%B3%E8%BE%93%E5%85%A5/">语音输入</category>
      
      <category domain="https://deusyu.app/tags/%E6%80%9D%E7%BB%B4%E5%90%9E%E5%90%90%E7%8E%87/">思维吞吐率</category>
      
      <category domain="https://deusyu.app/tags/Whisper/">Whisper</category>
      
      <category domain="https://deusyu.app/tags/%E6%9C%AC%E5%9C%B0%E9%83%A8%E7%BD%B2/">本地部署</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%9B%E4%BD%9C%E5%BF%83%E6%B5%81/">创作心流</category>
      
      
      <comments>https://deusyu.app/posts/voice-thought-throughput/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>像希腊人一样战斗</title>
      <link>https://deusyu.app/posts/greek-challenger-agon/</link>
      <guid>https://deusyu.app/posts/greek-challenger-agon/</guid>
      <pubDate>Mon, 08 Dec 2025 07:56:00 GMT</pubDate>
      
      <description>当生活发给你一手烂牌，是躺平任嘲还是绝地反击？
通过赫拉克勒斯、奥德修斯等5种古希腊&quot;挑战者剧本&quot;，深度解析Agon(对抗)与Arete(卓越)的生存哲学。
在充满限制的现实中，帮你找到改写命运的勇气与厘清欲望的边界。</description>
      
      
      
      <content:encoded><![CDATA[<h1 id="古希腊人的挑战者叙事"><a href="#古希腊人的挑战者叙事" class="headerlink" title="古希腊人的挑战者叙事"></a>古希腊人的挑战者叙事</h1><p>如果要给古希腊人的人生观找一个关键词，那大概就是”挑战”。</p><p>在他们的语言里，有两个词经常被放在一起使用：</p><ul><li><strong>agon</strong>，指对抗、比赛、斗争；</li><li><strong>arete</strong>，指卓越、做到最好。</li></ul><p>对古希腊人来说，人不是靠出身、头衔被定义的，而是要在一次次 agon 中，打出自己的 arete。每打赢一局，就多一点荣耀，也多一点”我是谁”的确认。</p><p>他们写英雄，很少写”天生无敌”，写的都是：被逼上场、主动上场、甚至明知要挨打也要上场的挑战者。</p><hr><h2 id="一、赫拉克勒斯：被迫上路的挑战者"><a href="#一、赫拉克勒斯：被迫上路的挑战者" class="headerlink" title="一、赫拉克勒斯：被迫上路的挑战者"></a>一、赫拉克勒斯：被迫上路的挑战者</h2><p>赫拉克勒斯的故事，一开始并不光鲜。他被诅咒、犯下无法挽回的错误，为了赎罪，被要求完成十二项几乎不可能完成的任务：屠狮、斩蛇、清粪坑、夺战马、偷金苹果……</p><p>这些任务的设计，本身就带着一种”看你怎么输”的恶意：单凭蛮力不够用，体力、智谋、耐心、心理承受力，全都要一起上。</p><p>赫拉克勒斯做的是另一件事：</p><ul><li>打不过就换打法，</li><li>正面刚不了就想办法借力，</li><li>没人帮就自己找路子。</li></ul><p>每完成一项试炼，他就从”背锅人”向”英雄”靠近一点；十二项试炼完成，他从一个被命运操弄的人，变成被承认的半神。</p><p>赫拉克勒斯的故事，本质上是一套古希腊版的”挑战者剧本”：</p><blockquote><p>起点可以糟糕，局势可以极其不利，但只要你愿意一次次在恶意规则里打到极限，命运就会一点点改写。</p></blockquote><hr><h2 id="二、奥德修斯：脑子最清醒的挑战者"><a href="#二、奥德修斯：脑子最清醒的挑战者" class="headerlink" title="二、奥德修斯：脑子最清醒的挑战者"></a>二、奥德修斯：脑子最清醒的挑战者</h2><p>如果说赫拉克勒斯是”硬刚型挑战者”，那奥德修斯就是”智力型挑战者”。</p><p>在特洛伊战争中，奥德修斯不是最强壮的那个，却是最会动脑子的那个。他用木马计结束了长年僵持的战争，这一招本身就是对”正面硬拼规则”的挑战。</p><p>但真正考验他的是回家的路。</p><p>海上漂泊多年，他遇到女妖、巨人、神灵的诱惑与阻碍：</p><ul><li>有人给他永生，但代价是放弃回家；</li><li>有人让他沉溺在幻觉中，再也不用面对现实；</li><li>也有人直接要他的命。</li></ul><p>奥德修斯的挑战，不是打一场就赢，而是无数次在”屈服”和”坚持”之间作选择。</p><p>每遇到一个新局，他做的不是自怨自艾，而是冷静分析：这关的规则是什么？我有什么资源？怎样能活着通过？</p><p>他身上那种”再试一次”的劲头，让这个角色超越了时代：他不是只要胜利，他要的是，一次次在绝境中，用尽自己的智慧，保住继续前行的资格。</p><blockquote><p>不是只有挥拳的人才算挑战者，在高压之下仍能保持清醒、不断寻找出路的人，同样是。</p></blockquote><hr><h2 id="三、普罗米修斯、贝勒洛丰、伊卡洛斯：挑战的三个极端"><a href="#三、普罗米修斯、贝勒洛丰、伊卡洛斯：挑战的三个极端" class="headerlink" title="三、普罗米修斯、贝勒洛丰、伊卡洛斯：挑战的三个极端"></a>三、普罗米修斯、贝勒洛丰、伊卡洛斯：挑战的三个极端</h2><p>古希腊人一边歌颂挑战者，一边又很清楚地画出了挑战的边界。这种边界感，正是通过几类”走到极端的挑战”讲出来的。</p><h3 id="第一种极端：普罗米修斯式的挑战"><a href="#第一种极端：普罗米修斯式的挑战" class="headerlink" title="第一种极端：普罗米修斯式的挑战"></a>第一种极端：普罗米修斯式的挑战</h3><p>他明知道后果严重，仍然选择偷火给人类，去挑战宙斯的权威。</p><p>他不是冲动，也不是膨胀，而是清醒地知道自己在做什么：清楚边界，也清楚代价，但仍然选择为众人越界一次。</p><p>于是，他被锁在岩上，每天被啄噬内脏，惩罚可以说残酷到了极点。可后世记住他的方式却不是”狂妄者的下场”，而是”人类不向命运屈服的象征”。</p><p>对古希腊人来说，普罗米修斯代表的是<strong>挑战者的最高形态</strong>：不是为满足自己的欲望去挑战，而是为了替别人打开一种新的可能性，选择把代价自己扛。</p><h3 id="第二种极端：贝勒洛丰式的挑战"><a href="#第二种极端：贝勒洛丰式的挑战" class="headerlink" title="第二种极端：贝勒洛丰式的挑战"></a>第二种极端：贝勒洛丰式的挑战</h3><p>贝勒洛丰的前半生，也是标准英雄剧本：他杀怪、立功，得到王室尊敬，甚至拥有了天马。这部分都还是”正常挑战者”的叙事。</p><p>真正的问题出在后面：在一连串胜利之后，他开始相信自己已经强到可以骑着天马，直接飞到众神居住的奥林匹斯山。这时的挑战，不再是对命运、对不公、对困境的回应，而更像是对”自己有多强”的一次炫耀。</p><p>于是，他从天空被击落，从云端坠入尘埃，余生孤立而落魄。</p><p>这里的关键词才是 <strong>hubris</strong>：在胜利之后膨胀，忘记了边界。</p><h3 id="第三种极端：伊卡洛斯式的挑战"><a href="#第三种极端：伊卡洛斯式的挑战" class="headerlink" title="第三种极端：伊卡洛斯式的挑战"></a>第三种极端：伊卡洛斯式的挑战</h3><p>他不是为了荣耀，也不是为了谁，只是沉醉在飞翔的快感里。</p><p>明明被告诫不要飞得太高，他却一路靠近太阳：飞得越高，越觉得自己像神；直到翅膀上的蜡被晒化，整个人坠入大海。</p><p>这是另一种 <strong>hubris</strong>：不是胜利后的膨胀，而是在过程中的沉溺。他不是不知道风险，而是完全不愿意看见风险。</p><h3 id="三者的区分"><a href="#三者的区分" class="headerlink" title="三者的区分"></a>三者的区分</h3><p>普罗米修斯、贝勒洛丰、伊卡洛斯，并不是”三种 hubris”，而是”三种走到极端的挑战方式”：</p><ul><li><strong>普罗米修斯</strong>，是为众人越界的挑战者，是一种正面的极端；</li><li><strong>贝勒洛丰</strong>，是为荣耀越界直到迷失分寸，是胜利后膨胀的极端；</li><li><strong>伊卡洛斯</strong>，是为快感越界直到忘记底线，是过程里沉溺的极端。</li></ul><p>真正需要警惕的，是后两种：一个是赢了几次之后，把挑战当成炫耀；一个是挑战到一半，就只剩下自我陶醉。</p><p>而普罗米修斯式的挑战恰好相反，他提醒我们，挑战者也可以有非常高的形态：清楚边界，知道代价，为别人打开路，把后果全部承担在自己身上。</p><hr><h2 id="四、古希腊人如何看”挑战者”"><a href="#四、古希腊人如何看”挑战者”" class="headerlink" title="四、古希腊人如何看”挑战者”"></a>四、古希腊人如何看”挑战者”</h2><p>从这些故事里，可以看到古希腊人对”挑战者”的复杂理解。</p><p><strong>第一，他们相信真正的成长来自对抗。</strong></p><p>人要在 agon 中，才能证明自己的 arete：你可以有出色的血统、漂亮的头衔、优越的条件，但这些都只是起点。你真正是谁，要在一场场对抗中确认。</p><p><strong>第二，他们也承认挑战所带来的代价。</strong></p><p>挑战神权、挑战命运，不是爽文升级流，往往伴随痛苦、孤独、惩罚，甚至是悲剧结局。普罗米修斯如此，赫拉克勒斯也如此。但他们仍然反复讲这些故事，说明在他们心里，那种”明知有代价，仍然要试”的冲动，是值得敬重的。</p><p><strong>第三，他们同样警惕挑战者的失控。</strong></p><p>贝勒洛丰和伊卡洛斯，几乎被写成了”教科书式的反面示范”：前者提醒你，别在连胜之后忘了边界；后者提醒你，别在过程快感中失去清醒。</p><p>他们不只歌颂挑战一切的勇气，也在不断提醒：一旦忘记了挑战是为了什么，挑战本身就会变形，从改变命运，变成毁掉自己。</p><hr><h2 id="五、挑战者叙事，为什么直到今天还动人"><a href="#五、挑战者叙事，为什么直到今天还动人" class="headerlink" title="五、挑战者叙事，为什么直到今天还动人"></a>五、挑战者叙事，为什么直到今天还动人</h2><p>希腊的这些故事，跨越了几千年还在被引用，是因为它们讲的不是”神话时代”，而是一个始终没有过时的问题：</p><p><strong>当你处在一个不公平、不占优势、充满限制的局里，你要怎么办？</strong></p><p>有人接受设定，安于现状；有人选择逃避，不再尝试；还有一类人，会选择做挑战者：</p><ul><li>哪怕局面恶劣，也要再试一次；</li><li>哪怕看起来赢面很小，也要把自己的实力推到极限；</li><li>哪怕明知道会疼、会累，也要为自己、为他人，打开一点新的可能。</li></ul><p>赫拉克勒斯证明，挑战可以一点点改写命运；奥德修斯证明，在风浪中保持清醒，本身就是一种力量；普罗米修斯证明，最高级的挑战，是帮别人打开路，代价自己扛；贝勒洛丰和伊卡洛斯则用悲剧提醒我们：挑战需要勇气，也需要分寸。</p><p>但无论是赞歌还是警示，古希腊人都在用这些故事说同一句话：</p><blockquote><p>人不只是被动地活着，人有资格，也有责任，去选择自己站在哪里，是退在安全一侧，还是走到挑战的一边。</p></blockquote><p>所谓”挑战者叙事”，说到底，就是把生命理解为一次次对抗：对抗命运、对抗环境、对抗惰性、也对抗自己的恐惧。</p><p>而那些在关键时刻选择站出来的人，无论结局如何，都已经在这条长长的希腊故事里，占据了一个属于自己的位置。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%93%B2%E5%AD%A6/">哲学</category>
      
      <category domain="https://deusyu.app/categories/%E5%93%B2%E5%AD%A6/%E4%B8%AA%E4%BA%BA%E6%88%90%E9%95%BF/">个人成长</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%8F%A4%E5%B8%8C%E8%85%8A%E7%A5%9E%E8%AF%9D/">古希腊神话</category>
      
      <category domain="https://deusyu.app/tags/%E8%8B%B1%E9%9B%84%E4%B9%8B%E6%97%85/">英雄之旅</category>
      
      <category domain="https://deusyu.app/tags/%E9%80%86%E5%A2%83%E5%95%86/">逆境商</category>
      
      <category domain="https://deusyu.app/tags/Agon/">Agon</category>
      
      <category domain="https://deusyu.app/tags/Hubris/">Hubris</category>
      
      <category domain="https://deusyu.app/tags/%E5%91%BD%E8%BF%90%E6%8A%97%E4%BA%89/">命运抗争</category>
      
      <category domain="https://deusyu.app/tags/%E5%AD%98%E5%9C%A8%E4%B8%BB%E4%B9%89/">存在主义</category>
      
      
      <comments>https://deusyu.app/posts/greek-challenger-agon/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>上下文工程：AI-Native时代的软件研发新范式</title>
      <link>https://deusyu.app/posts/context-engineering-ai-native/</link>
      <guid>https://deusyu.app/posts/context-engineering-ai-native/</guid>
      <pubDate>Thu, 04 Dec 2025 19:51:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>这两年，大家都在说「用 AI 写代码」。</p><p>但我越来越确定一件事：</p><blockquote><p>真正有价值的，不是 AI 写了多少行代码，而是——你是不是在做 AI-Native 的软件工程。</p></blockquote><p>换句话说，不是“让 AI 帮忙写点函数”，</p><p>而是：<strong>把 AI 当成一个 24 小时在线的 Pair Programmer，参与整个工程流程</strong>——</p><p>需求、用例、API、TDD、实现、文档，一个环节都不落。</p><p>工程方法论本身不变，只是每一步后面，都悄悄多了一个 AI 通道。</p><hr><h2 id="一、工程步骤一个都不省，只是每步都有-AI"><a href="#一、工程步骤一个都不省，只是每步都有-AI" class="headerlink" title="一、工程步骤一个都不省，只是每步都有 AI"></a><strong>一、工程步骤一个都不省，只是每步都有 AI</strong></h2><p>先说底线：我不相信「无文档开发」「无测试开发」「AI 一把梭」。</p><p>我的流程还是那一套很“科班”的：</p><blockquote><p>需求确认 → 用例分析 → API &#x2F; CRD 设计 → 模块拆分 → TDD → 实现 → Code Review → 文档</p></blockquote><p>区别只是：</p><ul><li>需求分析不能省 → 用 AI 帮我梳理输入边界、找歧义</li><li>测试不能省 → 用 AI 帮我先写测试骨架</li><li>文档不能省 → 用 AI 把文档变成开发过程的副产物</li></ul><p><strong>AI 时代的编程，本质上是一场「代码通胀」与「价值通缩」的博弈。</strong></p><p><strong>人类负责守住价值的底线。</strong></p><hr><h2 id="二、人类做决策：最小必须原则（The-Principle-of-Minimum-Necessity）"><a href="#二、人类做决策：最小必须原则（The-Principle-of-Minimum-Necessity）" class="headerlink" title="二、人类做决策：最小必须原则（The Principle of Minimum Necessity）"></a><strong>二、人类做决策：最小必须原则（The Principle of Minimum Necessity）</strong></h2><p>我给自己画过一张粗暴的分工表。</p><p><strong>人类负责的：</strong></p><ul><li>做减法（熵减）：<blockquote><p>最小必须原则——如无必要，勿增实体。<br>哪怕 AI 一秒能给我堆出一套“看起来很高级”的微服务架构，如果一个单体能解决，我就只让它写单体。</p></blockquote></li><li>需求优先级、取舍</li><li>架构方案选择</li><li>边界用例补充</li><li>代码逻辑审核 &amp; 最终质量把关</li></ul><p><strong>AI 负责的：</strong></p><ul><li>方案草稿生成（接口、CRD、方案对比）</li><li>常规用例生成</li><li>代码骨架、样板逻辑</li><li>文档初稿、接入指南、测试指南</li></ul><p>一句话：</p><blockquote><p>人定边界，AI 填细节。</p></blockquote><p>AI 天生有“堆东西”的倾向，</p><p>人要做的是不断挥舞奥卡姆剃刀：</p><p><strong>删掉不必要的复杂度，让系统熵减。</strong></p><hr><h2 id="三、基于上下文工程的-Vibe-Coding"><a href="#三、基于上下文工程的-Vibe-Coding" class="headerlink" title="三、基于上下文工程的 Vibe Coding"></a><strong>三、基于上下文工程的 Vibe Coding</strong></h2><p>Andrej Karpathy 在今年年初提出了一个概念：<strong>Vibe Coding</strong></p><p>以前我们也算是“Pair Programming”，</p><p>只不过另一个伙伴叫 Google &#x2F; Stack Overflow，而且是个哑巴。</p><p>现在这个伙伴终于长了嘴，虽然话有点多，但好在真的能干活。</p><p><strong>Vibe Coding 的核心不是“边听歌边写代码”，而是：</strong></p><ul><li>人类尽量待在 Flow 状态里：<ul><li>想业务、抽象、模型、trade-off，而不是某个库的 API 写法</li></ul></li><li>AI 负责所有会打断 Flow 的机械活：<ul><li>查文档、改样板、迁一堆重复 if&#x2F;else、补注释、写初版文档</li></ul></li></ul><p>我的实际习惯是：</p><ol><li>用自然语言把需求 &#x2F; 设计 &#x2F;约束丢给 AI</li><li>让它帮我：<ul><li>生成用例矩阵</li><li>提几版 API &#x2F; CRD 设计</li><li>写一版测试骨架 &#x2F; 代码骨架</li></ul></li><li>我只做那 20% 必须自己负责的部分：选择、取舍、删减、收口。</li></ol><p>失败成本变得极低：</p><p><strong>想法 → 测试 → 骨架 → 跑起来 → 砍掉重来</strong>，</p><p>一整套闭环可以在很短时间里反复跑。</p><hr><h2 id="四、上下文工程：Context-is-the-new-Source-Code"><a href="#四、上下文工程：Context-is-the-new-Source-Code" class="headerlink" title="四、上下文工程：Context is the new Source Code"></a><strong>四、上下文工程：Context is the new Source Code</strong></h2><p>慢慢地，我发现一件很有意思的变化：</p><blockquote><p>以前我主要维护的是代码仓库（Git Repo），<br>现在我同样认真地在维护上下文（Context）。</p></blockquote><p>所谓 AI-Native 开发，本质上其实是：<strong>上下文工程（Context Engineering）。</strong></p><p>我不仅要告诉 AI“要做什么”，</p><p>更重要的是：我要像管理内存一样管理它的上下文窗口：</p><ul><li><strong>哪些历史决策是必须保留的？</strong><ul><li>这就像给上下文做 Snapshot：关键设计、边界约束、命名约定，这些要一直在。</li></ul></li><li><strong>哪些中间过程产生的噪音必须清除？</strong><ul><li>这就是 GC：试错过程、无效方案、已经推翻的假设，如果不清掉，AI 会反复捡起来当真理用。</li></ul></li><li><strong>如何把 PRD &#x2F; wiki 这种“非结构化数据”，清洗成 AI 能理解的“结构化 Prompt”？</strong><ul><li>比如先抽出：角色、目标、约束、输入输出、边界条件，再喂给 AI，而不是甩一大坨原文档。</li></ul></li></ul><p>在这个视角下：</p><blockquote><p>代码只是“上下文流过 AI 之后，沉淀下来的结晶”。<br>上下文脏了，结晶一定有杂质。垃圾进，垃圾出（GIGO）。在 AI 时代，上下文污染就是新的‘内存泄漏’。</p></blockquote><p>所以对我来说：</p><p><strong>上下文就是新的源码（Context is the new Source Code）。</strong></p><p>Git 管的是 history，Context 管的是现在这一次调用 AI 时的“认知状态”。</p><hr><h2 id="五、一个真实项目：IAM-Operator-怎么落地这套方法"><a href="#五、一个真实项目：IAM-Operator-怎么落地这套方法" class="headerlink" title="五、一个真实项目：IAM-Operator 怎么落地这套方法"></a><strong>五、一个真实项目：IAM-Operator 怎么落地这套方法</strong></h2><p>说点实战的。</p><p>项目背景：</p><p>我做过一个 Kubernetes 的 IAM-Operator，</p><p>核心目标是：在集群里自动注入访问凭证，替代手工配置和脚本拼接。</p><p>项目周期：1 个月，从 0 到生产上线。</p><p>开发搭子：Claude Code + TDD。</p><h3 id="1-需求-上下文：先把「说不清」翻出来"><a href="#1-需求-上下文：先把「说不清」翻出来" class="headerlink" title="1. 需求 &amp; 上下文：先把「说不清」翻出来"></a><strong>1. 需求 &amp; 上下文：先把「说不清」翻出来</strong></h3><p>我把 PRD 和 Helm 的 values.yaml 丢给 AI，让它做上下文清洗：</p><ul><li>把所有输入参数 &amp; 可能取值边界列出来</li><li>生成一个「需求歧义 checklist」：<ul><li>哪些场景没定义？</li><li>冲突策略是什么？</li><li>多集群 &#x2F; 多租户怎么处理？</li></ul></li></ul><p>这一步本质上就是：<strong>用 AI 帮我整理“干净的上下文快照”</strong>。</p><p>我带着这份 checklist 去跟产品 &amp; 运维对齐，</p><p>那些以后一定会踩坑的地方，基本都提前被翻出来了。</p><h3 id="2-CRD-技术选型：AI-拉草稿，人拍板-最小必须"><a href="#2-CRD-技术选型：AI-拉草稿，人拍板-最小必须" class="headerlink" title="2. CRD &amp; 技术选型：AI 拉草稿，人拍板 + 最小必须"></a><strong>2. CRD &amp; 技术选型：AI 拉草稿，人拍板 + 最小必须</strong></h3><p>CRD 设计阶段，我让 AI 先生成一版 IAMCredential 的 CRD Schema 草稿。</p><p>我做的事只有三件：</p><ul><li>用“最小必须原则”砍字段和层级</li><li>保证抽象和平台里其他资源保持一致</li><li>明确哪些字段 immutable，哪些可以演进</li></ul><p>技术选型也是类似流程：</p><ul><li>AI 拉出 Python Operator vs Go + Kubebuilder 的对比表</li><li>我基于团队技能栈、长期维护成本、性能约束做决定</li><li>最终选择 Go + Kubebuilder ——不是因为“看起来更高级”，而是因为在“最小必须”前提下它更稳。</li></ul><h3 id="3-TDD-实现：先锁定“什么算对”，再让-AI-写"><a href="#3-TDD-实现：先锁定“什么算对”，再让-AI-写" class="headerlink" title="3. TDD + 实现：先锁定“什么算对”，再让 AI 写"></a><strong>3. TDD + 实现：先锁定“什么算对”，再让 AI 写</strong></h3><p>TDD 这块，我会刻意给 AI 一个角色：</p><ul><li>让 AI 根据需求 + CRD，先写出单测 &amp; 表驱动测试的骨架</li><li>我再补：<ul><li>极端场景</li><li>租户 &#x2F; 配额 &#x2F; 网络抖动等边界</li></ul></li><li>确认「什么算对」之后，再去写实现代码</li></ul><p>实现阶段，很多样板分支、client 调用、错误处理，都可以交给 AI，</p><p>我主要盯核心逻辑、性能、可维护性。</p><h3 id="4-Code-Review：顺便做一次“含-AI-量检测”"><a href="#4-Code-Review：顺便做一次“含-AI-量检测”" class="headerlink" title="4. Code Review：顺便做一次“含 AI 量检测”"></a><strong>4. Code Review：顺便做一次“含 AI 量检测”</strong></h3><p>在 Code Review 上，我会多看一个维度：<strong>含 AI 量</strong>。</p><ul><li>有一些一眼就能看出来是 AI 写的代码：<ul><li>命名很好看，注释很工整，逻辑也没错</li><li>但你一试，发现“删掉也不影响业务”</li></ul></li><li>对这种“正确的废话代码”，我的态度是：<strong>删。</strong></li></ul><p>AI 很擅长给你多加两层抽象、加几个没必要的 helper。</p><p>这个时候“最小必须原则”又要出来挡刀：</p><p><strong>架构要长在真实复杂度上，而不是长在 AI 的想象力上。</strong></p><h3 id="5-文档：从「项目结束补作业」变成「一路长出来」"><a href="#5-文档：从「项目结束补作业」变成「一路长出来」" class="headerlink" title="5. 文档：从「项目结束补作业」变成「一路长出来」"></a><strong>5. 文档：从「项目结束补作业」变成「一路长出来」</strong></h3><p>以前写文档是项目最后的痛苦补作业。</p><p>现在我基本改成：</p><ul><li>每有一次比较大的设计决策 &#x2F; 接口变更</li><li>顺手把上下文丢给 AI，让它生成：<ul><li>技术方案章节</li><li>接入指南的一小节</li><li>运维手册里的一个场景</li></ul></li></ul><p>项目结束时，自然就有了：</p><ul><li>技术方案</li><li>接入指南</li><li>运维手册</li><li>测试说明 &#x2F; 回归 checklist</li></ul><p>这些东西不是事后硬编，而是在<strong>上下文工程</strong>做好之后，自然流出来的产物。</p><hr><h2 id="六、幻觉对抗：你是船长，它只是舵手"><a href="#六、幻觉对抗：你是船长，它只是舵手" class="headerlink" title="六、幻觉对抗：你是船长，它只是舵手"></a><strong>六、幻觉对抗：你是船长，它只是舵手</strong></h2><p>当然，这一切有一个前提：</p><p>你得有能力识别**“一本正经胡说八道”**。</p><p>上下文工程的一大核心，就是随时警惕 AI 在上下文里“偷偷下毒”：</p><ul><li>引用了不存在的库</li><li>捏造了从没定义过的参数</li><li>把已经被推翻的老方案重新捡起来当默认</li></ul><p>我给自己的原则是：</p><blockquote><p>你是船长，它只是舵手。<br>它力气大、方向感也不错，但一旦你发现它眼花了，你要有能力把方向盘抢回来。</p></blockquote><hr><h2 id="七、为什么我要坚持这套-AI-Native-方法论？"><a href="#七、为什么我要坚持这套-AI-Native-方法论？" class="headerlink" title="七、为什么我要坚持这套 AI-Native 方法论？"></a><strong>七、为什么我要坚持这套 AI-Native 方法论？</strong></h2><p>总结一下，我现在做新项目，基本都按这套方式来：</p><ol><li><p><strong>工程方法论不变，AI 只是全流程加速器</strong></p><p>确保项目是能跑到生产的系统，而不是 AI 玩具。</p></li><li><p><strong>上下文工程 + 最小必须原则</strong></p><p>上下文干净，代码才干净；</p><p>架构做减法，系统才不会被 AI 堆成一座技术债金字塔。</p></li><li><p><strong>开发者体验变好了</strong></p><p>需求更清晰、测试更完整、文档一路长出来，</p><p>而且——写代码这件事，重新变得好玩了。</p></li></ol><p>如果你已经在用 AI 帮你查 bug、补函数，不妨往前再走一步：</p><blockquote><p>从「写代码」，<br>升级成「做上下文工程」。</p></blockquote><p>当你真正把 AI 纳入整个软件工程流程，你会发现：</p><p><strong>不是你在用 AI 写项目，而是你和 AI 一起在“养”一个系统。</strong></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/">软件工程</category>
      
      
      <category domain="https://deusyu.app/tags/AI-Native-%E5%BC%80%E5%8F%91/">AI-Native 开发</category>
      
      <category domain="https://deusyu.app/tags/%E4%B8%8A%E4%B8%8B%E6%96%87%E5%B7%A5%E7%A8%8B/">上下文工程</category>
      
      <category domain="https://deusyu.app/tags/Vibe-Coding/">Vibe Coding</category>
      
      <category domain="https://deusyu.app/tags/%E6%9C%80%E5%B0%8F%E5%BF%85%E9%A1%BB%E5%8E%9F%E5%88%99/">最小必须原则</category>
      
      <category domain="https://deusyu.app/tags/Pair-Programming/">Pair Programming</category>
      
      <category domain="https://deusyu.app/tags/TDD/">TDD</category>
      
      <category domain="https://deusyu.app/tags/Kubernetes-Operator/">Kubernetes Operator</category>
      
      <category domain="https://deusyu.app/tags/%E5%BC%80%E5%8F%91%E8%80%85%E4%BD%93%E9%AA%8C/">开发者体验</category>
      
      <category domain="https://deusyu.app/tags/Andrej-Karpathy/">Andrej Karpathy</category>
      
      
      <comments>https://deusyu.app/posts/context-engineering-ai-native/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>最后的良弓</title>
      <link>https://deusyu.app/posts/end-of-tech-charity/</link>
      <guid>https://deusyu.app/posts/end-of-tech-charity/</guid>
      <pubDate>Thu, 04 Dec 2025 19:04:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p><strong>免费技术扶贫，到此为止</strong></p><p>没想到有一天，古人那句——</p><p><strong>「狡兔死，走狗烹；飞鸟尽，良弓藏。」</strong></p><p>也能落到我头上。</p><p>起因很简单，就是前两天我看了下周会材料：</p><figure class="highlight markdown"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br></pre></td><td class="code"><pre><span class="line">笑死，看了下周会。</span><br><span class="line"></span><br><span class="line">这些人也学会抄我的 mermaid。</span><br><span class="line"></span><br><span class="line">也学会生成这个了。</span><br><span class="line"></span><br><span class="line">幂等、原子、元组、输入、输出、中间过程，这些计算机科学基本概念也终于教给周围的人了。</span><br><span class="line"></span><br><span class="line">另外没错的是把师傅我也干掉了哈哈</span><br><span class="line"></span><br><span class="line">免费技术扶贫。</span><br><span class="line"></span><br><span class="line">然后免费把我干掉。</span><br></pre></td></tr></table></figure><p>我一边笑，一边突然意识到：</p><p>我这些年，真的在做一件很傻但很真诚的事——<strong>免费技术扶贫</strong>。</p><p>而故事的发展也很典型：</p><p>我把一整套方法论、抽象能力、工具链教给了周围人，然后，<strong>师傅被优化掉了</strong>。</p><p>好，戏到这里，帷幕该拉一拉了。</p><hr><h2 id="一、我是怎么一步步变成「免费导师」的？"><a href="#一、我是怎么一步步变成「免费导师」的？" class="headerlink" title="一、我是怎么一步步变成「免费导师」的？"></a><strong>一、我是怎么一步步变成「免费导师」的？</strong></h2><p>我回头看了一下自己的职业轨迹，有一条暗线特别明显：</p><ul><li>看见落后的流程，我会想：能不能抽象成平台？</li><li>看见重复的工作，我会想：能不能提炼成模板？</li><li>看见同事不会用工具，我会想：不如给他讲讲底层逻辑？</li></ul><p>于是，就有了这些画面：</p><ul><li>我在白板上画 mermaid，把系统拆成<strong>幂等、原子、元组、输入、输出、中间过程</strong>；</li><li>我把「怎么设计 API」「怎么写可维护代码」「怎么用 AI 写代码」讲成了一套「穷人也能用的工程学」；</li><li>我帮别人把模糊需求捋顺，顺手定义了半个团队的术语体系。</li></ul><p><strong>这类行为，本质上是把自己的「抽象层」免费开放给所有人。</strong></p><p>一开始你会觉得开心：</p><ul><li>别人听懂了，会说：<em>“你这么一讲，我一下就明白了。”</em></li><li>新人靠你的方法，能很快上手项目；</li><li>周会上的图，一个个都长得很「像你」。</li></ul><p>直到有一天，你发现：</p><p><strong>你的方法论已经在满地跑，但里面不再需要你。</strong></p><hr><h2 id="二、教会徒弟，真的会饿死师傅吗？"><a href="#二、教会徒弟，真的会饿死师傅吗？" class="headerlink" title="二、教会徒弟，真的会饿死师傅吗？"></a><strong>二、教会徒弟，真的会饿死师傅吗？</strong></h2><p>传统版的「教会徒弟，饿死师傅」是这样的：</p><blockquote><p>徒弟学会手艺 → 自立门户 → 把师傅的生意抢走。</p></blockquote><p>而现代版的则高级一点：</p><blockquote><p>你把一整套方法论、工具链、术语体系教给别人，<br>他们学会了表层用法，拿去当「生产力」、当「业绩」。<br>到考核的时候：</p></blockquote><ul><li>OKR 上是他们的完成度</li><li>复盘会上是他们的项目</li><li>汇报 PPT 是你的方法，但署的是他们的名字<blockquote><p>然后<br>裁员名单里有你。</p></blockquote></li></ul><p>这不是阴谋论，也不是受害者叙事，只是一个现实：</p><blockquote><p>在大部分组织里，<br>你生产的是「认知」，<br>但绩效表只记录「指标」。</p></blockquote><p>你以为你在当「架构师」「方法论搭建者」，</p><p>系统以为你只是一个「可替换的执行单元」。</p><p>当你把「如何做」全部讲清楚、全部固化之后，</p><p>组织会下意识问一句：</p><blockquote><p>既然流程、模板、规范都齐了，<br>那是不是 换一个便宜一点的人，也能按这个来干？</p></blockquote><p>然后你就从「唯一解」退化成了「可被替代解」。</p><p>这就是我这次的教训：</p><p><strong>不是教错了，而是教得太彻底，又太便宜。</strong></p><hr><h2 id="三、知识不是不能分享，而是要有「边界」"><a href="#三、知识不是不能分享，而是要有「边界」" class="headerlink" title="三、知识不是不能分享，而是要有「边界」"></a><strong>三、知识不是不能分享，而是要有「边界」</strong></h2><p>这篇文章不是在喊：</p><p>「以后谁都别教」「我从此封剑闭关」。</p><p>那太矫情了，也不符合我这种爱解释、爱拆解的性格。</p><p>我真正想说的是：</p><blockquote><p>知识分享要有边界。</p></blockquote><p>具体一点，大概是这样的分层：</p><h3 id="1）免费区：只讲「是什么」和「为什么」"><a href="#1）免费区：只讲「是什么」和「为什么」" class="headerlink" title="1）免费区：只讲「是什么」和「为什么」"></a><strong>1）免费区：只讲「是什么」和「为什么」</strong></h3><ul><li>可以讲概念：幂等、原子操作、多级缓存、AI-Native 软件工程……</li><li>可以讲框架：怎么用 AI 做需求分析、怎么设计一个 API、怎么评估一个系统的好坏。</li><li>可以输出观察、比喻、命名，比如「胶囊编程」「最小启动原则」「免费技术扶贫」。</li></ul><p>这些内容的本质，是<strong>观点与视角</strong>。</p><p>给出去，我也不会少一块肉，反而形成个人品牌。</p><h3 id="2）付费-合作区：才讲「怎么一步步做」"><a href="#2）付费-合作区：才讲「怎么一步步做」" class="headerlink" title="2）付费 &#x2F; 合作区：才讲「怎么一步步做」"></a><strong>2）付费 &#x2F; 合作区：才讲「怎么一步步做」</strong></h3><ul><li>具体到某个公司的系统，怎么重构？</li><li>具体到某个产品线，API 怎么拆？</li><li>具体到某个团队，AI 工具链怎么落地，怎么改工作流？</li></ul><p>这些内容，是<strong>你的职业武器库</strong>。</p><p>如果你把武器免费发完了，还指望靠赤手空拳打赢市场，那就有点好笑了。</p><p>一句话总结：</p><blockquote><p>认知可以开源，<br>但「落地路径 + 项目细节」必须闭源。</p></blockquote><hr><h2 id="四、从「讲细节」到「只给结论」：身份的转变"><a href="#四、从「讲细节」到「只给结论」：身份的转变" class="headerlink" title="四、从「讲细节」到「只给结论」：身份的转变"></a><strong>四、从「讲细节」到「只给结论」：身份的转变</strong></h2><p>以前别人来问我一个复杂问题，我的默认反应是：</p><blockquote><p>坐，我给你从头讲。</p></blockquote><p>现在，我的答案会更像这样：</p><blockquote><p>这事能不能搞定？<br>——能。<br>值不值得搞？<br>——看你想要的结果。<br>至于「怎么搞」？<br>——这件事，只有我能搞定。</p></blockquote><p>这不是装，也不是端，是一种刻意的角色切换：</p><ul><li>从「免费讲师」 → 「带队的人」</li><li>从「负责解释的人」 → 「负责结果的人」</li><li>从「回答‘怎么做’的人」 → 「判断‘值不值得做’的人」</li></ul><p>你会发现，一旦你只提供：</p><ul><li>决策</li><li>边界</li><li>风险评估</li><li>整体解法</li></ul><p>而不再免费给出：</p><ul><li>步骤清单</li><li>代码模板</li><li>详细流程图</li></ul><p>你整个人在别人心里的位置，会立即不一样。</p><p>以前是：</p><blockquote><p>「你太会讲了，下次再教教我呗。」</p></blockquote><p>以后是：</p><blockquote><p>「这个不找你，别人搞不定。」</p></blockquote><p>这两者，差的是<strong>定价权</strong>。</p><hr><h2 id="五、为什么我要喊停：「免费技术扶贫」？"><a href="#五、为什么我要喊停：「免费技术扶贫」？" class="headerlink" title="五、为什么我要喊停：「免费技术扶贫」？"></a><strong>五、为什么我要喊停：「免费技术扶贫」？</strong></h2><p>有几个原因，写出来，算是跟自己对个账。</p><h3 id="1）时代变了，AI-放大了懂行人的价值"><a href="#1）时代变了，AI-放大了懂行人的价值" class="headerlink" title="1）时代变了，AI 放大了懂行人的价值"></a><strong>1）时代变了，AI 放大了懂行人的价值</strong></h3><p>以前你教会一个人某种方法，他至少还得自己手写代码、自己踩坑。</p><p>现在不是了：</p><ul><li>你教会他一点 AI 使用方法；</li><li>给了他一个 prompt 框架；</li><li>他就可以在「你教的结构」之上，让 AI 帮他完成 80% 的工作。</li></ul><p><strong>你给的是「结构」，AI 自动帮他填「内容」。</strong></p><p>那在这个链条上，如果你还是免费输出结构，</p><p>其实就是在帮很多人，把他们的「个人产能」从 1 放大到 10。</p><p>但你的收益呢？</p><p>——经常是 0。</p><p>这不合理。</p><h3 id="2）我也要为自己后面的-10-年，留点东西"><a href="#2）我也要为自己后面的-10-年，留点东西" class="headerlink" title="2）我也要为自己后面的 10 年，留点东西"></a><strong>2）我也要为自己后面的 10 年，留点东西</strong></h3><p>我一路从南方城市折腾到北京，从云计算到 AI，从基础设施到方法论，</p><p>积累的那点**「怎么观察问题、怎么拆问题、怎么给解法」**的能力，是我未来 10 年的核心资产。</p><p>如果我继续把它当「讲义」，免费发，</p><p>那我在做的就不是「分享」，而是<strong>透支未来自己</strong>。</p><h3 id="3）我不想再当那个「被顺手牺牲」的人"><a href="#3）我不想再当那个「被顺手牺牲」的人" class="headerlink" title="3）我不想再当那个「被顺手牺牲」的人"></a><strong>3）我不想再当那个「被顺手牺牲」的人</strong></h3><p>说句实在话：</p><p>在这次被「顺手干掉」的过程中，我并没有多么愤怒，更多是清醒：</p><blockquote><p>我早就看懂这套游戏，但之前懒得防。</p></blockquote><p>那现在开始防一防，也不过分。</p><hr><h2 id="六、以后怎么做？"><a href="#六、以后怎么做？" class="headerlink" title="六、以后怎么做？"></a><strong>六、以后怎么做？</strong></h2><p>写到这里，其实答案已经很清楚了：</p><ol><li><p><strong>观点照讲，方法论照写</strong></p><ul><li>这些是我的作品，也是我对世界的注解。</li></ul></li><li><p><strong>具体做法只在两种场景出现：</strong></p><ul><li>付费合作 &#x2F; 正式雇佣</li><li>极少数、值得我真心投资的朋友</li></ul></li><li><p><strong>面对模糊的、带「白嫖气息」的问题时</strong></p><p>我只给边界和方向，不再给「完整 SOP」。</p></li></ol><p>我给自己定了一条简单的铁律：</p><blockquote><p>以后我不再传授具体内容，只说：<br>这件事，只有我能搞定。</p></blockquote><p>不是耍酷，而是提醒自己：</p><ul><li>不要再把最宝贵的那部分——「拆问题 + 设计解法的能力」——当作默认公用品；</li><li>不要再让「免费技术扶贫」成为别人简历上的加分项，而你自己简历上的「可替代项」。</li></ul><hr><h2 id="尾声：给未来的我"><a href="#尾声：给未来的我" class="headerlink" title="尾声：给未来的我"></a><strong>尾声：给未来的我</strong></h2><p>如果以后我又手痒，准备在群里、在公司、在某个会上一口气把一整套做法讲清楚，</p><p>请你记得今天这篇文章，记得那句古话：</p><blockquote><p>飞鸟尽，良弓藏。<br>狡兔死，走狗烹。</p></blockquote><p>然后轻轻补一句新的版本：</p><blockquote><p>解法在我，箭在我手里。<br>谁想借，就得付出相应的价格。</p></blockquote><p>——Rainman，正式宣布：</p><p><strong>免费技术扶贫，到此为止。</strong></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%81%8C%E5%9C%BA%E5%8F%91%E5%B1%95/">职场发展</category>
      
      <category domain="https://deusyu.app/categories/%E8%81%8C%E5%9C%BA%E5%8F%91%E5%B1%95/%E7%A7%91%E6%8A%80%E4%BA%BA%E6%96%87/">科技人文</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%A0%B8%E5%BF%83%E7%AB%9E%E4%BA%89%E5%8A%9B/">核心竞争力</category>
      
      <category domain="https://deusyu.app/tags/%E7%9F%A5%E8%AF%86%E5%A3%81%E5%9E%92/">知识壁垒</category>
      
      <category domain="https://deusyu.app/tags/AI%E7%84%A6%E8%99%91/">AI焦虑</category>
      
      <category domain="https://deusyu.app/tags/%E8%81%8C%E5%9C%BA%E5%8D%9A%E5%BC%88/">职场博弈</category>
      
      <category domain="https://deusyu.app/tags/%E8%AE%A4%E7%9F%A5%E5%8F%98%E7%8E%B0/">认知变现</category>
      
      <category domain="https://deusyu.app/tags/%E5%AF%BC%E5%B8%88%E9%99%B7%E9%98%B1/">导师陷阱</category>
      
      
      <comments>https://deusyu.app/posts/end-of-tech-charity/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>胶囊编程：一种新的自动化姿势</title>
      <link>https://deusyu.app/posts/capsule-programming-ai/</link>
      <guid>https://deusyu.app/posts/capsule-programming-ai/</guid>
      <pubDate>Wed, 03 Dec 2025 03:46:00 GMT</pubDate>
      
      <description>面对手动操作太蠢、写代码太累的“真空地带”需求，怎么办？本文提出“胶囊编程”概念：利用AI快速生成一次性自动化脚本。
无需维护项目，只需一个文件夹和一段对话，让技术真正服务于当下的效率。
从2小时试错到5分钟解决，重塑你的个人工作流ROI。</description>
      
      
      
      <content:encoded><![CDATA[<p>有一类需求特别讨厌：</p><p>手动做，蠢。找产品，没有。自己写，不值得。</p><p>比如你有 30 份体检报告 PDF，要把里面的姓名全部遮蔽后发给别人。</p><ul><li>用 Adobe Acrobat 一个个点？可以，但你会想死。</li><li>找个在线工具？要么收费，要么上传隐私文件不放心。</li><li>自己写 Python 脚本？你知道 PyPDF2 能搞定，但查文档 + 踩坑要一两个小时。</li></ul><p>这种需求卡在一个尴尬的真空地带——不值得上产品，不值得手动做，也不值得从零学一个库。</p><p>我最近给解决这类问题的方式起了个名字，叫<strong>胶囊编程</strong>。</p><hr><h2 id="什么是胶囊编程"><a href="#什么是胶囊编程" class="headerlink" title="什么是胶囊编程"></a>什么是胶囊编程</h2><p><strong>胶囊编程（Capsule Programming）</strong>：</p><p>当市面上没有合适工具、手工又很傻、但用代码可以搞定时，你不去苦学某个库、从零堆代码，而是：</p><blockquote><p>把文件丢进一个文件夹，用 AI 在这个目录里「对话式写脚本」，只为解决一个很小、很具体的自动化问题。</p></blockquote><p>它更像是一颗颗「胶囊」：</p><ul><li>小而封装，针对单一症状</li><li>一颗解决一个小痛点</li><li>吞下去就见效</li></ul><p>你的工作单元不是「项目」，而是「一个文件夹 + 一段对话 + 一个小脚本」。</p><hr><h2 id="什么时候适合胶囊编程"><a href="#什么时候适合胶囊编程" class="headerlink" title="什么时候适合胶囊编程"></a>什么时候适合胶囊编程</h2><p>同时满足以下几条，就适合用胶囊解决：</p><p><strong>1）市面上没现成产品</strong></p><p>要么没有，要么有但太重、太复杂，不值得为这一点小需求上大系统。</p><p><strong>2）手动操作可以做，但极其低效</strong></p><p>比如几十个 PDF 要重复点来点去，Excel 里要反复改格式、改命名。这些都不是「做不了」，只是「做起来很蠢」。</p><p><strong>3）用代码可以一次性解决，但学习成本偏高</strong></p><p>你知道 Python 能搞定，但你对某个库又不熟，自己查文档 + 踩坑要 1 ～ 2 小时起步。</p><p><strong>4）需求足够清晰、边界明确</strong></p><p>输入是什么文件？输出要变成什么样？有几条规则？这些你能说清楚。</p><p>这类问题，用「产品形态」去解决太重，用「人肉」去解决太蠢，刚好适合一颗胶囊。</p><hr><h2 id="胶囊编程不是什么"><a href="#胶囊编程不是什么" class="headerlink" title="胶囊编程不是什么"></a>胶囊编程不是什么</h2><p>划清边界：</p><ul><li><strong>不是学一门新语言</strong>——你不需要「会」Python，你只需要能描述需求</li><li><strong>不是维护一个项目</strong>——没有 git、没有 CI、没有版本管理</li><li><strong>不是造轮子</strong>——你不追求通用性，只解决眼前这一个问题</li><li><strong>不追求复用和扩展</strong>——用完即走，下次再造一颗新的也无妨</li></ul><p>胶囊编程的核心心态是：<strong>最小启动，够用就行</strong>。</p><hr><h2 id="胶囊编程的标准流程"><a href="#胶囊编程的标准流程" class="headerlink" title="胶囊编程的标准流程"></a>胶囊编程的标准流程</h2><p>我现在基本都这么干：</p><h3 id="第一步：建一个文件夹"><a href="#第一步：建一个文件夹" class="headerlink" title="第一步：建一个文件夹"></a>第一步：建一个文件夹</h3><p>新建一个目录，比如 <code>health_reports_redact/</code>，把要处理的原始文件全部丢进去。</p><h3 id="第二步：打开-Claude-Code"><a href="#第二步：打开-Claude-Code" class="headerlink" title="第二步：打开 Claude Code"></a>第二步：打开 Claude Code</h3><p>在这个目录里开一个工作区，让 AI 能看到文件结构。</p><h3 id="第三步：先聊方案，再写代码"><a href="#第三步：先聊方案，再写代码" class="headerlink" title="第三步：先聊方案，再写代码"></a>第三步：先聊方案，再写代码</h3><p>描述需求：</p><blockquote><p>“这里有一堆体检报告 PDF，帮我设计一个方案：批量把包含我姓名的地方全部遮蔽，新文件加 -已脱敏 后缀，原文件不动。”</p></blockquote><p>让 AI 先输出算法思路和步骤。你只做一件事：确认边界（出错怎么处理？文件名规则？是否要日志？）。</p><h3 id="第四步：方案确认后，让-AI-写完整脚本"><a href="#第四步：方案确认后，让-AI-写完整脚本" class="headerlink" title="第四步：方案确认后，让 AI 写完整脚本"></a>第四步：方案确认后，让 AI 写完整脚本</h3><blockquote><p>“按这个方案，帮我写一个 redact_pdf.py。”</p></blockquote><p>运气好一次跑通；就算不行，也是小修小补，而不是你从 0 写。</p><h3 id="第五步：脚本留在文件夹里，成为一个胶囊工具"><a href="#第五步：脚本留在文件夹里，成为一个胶囊工具" class="headerlink" title="第五步：脚本留在文件夹里，成为一个胶囊工具"></a>第五步：脚本留在文件夹里，成为一个胶囊工具</h3><p>以后再有新的报告，只需要：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">python redact_pdf.py</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这个文件夹就变成了一个可反复复用的小型自动化装置。这颗脚本，就像一颗放在文件夹里的胶囊，随时吞一颗、立刻见效。</p><hr><h2 id="为什么现在才成立"><a href="#为什么现在才成立" class="headerlink" title="为什么现在才成立"></a>为什么现在才成立</h2><p>这个模式不是今天才存在，但今天才真正可行。</p><p>以前，这类需求的「解决成本」远大于「收益」。你要查文档、踩坑、调试，花两小时写一个脚本，省下的可能只是半小时的手动操作。ROI 算不过来。</p><p>现在不一样了。Claude Code、Cursor、GPT 把「写脚本」的门槛打到了接近零。</p><ul><li>你不需要记 API</li><li>你不需要调依赖</li><li>你只需要用人话描述需求</li></ul><p>当「写脚本」的成本从 2 小时变成 5 分钟，原本不值得自动化的事情，突然都值得了。</p><p><strong>AI 是这个模式成立的关键变量。</strong></p><hr><h2 id="结语"><a href="#结语" class="headerlink" title="结语"></a>结语</h2><p>胶囊编程不是什么高深的方法论，只是一种姿势的转变：</p><ul><li>从「我要学会这个库」变成「我只需要描述清楚问题」</li><li>从「我要写一个项目」变成「我只需要一个文件夹」</li><li>从「这个需求太小不值得」变成「正因为小，才适合吞一颗胶囊」</li></ul><p>久而久之，你的电脑里会长满胶囊。</p><p>每个文件夹都是一个微型自动化装置，随时待命。</p><p>当你再遇到那种「手动很蠢、产品没有、代码能解决」的需求时，不用犹豫——</p><p><strong>建个文件夹，开个对话，吞颗胶囊。</strong></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%83%B6%E5%9B%8A%E7%BC%96%E7%A8%8B/">胶囊编程</category>
      
      <category domain="https://deusyu.app/categories/%E8%83%B6%E5%9B%8A%E7%BC%96%E7%A8%8B/AI%E5%BA%94%E7%94%A8/">AI应用</category>
      
      <category domain="https://deusyu.app/categories/%E8%83%B6%E5%9B%8A%E7%BC%96%E7%A8%8B/AI%E5%BA%94%E7%94%A8/%E6%95%88%E8%83%BD%E6%80%9D%E7%BB%B4/">效能思维</category>
      
      
      <category domain="https://deusyu.app/tags/%E8%83%B6%E5%9B%8A%E7%BC%96%E7%A8%8B/">胶囊编程</category>
      
      <category domain="https://deusyu.app/tags/AI%E8%BE%85%E5%8A%A9%E7%BC%96%E7%A8%8B/">AI辅助编程</category>
      
      <category domain="https://deusyu.app/tags/%E5%B0%8F%E9%9C%80%E6%B1%82%E8%87%AA%E5%8A%A8%E5%8C%96/">小需求自动化</category>
      
      
      <comments>https://deusyu.app/posts/capsule-programming-ai/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>避孕套悖论失灵：为什么年轻人宁愿买玩具也不谈恋爱？</title>
      <link>https://deusyu.app/posts/intimacy-shift-solo-economy/</link>
      <guid>https://deusyu.app/posts/intimacy-shift-solo-economy/</guid>
      <pubDate>Sun, 30 Nov 2025 23:51:00 GMT</pubDate>
      
      <description>避孕套销量在跌，情趣用品却飙升，这真的是“低欲望社会”吗？本文从性消费、婚姻与单身数据切入，勾勒出一幅正在成形的孤独经济图谱。读完你或许会重新理解亲密关系、欲望和一个人生活的商业价值。</description>
      
      
      
      <content:encoded><![CDATA[<p>避孕套销量在跌，情趣用品却一路飙升。</p><p>有人说，低欲望社会来了。</p><p>但把几组数据摊开，你会发现，答案更像指向另外三个字：</p><p><strong>孤独经济。</strong></p><hr><h3 id="一、“避孕套悖论”失灵了"><a href="#一、“避孕套悖论”失灵了" class="headerlink" title="一、“避孕套悖论”失灵了"></a><strong>一、“避孕套悖论”失灵了</strong></h3><p>过去十几年，媒体特别爱讲一个梗——<strong>“避孕套悖论”</strong>。</p><p>大意是：每逢经济不景气，人们更爱宅在家，“避孕”反而成了刚需。</p><p>1929 年大萧条、2008 年金融危机，很多国家的避孕套销量都逆势上涨，被当成“口红效应”的一个变体来讲。</p><p>2015 年 A 股股灾的时候，日本冈本的股价还曾一度涨到前期的两倍多，被财经媒体拿来当段子：</p><blockquote><p>“股市一跌，套子先涨。”</p></blockquote><p>这套叙事默认了一个前提：</p><blockquote><p>经济下行 → 更多人在家腻歪 → 避孕套卖得更好。</p></blockquote><p>但到了 2024 年，这个“悖论”在中国开始失灵。</p><ul><li>2024 年，中国避孕套市场规模大约 <strong>156 亿元</strong>，比上一年<strong>下跌了约 17%</strong>，比 2019 年也少了近 <strong>两成</strong>。</li><li>与此同时，国内主流的“国产伟哥”金戈，销量也从大约 <strong>1 亿片</strong>，降到了 <strong>8785 万片左右</strong>，跌幅在 <strong>一成多</strong>，原版万艾可也在下滑。</li></ul><p>按以前那套逻辑，“大家更宅了，套子也应该更好卖”。</p><p>现实却是：<strong>套子卖得没那么好，春药也没那么好卖了。</strong></p><p>问题就来了：</p><p>是大家都变成“低欲望佛系青年”了吗？</p><hr><h3 id="二、不是没欲望了，而是“不太需要两个人”"><a href="#二、不是没欲望了，而是“不太需要两个人”" class="headerlink" title="二、不是没欲望了，而是“不太需要两个人”"></a><strong>二、不是没欲望了，而是“不太需要两个人”</strong></h3><p>再看另一组数据就有意思了。</p><p>同样是 2024 年，中国<strong>情趣用品市场</strong>的销售额大约 <strong>1942 亿元</strong>，</p><ul><li>同比 <strong>增长 8%</strong>，</li><li>比 2019 年更是<strong>涨了六成多</strong>。</li></ul><p>一边是：</p><blockquote><p>避孕套、伟哥这些，更多和“两个人的线下关系”绑在一起的东西，在走下坡路；</p></blockquote><p>另一边是：</p><blockquote><p>情趣玩具、情趣内衣、自用器具、虚拟互动等，更偏向“</p><p><strong>一个人也能用</strong></p></blockquote><p>如果把它们粗暴地分一下：</p><ul><li><strong>“社交型性消费”</strong>：需要另一个真实的人参与（避孕套、口服药物）；</li><li><strong>“个体向性消费”</strong>：一个人就能解决（情趣玩具、虚拟陪伴、在线内容等）。</li></ul><p>那 2024 年这组对比，其实在说一件挺残酷的事：</p><blockquote><p>欲望还在，只是越来越少指向“关系”，越来越多指向“自己”。</p></blockquote><p>那句被网友调侃的话，其实挺贴切：</p><blockquote><p>“成年人的性生活，可能不太需要两个人了。”</p></blockquote><hr><h3 id="三、婚姻、生育、人口：三条一起往下走的曲线"><a href="#三、婚姻、生育、人口：三条一起往下走的曲线" class="headerlink" title="三、婚姻、生育、人口：三条一起往下走的曲线"></a><strong>三、婚姻、生育、人口：三条一起往下走的曲线</strong></h3><p>把镜头拉远一点，你会看到三条更长的曲线。</p><p><strong>第一条是结婚。</strong></p><ul><li>从 2013 年开始，中国每年的结婚登记对数整体上一路往下。</li><li>2022 年首次跌破 <strong>700 万对</strong>，只有 <strong>680 多万对</strong>；</li><li>2023 年短暂地略微回弹了一点；</li><li>2024 年直接掉到约 <strong>610 万对</strong>，是 1980 年以来的新低。</li></ul><p>结婚这件事，在整体上确实在**“退潮”**。</p><hr><p><strong>第二条是生育意愿。</strong></p><p>国家层面在 2021 年做过一次调查：</p><blockquote><p>育龄妇女平均打算生育子女数为</p><p><strong>1.64 个</strong></p></blockquote><p>而“人口自然更替”的参考线通常是 <strong>2.1 个</strong>。</p><p>也就是说，从愿望层面，很多人就已经“不想多生”，甚至“不一定想生”。</p><p>如果你把彩礼、房价、教育焦虑、育儿成本这些现实压力叠加上去，“先别急着结婚，更别急着生”的态度就一点也不难理解了。</p><hr><p><strong>第三条是人口。</strong></p><ul><li>2022 年，中国人口<strong>第一次出现负增长</strong>，</li><li>2023 年继续减少，</li><li>2024 年依然是负增长。</li></ul><p>当结婚在减少、生育意愿在走低、人口在缩减——</p><p><strong>“以家庭为中心的人生剧本”不再是唯一主线。</strong></p><p>很多人干脆选择：</p><blockquote><p>不按这本旧剧本演了。</p></blockquote><hr><h3 id="四、单身不是“失败”，而是一种常态"><a href="#四、单身不是“失败”，而是一种常态" class="headerlink" title="四、单身不是“失败”，而是一种常态"></a><strong>四、单身不是“失败”，而是一种常态</strong></h3><p>再看单身。</p><p>按官方统计口径，早几年中国 <strong>15 岁及以上的单身人口就已经超过 2.39 亿</strong>。</p><p>有学者据此估算，目前单身人口<strong>接近 3 亿</strong>。</p><p>分年龄段更直观：</p><ul><li><strong>25–29 岁</strong>人群里，未婚比例大约 <strong>一半以上</strong>；</li><li><strong>30–34 岁</strong>人群里，差不多 <strong>每五个人里就有一个未婚</strong>。</li></ul><p>上一代人眼里，“单身到三十多”常常会被贴上各种标签；</p><p>这一代人眼里，更多是：</p><blockquote><p>“有合适的就好好谈，没合适的，一个人过也行。”</p></blockquote><p>这背后，是心态的变化：</p><ul><li>不再把“结婚”当成完成任务；</li><li>不再把“有伴侣”当成体面、成熟、成功的唯一象征；</li><li>愿意承认：<strong>好的亲密关系是稀缺品，不如别凑合。</strong></li></ul><p>于是，一个新的关键词被慢慢抬上台面：</p><blockquote><p>孤独，但不等于凄凉。</p></blockquote><p>有人给它起了个名字——<strong>孤乐主义</strong>：</p><blockquote><p>与其在人群里委曲求全，不如干脆一个人待着。</p></blockquote><hr><h3 id="五、孤独经济：不是没人陪，而是“不强求有人陪”"><a href="#五、孤独经济：不是没人陪，而是“不强求有人陪”" class="headerlink" title="五、孤独经济：不是没人陪，而是“不强求有人陪”"></a><strong>五、孤独经济：不是没人陪，而是“不强求有人陪”</strong></h3><p>这种心态，已经实打实地体现在消费上。</p><p>你随便留意一下身边：</p><ul><li>连锁火锅店、连锁酸菜鱼，都在推出<strong>一人食小锅、小份菜</strong>；</li><li>电影院的零散座位不是卖不出，而是<strong>有人专门挑着一个人去看</strong>；</li><li>KTV 甚至出现“一人 K 房”；</li><li>外卖、饮品、预制菜，很多都是一个人刚刚好的分量。</li></ul><p>几年前的消费报告里还提到过：</p><ul><li>95 后、00 后里，<strong>一个人去看电影</strong>的人接近一半；</li><li><strong>一个人点外卖</strong>的占比也非常高。</li></ul><p>再叠加：</p><ul><li><p>粉丝经济、饭圈文化：</p><p>很多人对明星、虚拟偶像、二次元角色的投入，已经远远超过了现实社交圈。</p></li><li><p>游戏、短视频、直播、电台播客：</p><p>足不出户就能“沉浸在另一个世界”，不用处理真实关系里的麻烦。</p></li><li><p>情趣用品、电动玩具、虚拟恋人 App：</p><p>用钱和技术，避开“人和人之间那点复杂”。</p></li></ul><p>科技发展、供应链极致细分之后，市场等于是给了一代人一个选项：</p><blockquote><p>“你完全可以只为自己买单。”</p></blockquote><p>不必为了和别人过日子而消费，</p><p>可以只为了让自己舒服、好玩、安心而消费。</p><p>这就是所谓的<strong>孤独经济</strong>：</p><ul><li>它不鼓励你变成“社恐废人”；</li><li>也不反对你谈恋爱、结婚、生娃；</li><li>它只是冷静地告诉你：<blockquote><p>“一个人，也可以活得很丰盛。”</p></blockquote></li></ul><hr><h3 id="六、潮水的方向-商机的方向"><a href="#六、潮水的方向-商机的方向" class="headerlink" title="六、潮水的方向 &amp; 商机的方向"></a><strong>六、潮水的方向 &amp; 商机的方向</strong></h3><p>把这些线连起来，你会看到一个挺清晰的图：</p><ol><li><p><strong>关系型消费在收缩</strong>：</p><p>避孕套、伟哥、结婚登记、生育意愿、总人口，都在往下走。</p></li><li><p><strong>个体向消费在扩张</strong>：</p><p>情趣用品、一人食、一个人看电影、一个人旅行、为兴趣买单，都在往上走。</p></li><li><p><strong>年轻人的价值观在侧移</strong>：</p><p>“不将就、不凑合、先把自己过好”，正慢慢替代“有对象&#x2F;结婚才算完整”。</p></li></ol><p>这既是时代的潮水，也是一个再明白不过的信号：</p><blockquote><p>谁能在“一个人也能很好地生活”这件事上，提供更好的产品和服务，谁就站在下一波红利里。</p></blockquote><p>不管你是做内容、做产品，还是做投资、做研究——</p><p><strong>“孤独经济”都已经不只是个文案名词，而是一整套真实的数据和场景。</strong></p><p>至于它是好是坏？</p><p>可能只能用一句话来收尾：</p><blockquote><p>人并没有变得更没欲望，只是把“取悦别人”和“取悦自己”重新排了一次序。</p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%95%86%E4%B8%9A/">商业</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%AD%A4%E7%8B%AC%E7%BB%8F%E6%B5%8E/">孤独经济</category>
      
      <category domain="https://deusyu.app/tags/%E5%8D%95%E8%BA%AB%E7%A4%BE%E4%BC%9A/">单身社会</category>
      
      <category domain="https://deusyu.app/tags/%E6%82%A6%E5%B7%B1%E6%B6%88%E8%B4%B9/">悦己消费</category>
      
      <category domain="https://deusyu.app/tags/%E9%81%BF%E5%AD%95%E5%A5%97%E6%82%96%E8%AE%BA/">避孕套悖论</category>
      
      <category domain="https://deusyu.app/tags/%E4%BA%B2%E5%AF%86%E5%85%B3%E7%B3%BB/">亲密关系</category>
      
      <category domain="https://deusyu.app/tags/%E4%BA%BA%E5%8F%A3%E8%B6%8B%E5%8A%BF/">人口趋势</category>
      
      <category domain="https://deusyu.app/tags/%E6%B6%88%E8%B4%B9%E5%BF%83%E7%90%86/">消费心理</category>
      
      
      <comments>https://deusyu.app/posts/intimacy-shift-solo-economy/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>中国式成功学：高级抄袭 + 工程放大</title>
      <link>https://deusyu.app/posts/smart-copy-engineering/</link>
      <guid>https://deusyu.app/posts/smart-copy-engineering/</guid>
      <pubDate>Sun, 30 Nov 2025 00:32:00 GMT</pubDate>
      
      <description>很多中国科技产品的成功，其实都踩在“高级抄袭 + 工程放大”的模式上。
这篇文章借原神、王者荣耀和小米车拆解：如何在结构上借用成熟模式，再用工程和运营把它放大。
读完你或许会重新校准自己对“抄与创”的边界要求：可以功利，但不要丑，可以借用，但要体面。</description>
      
      
      
      <content:encoded><![CDATA[<p>我最近有个挺残酷、但又很真实的发现：</p><blockquote><p>中国很多科技产品的成功路径，其实可以概括成八个字：<br>高级抄袭 + 工程放大。</p></blockquote><p>原神是这样，王者荣耀是这样，小米的车，某种意义上也是这样。</p><hr><p>先说原神。</p><p>大家都知道它像塞尔达。开放世界、大草地、爬山体力条、滑翔伞、做饭、捡素材——这些“感觉”一上来就很 BOTW。</p><p>但米哈游做的事，不是简单「把塞尔达扒到手机上」。</p><p>它更像是：</p><ul><li>把塞尔达那套「世界感觉」抄过来当地基，</li><li>然后换了一整套完全不同的<strong>战斗系统、商业结构和运营模式</strong>：</li></ul><p>塞尔达是一次性买断的神作，核心爽点是「解题、物理和自由」。</p><p>原神是免费 + 抽卡，核心爽点是「养角色、配队、刷本」，</p><p>再叠加跨平台、长线更新、活动运营、DLC 式地图扩展、二创生态……</p><p><strong>玩法的灵感是抄的，</strong></p><p><strong>但最后长出来的是一个完全不同的「抽卡服务型宇宙」。</strong></p><p>法律上，它没直接抠资源、抄代码；</p><p>商业上，它找到了塞尔达没做、任天堂也懒得做的那块地：</p><blockquote><p>「把这种开放世界，变成可以在手机上长期氪、长期陪伴的游戏服务。」</p></blockquote><hr><p>王者荣耀也是同一个路子。</p><p>MOBA 这条赛道，早就有 DOTA、LOL，还有一堆国外手游。</p><p>腾讯做的是：</p><ul><li>把「5v5 三路推塔」这套已经被全球教育过的玩法结构<strong>抄过来</strong>，</li><li>砍掉复杂操作，做成适合手机的低门槛版本，</li><li>加上中国玩家熟悉的美术、本地英雄梗，</li><li>然后用自己的分发、社交关系链、赛事体系，一路推成国民游戏。</li></ul><p>你说原创吗？</p><p>核心玩法当然不是它发明的。</p><p>但你说它没创新吗？</p><p><strong>把一套复杂的 PC MOBA 玩法，压缩成任何一台便宜安卓机都能流畅跑的国民游戏，这本身就是另一种工程和运营上的创新。</strong></p><hr><p>再看小米车。</p><p>外观上谁都能看出来：</p><p>保时捷的线条、法拉利的某些姿态，影子非常明显。</p><p>但小米做的是：</p><ul><li>在设计上紧贴豪车那套审美锚点，</li><li>在工程和供应链上，做到「同价位看起来最不像这个价」。</li></ul><p>它并不避讳你拿它跟保时捷比，反而是故意让你拿来比——</p><p>因为**「像谁」就是它的免费广告位**。</p><hr><p>所以我现在的真实想法是这样的：</p><blockquote><p>只要市场买账、法律没判你死刑，从商业视角看，它就算是一种成功。</p></blockquote><p>别人骂不骂抄袭，是舆论战；</p><p>用户愿不愿意掏钱，是结果。</p><hr><p>但问题也在这儿：</p><p>一方面，我很清楚这套逻辑在现实中极其有效；</p><p>另一方面，我又很认同 Ilya 那句：</p><blockquote><p>“丑陋是毫无容身之地的。”</p></blockquote><p>Ilya 这话本来是讲 AI 研究的，但我觉得放在产品设计上也成立<br>所以对我来说，最后的结论可能是这样：</p><ul><li>*在结构上「合理借用」别人的成功模式没问题，</li><li>但在表达和细节上，我会逼自己不要做丑陋的东西。**</li></ul><p>你可以抄一个经过验证的游戏结构、收费模型、信息架构，</p><p>这叫少走弯路；</p><p>但你能不能在：</p><ul><li>美感、</li><li>体验、</li><li>对用户的诚实程度上——</li></ul><p><strong>做出一点属于自己的东西</strong>，</p><p>这个决定了你是「聪明的抄」，还是「恶心的抄」。</p><p>现实已经告诉我们：</p><p>原神、王者荣耀、小米车这一挂「高级抄 + 工程放大」是行得通的。</p><p>我自己的目标，大概是在这条路上再加一句小小的自我要求：</p><blockquote><p>可以功利，但不要丑；<br>可以借用，但要体面。</p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%95%86%E4%B8%9A%E6%88%98%E7%95%A5/">商业战略</category>
      
      
      <category domain="https://deusyu.app/tags/%E9%AB%98%E7%BA%A7%E6%8A%84%E8%A2%AD/">高级抄袭</category>
      
      <category domain="https://deusyu.app/tags/%E5%B7%A5%E7%A8%8B%E6%94%BE%E5%A4%A7/">工程放大</category>
      
      <category domain="https://deusyu.app/tags/%E4%B8%AD%E5%9B%BD%E7%A7%91%E6%8A%80%E4%BA%A7%E5%93%81/">中国科技产品</category>
      
      
      <comments>https://deusyu.app/posts/smart-copy-engineering/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>内容的不可逆：为什么我不担心被营销号淹没</title>
      <link>https://deusyu.app/posts/content-irreversible/</link>
      <guid>https://deusyu.app/posts/content-irreversible/</guid>
      <pubDate>Mon, 24 Nov 2025 21:58:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="内容的不可逆：为什么我不担心被营销号淹没"><a href="#内容的不可逆：为什么我不担心被营销号淹没" class="headerlink" title="内容的不可逆：为什么我不担心被营销号淹没"></a><strong>内容的不可逆：为什么我不担心被营销号淹没</strong></h1><p>这两年我经常有一个小小的郁闷：</p><blockquote><p>「当大家都在写钩子文、情绪文、营销文的时候，我认真写深度内容，是不是一种‘错误的选择’？」</p></blockquote><p>你应该也见过这种景象：</p><ul><li><p>标题都一个套路：</p><p>《年薪五十万的年轻人，正在被一件小事毁掉》</p><p>《所有坚持 xxx 的人，最后都赢了》</p></li><li><p>开头三秒一定要扔一个反转、一个冲突、一段苦情身世；</p></li><li><p>通篇信息密度很低，但情绪密度很高。</p></li></ul><p>而你若认真写一篇 3000 字冷静分析，阅读完的人屈指可数。</p><p>对比之下，难免会想：<strong>我是不是想太多了？</strong></p><p>但最近我反过来想明白了一件事——</p><p><strong>有些东西，是真的不能回退的。</strong></p><p>内容也是。</p><hr><h2 id="一、两条“不能回退”的底线"><a href="#一、两条“不能回退”的底线" class="headerlink" title="一、两条“不能回退”的底线"></a><strong>一、两条“不能回退”的底线</strong></h2><p>对于内容生态，有两条“底线”一旦抬起来，就很难再降回去：</p><h3 id="1-读者的味觉，一旦被训练，就回不去了"><a href="#1-读者的味觉，一旦被训练，就回不去了" class="headerlink" title="1. 读者的味觉，一旦被训练，就回不去了"></a><strong>1. 读者的味觉，一旦被训练，就回不去了</strong></h3><p>长期刷营销号、爽文、标题党，会把人训练成一套“低成本快感”的味觉系统：</p><ul><li>三秒钟看不到冲突就划走；</li><li>逻辑和证据不重要，情绪要拉满；</li><li>最好能让自己愤怒、代入、爽一把。</li></ul><p>这种味觉，一旦形成，就会对高信息密度、低情绪噪音的内容产生 <strong>天然抵触</strong>：</p><ul><li>看到长段落就烦；</li><li>看到严谨论证就困；</li><li>看到中立视角就觉得“这人怎么这么冷血”。</li></ul><p>反过来也是成立的：</p><blockquote><p>如果一个人被长期训练成：<br>能耐心读完深度长文，对偷换概念和廉价情绪很敏感，<br>那他就很难再真心喜欢低质量营销号了。</p></blockquote><p>他可能偶尔刷几条爽文乐呵一下，但内心会知道：</p><p>“这玩意儿不是真东西，只是给大脑搔个痒。”</p><p>这就是第一个不可逆：</p><p><strong>人的审美&#x2F;味觉，一旦被真正的好内容提升，就很难再完全退回去。</strong></p><h3 id="2-平台的算法基线，一旦确定，就很难改回去"><a href="#2-平台的算法基线，一旦确定，就很难改回去" class="headerlink" title="2. 平台的算法基线，一旦确定，就很难改回去"></a><strong>2. 平台的算法基线，一旦确定，就很难改回去</strong></h3><p>再看平台。</p><p>当一个平台长期用「钩子+完播率+转发率」来训练自己的算法：</p><ul><li><p>历史数据全是爽文的正反馈；</p></li><li><p>站内头部创作者大多是那一挂；</p></li><li><p>用户在这个平台上的“使用姿势”，已经被养成了：</p><p>打开就是刷，刷就是求爽感。</p></li></ul><p>等某天平台突然说——</p><p>“我们要扶持深度内容，欢迎理性分析！”</p><p>很难彻底扭转：</p><ul><li>算法依然会倾向于过去被验证过的东西；</li><li>用户已经习惯在这里“放空大脑”，而不是“开启思考”；</li><li>深度内容就算被推到眼前，多数人也没有心情点开。</li></ul><p>所以，这就是第二个不可逆：</p><blockquote><p>一个平台一旦被廉价爽感定型，就很难再变成一个认真阅读型平台。</p></blockquote><p>最多是在垃圾堆里，竖几根“优质内容”的小旗子，而不是把垃圾清干净。</p><hr><h2 id="二、“非对称性”"><a href="#二、“非对称性”" class="headerlink" title="二、“非对称性”"></a><strong>二、“非对称性”</strong></h2><p>一个很有意思的设想：</p><ul><li>情况 A：营销号横飞，深度长文很稀缺</li><li>情况 B：高质量文章很多，营销号很少<blockquote><p>在 A 里，稀缺的深度内容反而更容易被有见识的人珍惜；<br>但在 B 里，大家不会因为营销号是少数，就更喜欢营销号。</p></blockquote></li></ul><p>这个直觉非常对，本质上是一个 <strong>“不对称稀缺”</strong>：</p><h3 id="1-在“垃圾很多，干货稀缺”的世界里"><a href="#1-在“垃圾很多，干货稀缺”的世界里" class="headerlink" title="1. 在“垃圾很多，干货稀缺”的世界里"></a><strong>1. 在“垃圾很多，干货稀缺”的世界里</strong></h3><p>对有见识的人来说，深度内容是：</p><ul><li>一个<strong>过滤器</strong>：能看懂、看得下去的人，自动被留下来；</li><li>一个<strong>信号灯</strong>：说明创作者不是来骗你时间的，而是拿思考来换共鸣。</li></ul><p>你的内容&#x2F;这种内容做一件很重要的事：</p><blockquote><p>它不是在讨好所有人，而是在帮你筛选“同频的人”。</p></blockquote><p>别人花时间写钩子，你花时间写世界观。</p><p>结果是：你吸引到的那拨人，未来价值会完全不一样。</p><h3 id="2-在“大家都写好文”的世界里"><a href="#2-在“大家都写好文”的世界里" class="headerlink" title="2. 在“大家都写好文”的世界里"></a><strong>2. 在“大家都写好文”的世界里</strong></h3><p>假设真有一天，所有平台上到处都是深度长文、结构严谨、案例丰富、数据完备，</p><p>那时候，真正稀缺的东西就会变成：</p><ul><li>你的世界观是否独立、一致；</li><li>你的叙事风格是否鲜明、有辨识度；</li><li>你能不能在一堆“正确废话”中，给到一两句真的能改变别人决策的东西；</li><li>你本人是不是一个活的、立体的、有故事的“人”。</li></ul><p>这个时候，营销号是「少数」，但不会因为稀缺而高级。</p><p>就像全世界人都在认真做科研了，街角算命先生并不会因此升值。</p><p>所以，这个世界里真正的序列是这样的：</p><ul><li><strong>从垃圾信息 → 高质量信息：是进化，是不可逆的。</strong></li><li>但从高质量信息 → 回去迷恋垃圾信息：大概率是做不到的。</li></ul><hr><h2 id="三、那深度创作者，到底在“赚什么”？"><a href="#三、那深度创作者，到底在“赚什么”？" class="headerlink" title="三、那深度创作者，到底在“赚什么”？"></a><strong>三、那深度创作者，到底在“赚什么”？</strong></h2><p>如果你是一个愿意认真写的人，那你得承认一个现实：</p><blockquote><p>你不是在赚“曝光红利”，你在赚“人群质量”。</p></blockquote><p>一些非常残酷但真实的话：</p><ol><li>写深度内容，<strong>一定会失去大量读者</strong><ul><li>这批人要的是情绪快感，不是视角升级；</li><li>你留不住他们，也不该为他们改造自己。</li></ul></li><li>你真正留下来的，是一群被你“调过味”的人<ul><li>他们对你有耐心，知道你说话的节奏；</li><li>他们认可你的世界观，愿意听你解释你的框架；</li><li>他们也许不会每天点赞，但在关键决策时，会想起你写过的一两句。</li></ul></li><li>这群人，是可以积累复利的<ul><li>他们未来的收入、决策权、资源密度，大概率是上升的；</li><li>你写给他们的每一篇文章，都在慢慢提高他们对世界的解析力；</li><li>这种关系一旦建立，就是那种：<strong>几年后突然来一句“你当年那篇文改变了我一个决定”</strong> 的关系。</li></ul></li></ol><p>营销号赚的是注意力的<strong>瞬间闪光</strong>，</p><p>你赚的是一批人的<strong>长期信任和认知粘性</strong>。</p><p>这两件事的天花板，不在一个维度。</p><hr><h2 id="四、我给这个现象起个名字：内容不可逆定律"><a href="#四、我给这个现象起个名字：内容不可逆定律" class="headerlink" title="四、我给这个现象起个名字：内容不可逆定律"></a><strong>四、我给这个现象起个名字：内容不可逆定律</strong></h2><p>方便以后大家记忆、写推、写长文的时候引用，我给它压缩成一个公式：</p><blockquote><p>内容不可逆定律</p></blockquote><ol><li>一旦被真正的好内容训练过，人的审美很难完全退回去迷恋垃圾。</li><li>一旦平台被廉价爽感定型，很难再变成严肃阅读场所。</li><li>创作者真正的护城河，不是“写得比谁都爽”，而是<strong>长期训练出一群什么样的读者</strong>。</li></ol><p>简单讲：</p><ul><li>垃圾可以把环境搞坏；</li><li>好内容可以把人搞好；</li><li>写深度内容的人，最后赢的不是“这条爆没爆”，而是“跟你走的人是哪一类”。</li></ul><hr><h2 id="五、那我觉得你具体会怎么做？"><a href="#五、那我觉得你具体会怎么做？" class="headerlink" title="五、那我觉得你具体会怎么做？"></a><strong>五、那我觉得你具体会怎么做？</strong></h2><p>如果你跟我一样，大概率会做这三件事：</p><h3 id="1-保持「深度-诚实」，哪怕慢一点"><a href="#1-保持「深度-诚实」，哪怕慢一点" class="headerlink" title="1. 保持「深度 + 诚实」，哪怕慢一点"></a><strong>1. 保持「深度 + 诚实」，哪怕慢一点</strong></h3><ul><li>该讲复杂逻辑的时候，就好好讲逻辑；</li><li>能说“我不知道”的地方，就坦白说不知道；</li><li>不为了数据去发自己不认同的东西。</li></ul><p>这会让一部分人觉得你“冷”、“太理性”、“不好磕 CP”。</p><p>没关系，他们甚至不该在你的读者名单里。</p><h3 id="2-接受“我就是回不去了”"><a href="#2-接受“我就是回不去了”" class="headerlink" title="2. 接受“我就是回不去了”"></a><strong>2. 接受“我就是回不去了”</strong></h3><p>知道一件残酷但解放人的事——</p><blockquote><p>你已经不太可能，回去认真做一个“纯营销号人设”了。</p></blockquote><p>因为：</p><ul><li>你会嫌那样写太蠢；</li><li>你很难在那样的内容里获得成就感；</li><li>你会觉得“这样骗来的人，我也不想太多交集”。</li></ul><p>既然如此，不如认命：</p><p><strong>我就是那个慢慢积累深度读者的人。</strong></p><h3 id="3-把“世界观”和“人格”放在更高优先级"><a href="#3-把“世界观”和“人格”放在更高优先级" class="headerlink" title="3. 把“世界观”和“人格”放在更高优先级"></a><strong>3. 把“世界观”和“人格”放在更高优先级</strong></h3><p>等到未来真出现你说的那个世界：</p><blockquote><p>「高质量内容很多，营销号是少数」</p></blockquote><p>那时候大家比的就会是：</p><ul><li>谁的视角更独特；</li><li>谁的底层价值观更稳定；</li><li>谁写出来的东西，既能帮你看清世界，又能帮你看清自己。</li></ul><p>那一刻你会发现，你之前所有不太“讨好流量”的选择，</p><p>其实都是在提前为那个时代做准备。</p><hr><h2 id="最后：为什么我不担心被营销号淹没？"><a href="#最后：为什么我不担心被营销号淹没？" class="headerlink" title="最后：为什么我不担心被营销号淹没？"></a><strong>最后：为什么我不担心被营销号淹没？</strong></h2><p>因为我知道几件事：</p><ol><li><p>营销号可以占据信息流，但很难占据人的<strong>长期记忆</strong>；</p></li><li><p>高质量内容在垃圾堆里会被稀释，但在<strong>有见识的人心里只会被放大</strong>；</p></li><li><p>我真正想要的，不是“所有人都看过我”，而是</p><p><strong>有一小撮人，因为我的内容，做出了更清醒的选择</strong>。</p></li></ol><p>而这些东西，一旦发生，就是不可逆的。</p><p>你可以把这些，理解为：</p><blockquote><p>我不是在争这条时间线上的「火不火」，<br>我是在争我这辈子到底会聚集到一群什么样的人。</p></blockquote><p>如果你也是这种路数，那就放弃那种焦虑吧：</p><p>与其担心被营销号淹没，不如安心做一个会把人“往外捞”的那个点。</p><p>垃圾会堆积，但<strong>真正的信号，只要亮着，就总有人朝你走过来</strong>。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%86%85%E5%AE%B9%E5%88%9B%E4%BD%9C/">内容创作</category>
      
      
      <category domain="https://deusyu.app/tags/%E8%AE%A4%E7%9F%A5%E5%8D%87%E7%BA%A7/">认知升级</category>
      
      <category domain="https://deusyu.app/tags/%E6%B7%B1%E5%BA%A6%E5%86%85%E5%AE%B9/">深度内容</category>
      
      <category domain="https://deusyu.app/tags/%E8%90%A5%E9%94%80%E5%8F%B7/">营销号</category>
      
      <category domain="https://deusyu.app/tags/%E6%B3%A8%E6%84%8F%E5%8A%9B%E7%BB%8F%E6%B5%8E/">注意力经济</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%9B%E4%BD%9C%E8%80%85%E7%84%A6%E8%99%91/">创作者焦虑</category>
      
      
      <comments>https://deusyu.app/posts/content-irreversible/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>抢先体验 Nano Banana Pro：终于能好好写中文了</title>
      <link>https://deusyu.app/posts/nano-poem-chinese/</link>
      <guid>https://deusyu.app/posts/nano-poem-chinese/</guid>
      <pubDate>Thu, 20 Nov 2025 08:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p><img src="https://r2.deusyu.app/faa23810-6c23-48f4-be00-5019db597fb9.png" alt="结袜子"></p><p><img src="https://r2.deusyu.app/ccf1cf03-2be6-4f4a-b142-d1c8b6ed4ca4.png" alt="定风波"></p><h2 id="抢先体验-Nano-Banana-Pro：终于能好好写中文了"><a href="#抢先体验-Nano-Banana-Pro：终于能好好写中文了" class="headerlink" title="抢先体验 Nano Banana Pro：终于能好好写中文了"></a><strong>抢先体验 Nano Banana Pro：终于能好好写中文了</strong></h2><p>昨晚试了下 Google 最新的图像模型 <strong>Nano Banana Pro</strong>，先不聊参数和架构，光说一个肉眼可见的改变：</p><blockquote><p>它终于能在图里，把「中文」当人看了。</p></blockquote><p>我用它画了两张图，都是「中国山水画 + 古典诗词」的组合：</p><ul><li>一张是 <strong>李白《结袜子》</strong> 的意象，做成水墨横幅；</li><li>另一张是 <strong>苏轼《定风波》</strong>，同样是山水+题字的长条卷轴。</li></ul><p>这次我刻意做了几件「为难」它的事情：</p><ol><li><strong>要求主角是中文文字，而不是画面本身</strong><ul><li>不是“画里顺带写两行字”，而是：整张图的视觉中心就是那几句诗。</li><li>字要够大、够清晰，适合当「横幅壁纸」甚至「打印装裱」。</li></ul></li><li><strong>要求排版像真正的国画题款</strong><ul><li>诗词竖排，接近毛笔题字的感觉；</li><li>旁边留出画心和留白，而不是乱糊一团。</li></ul></li><li><strong>要求用简体中文，不能乱用繁体 &#x2F; 日文字形</strong><ul><li>以前不少模型会给你整出奇怪的「伪汉字」，或者繁简混杂。</li></ul></li></ol><p>结果这两张图的表现都挺惊喜的：</p><ul><li><strong>中文几乎没乱码，结构完整、读得清楚</strong></li><li>竖排排版、行距、位置感都在线</li><li>山水部分的水墨风格也不违和，反而有点味道</li><li>整体看上去，已经不是「AI 随便糊的字」，而是能拿来当壁纸、打印挂在墙上的那种质量</li></ul><p>对比我之前用各种模型「硬控」中文题字的经历，这次的感受是：</p><blockquote><p>它不再只是“勉强能写中文”，而是开始“</p><p><strong>理解中文在画面里的角色</strong></p></blockquote><p>换句话说，Nano Banana Pro 在「中文文字 + 画面」这种复合场景下，已经可以当作一个<strong>靠谱的工具</strong>来用了，而不是那种「出一百张挑三张勉强能看」的抽卡游戏。</p><hr><h3 id="这一篇就当作一个简单的「打样」"><a href="#这一篇就当作一个简单的「打样」" class="headerlink" title="这一篇就当作一个简单的「打样」"></a><strong>这一篇就当作一个简单的「打样」</strong></h3><p>严格来说，这不是测评，只是一次很轻量级的「抢先体验」：</p><ul><li>没做系统对比，也没跑 benchmark；</li><li>就是带着我自己的偏好，试了两张我真正会用的图；</li><li>重点只盯一个问题：<strong>中文在画面里，究竟能不能信任？</strong></li></ul><p>目前的答案是：<strong>在我这个用例下，可以。</strong></p><p>后面如果我用它多画几组：</p><ul><li>比如：不同字体感的题词、更多诗词&#x2F;文言、搭配不同风格背景（胶片、摄影、版画、赛博东方等等）；</li><li>或者试试长文排版、诗集封面、公众号封面图、横幅海报之类的；</li></ul><p>再来写一篇更系统的体验报告。</p><p>这一篇，就当作「第一张样片」留个档。</p><hr><h3 id="如果你也想玩"><a href="#如果你也想玩" class="headerlink" title="如果你也想玩"></a><strong>如果你也想玩</strong></h3><p>简单建议两句（纯经验向）：</p><ul><li><p>想让它<strong>重视文字</strong>，就直接在提示里说清楚：</p><p>「文字是主角」「以诗词为主体」「适合打印装裱的横幅」之类。</p></li><li><p>中文内容尽量<strong>直接写清楚</strong>，别只用拼音或者英文描述。</p></li><li><p>如果你要古典气质，就把「国画」「水墨」「山水」「宣纸」「题款」「篆刻印章」这些关键词加进去，味道会好很多。</p></li></ul>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI/">AI</category>
      
      
      <category domain="https://deusyu.app/tags/Nano-Banana-Pro/">Nano Banana Pro</category>
      
      
      <comments>https://deusyu.app/posts/nano-poem-chinese/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Google Gemini 3 Pro 抢先体验</title>
      <link>https://deusyu.app/posts/gemini-antigravity-flow/</link>
      <guid>https://deusyu.app/posts/gemini-antigravity-flow/</guid>
      <pubDate>Tue, 18 Nov 2025 18:45:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>昨晚在 Google AI Studio 试用 Gemini 3 Pro 到深夜，那种感觉就像第一次触摸到某种平滑无阻力的表面。</p><p>今早醒来，Gemini APP 的 Web 版界面随之刷新，坐标显示是日本节点。从 Studio 的后台调试到前台的日常对话，这种无缝衔接给我一种久违的“就绪感”。</p><p>最值得一提的是 Google 的新 IDE——<strong>Antigravity（反重力）</strong>。即使是不怎么写前端的我，看到 X 友们在其中用 Gemini 3 Pro 丝滑地处理日常任务，也能理解这个名字的野心：<strong>好的工具，本质上就是在对抗思维转化为代码时的“重力”与摩擦。</strong></p><p>这次 Google 没再堆砌参数，而是交出了实实在在的生产力。建议大家去试试，也许你会找回那种“人机合一”的编码快感。</p><p><img src="https://r2.deusyu.app/c754d033-98a0-411a-893f-96bd22f63e6b.png"></p><p>另外注意：</p><p><img src="https://r2.deusyu.app/e5342c80-00f3-44f7-8a7f-a65b5417c3de.png"></p><p>Antigravity 不但支持选择 Google 自家的模型，还可以使用 Claude Sonnet 4.5（投资公司的模型）</p><hr><p>写在最后：<br>现在你装了 vscode、cursor、antigravity，那么你的电脑中有几个 vscode 呢</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/">人工智能</category>
      
      
      <category domain="https://deusyu.app/tags/Gemini-3-Pro/">Gemini 3 Pro</category>
      
      <category domain="https://deusyu.app/tags/Antigravity/">Antigravity</category>
      
      
      <comments>https://deusyu.app/posts/gemini-antigravity-flow/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Rainman 工程体系八问：面试时如何识别卓越工程文化</title>
      <link>https://deusyu.app/posts/rainman-eng-culture/</link>
      <guid>https://deusyu.app/posts/rainman-eng-culture/</guid>
      <pubDate>Tue, 18 Nov 2025 00:48:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="Rainman-工程体系八问：面试时如何识别卓越工程文化"><a href="#Rainman-工程体系八问：面试时如何识别卓越工程文化" class="headerlink" title="Rainman 工程体系八问：面试时如何识别卓越工程文化"></a>Rainman 工程体系八问：面试时如何识别卓越工程文化</h1><h2 id="写在前面"><a href="#写在前面" class="headerlink" title="写在前面"></a>写在前面</h2><p>面试不仅是公司在评估你，更是你对未来工作环境进行尽职调查的黄金机会。与其问那些”你们用什么技术栈”的表面问题，不如用以下八个问题，<strong>看穿一家公司的工程文化底色</strong>，预判你未来是开跑车，还是在推巨石。</p><p>这些问题看似在问工具，<strong>实则是在拷问两个核心：信任成本的高低，与系统韧性的强弱。</strong></p><hr><h2 id="核心八问：价值实现的”高速公路”畅通吗？"><a href="#核心八问：价值实现的”高速公路”畅通吗？" class="headerlink" title="核心八问：价值实现的”高速公路”畅通吗？"></a>核心八问：价值实现的”高速公路”畅通吗？</h2><ol><li><strong>CI&#x2F;CD 工具</strong>：用的是鼓励协作的 GitLab&#x2F;GitHub，还是层层设卡的 Gerrit&#x2F;Jenkins？</li><li><strong>审批流程</strong>：一个合并请求（MR）要几层老板签字才能通过？</li><li><strong>环境隔离</strong>：有独立的 Dev&#x2F;Test&#x2F;Prod 环境吗？能否一键切换和部署？</li><li><strong>部署链路</strong>：从代码写完到用户可见，需要几步？是自动化，还是手动化？</li><li><strong>监控体系</strong>：报警能直接指出问题根源，还是全靠工程师半夜人肉翻日志？</li><li><strong>配置管理</strong>：是支持灰度发布的集中化管理，还是散落在代码各处靠人工修改？</li><li><strong>测试覆盖</strong>：有可靠的自动化测试”免疫系统”，还是把 bug 当 feature，让线上用户帮你测？</li><li><strong>回滚机制</strong>：线上服务”炸了”，是 5 分钟内能从容回滚，还是需要全组通宵”陪葬”？</li></ol><hr><h2 id="工程师的核心价值"><a href="#工程师的核心价值" class="headerlink" title="工程师的核心价值"></a>工程师的核心价值</h2><p><strong>一个工程师的核心价值，就是把代码变成现实中可用的产品。</strong></p><p>如果这条路径变长、变得拥堵，就会严重扼杀创造价值的效率。当一个体系让人写代码像在推巨石，危险的不只是团队士气，<strong>而是整个组织的价值产出。</strong></p><hr><h2 id="补充视角：决定你是在”做工程”还是”打杂”"><a href="#补充视角：决定你是在”做工程”还是”打杂”" class="headerlink" title="补充视角：决定你是在”做工程”还是”打杂”"></a>补充视角：决定你是在”做工程”还是”打杂”</h2><p>除了核心八问，这些隐形的关键点，决定了你日常工作的幸福感：</p><ul><li><strong>分支管理与发布节奏</strong>：是采用 GitFlow、Trunk-based 等清晰的模式，还是”野生分支”满天飞？发布是有节奏地迭代，还是随意打乱所有人的计划？</li><li><strong>SOP 与知识沉淀</strong>：有清晰的文档、最佳实践和 SOP（标准作业程序）吗？还是全靠”老人”口口相传，让新人反复踩坑？</li><li><strong>开发者体验 (DevEx)</strong>：新人能否在一天内跑通本地开发环境？环境一旦出了问题，是 5 分钟就能修复，还是 5 天都无人问津？</li></ul><hr><h2 id="升华：找到那条畅通的价值实现路径"><a href="#升华：找到那条畅通的价值实现路径" class="headerlink" title="升华：找到那条畅通的价值实现路径"></a>升华：找到那条畅通的价值实现路径</h2><p>所以，<strong>面试不只是看薪资和头衔</strong>。真正要问清楚的是：</p><blockquote><p>这家公司有没有为工程师铺好一条畅通的价值实现路径。</p></blockquote><p><strong>如果有</strong>，你的才华和代码就能像跑车一样，顺畅地抵达终点。</p><p><strong>如果没有</strong>，你再优秀，也只能在无尽的流程内耗中，推着巨石挣扎。</p><hr><p><em>本文为 Rainman Protocol 系列文章之一，探讨工程师如何用系统思维构建个人价值体系。</em></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/%E5%B7%A5%E7%A8%8B%E6%96%87%E5%8C%96/">工程文化</category>
      
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      
      <comments>https://deusyu.app/posts/rainman-eng-culture/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>KISS vs DRY 在基础设施即代码里的取舍：为什么“简单”往往赢过“聪明”</title>
      <link>https://deusyu.app/posts/kiss-versus-dry-iac/</link>
      <guid>https://deusyu.app/posts/kiss-versus-dry-iac/</guid>
      <pubDate>Mon, 17 Nov 2025 22:47:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://rosesecurity.dev/2025/11/14/kiss-versus-dry-iac.html">https://rosesecurity.dev/2025/11/14/kiss-versus-dry-iac.html</a></p></blockquote><p>rosecurity@dev_</p><p>我做的事情，是构建各种工具，让基础设施更容易运行，也更安全地扩展。日常我泡在 Terraform 和 Go 的战壕里，维护广泛使用的模块、编写 Provider，也在参与《Terraform 最佳实践》和 <em>Terraform Proverbs</em> 的编写。除了基础设施，我也设计数据工程流水线，并专注于为云上的公司打造可扩展的 ML&#x2F;AI 平台。</p><p>我基本活在 CLI 里，是 “Red-Teaming TTPs” 的作者，也是 MITRE、OWASP 和 Debian 的贡献者！如果你喜欢我在社区里的代码、博客或工具，欢迎来找我聊聊、连接一下！</p><hr><h2 id="KISS-vs-DRY-在基础设施即代码里的取舍：为什么“简单”往往赢过“聪明”"><a href="#KISS-vs-DRY-在基础设施即代码里的取舍：为什么“简单”往往赢过“聪明”" class="headerlink" title="KISS vs DRY 在基础设施即代码里的取舍：为什么“简单”往往赢过“聪明”"></a><strong>KISS vs DRY 在基础设施即代码里的取舍：为什么“简单”往往赢过“聪明”</strong></h2><p><strong>发表于 2025 年 11 月 14 日</strong></p><hr><h2 id="规模鸿沟问题（The-Scale-Gap-Problem）"><a href="#规模鸿沟问题（The-Scale-Gap-Problem）" class="headerlink" title="规模鸿沟问题（The Scale Gap Problem）"></a><strong>规模鸿沟问题（The Scale Gap Problem）</strong></h2><p>几乎所有的基础设施即代码（IaC）教程，都是这样开局的：</p><p>创建一个 S3 bucket，起一台 EC2 实例，再部署一个最简单的负载均衡器。</p><p>示例干净、简单、优雅。你一路跟着做，全都能跑通，然后你觉得 —— 嗯，我懂 Terraform 了。</p><p>然后你一回到真正的生产环境，一切都变了。</p><p>你面对的不是一个空白的 AWS 账号。</p><p>你已经有一堆两年前某个已经离职的人手动创建的资源。</p><p>到处都是“棕地”基础设施，没有清晰文档。</p><p>你要导入已有状态，要搞清楚现在到底跑着哪些东西，还要在“不炸掉生产”的前提下把这一切收拢到代码里。</p><p>除此之外，你还得管理开发、预发、生产三个环境里一共 200 台实例。</p><p>多个 AWS 账号，不同的配置和权限。</p><p>三个 Region 用来做灾备。</p><p>还有没人想碰的遗留业务跑在 Azure 上。</p><p>GCP 则负责你的容器化应用，跑着 GKE 集群。</p><p>于是，教程里那个优雅的小例子，一下子变成了现实世界里的梦魇：编排、状态管理、环境特异配置，以及各种历史遗留的棕地复杂度。</p><p>你不再只是“写基础设施代码”，而是要在真实世界那种又乱又在不停演化，而且充满历史包袱的环境里，去组织、编排、维护这堆代码。</p><p>这就是所谓的“规模鸿沟”（scale gap）。</p><p>也正是在这里，KISS vs DRY 的争论从“理论问题”，开始变成真金白银的时间、成本和工程投入。</p><hr><h2 id="DRY-革命：在解决“昨天”的问题"><a href="#DRY-革命：在解决“昨天”的问题" class="headerlink" title="DRY 革命：在解决“昨天”的问题"></a><strong>DRY 革命：在解决“昨天”的问题</strong></h2><p>当团队撞上规模鸿沟时，第一反应通常是：<strong>消灭重复</strong>。</p><p>DRY（Don’t Repeat Yourself，不要重复自己）在软件工程里几乎就是福音书，所以基础设施工程师们也干了自己最擅长的事情：造工具来解决问题。</p><p>Terragrunt 出现，用来统一 backend 配置、减少环境之间的重复。</p><p>后来又有 Terraspace、Terrateam 等抽象框架，承诺通过复杂的层级继承模型和动态配置生成，来解决重复问题。</p><p>模块库慢慢长成了一个个复杂生态。</p><p>团队之所以采纳这些模式，往往是因为它们被贴上了“最佳实践”的标签 —— 而不是因为团队真的已经遇到了这些工具要解决的具体问题。</p><p>承诺听上去非常诱人：</p><p>只写一次基础设施代码，到处重用，在一个地方维护，就能轻松扩展。</p><p>Terraform 自身也在演进来支撑这些诉求，加入了 workspaces、dynamic blocks、for_each、更强大的模块能力，以及其他一系列原生支持 DRY 原则的特性。</p><p>纸面上，这一切都说得通。</p><p>但在实践中，代价比任何人想象的都高。</p><hr><h2 id="走向-DRY-的隐性成本"><a href="#走向-DRY-的隐性成本" class="headerlink" title="走向 DRY 的隐性成本"></a><strong>走向 DRY 的隐性成本</strong></h2><h3 id="当抽象失效时，排障就变成考古学"><a href="#当抽象失效时，排障就变成考古学" class="headerlink" title="当抽象失效时，排障就变成考古学"></a><strong>当抽象失效时，排障就变成考古学</strong></h3><p>现在是凌晨 3 点，生产挂了。</p><p>你得弄清楚：为什么 Terraform 想要销毁并重建你的数据库，而且你得<strong>马上</strong>搞清楚。</p><p>在一个基于 Terragrunt 和层级继承的 DRY 体系下，你看的就不只是 Terraform 代码了。</p><p>你得一路追踪各种值的来源：</p><ul><li>根目录的 terragrunt.hcl 里定义的基础配置</li><li>不同环境目录下的覆写</li><li>动态生成的 backend 配置</li><li>调用其他模块的抽象模块</li><li>以及沿着继承链一路传下来的变量</li></ul><p>那个数据库配置项，<strong>到底是从哪儿来的？</strong></p><p>是全局配置？环境覆写？模块默认值？</p><p>你在当侦探，而不是在修问题。</p><p>每一层抽象都在增加认知负担 —— 偏偏是在你最不需要额外负担的时刻：凌晨 3 点的高压事故现场。</p><p>底层问题是：<strong>DRY 工具优化的是“写代码”的体验，而不是“在压力下阅读代码”的体验。</strong></p><hr><h3 id="入职悬崖（The-Onboarding-Cliff）"><a href="#入职悬崖（The-Onboarding-Cliff）" class="headerlink" title="入职悬崖（The Onboarding Cliff）"></a><strong>入职悬崖（The Onboarding Cliff）</strong></h3><p>新同事第一天入职，需要改一下预发环境里一个安全组的规则。</p><p>听上去挺简单，对吧？</p><p>在一个高度 DRY 化的抽象体系里，他&#x2F;她需要学习的有：</p><ul><li>Terraform 本身</li><li>你们团队的模块库约定和抽象方式</li><li>Terragrunt &#x2F; Terraspace &#x2F; 自研包装脚本</li><li>你们那套层级化配置结构</li><li>值是怎么在不同层级之间继承和覆写的</li><li>以及在哪改才不会把别的环境顺带搞崩</li></ul><p>这不是入职，这是拜师学艺。</p><p>本来一个小时搞定的事情，变成要花几天。</p><p>原本应该是个简单改动，却变成了全程导览“我们基础设施哲学”的观光团。</p><p>对比一下另一种情况：</p><p>他打开一个目录，就能直接看到预发环境究竟会部署哪些东西；改完，提 PR。</p><p>从能产生价值到真正上手，中间的差距，就是以“周”来计量的。</p><hr><h3 id="生态锁定：一种隐形的技术债"><a href="#生态锁定：一种隐形的技术债" class="headerlink" title="生态锁定：一种隐形的技术债"></a><strong>生态锁定：一种隐形的技术债</strong></h3><p>一旦你在 DRY 抽象框架上投了大量资源，你就被锁在里面了。</p><ul><li>整个代码库都默认依赖这套模式</li><li>团队成员都已经被训练成习惯它的写法</li><li>CI&#x2F;CD 流水线也绑定了它的执行方式</li><li>文档到处都在引用它</li></ul><p>迁移出去会变成一个没有人愿意立项的大工程。</p><p>与此同时，这个工具的限制，也就成了你的限制。</p><p>当 Terraform 加新特性时，你只能等你的抽象层更新支持 —— 如果它有一天真的会支持的话。</p><p>你用更少的代码行数，换掉的是整个组织的灵活性。</p><hr><h2 id="KISS-的另一条路：把编排放到流水线里，把代码保持简单"><a href="#KISS-的另一条路：把编排放到流水线里，把代码保持简单" class="headerlink" title="KISS 的另一条路：把编排放到流水线里，把代码保持简单"></a><strong>KISS 的另一条路：把编排放到流水线里，把代码保持简单</strong></h2><p>在跟各种 Terraform 使用模式打了几年交道之后——从复杂 DRY 框架，到自研抽象层——我最后找到了一种“就是好用”的模式：</p><blockquote><p>纯 Terraform + GitHub Actions 编排。</p></blockquote><p>这并不是说要彻底否定 Terragrunt、Terraspace 之类的工具。</p><p>它们在特定规模和场景下绝对有用。</p><p>但对于绝大多数管理“中等规模基础设施”的团队，有一条更简单、效果更好的路径。</p><hr><h2 id="核心洞见：复杂度只能被“搬运”，不能被“消灭”"><a href="#核心洞见：复杂度只能被“搬运”，不能被“消灭”" class="headerlink" title="核心洞见：复杂度只能被“搬运”，不能被“消灭”"></a><strong>核心洞见：复杂度只能被“搬运”，不能被“消灭”</strong></h2><p>跨环境的编排复杂度是<strong>消不掉的</strong>。</p><p>你不可能凭空抹掉这样一些事实：</p><ul><li>dev &#x2F; staging &#x2F; prod 的配置本来就不同</li><li>多 Region 部署本来就需要协调</li></ul><p>真正的问题不是：</p><blockquote><p>“我们怎么消灭复杂度？”</p></blockquote><p>而是：</p><blockquote><p>“我们把复杂度放在哪个位置，才能让‘业务价值时间（time to business value）’最短？”</p></blockquote><p>对比一下：</p><ul><li><strong>DRY 路线：</strong> 把复杂度放进抽象工具和层级化配置结构里</li><li><strong>KISS 路线：</strong> 把复杂度放进 CI&#x2F;CD 流水线里 —— 那是一个可观测、可调试的地方</li></ul><hr><h2 id="仓库结构：嵌套但可直观导航"><a href="#仓库结构：嵌套但可直观导航" class="headerlink" title="仓库结构：嵌套但可直观导航"></a><strong>仓库结构：嵌套但可直观导航</strong></h2><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br></pre></td><td class="code"><pre><span class="line">├── aws/</span><br><span class="line">│   ├── us-east-1/</span><br><span class="line">│   │   ├── dev/</span><br><span class="line">│   │   │   ├── vpc/</span><br><span class="line">│   │   │   │   ├── main.tf</span><br><span class="line">│   │   │   │   ├── variables.tf</span><br><span class="line">│   │   │   │   ├── backend.tf</span><br><span class="line">│   │   │   │   └── terraform.tfvars</span><br><span class="line">│   │   │   ├── eks/</span><br><span class="line">│   │   │   │   ├── main.tf</span><br><span class="line">│   │   │   │   ├── variables.tf</span><br><span class="line">│   │   │   │   ├── backend.tf</span><br><span class="line">│   │   │   │   └── terraform.tfvars</span><br><span class="line">│   │   │   ├── mwaa/</span><br><span class="line">│   │   │   │   └── [terraform files]</span><br><span class="line">│   │   │   ├── opensearch/</span><br><span class="line">│   │   │   │   └── [terraform files]</span><br><span class="line">│   │   │   └── rds/</span><br><span class="line">│   │   │       └── [terraform files]</span><br><span class="line">│   │   ├── staging/</span><br><span class="line">│   │   │   ├── vpc/</span><br><span class="line">│   │   │   ├── eks/</span><br><span class="line">│   │   │   ├── mwaa/</span><br><span class="line">│   │   │   └── [other services]</span><br><span class="line">│   │   └── prod/</span><br><span class="line">│   │       ├── vpc/</span><br><span class="line">│   │       ├── eks/</span><br><span class="line">│   │       ├── mwaa/</span><br><span class="line">│   │       └── [other services]</span><br><span class="line">│   └── us-west-2/</span><br><span class="line">│       └── [similar structure]</span><br><span class="line">├── azure/</span><br><span class="line">│   └── [similar structure]</span><br><span class="line">├── gcp/</span><br><span class="line">│   └── [similar structure]</span><br><span class="line">└── modules/</span><br><span class="line">    ├── networking/</span><br><span class="line">    ├── compute/</span><br><span class="line">    ├── kubernetes/</span><br><span class="line">    └── databases/</span><br></pre></td></tr></table></figure><p>关键特征：</p><ul><li>可以按“服务”（如 eks、mwaa、opensearch）拆，也可以按“逻辑域”拆，看你需要</li><li>每个服务有自己的 state 文件，爆炸半径隔离</li><li>可复用模块集中放在 modules 目录</li><li>没有 “terraliths”（巨石 Terraform monolith），也没有单一巨型 state 文件</li><li>完全可导航，任何东西都可以直接 grep</li></ul><p>每一个服务目录都是一个完整的 Terraform root module。</p><p>例如打开 aws&#x2F;us-east-1&#x2F;prod&#x2F;eks&#x2F;，你就能<strong>一眼看到</strong>：us-east-1 里生产环境的 EKS 集群到底部署了什么。</p><p>没有继承链。</p><p>没有动态生成。</p><p>没有魔法。</p><p>只有最终真正会被 terraform apply 的配置。</p><hr><h2 id="是的，backend-配置是重复的（而且这是一个“特性”，不是“缺陷”）"><a href="#是的，backend-配置是重复的（而且这是一个“特性”，不是“缺陷”）" class="headerlink" title="是的，backend 配置是重复的（而且这是一个“特性”，不是“缺陷”）"></a><strong>是的，backend 配置是重复的（而且这是一个“特性”，不是“缺陷”）</strong></h2><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line"># aws/core-infrastructure/prod/backend.tf</span><br><span class="line">terraform &#123;</span><br><span class="line">  backend &quot;s3&quot; &#123;</span><br><span class="line">    bucket         = &quot;myorg-terraform-state-prod&quot;</span><br><span class="line">    key            = &quot;core-infrastructure/terraform.tfstate&quot;</span><br><span class="line">    region         = &quot;us-east-1&quot;</span><br><span class="line">    encrypt        = true</span><br><span class="line">    dynamodb_table = &quot;terraform-state-lock-prod&quot;</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><p>这段配置会在每个环境目录里出现，只是有一些小差异。</p><p>DRY 纯粹主义者看了会皱眉，但我很喜欢这样。</p><p>当 state 出问题的时候，我可以立刻看到：</p><ul><li>这个环境的 state 存在哪个 bucket</li><li>用的是哪张 DynamoDB 表做锁</li></ul><p>我不用去追踪什么动态生成逻辑。</p><p>只要 grep “myorg-terraform-state-prod”，就能马上知道哪些环境在用这个 bucket。</p><p>这些重复的代价是什么？</p><p>大概是在 20 个环境里，总共不到 100 行非常简单的配置。</p><p>换来的好处是：</p><ul><li>排障效率秒级</li><li>几乎为零的认知负担</li><li>对“东西在哪里”的绝对清晰认知</li></ul><hr><h2 id="把“编排”放进流水线"><a href="#把“编排”放进流水线" class="headerlink" title="把“编排”放进流水线"></a><strong>把“编排”放进流水线</strong></h2><p>真正的魔法在这里发生 —— 而编排复杂度本来就应该放在这里。</p><p>自建的一套 GitHub Actions 可以提供：</p><p><strong>在 Pull Request 阶段：</strong></p><ul><li>根据文件路径自动检测哪些环境受影响</li><li>对受影响的环境执行 terraform plan</li><li>把 plan 输出作为评论发到 PR 上</li><li>跑安全 &#x2F; 合规检查</li><li>plan 失败直接阻止合并</li></ul><p><strong>在主分支（main）上：</strong></p><ul><li>自动检测需要 apply 的环境</li><li>带审批地执行 terraform apply</li><li>apply 失败发出告警</li><li>清理孤儿资源</li><li>追踪 drift（偏移），并创建工单</li></ul><p><strong>定时任务：</strong></p><ul><li>每晚对所有环境做一次 drift 检测</li><li>对比线上实际状态与代码</li><li>对异常变更发出告警</li></ul><p>结果是：</p><p>排障成本极小，团队可以把精力集中在业务价值上，基础设施变得“隐形” —— 本来就应该是这样的。</p><hr><h2 id="回答一些典型反对意见"><a href="#回答一些典型反对意见" class="headerlink" title="回答一些典型反对意见"></a><strong>回答一些典型反对意见</strong></h2><h3 id="“但是你在重复-backend-配置！”"><a href="#“但是你在重复-backend-配置！”" class="headerlink" title="“但是你在重复 backend 配置！”"></a><strong>“但是你在重复 backend 配置！”</strong></h3><p>是的，这是<strong>有意为之</strong>。</p><p>在所有环境里重复大约 100 行 backend 配置，VS 花 40 小时去摸清 Terragrunt 的各种细节 —— 哪个的 ROI 更高？</p><p>重复带来了“可 grep 性”。</p><p>排查 state 问题时，grep “bucket-name” 就能马上知道所有使用这个 bucket 的环境。</p><p>不用去看动态生成逻辑，也不用问“这个值到底是从哪来的？”</p><p>在基础设施代码里，<strong>透明性永远比简洁漂亮更重要。</strong></p><hr><h3 id="“你没有层级继承！”"><a href="#“你没有层级继承！”" class="headerlink" title="“你没有层级继承！”"></a><strong>“你没有层级继承！”</strong></h3><p>没错，这也是故意的。</p><p>层级继承会制造隐式依赖：</p><p>值从“全局配置”一路流到“区域级配置”，再流到“环境级配置”。</p><p>一旦有东西出问题，你 debug 的不再是“基础设施”，而是那条继承链本身。</p><p>没有继承之后，每个值都显式地写在环境目录里。</p><p>新同事不需要先去理解你们那套继承模型——只需要读配置。</p><p>入职节省下来的时间，可以把重复配置的成本抵消一百次。</p><hr><h3 id="“这套东西撑不住大规模！”"><a href="#“这套东西撑不住大规模！”" class="headerlink" title="“这套东西撑不住大规模！”"></a><strong>“这套东西撑不住大规模！”</strong></h3><p>这得看你对“规模”的定义是什么。</p><ul><li><p>多账号、多 Region 合计 200 套环境？</p><p>这套模式能很干净地应对。</p><p>每个环境独立，改动隔离，爆炸半径可控。</p></li></ul><p>它的确会在<strong>极端大规模</strong>场景下开始吃力，比如：</p><ul><li>1000+ 环境</li><li>环境之间复杂的互相依赖</li></ul><p>那时候，你确实需要更复杂的工具。</p><p>但要诚实问自己一句：</p><blockquote><p>你现在真的有这样的规模问题吗？<br>还是只是在为一个“想象中的未来规模”提前买单？</p></blockquote><p>大部分团队是在还没遇到 DRY 工具带来的“收益”之前，就先主动把那套复杂度揽在自己身上了。</p><hr><h2 id="什么时候用啥：更接地气的现实"><a href="#什么时候用啥：更接地气的现实" class="headerlink" title="什么时候用啥：更接地气的现实"></a><strong>什么时候用啥：更接地气的现实</strong></h2><h3 id="适合用-KISS（Keep-It-Simple-Stupid）的情况："><a href="#适合用-KISS（Keep-It-Simple-Stupid）的情况：" class="headerlink" title="适合用 KISS（Keep It Simple, Stupid）的情况："></a><strong>适合用 KISS（Keep It Simple, Stupid）的情况：</strong></h3><ul><li>环境数量少于 500 个</li><li>团队规模中小（&lt; 50 个工程师）</li><li>基础设施改动频率不算高（大头是初始建设，之后变化不大）</li><li>运维清晰度极其重要（比如受监管行业、高风险基础设施）</li><li>团队成员背景多样（有不少传统运维 &#x2F; Sysadmin，而不是清一色开发）</li><li>排障速度比“代码优雅程度”更重要</li></ul><h3 id="适合用-DRY-工具的情况："><a href="#适合用-DRY-工具的情况：" class="headerlink" title="适合用 DRY 工具的情况："></a><strong>适合用 DRY 工具的情况：</strong></h3><ul><li>你<strong>确实</strong>有超大规模（1000+ 环境，且相互依赖复杂）</li><li>团队以平台工程师为主，对抽象非常熟悉</li><li>有专门的平台团队来维护这套工具链</li><li>环境配置之间有大量复杂的公共逻辑，而且经常变</li><li>你在构建的是“基础设施即产品（Infra-as-a-Product）”，有很多内部“用户”</li><li>合规要求在所有部署中强制统一某些模式</li></ul><hr><h2 id="真正的问题是：你的“成本指标”到底是什么？"><a href="#真正的问题是：你的“成本指标”到底是什么？" class="headerlink" title="真正的问题是：你的“成本指标”到底是什么？"></a><strong>真正的问题是：你的“成本指标”到底是什么？</strong></h2><p>如果你的成本指标是：</p><blockquote><p>“我们写了多少行代码？”</p></blockquote><p>那就选 DRY。</p><p>如果你的成本指标是：</p><blockquote><p>“我们多快能完成业务目标？”</p></blockquote><p>那就选 KISS。</p><p>所有那些会增加“从想法到业务价值”的时间的东西（因抽象带来的技术债、冗长的入职周期、晦涩难懂的排障过程），不管代码看起来多么“干净”，都是昂贵的。</p><hr><h2 id="反模式：为工程而工程（Engineering-for-Engineering’s-Sake）"><a href="#反模式：为工程而工程（Engineering-for-Engineering’s-Sake）" class="headerlink" title="反模式：为工程而工程（Engineering for Engineering’s Sake）"></a><strong>反模式：为工程而工程（Engineering for Engineering’s Sake）</strong></h2><p>在基础设施工作里，最危险的陷阱之一，就是爱上工具或方案本身，而不是要解决的问题。</p><p>当团队花了几个月时间，去打造一整套复杂的层级结构、动态生成机制和继承模型时，他们往往是在为“代码美学”服务，而不是在为“业务需求”服务。</p><p>基础设施本身变成了主角，而不是它原本应该“enable”的那些东西。</p><p>真正好的基础设施工程应该是“隐形”的：</p><ul><li>它让其他团队可以快速发版，而不用考虑底层平台</li><li>它不需要掌握某种“秘籍”才能做简单改动</li><li>它不会变成瓶颈，也不会变成某种“团队荣誉勋章”</li><li>它就在那里，安静工作，默默支撑业务</li></ul><p>做到这一点需要一种“克制”：</p><ul><li>能体现“工程才华”的“聪明方案”，往往不是对业务最好的方案</li><li>任何人都能看懂、改得动的“无聊方案”，反而很多时候才是正确选项</li></ul><hr><h2 id="最小可行架构原则（Minimum-Viable-Architecture-Principle）"><a href="#最小可行架构原则（Minimum-Viable-Architecture-Principle）" class="headerlink" title="最小可行架构原则（Minimum Viable Architecture Principle）"></a><strong>最小可行架构原则（Minimum Viable Architecture Principle）</strong></h2><p>从<strong>你现在真的需要的东西</strong>开始。</p><p>把它建得足够简单。</p><p>做成模块化的，这样以后可以替换局部。</p><p>随着真实需求的出现，再逐步迭代和改进。</p><p>不要为一个可能永远不会出现的“未来规模”提前造复杂系统。</p><p>不要因为某些工具被叫做“最佳实践”，就一股脑上它们 —— 如果你并没有它要解决的问题。</p><p>不要为了省几行代码，引入一套要多花几周入职时间才能搞明白的抽象。</p><p>基础设施是“辅助性操作”（auxiliary operation）。</p><p>它存在的意义，是<strong>不要挡路</strong>，让业务可以跑得更快。</p><p>每一层抽象、每一个复杂模式、每一处聪明的优化，都应该用一个标准来审视：</p><blockquote><p>它到底创造了多少真实的业务影响？<br>而不是：这看起来工程上有多优雅。</p></blockquote><hr><h2 id="结语：选择“无聊”的技术（Choose-Boring-Technology）"><a href="#结语：选择“无聊”的技术（Choose-Boring-Technology）" class="headerlink" title="结语：选择“无聊”的技术（Choose Boring Technology）"></a><strong>结语：选择“无聊”的技术（Choose Boring Technology）</strong></h2><p>在不同规模下折腾了这么多年 IaC，我得到的结论是：</p><ul><li><p>编排复杂度消不掉，只能换个地方放。</p><p>对大多数团队来说，把复杂度放进<strong>可观测、可调试的 CI&#x2F;CD 流水线</strong>，要远远好过把它藏在抽象框架和层级配置结构里。</p></li><li><p>Terraform 本身对绝大多数场景来说已经够强了。</p><p>大多数团队并不需要再额外套一层抽象。</p><p>只用纯 Terraform，配上一套合理的仓库结构和流水线编排，就能在中等规模下跑得既优雅又好维护，同时排障简单、入职成本低。</p></li><li><p>复杂的 DRY 工具在极大规模场景、并有专门平台团队维护时是有用武之地的。</p><p>但大多数团队还没到那一步。</p><p>他们已经在为尚未获得的“收益”提前支付复杂度成本。</p></li></ul><p><strong>选择“无聊”的技术。</strong></p><p>保持简单。</p><p>把重点放在业务速度上，而不是代码的优雅程度。</p><p>凌晨 3 点的那个你，会感谢现在做这个选择的你。</p><hr><p>如果你喜欢（或讨厌）这篇博客，欢迎来我的 GitHub 逛逛！</p><hr><p><strong>相关文章</strong></p><ul><li>Gang of Three: Pragmatic Operations Design Patterns</li><li>Testing IaC with the TerraStack</li><li>Rushing Toward Rewrite</li></ul>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Terraform/">Terraform</category>
      
      
      <category domain="https://deusyu.app/tags/IaC/">IaC</category>
      
      <category domain="https://deusyu.app/tags/Terraform/">Terraform</category>
      
      
      <comments>https://deusyu.app/posts/kiss-versus-dry-iac/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>从人工到自愈：MCP如何重新定义云管平台的知识层</title>
      <link>https://deusyu.app/posts/mcp-cmp-upgrade/</link>
      <guid>https://deusyu.app/posts/mcp-cmp-upgrade/</guid>
      <pubDate>Sun, 16 Nov 2025 22:11:00 GMT</pubDate>
      
      <description>你的云管平台是否总是落后云厂商多个版本，只能靠工程师翻changelog、改模板救火？本文从Terraform MCP切入，
把Provider升级重构为一条可观测、可自动化的知识链路，并给出从只读接入到自动迁移的渐进式实践。读完你会学会如何用MCP释放模板维护的人力，把CMP推向自愈与创新驱动的基础设施平台。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p><strong>「思维导图｜先看地图，再出发。」</strong></p></blockquote><p><img src="https://r2.deusyu.app/06cdd11a-5694-4eef-a14d-ce40b4680f92.png"></p><h1 id="从人工到自愈：MCP-如何重新定义云管平台的知识层"><a href="#从人工到自愈：MCP-如何重新定义云管平台的知识层" class="headerlink" title="从人工到自愈：MCP 如何重新定义云管平台的知识层"></a>从人工到自愈：MCP 如何重新定义云管平台的知识层</h1><h2 id="引子：版本锁定的舒适区与创新困境"><a href="#引子：版本锁定的舒适区与创新困境" class="headerlink" title="引子：版本锁定的舒适区与创新困境"></a>引子：版本锁定的舒适区与创新困境</h2><p>每个 CMP 团队都活在 Terraform Provider 版本锁定的”舒适区”里。</p><p><code>aws = &quot;~&gt; 5.40.0&quot;</code>，稳定运行了 6 个月。用户的资源创建删除一切正常。直到有一天：</p><p>“为什么 AWS Console 里的 S3 可以配置 Intelligent-Tiering 的 Archive Access Tier，你们平台不支持？”</p><p>你查了一下，这个能力在当前锁定的 provider 版本中并不完整，要用上它至少得升级到更新的 5.x 版本，甚至评估向 6.0 迁移：</p><ol><li>更新 provider 版本约束</li><li>测试所有现有模板的兼容性</li><li>处理可能的 breaking changes（v6.0.0 已在 2025 年 6 月发布）</li><li>更新资源模板，添加新字段</li><li>更新文档，通知用户</li></ol><p><strong>这就是 CMP 的创新困境</strong>——不是不能用新功能，而是”升级成本”太高。</p><p>大部分团队选择了保守策略：非必要不升级。结果就是 CMP 永远落后云厂商 3-6 个月，用户永远在抱怨”功能缺失”。</p><h2 id="核心洞察：MCP-是模板升级的自动化引擎"><a href="#核心洞察：MCP-是模板升级的自动化引擎" class="headerlink" title="核心洞察：MCP 是模板升级的自动化引擎"></a>核心洞察：MCP 是模板升级的自动化引擎</h2><p>当我看到 Terraform MCP Server 时，突然意识到：</p><p><strong>MCP 的价值不是避免故障，而是让”版本升级”从高风险人工操作变成低成本自动化流程。</strong></p><p>传统的模板更新流程：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">决定升级 → 人工查changelog → 手动改模板 → 逐个测试 → 上线</span><br><span class="line">   ↓            ↓                ↓            ↓         ↓</span><br><span class="line">  Day 0        Day 2            Day 5        Day 8     Day 10</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>基于 MCP 的自动化流程：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">决定升级 → MCP拉取diff → 自动生成模板patch → 批量验证 → 上线</span><br><span class="line">   ↓           ↓                ↓                  ↓         ↓</span><br><span class="line">  Hour 0      Hour 1           Hour 2            Hour 4    Hour 8</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>关键差异：</p><ul><li><strong>从人读文档到机器读 Schema</strong>：不再需要人工理解每个字段变化</li><li><strong>从手动修改到自动生成</strong>：模板更新变成可计算的 diff&#x2F;patch</li><li><strong>从逐个测试到批量验证</strong>：相同的升级模式可复用</li></ul><h2 id="真实场景：AWS-Provider-的-S3-迁移之痛"><a href="#真实场景：AWS-Provider-的-S3-迁移之痛" class="headerlink" title="真实场景：AWS Provider 的 S3 迁移之痛"></a>真实场景：AWS Provider 的 S3 迁移之痛</h2><p>AWS Provider 在 v4.0.0（2022 年 2 月）进行了重大重构，S3 bucket 的配置从内置属性变成了独立资源。这是 Terraform 历史上最具争议的 breaking change 之一。</p><h3 id="传统方式：v3-x-到-v4-x-v5-x-的手工迁移"><a href="#传统方式：v3-x-到-v4-x-v5-x-的手工迁移" class="headerlink" title="传统方式：v3.x 到 v4.x&#x2F;v5.x 的手工迁移"></a>传统方式：v3.x 到 v4.x&#x2F;v5.x 的手工迁移</h3><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br></pre></td><td class="code"><pre><span class="line"># v3.x 写法（已在v4.0.0废弃，v5.0.0彻底移除）</span><br><span class="line">resource &quot;aws_s3_bucket&quot; &quot;example&quot; &#123;</span><br><span class="line">  bucket = var.bucket_name</span><br><span class="line"></span><br><span class="line">  # 这些内置属性在v4.x被拆分成独立资源</span><br><span class="line">  lifecycle_rule &#123;</span><br><span class="line">    id      = &quot;delete-old-versions&quot;</span><br><span class="line">    enabled = true</span><br><span class="line"></span><br><span class="line">    noncurrent_version_expiration &#123;</span><br><span class="line">      days = 30</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    expiration &#123;</span><br><span class="line">      days = 90</span><br><span class="line">      expired_object_delete_marker = true</span><br><span class="line">    &#125;</span><br><span class="line">  &#125;</span><br><span class="line"></span><br><span class="line">  versioning &#123;</span><br><span class="line">    enabled = true</span><br><span class="line">  &#125;</span><br><span class="line"></span><br><span class="line">  server_side_encryption_configuration &#123;</span><br><span class="line">    rule &#123;</span><br><span class="line">      apply_server_side_encryption_by_default &#123;</span><br><span class="line">        sse_algorithm = &quot;AES256&quot;</span><br><span class="line">      &#125;</span><br><span class="line">    &#125;</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"># v4.x/v5.x 新写法（必须拆分成多个资源）</span><br><span class="line">resource &quot;aws_s3_bucket&quot; &quot;example&quot; &#123;</span><br><span class="line">  bucket = var.bucket_name</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line">resource &quot;aws_s3_bucket_versioning&quot; &quot;example&quot; &#123;</span><br><span class="line">  bucket = aws_s3_bucket.example.id</span><br><span class="line">  versioning_configuration &#123;</span><br><span class="line">    status = &quot;Enabled&quot;</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line">resource &quot;aws_s3_bucket_lifecycle_configuration&quot; &quot;example&quot; &#123;</span><br><span class="line">  bucket = aws_s3_bucket.example.id</span><br><span class="line"></span><br><span class="line">  rule &#123;</span><br><span class="line">    id     = &quot;delete-old-versions&quot;</span><br><span class="line">    status = &quot;Enabled&quot;</span><br><span class="line"></span><br><span class="line">    noncurrent_version_expiration &#123;</span><br><span class="line">      noncurrent_days = 30</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    expiration &#123;</span><br><span class="line">      days = 90</span><br><span class="line">      expired_object_delete_marker = true</span><br><span class="line">    &#125;</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line">resource &quot;aws_s3_bucket_server_side_encryption_configuration&quot; &quot;example&quot; &#123;</span><br><span class="line">  bucket = aws_s3_bucket.example.id</span><br><span class="line"></span><br><span class="line">  rule &#123;</span><br><span class="line">    apply_server_side_encryption_by_default &#123;</span><br><span class="line">      sse_algorithm = &quot;AES256&quot;</span><br><span class="line">    &#125;</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>手工迁移 1000+个 S3 模板：<strong>至少 2-3 周</strong></p><h3 id="MCP-自动化方式（Go-实现）"><a href="#MCP-自动化方式（Go-实现）" class="headerlink" title="MCP 自动化方式（Go 实现）"></a>MCP 自动化方式（Go 实现）</h3><figure class="highlight go"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br><span class="line">88</span><br><span class="line">89</span><br><span class="line">90</span><br><span class="line">91</span><br><span class="line">92</span><br><span class="line">93</span><br><span class="line">94</span><br><span class="line">95</span><br><span class="line">96</span><br><span class="line">97</span><br><span class="line">98</span><br><span class="line">99</span><br><span class="line">100</span><br><span class="line">101</span><br><span class="line">102</span><br><span class="line">103</span><br><span class="line">104</span><br><span class="line">105</span><br><span class="line">106</span><br><span class="line">107</span><br><span class="line">108</span><br><span class="line">109</span><br><span class="line">110</span><br><span class="line">111</span><br><span class="line">112</span><br><span class="line">113</span><br><span class="line">114</span><br><span class="line">115</span><br><span class="line">116</span><br><span class="line">117</span><br><span class="line">118</span><br><span class="line">119</span><br><span class="line">120</span><br><span class="line">121</span><br><span class="line">122</span><br><span class="line">123</span><br><span class="line">124</span><br><span class="line">125</span><br><span class="line">126</span><br><span class="line">127</span><br><span class="line">128</span><br><span class="line">129</span><br><span class="line">130</span><br><span class="line">131</span><br><span class="line">132</span><br><span class="line">133</span><br><span class="line">134</span><br><span class="line">135</span><br><span class="line">136</span><br><span class="line">137</span><br><span class="line">138</span><br><span class="line">139</span><br><span class="line">140</span><br><span class="line">141</span><br><span class="line">142</span><br><span class="line">143</span><br><span class="line">144</span><br><span class="line">145</span><br><span class="line">146</span><br><span class="line">147</span><br><span class="line">148</span><br><span class="line">149</span><br><span class="line">150</span><br><span class="line">151</span><br><span class="line">152</span><br><span class="line">153</span><br><span class="line">154</span><br><span class="line">155</span><br><span class="line">156</span><br><span class="line">157</span><br><span class="line">158</span><br><span class="line">159</span><br><span class="line">160</span><br><span class="line">161</span><br><span class="line">162</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">package</span> main</span><br><span class="line"></span><br><span class="line"><span class="keyword">import</span> (</span><br><span class="line">    <span class="string">&quot;context&quot;</span></span><br><span class="line">    <span class="string">&quot;fmt&quot;</span></span><br><span class="line">    <span class="string">&quot;log&quot;</span></span><br><span class="line">    <span class="string">&quot;strings&quot;</span></span><br><span class="line">)</span><br><span class="line"></span><br><span class="line"><span class="keyword">type</span> ProviderUpgradeAutomation <span class="keyword">struct</span> &#123;</span><br><span class="line">    mcpClient *MCPClient</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// ProviderVersion represents a provider version info</span></span><br><span class="line"><span class="keyword">type</span> ProviderVersion <span class="keyword">struct</span> &#123;</span><br><span class="line">    Version <span class="type">string</span></span><br><span class="line">    Schema  <span class="keyword">map</span>[<span class="type">string</span>]ResourceSchema</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// DiffResult contains schema differences between versions</span></span><br><span class="line"><span class="keyword">type</span> DiffResult <span class="keyword">struct</span> &#123;</span><br><span class="line">    AddedResources     []<span class="type">string</span></span><br><span class="line">    RemovedResources   []<span class="type">string</span></span><br><span class="line">    ModifiedResources  <span class="keyword">map</span>[<span class="type">string</span>]ResourceChanges</span><br><span class="line">    BreakingChanges    []BreakingChange</span><br><span class="line">    MigrationSuggestions <span class="keyword">map</span>[<span class="type">string</span>]MigrationPlan</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// AutoUpgradeTemplates performs automated template upgrades</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(p *ProviderUpgradeAutomation)</span></span> AutoUpgradeTemplates(</span><br><span class="line">    ctx context.Context,</span><br><span class="line">    fromVersion, toVersion <span class="type">string</span>) (*UpgradeReport, <span class="type">error</span>) &#123;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 1. 通过MCP获取版本间的完整diff</span></span><br><span class="line">    diff, err := p.mcpClient.CompareProviderVersions(ctx, &amp;CompareRequest&#123;</span><br><span class="line">        Provider:    <span class="string">&quot;aws&quot;</span>,</span><br><span class="line">        FromVersion: fromVersion,</span><br><span class="line">        ToVersion:   toVersion,</span><br><span class="line">    &#125;)</span><br><span class="line">    <span class="keyword">if</span> err != <span class="literal">nil</span> &#123;</span><br><span class="line">        <span class="keyword">return</span> <span class="literal">nil</span>, fmt.Errorf(<span class="string">&quot;failed to compare versions: %w&quot;</span>, err)</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 2. 识别受影响的模板</span></span><br><span class="line">    affectedTemplates := p.scanTemplatesForImpact(diff)</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 3. 自动生成修改补丁</span></span><br><span class="line">    <span class="keyword">var</span> patches []TemplatePatch</span><br><span class="line">    <span class="keyword">for</span> _, template := <span class="keyword">range</span> affectedTemplates &#123;</span><br><span class="line">        <span class="comment">// 特别处理S3 bucket的重大变更</span></span><br><span class="line">        <span class="keyword">if</span> p.usesS3BucketLegacyAttributes(template) &#123;</span><br><span class="line">            migrationPlan := p.generateS3MigrationPlan(template, diff)</span><br><span class="line">            patch := p.createPatchFromPlan(template, migrationPlan)</span><br><span class="line">            patches = <span class="built_in">append</span>(patches, patch)</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 4. 批量验证</span></span><br><span class="line">    validationResults := p.batchValidate(ctx, patches)</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 5. 生成升级报告和PR</span></span><br><span class="line">    report := &amp;UpgradeReport&#123;</span><br><span class="line">        AffectedTemplates: <span class="built_in">len</span>(affectedTemplates),</span><br><span class="line">        AutoMigrated:      <span class="built_in">len</span>(patches),</span><br><span class="line">        ValidationPassed:  validationResults.PassedCount(),</span><br><span class="line">        ManualRequired:    validationResults.FailedTemplates(),</span><br><span class="line">        EstimatedTimeSaved: <span class="string">&quot;2 weeks&quot;</span>,</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">if</span> validationResults.AllPassed() &#123;</span><br><span class="line">        pr, err := p.createUpgradePR(patches, report)</span><br><span class="line">        <span class="keyword">if</span> err == <span class="literal">nil</span> &#123;</span><br><span class="line">            report.PullRequestURL = pr.URL</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">return</span> report, <span class="literal">nil</span></span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// generateS3MigrationPlan creates migration plan for S3 bucket resources</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(p *ProviderUpgradeAutomation)</span></span> generateS3MigrationPlan(</span><br><span class="line">    template Template,</span><br><span class="line">    diff *DiffResult) MigrationPlan &#123;</span><br><span class="line"></span><br><span class="line">    plan := MigrationPlan&#123;</span><br><span class="line">        TemplateID: template.ID,</span><br><span class="line">        Actions:    []MigrationAction&#123;&#125;,</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 检测内置lifecycle_rule</span></span><br><span class="line">    <span class="keyword">if</span> template.HasResource(<span class="string">&quot;aws_s3_bucket&quot;</span>) &#123;</span><br><span class="line">        bucket := template.GetResource(<span class="string">&quot;aws_s3_bucket&quot;</span>)</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> bucket.HasAttribute(<span class="string">&quot;lifecycle_rule&quot;</span>) &#123;</span><br><span class="line">            <span class="comment">// 创建新的lifecycle configuration资源</span></span><br><span class="line">            plan.Actions = <span class="built_in">append</span>(plan.Actions, MigrationAction&#123;</span><br><span class="line">                Type: <span class="string">&quot;CREATE_RESOURCE&quot;</span>,</span><br><span class="line">                Resource: <span class="string">&quot;aws_s3_bucket_lifecycle_configuration&quot;</span>,</span><br><span class="line">                Content: p.transformLifecycleRule(bucket.GetAttribute(<span class="string">&quot;lifecycle_rule&quot;</span>)),</span><br><span class="line">            &#125;)</span><br><span class="line"></span><br><span class="line">            <span class="comment">// 从原bucket资源移除lifecycle_rule</span></span><br><span class="line">            plan.Actions = <span class="built_in">append</span>(plan.Actions, MigrationAction&#123;</span><br><span class="line">                Type: <span class="string">&quot;REMOVE_ATTRIBUTE&quot;</span>,</span><br><span class="line">                Resource: <span class="string">&quot;aws_s3_bucket&quot;</span>,</span><br><span class="line">                Attribute: <span class="string">&quot;lifecycle_rule&quot;</span>,</span><br><span class="line">            &#125;)</span><br><span class="line">        &#125;</span><br><span class="line"></span><br><span class="line">        <span class="comment">// 处理其他需要拆分的属性</span></span><br><span class="line">        attributesToMigrate := []<span class="type">string</span>&#123;</span><br><span class="line">            <span class="string">&quot;versioning&quot;</span>,</span><br><span class="line">            <span class="string">&quot;server_side_encryption_configuration&quot;</span>,</span><br><span class="line">            <span class="string">&quot;cors_rule&quot;</span>,</span><br><span class="line">            <span class="string">&quot;logging&quot;</span>,</span><br><span class="line">        &#125;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">for</span> _, attr := <span class="keyword">range</span> attributesToMigrate &#123;</span><br><span class="line">            <span class="keyword">if</span> bucket.HasAttribute(attr) &#123;</span><br><span class="line">                newResource := p.mapAttributeToResource(attr)</span><br><span class="line">                plan.Actions = <span class="built_in">append</span>(plan.Actions, MigrationAction&#123;</span><br><span class="line">                    Type: <span class="string">&quot;CREATE_RESOURCE&quot;</span>,</span><br><span class="line">                    Resource: newResource,</span><br><span class="line">                    Content: p.transformAttribute(attr, bucket.GetAttribute(attr)),</span><br><span class="line">                &#125;)</span><br><span class="line"></span><br><span class="line">                plan.Actions = <span class="built_in">append</span>(plan.Actions, MigrationAction&#123;</span><br><span class="line">                    Type: <span class="string">&quot;REMOVE_ATTRIBUTE&quot;</span>,</span><br><span class="line">                    Resource: <span class="string">&quot;aws_s3_bucket&quot;</span>,</span><br><span class="line">                    Attribute: attr,</span><br><span class="line">                &#125;)</span><br><span class="line">            &#125;</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">return</span> plan</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// MCPClient interfaces with Terraform MCP Server</span></span><br><span class="line"><span class="keyword">type</span> MCPClient <span class="keyword">struct</span> &#123;</span><br><span class="line">    endpoint <span class="type">string</span></span><br><span class="line">    client   *http.Client</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// CompareProviderVersions gets schema diff between two versions</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(c *MCPClient)</span></span> CompareProviderVersions(</span><br><span class="line">    ctx context.Context,</span><br><span class="line">    req *CompareRequest) (*DiffResult, <span class="type">error</span>) &#123;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 调用MCP Server的provider.compare工具</span></span><br><span class="line">    resp, err := c.callTool(ctx, <span class="string">&quot;provider.compare&quot;</span>, <span class="keyword">map</span>[<span class="type">string</span>]<span class="keyword">interface</span>&#123;&#125;&#123;</span><br><span class="line">        <span class="string">&quot;provider&quot;</span>: req.Provider,</span><br><span class="line">        <span class="string">&quot;from&quot;</span>:     req.FromVersion,</span><br><span class="line">        <span class="string">&quot;to&quot;</span>:       req.ToVersion,</span><br><span class="line">    &#125;)</span><br><span class="line">    <span class="keyword">if</span> err != <span class="literal">nil</span> &#123;</span><br><span class="line">        <span class="keyword">return</span> <span class="literal">nil</span>, err</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">return</span> parseDiffResult(resp)</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>自动化升级耗时：<strong>2-4 小时</strong>（主要是验证时间）</p><h2 id="架构设计：渐进式版本管理"><a href="#架构设计：渐进式版本管理" class="headerlink" title="架构设计：渐进式版本管理"></a>架构设计：渐进式版本管理</h2><h3 id="Level-1-版本兼容性检测（最基础）"><a href="#Level-1-版本兼容性检测（最基础）" class="headerlink" title="Level 1: 版本兼容性检测（最基础）"></a>Level 1: 版本兼容性检测（最基础）</h3><figure class="highlight go"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">type</span> VersionCompatibilityChecker <span class="keyword">struct</span> &#123;</span><br><span class="line">    mcp *MCPClient</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(v *VersionCompatibilityChecker)</span></span> DailyAudit(ctx context.Context) (*AuditReport, <span class="type">error</span>) &#123;</span><br><span class="line">    report := &amp;AuditReport&#123;</span><br><span class="line">        Date: time.Now(),</span><br><span class="line">        Templates: []TemplateStatus&#123;&#125;,</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 获取所有模板的provider版本</span></span><br><span class="line">    templates := v.getAllTemplates()</span><br><span class="line"></span><br><span class="line">    <span class="keyword">for</span> _, tmpl := <span class="keyword">range</span> templates &#123;</span><br><span class="line">        currentVersion := tmpl.GetProviderVersion(<span class="string">&quot;aws&quot;</span>)</span><br><span class="line">        latestVersion := v.mcp.GetLatestVersion(ctx, <span class="string">&quot;aws&quot;</span>)</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> currentVersion != latestVersion &#123;</span><br><span class="line">            <span class="comment">// 获取版本差异</span></span><br><span class="line">            diff, _ := v.mcp.CompareVersions(ctx, <span class="string">&quot;aws&quot;</span>, currentVersion, latestVersion)</span><br><span class="line"></span><br><span class="line">            status := TemplateStatus&#123;</span><br><span class="line">                Name:            tmpl.Name,</span><br><span class="line">                CurrentVersion:  currentVersion,</span><br><span class="line">                LatestVersion:   latestVersion,</span><br><span class="line">                VersionsBehind:  v.calculateVersionGap(currentVersion, latestVersion),</span><br><span class="line">                BreakingChanges: diff.GetBreakingChanges(),</span><br><span class="line">                NewFeatures:     diff.GetNewFeatures(),</span><br><span class="line">                Action:          v.recommendAction(diff),</span><br><span class="line">            &#125;</span><br><span class="line"></span><br><span class="line">            report.Templates = <span class="built_in">append</span>(report.Templates, status)</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 发送报告到Slack/Email</span></span><br><span class="line">    v.notifyTeam(report)</span><br><span class="line">    <span class="keyword">return</span> report, <span class="literal">nil</span></span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="Level-2-多版本共存策略"><a href="#Level-2-多版本共存策略" class="headerlink" title="Level 2: 多版本共存策略"></a>Level 2: 多版本共存策略</h3><figure class="highlight go"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">type</span> MultiVersionTemplateManager <span class="keyword">struct</span> &#123;</span><br><span class="line">    versionStrategies <span class="keyword">map</span>[<span class="type">string</span>]*VersionStrategy</span><br><span class="line">    mcpClient        *MCPClient</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="title">NewMultiVersionManager</span><span class="params">(mcp *MCPClient)</span></span> *MultiVersionTemplateManager &#123;</span><br><span class="line">    <span class="keyword">return</span> &amp;MultiVersionTemplateManager&#123;</span><br><span class="line">        mcpClient: mcp,</span><br><span class="line">        versionStrategies: <span class="keyword">map</span>[<span class="type">string</span>]*VersionStrategy&#123;</span><br><span class="line">            <span class="string">&quot;stable&quot;</span>:  &#123;Version: <span class="string">&quot;5.40.0&quot;</span>, Environment: <span class="string">&quot;production&quot;</span>&#125;,</span><br><span class="line">            <span class="string">&quot;current&quot;</span>: &#123;Version: <span class="string">&quot;5.76.0&quot;</span>, Environment: <span class="string">&quot;staging&quot;</span>&#125;,</span><br><span class="line">            <span class="string">&quot;next&quot;</span>:    &#123;Version: <span class="string">&quot;6.21.0&quot;</span>, Environment: <span class="string">&quot;dev&quot;</span>&#125;,</span><br><span class="line">        &#125;,</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// GetTemplate 根据环境获取合适的模板版本</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(m *MultiVersionTemplateManager)</span></span> GetTemplate(</span><br><span class="line">    ctx context.Context,</span><br><span class="line">    templateName <span class="type">string</span>,</span><br><span class="line">    environment <span class="type">string</span>) (*Template, <span class="type">error</span>) &#123;</span><br><span class="line"></span><br><span class="line">    strategy := m.determineStrategy(environment)</span><br><span class="line">    providerVersion := strategy.Version</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 通过MCP获取该版本的Schema</span></span><br><span class="line">    schema, err := m.mcpClient.GetResourceSchema(ctx, templateName, providerVersion)</span><br><span class="line">    <span class="keyword">if</span> err != <span class="literal">nil</span> &#123;</span><br><span class="line">        <span class="keyword">return</span> <span class="literal">nil</span>, fmt.Errorf(<span class="string">&quot;failed to get schema: %w&quot;</span>, err)</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 动态渲染模板</span></span><br><span class="line">    <span class="keyword">return</span> m.renderTemplateWithSchema(templateName, schema, providerVersion)</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// PerformGradualUpgrade 执行灰度升级流程</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(m *MultiVersionTemplateManager)</span></span> PerformGradualUpgrade(</span><br><span class="line">    ctx context.Context,</span><br><span class="line">    templateName <span class="type">string</span>) (*MigrationResult, <span class="type">error</span>) &#123;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 先在dev环境测试</span></span><br><span class="line">    devTest := m.testInEnvironment(ctx, templateName, <span class="string">&quot;dev&quot;</span>, <span class="string">&quot;6.21.0&quot;</span>)</span><br><span class="line">    <span class="keyword">if</span> !devTest.Success &#123;</span><br><span class="line">        <span class="keyword">return</span> &amp;MigrationResult&#123;</span><br><span class="line">            Success: <span class="literal">false</span>,</span><br><span class="line">            Message: <span class="string">&quot;Dev test failed&quot;</span>,</span><br><span class="line">            Errors:  devTest.Errors,</span><br><span class="line">        &#125;, <span class="literal">nil</span></span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 10%流量切换到新版本</span></span><br><span class="line">    <span class="keyword">if</span> err := m.canaryDeploy(ctx, templateName, <span class="string">&quot;staging&quot;</span>, <span class="number">0.1</span>); err != <span class="literal">nil</span> &#123;</span><br><span class="line">        <span class="keyword">return</span> <span class="literal">nil</span>, err</span><br><span class="line">    &#125;</span><br><span class="line">    m.monitorMetrics(ctx, <span class="number">24</span>*time.Hour)</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 逐步增加流量</span></span><br><span class="line">    <span class="keyword">if</span> m.metricsHealthy(ctx) &#123;</span><br><span class="line">        m.canaryDeploy(ctx, templateName, <span class="string">&quot;staging&quot;</span>, <span class="number">0.5</span>)</span><br><span class="line">        m.monitorMetrics(ctx, <span class="number">24</span>*time.Hour)</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> m.metricsHealthy(ctx) &#123;</span><br><span class="line">            <span class="comment">// 全量切换</span></span><br><span class="line">            m.fullDeploy(ctx, templateName, <span class="string">&quot;staging&quot;</span>)</span><br><span class="line">            <span class="keyword">return</span> &amp;MigrationResult&#123;</span><br><span class="line">                Success: <span class="literal">true</span>,</span><br><span class="line">                Message: <span class="string">&quot;Migration completed successfully&quot;</span>,</span><br><span class="line">            &#125;, <span class="literal">nil</span></span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 回滚</span></span><br><span class="line">    m.rollback(ctx, templateName, <span class="string">&quot;staging&quot;</span>)</span><br><span class="line">    <span class="keyword">return</span> &amp;MigrationResult&#123;</span><br><span class="line">        Success: <span class="literal">false</span>,</span><br><span class="line">        Message: <span class="string">&quot;Metrics degradation detected, rolled back&quot;</span>,</span><br><span class="line">    &#125;, <span class="literal">nil</span></span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="Level-3-完全动态模板（终极形态）"><a href="#Level-3-完全动态模板（终极形态）" class="headerlink" title="Level 3: 完全动态模板（终极形态）"></a>Level 3: 完全动态模板（终极形态）</h3><figure class="highlight go"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">type</span> DynamicTemplateEngine <span class="keyword">struct</span> &#123;</span><br><span class="line">    mcp      *MCPClient</span><br><span class="line">    aiEngine *AIEngine  <span class="comment">// 可选：AI辅助字段映射</span></span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// RenderTemplate 完全动态生成Terraform配置</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(d *DynamicTemplateEngine)</span></span> RenderTemplate(</span><br><span class="line">    ctx context.Context,</span><br><span class="line">    resourceType <span class="type">string</span>,</span><br><span class="line">    userInputs <span class="keyword">map</span>[<span class="type">string</span>]<span class="keyword">interface</span>&#123;&#125;,</span><br><span class="line">    options RenderOptions) (<span class="type">string</span>, <span class="type">error</span>) &#123;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 获取最新或指定版本的Schema</span></span><br><span class="line">    version := options.Version</span><br><span class="line">    <span class="keyword">if</span> version == <span class="string">&quot;&quot;</span> &#123;</span><br><span class="line">        version = d.mcp.GetLatestStableVersion(ctx, <span class="string">&quot;aws&quot;</span>)</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    schema, err := d.mcp.GetResourceSchema(ctx, resourceType, version)</span><br><span class="line">    <span class="keyword">if</span> err != <span class="literal">nil</span> &#123;</span><br><span class="line">        <span class="keyword">return</span> <span class="string">&quot;&quot;</span>, fmt.Errorf(<span class="string">&quot;failed to get schema: %w&quot;</span>, err)</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 智能映射用户输入到新Schema</span></span><br><span class="line">    mappedConfig := d.mapInputsToSchema(userInputs, schema, version)</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 处理版本特定的必填字段</span></span><br><span class="line">    d.addRequiredFields(mappedConfig, schema, version)</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 生成HCL配置</span></span><br><span class="line">    hcl := d.generateHCL(resourceType, mappedConfig, version)</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 添加版本约束</span></span><br><span class="line">    hcl = d.addProviderConstraints(hcl, version)</span><br><span class="line"></span><br><span class="line">    <span class="keyword">return</span> hcl, <span class="literal">nil</span></span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">// mapInputsToSchema 处理跨版本的字段映射</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(d *DynamicTemplateEngine)</span></span> mapInputsToSchema(</span><br><span class="line">    inputs <span class="keyword">map</span>[<span class="type">string</span>]<span class="keyword">interface</span>&#123;&#125;,</span><br><span class="line">    schema *Schema,</span><br><span class="line">    version <span class="type">string</span>) <span class="keyword">map</span>[<span class="type">string</span>]<span class="keyword">interface</span>&#123;&#125; &#123;</span><br><span class="line"></span><br><span class="line">    mapped := <span class="built_in">make</span>(<span class="keyword">map</span>[<span class="type">string</span>]<span class="keyword">interface</span>&#123;&#125;)</span><br><span class="line"></span><br><span class="line">    <span class="keyword">for</span> key, value := <span class="keyword">range</span> inputs &#123;</span><br><span class="line">        <span class="comment">// 处理字段重命名（如lifecycle_rule → lifecycle_configuration）</span></span><br><span class="line">        currentKey := d.resolveFieldEvolution(key, version)</span><br><span class="line"></span><br><span class="line">        <span class="comment">// 处理类型变化</span></span><br><span class="line">        <span class="keyword">if</span> schemaField, exists := schema.Fields[currentKey]; exists &#123;</span><br><span class="line">            mapped[currentKey] = d.adaptValueType(value, schemaField.Type)</span><br><span class="line">        &#125; <span class="keyword">else</span> <span class="keyword">if</span> d.aiEngine != <span class="literal">nil</span> &#123;</span><br><span class="line">            <span class="comment">// AI辅助：尝试找到语义相似的字段</span></span><br><span class="line">            suggestion := d.aiEngine.SuggestFieldMapping(key, schema)</span><br><span class="line">            <span class="keyword">if</span> suggestion.Confidence &gt; <span class="number">0.8</span> &#123;</span><br><span class="line">                mapped[suggestion.Field] = d.adaptValueType(value, suggestion.Type)</span><br><span class="line">            &#125;</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">return</span> mapped</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><h2 id="实战收益：量化的-ROI"><a href="#实战收益：量化的-ROI" class="headerlink" title="实战收益：量化的 ROI"></a>实战收益：量化的 ROI</h2><p>基于我们对多个企业 CMP 的观察：</p><h3 id="采用-MCP-前"><a href="#采用-MCP-前" class="headerlink" title="采用 MCP 前"></a>采用 MCP 前</h3><table><thead><tr><th>指标</th><th>数值</th><th>影响</th></tr></thead><tbody><tr><td>Provider 平均更新延迟</td><td>4-6 个月</td><td>用户抱怨功能缺失</td></tr><tr><td>每次升级人力成本</td><td>2-3 人周</td><td>包含测试和文档</td></tr><tr><td>模板维护人力占比</td><td>30-40%</td><td>挤占创新时间</td></tr><tr><td>Breaking change 处理</td><td>纯手工</td><td>高风险、易出错</td></tr></tbody></table><h3 id="采用-MCP-后"><a href="#采用-MCP-后" class="headerlink" title="采用 MCP 后"></a>采用 MCP 后</h3><table><thead><tr><th>指标</th><th>数值</th><th>改善</th></tr></thead><tbody><tr><td>Provider 更新延迟</td><td>&lt;1 个月</td><td>快速跟进新功能</td></tr><tr><td>每次升级人力成本</td><td>2-4 小时</td><td>自动化处理</td></tr><tr><td>模板维护人力占比</td><td>&lt;5%</td><td>释放创新能力</td></tr><tr><td>Breaking change 处理</td><td>自动化 90%</td><td>低风险、可追溯</td></tr></tbody></table><h3 id="真实案例数据"><a href="#真实案例数据" class="headerlink" title="真实案例数据"></a>真实案例数据</h3><p>某金融企业 CMP 平台（管理 2000+模板，覆盖 AWS&#x2F;阿里云&#x2F;Azure）：</p><p><strong>迁移前（2024 年 Q4）</strong>：</p><ul><li>3 名全职工程师维护模板</li><li>AWS Provider 版本：v5.20（落后 6 个月）</li><li>用户满意度：62%（主要抱怨功能缺失）</li></ul><p><strong>迁移后（2025 年 Q2）</strong>：</p><ul><li>0.5 名工程师兼职维护（其余专注平台能力）</li><li>AWS Provider 版本：v6.20（仅落后 1-2 周）</li><li>用户满意度：89%（功能及时性大幅提升）</li><li><strong>ROI</strong>：节省 2.5 名工程师，年化收益 150 万+</li></ul><h2 id="更深层的价值：从维护到创新"><a href="#更深层的价值：从维护到创新" class="headerlink" title="更深层的价值：从维护到创新"></a>更深层的价值：从维护到创新</h2><p>MCP 带来的不只是效率提升，更是<strong>工程师精力的重新分配</strong>。</p><h3 id="时间分配的根本性改变"><a href="#时间分配的根本性改变" class="headerlink" title="时间分配的根本性改变"></a>时间分配的根本性改变</h3><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># Before MCP</span></span><br><span class="line"><span class="string">工程师时间分配:</span></span><br><span class="line">  <span class="string">模板字段更新:</span> <span class="number">25</span><span class="string">%</span></span><br><span class="line">  <span class="string">处理版本兼容:</span> <span class="number">20</span><span class="string">%</span></span><br><span class="line">  <span class="string">编写升级文档:</span> <span class="number">15</span><span class="string">%</span></span><br><span class="line">  <span class="string">用户支持:</span> <span class="number">15</span><span class="string">%</span>      <span class="comment"># &quot;为什么不支持XX功能&quot;</span></span><br><span class="line">  <span class="string">测试和验证:</span> <span class="number">15</span><span class="string">%</span></span><br><span class="line">  <span class="string">平台创新:</span> <span class="number">10</span><span class="string">%</span>      <span class="comment"># 几乎没时间做创新</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># After MCP</span></span><br><span class="line"><span class="string">工程师时间分配:</span></span><br><span class="line">  <span class="string">平台架构优化:</span> <span class="number">40</span><span class="string">%</span>   <span class="comment"># 设计更好的抽象</span></span><br><span class="line">  <span class="string">用户体验改进:</span> <span class="number">25</span><span class="string">%</span>   <span class="comment"># 自助化、智能推荐</span></span><br><span class="line">  <span class="string">成本优化方案:</span> <span class="number">15</span><span class="string">%</span>   <span class="comment"># FinOps能力建设</span></span><br><span class="line">  <span class="string">安全合规加强:</span> <span class="number">10</span><span class="string">%</span>   <span class="comment"># Policy as Code</span></span><br><span class="line">  <span class="string">模板维护:</span> <span class="number">10</span><span class="string">%</span>      <span class="comment"># 大部分自动化</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这种转变让 CMP 团队从”追赶者”变成”创新者”。</p><h2 id="实施路线图：渐进式落地"><a href="#实施路线图：渐进式落地" class="headerlink" title="实施路线图：渐进式落地"></a>实施路线图：渐进式落地</h2><h3 id="Phase-1-只读集成（1-2-周）"><a href="#Phase-1-只读集成（1-2-周）" class="headerlink" title="Phase 1: 只读集成（1-2 周）"></a>Phase 1: 只读集成（1-2 周）</h3><figure class="highlight go"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">// 先把MCP当文档系统用</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="title">enrichTemplateWithDocs</span><span class="params">(templateID <span class="type">string</span>)</span></span> &#123;</span><br><span class="line">    schema := mcpClient.GetLatestSchema(templateID)</span><br><span class="line">    <span class="keyword">return</span> addFieldDescriptions(template, schema)</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><p><strong>立即收益</strong>：用户看到最新参数说明，减少 50%配置错误</p><h3 id="Phase-2-兼容性检测（2-4-周）"><a href="#Phase-2-兼容性检测（2-4-周）" class="headerlink" title="Phase 2: 兼容性检测（2-4 周）"></a>Phase 2: 兼容性检测（2-4 周）</h3><figure class="highlight go"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">// 定时扫描版本差异</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="params">(s *Scanner)</span></span> ScheduledVersionGapScan() &#123;</span><br><span class="line">    ticker := time.NewTicker(<span class="number">1</span> * time.Hour)  <span class="comment">// 每小时</span></span><br><span class="line">    <span class="keyword">for</span> <span class="keyword">range</span> ticker.C &#123;</span><br><span class="line">        gaps := s.detectAllVersionGaps()</span><br><span class="line">        <span class="keyword">if</span> s.hasBreakingChanges(gaps) &#123;</span><br><span class="line">            s.notifyOps(gaps)</span><br><span class="line">            s.generateMigrationPlan(gaps)</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><p><strong>收益</strong>：提前发现问题，有计划地安排升级</p><h3 id="Phase-3-自动迁移（1-2-月）"><a href="#Phase-3-自动迁移（1-2-月）" class="headerlink" title="Phase 3: 自动迁移（1-2 月）"></a>Phase 3: 自动迁移（1-2 月）</h3><figure class="highlight go"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">// 自动处理90%的常见迁移</span></span><br><span class="line"><span class="function"><span class="keyword">func</span> <span class="title">autoMigrate</span><span class="params">(template Template)</span></span> &#123;</span><br><span class="line">    <span class="keyword">if</span> canAutoMigrate(template) &#123;</span><br><span class="line">        patch := generatePatch(template)</span><br><span class="line">        <span class="keyword">if</span> validate(patch) &#123;</span><br><span class="line">            applyPatch(patch)</span><br><span class="line">            createPR(patch)</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><p><strong>收益</strong>：Provider 升级时间从周缩短到小时</p><h2 id="结语：知识自动化的必然性"><a href="#结语：知识自动化的必然性" class="headerlink" title="结语：知识自动化的必然性"></a>结语：知识自动化的必然性</h2><p>MCP 不是银弹，它解决的是”知识同步”这个特定问题。</p><p><strong>它能做的</strong>：</p><ul><li>✅ 自动获取最新 Provider Schema</li><li>✅ 生成版本间的迁移方案</li><li>✅ 保持模板与上游同步</li><li>✅ 释放工程师做更有价值的事</li></ul><p><strong>它不能做的</strong>：</p><ul><li>❌ 决定是否应该升级（需要业务判断）</li><li>❌ 设计更好的资源抽象（需要领域知识）</li><li>❌ 处理复杂的状态迁移（需要人工决策）</li></ul><p>但这就够了。<strong>当 80%的重复工作被自动化，我们才有精力处理剩下 20%的真正挑战。</strong></p><p>最终，MCP 让 CMP 从”模板维护工具”进化为”智能基础设施平台”。这不是优化，是进化。</p><hr><p><em>实用建议：如果你的 CMP 还在手动维护模板，可以从最简单的”版本 diff 检测”开始。即使只是每日自动报告版本差异，也能大幅提升团队对技术债务的感知。记住：最好的自动化是渐进的。</em></p><p><em>关于 AWS Provider v6.0：2025 年 6 月已正式发布，主要特性是多区域支持。如果你还在 v5.x，建议先升级到 v5.76.0（最后的 v5 稳定版），再考虑 v6 迁移。</em></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E4%BA%91%E8%AE%A1%E7%AE%97/">云计算</category>
      
      <category domain="https://deusyu.app/categories/%E4%BA%91%E8%AE%A1%E7%AE%97/DevOps/">DevOps</category>
      
      
      <category domain="https://deusyu.app/tags/Terraform/">Terraform</category>
      
      <category domain="https://deusyu.app/tags/MCP/">MCP</category>
      
      <category domain="https://deusyu.app/tags/%E4%BA%91%E7%AE%A1%E5%B9%B3%E5%8F%B0/">云管平台</category>
      
      <category domain="https://deusyu.app/tags/%E8%87%AA%E6%84%88%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD/">自愈基础设施</category>
      
      <category domain="https://deusyu.app/tags/Provider%E5%8D%87%E7%BA%A7/">Provider升级</category>
      
      
      <comments>https://deusyu.app/posts/mcp-cmp-upgrade/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Scott Young《102 Lessons from the 102 Books I Read This Year》</title>
      <link>https://deusyu.app/posts/102-lessons-from-102-books/</link>
      <guid>https://deusyu.app/posts/102-lessons-from-102-books/</guid>
      <pubDate>Sun, 09 Nov 2025 22:44:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>来源：这周 readwise 的邮件列表 <a href="https://www.scotthyoung.com/blog/2025/10/06/102-lessons-from-102-books/">https://www.scotthyoung.com/blog/2025/10/06/102-lessons-from-102-books/</a></p></blockquote><hr><h2 id="🧠-总体主题"><a href="#🧠-总体主题" class="headerlink" title="🧠 总体主题"></a>🧠 总体主题</h2><p>持续运动、规律睡眠与稳定习惯，是健康、情绪与思考力的核心。</p><p>饮食与效率的“速成法”往往失败，真正有效的改变来自<strong>可持续的日常实践</strong>。</p><p>阅读与学习具备复利效应——读得越多，理解越快，记得越牢，提升越大。</p><hr><h2 id="🏋️-On-Fitness-｜健康与运动"><a href="#🏋️-On-Fitness-｜健康与运动" class="headerlink" title="🏋️ On Fitness ｜健康与运动"></a>🏋️ On Fitness ｜健康与运动</h2><ul><li>规律运动几乎是仅次于戒烟的长寿因素，可将早亡风险降低 40%。</li><li>人类从未进化出“想运动”的本能，因此必须<strong>刻意行动</strong>。</li><li>有氧让你活得更久，力量训练防止虚弱与骨质流失。</li><li>伸展不能防止受伤，但能提升活动度。</li><li>跑步不会毁膝盖，反而强化骨骼与肌腱；赤足或轻鞋能降低受伤率。</li><li>运动优于“脑力游戏”，能显著提升认知与情绪，是抑郁症的一线疗法。</li></ul><hr><h2 id="⚙️-On-Productivity-｜生产力与幸福"><a href="#⚙️-On-Productivity-｜生产力与幸福" class="headerlink" title="⚙️ On Productivity ｜生产力与幸福"></a>⚙️ On Productivity ｜生产力与幸福</h2><ul><li>幸福先于生产力。<strong>进步感</strong>是工作满意的最大来源，却常被管理者忽视。</li><li>清单能救命——医疗试验中将感染率从 4% 降至 0%。</li><li>区分 Lead 和 Lag 指标：前者可控、后者可测。</li><li>人在工作中更易进入心流，而非休闲时。</li><li><strong>能量比时间更稀缺</strong>，管理能量才是真正的效率。</li><li>拖延多源于冲动控制力低，而非完美主义。</li></ul><hr><h2 id="💰-On-Money-｜理财与财富"><a href="#💰-On-Money-｜理财与财富" class="headerlink" title="💰 On Money ｜理财与财富"></a>💰 On Money ｜理财与财富</h2><ul><li>个人或基金几乎无法长期跑赢市场，<strong>低费率指数基金</strong>最优解。</li><li>无法择时市场，“买入并持有”胜过频繁交易。</li><li>年轻储蓄的复利远胜高收益。</li><li>人寿保险选“定期”，非“终身”。</li><li>理财顾问应按小时计费，否则长期成本惊人。</li><li>巴菲特的财富主要来自<strong>时间</strong>，而非天赋。</li></ul><hr><h2 id="🍎-On-Food-｜饮食与营养"><a href="#🍎-On-Food-｜饮食与营养" class="headerlink" title="🍎 On Food ｜饮食与营养"></a>🍎 On Food ｜饮食与营养</h2><ul><li>指南几十年未变：多蔬果全谷、少糖盐红肉。</li><li>饱和脂肪确实提高 LDL 并诱发动脉硬化。</li><li>体重上升完全可由摄入热量增加解释。</li><li>所有饮食法有效的本质都在于<strong>热量赤字 + 可持续</strong>。</li><li>大多数节食者会反弹，成功者往往是终身改变饮食习惯的人。</li><li>素食可行，但需补 B12、铁、锌 与 Omega-3 （DHA&#x2F;EPA）。</li></ul><hr><h2 id="📚-On-Reading-｜阅读与学习"><a href="#📚-On-Reading-｜阅读与学习" class="headerlink" title="📚 On Reading ｜阅读与学习"></a>📚 On Reading ｜阅读与学习</h2><ul><li>阅读利用了人类识别形状与面孔的神经回路。</li><li>速读无效，人眼与大脑有 ≈ 500 词&#x2F;分钟 的物理极限。</li><li>想读得更快，唯一方法是<strong>多读</strong>。知识背景越丰富，理解与记忆越深。</li><li>语音教学（phonics）仍是儿童识字的最佳方法。</li></ul><hr><h2 id="🤝-On-Outreach-｜社交与孤独"><a href="#🤝-On-Outreach-｜社交与孤独" class="headerlink" title="🤝 On Outreach ｜社交与孤独"></a>🤝 On Outreach ｜社交与孤独</h2><ul><li>孤独的健康风险堪比吸烟。</li><li>社区衰退削弱了信任与民主。</li><li>建立朋友关系需 60 小时以上。</li><li>不同场景与深度提问可加速亲密感。</li><li>我们低估了“友善”的力量；与陌生人交谈往往比独处更愉快。</li><li>弱连接同样重要，它们维系社会资本并带来机会。</li></ul><hr><h2 id="😴-On-Sleep-｜睡眠与认知"><a href="#😴-On-Sleep-｜睡眠与认知" class="headerlink" title="😴 On Sleep ｜睡眠与认知"></a>😴 On Sleep ｜睡眠与认知</h2><ul><li>睡眠清理脑部代谢物、巩固记忆、强化免疫、重塑突触。</li><li>缺觉 24 小时 ≈ 醉酒状态；且人会<strong>误判自己的衰退程度</strong>。</li><li>长期夜班已被列为可能致癌因素。</li><li>失眠者往往并非真正睡眠不足，<strong>CBT-I 行为疗法</strong>最有效。</li><li>日间缺乏阳光同样破坏生理节律。</li><li>梦的功能仍未知，可能用于强化负面记忆。</li></ul><hr><h2 id="💭-On-Reflection-｜自我反思"><a href="#💭-On-Reflection-｜自我反思" class="headerlink" title="💭 On Reflection ｜自我反思"></a>💭 On Reflection ｜自我反思</h2><ul><li>我们的视觉与思考都狭隘而片面。</li><li>精神分析属伪科学；现代 CBT 聚焦信念与行为。</li><li>每日问自己“今天有哪些做得好？”能显著提升幸福感。</li><li>冥想确实能改变大脑，但需极长时间累积。</li></ul><hr><h2 id="❤️-On-Connection-｜亲密关系"><a href="#❤️-On-Connection-｜亲密关系" class="headerlink" title="❤️ On Connection ｜亲密关系"></a>❤️ On Connection ｜亲密关系</h2><ul><li>婚姻总体提升幸福感。</li><li>稳定关系取决于人格——<strong>高宜人性、低神经质</strong>。</li><li>观察争吵模式可 &gt; 91% 预测分手。</li><li>宣泄愤怒会放大怒气，冷静沟通更有效。</li><li>性别差异远小于想象，唯独性态度差距显著。</li></ul><hr><h2 id="🎯-On-Focus-｜专注与注意力"><a href="#🎯-On-Focus-｜专注与注意力" class="headerlink" title="🎯 On Focus ｜专注与注意力"></a>🎯 On Focus ｜专注与注意力</h2><ul><li>ADHD 高度遗传，与教养无关；药物确实有效。</li><li>多任务是错觉，本质是快速切换。</li><li>平均每 3 分钟被打断一次，其中一半自我造成。</li><li>手机在旁即降低认知表现与交流质量。</li><li>过度工作是临终最常见的遗憾之一。</li></ul><hr><h2 id="🗂-On-Organization-｜整理与物品"><a href="#🗂-On-Organization-｜整理与物品" class="headerlink" title="🗂 On Organization ｜整理与物品"></a>🗂 On Organization ｜整理与物品</h2><ul><li><strong>按类别而非空间</strong>整理，更高效。</li><li>优先丢弃，再考虑收纳。</li><li>“禀赋效应”让我们高估已拥有的物品。</li><li>囤积兼具快感与焦虑成分。</li></ul><hr><h2 id="🌍-On-Service-｜利他与行动"><a href="#🌍-On-Service-｜利他与行动" class="headerlink" title="🌍 On Service ｜利他与行动"></a>🌍 On Service ｜利他与行动</h2><ul><li>向最有效慈善捐 $3,500–$5,000 即可拯救一条生命。</li><li>慈善差距可达 100 倍；很多“好主意”反而有害。</li><li>西方人平均仅捐 &lt; 2% 收入，且多流向低效领域。</li><li>“道德消费”常无效，<strong>理性利他 + 直接捐赠</strong>更有意义。</li><li>集中志愿行动（整天服务）比每日碎片式更能带来幸福感。</li><li>同情心需与理性并行，<strong>感性 + 理性 &gt; 盲目共情</strong>。</li></ul><hr><h2 id="✴️-结语"><a href="#✴️-结语" class="headerlink" title="✴️ 结语"></a>✴️ 结语</h2><blockquote><p>长期主义的三重奏：身体的纪律、思维的反思、行动的持续。</p><p>真正改变生活的，不是技巧的数量，而是你能否让它们——</p><p>在日常中<strong>复利生长</strong>。</p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/">认知</category>
      
      
      <category domain="https://deusyu.app/tags/Life/">Life</category>
      
      
      <comments>https://deusyu.app/posts/102-lessons-from-102-books/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>保姆级教程：三步搞定「懒猫微服 + Apple TV + Infuse」，打造属于你的丝滑个人影院</title>
      <link>https://deusyu.app/posts/lazycat-infuse-appletv/</link>
      <guid>https://deusyu.app/posts/lazycat-infuse-appletv/</guid>
      <pubDate>Sat, 08 Nov 2025 07:16:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>本文首发于「懒猫微服 → 攻略」<a href="https://lazycat.cloud/playground/guideline/1384">https://lazycat.cloud/playground/guideline/1384</a></p></blockquote><h3 id="引子：在流媒体时代，我为什么还需要一个“私人片库”？"><a href="#引子：在流媒体时代，我为什么还需要一个“私人片库”？" class="headerlink" title="引子：在流媒体时代，我为什么还需要一个“私人片库”？"></a><strong>引子：在流媒体时代，我为什么还需要一个“私人片库”？</strong></h3><p>在正式开始这篇教程前，我想先聊聊我的个人观影需求。因为你可能会问，现在看电影的方式这么多，为什么还要多此一举？</p><p>这恰好是问题的核心。目前，我的观影方式大致分为三层，每一层都对应着不同的场景和需求。</p><h3 id="第一层需求：便捷与快速，主打一个“搜完即看”"><a href="#第一层需求：便捷与快速，主打一个“搜完即看”" class="headerlink" title="第一层需求：便捷与快速，主打一个“搜完即看”"></a><strong>第一层需求：便捷与快速，主打一个“搜完即看”</strong></h3><p>这是最轻量级的方式。比如，我会在我的安卓电视上安装夸克网盘。恰好 88VIP 赠送了夸克的会员，虽然等级不是最高的，但容量足够，而且资源检索起来非常方便。</p><p>我的流程通常是：在 Telegram 的资源分享群组里搜索一部电影，找到夸克网盘的链接，一键保存到自己的网盘里。然后，直接在电视上打开夸克客户端播放。整个过程几乎只需要一两步操作，体验非常接近流媒体。当然，其他拥有 TV 客户端的网盘也可以实现类似的效果，比如爱优腾对应的 TV 客户端。</p><h3 id="第二层需求：生态与品质，享受“官方正版”的丝滑"><a href="#第二层需求：生态与品质，享受“官方正版”的丝滑" class="headerlink" title="第二层需求：生态与品质，享受“官方正版”的丝滑"></a><strong>第二层需求：生态与品质，享受“官方正版”的丝滑</strong></h3><p>如果你拥有 Apple TV，那么体验会更上一层楼。</p><p>Apple TV 通过 HDMI 连接电视，把它变成一个纯粹的高性能显示器，而核心则由强大的 TVOS 系统驱动。它的芯片性能强悍（与 iPhone 13 Pro 同款的 A15 仿生芯片），播放 4K 高清视频、运行各类应用都游刃有余。你可以在它的 App Store 里安装 YouTube、Netflix（奈飞）。</p><p>我朋友也曾分享给我 Apple TV+ 的会员，里面的原创剧集品质相当不错。这一整套方案，代表了当前流媒体观影的顶级体验。</p><h3 id="第三层需求：收藏与回味，打造“属于我”的数字影库"><a href="#第三层需求：收藏与回味，打造“属于我”的数字影库" class="headerlink" title="第三层需求：收藏与回味，打造“属于我”的数字影库"></a><strong>第三层需求：收藏与回味，打造“属于我”的数字影库</strong></h3><p>那么，既然已经有了以上两种便捷的方式，为什么我还需要第三种呢？</p><p>因为总有一些电影，是值得反复观看和珍藏的。</p><p>我会通过下载的方式，收藏一些我个人钟爱的 4K 高清电影，比如《黑客帝国》系列、《教父》系列，或是那部看了无数遍的《肖申克的救赎》。对于这些影片，我的需求不再是“看过”，而是希望能随时点开，精准地跳到某个我钟爱的片段，细细品味。</p><p>这时，无论是依赖时效性不强的网盘分享，还是在版权库里随时可能下架的流媒体平台，都无法给我那种“完全拥有”的掌控感和安全感。</p><p>这，就是我的第三层需求——一个属于我自己的、可永久珍藏的、高品质的私人媒体库。</p><p>而我们今天的主角 「懒猫微服 + Infuse」 组合，正是为了完美满足我这个“收藏家”的需求而生的。它将为我们那些珍爱的影片，提供一个稳定、美观且能随时访问的家。</p><h3 id="保姆级教程：三步搞定「懒猫微服-Apple-TV-Infuse」"><a href="#保姆级教程：三步搞定「懒猫微服-Apple-TV-Infuse」" class="headerlink" title="保姆级教程：三步搞定「懒猫微服 + Apple TV + Infuse」"></a><strong>保姆级教程：三步搞定「懒猫微服 + Apple TV + Infuse」</strong></h3><h3 id="一、准备工作"><a href="#一、准备工作" class="headerlink" title="一、准备工作"></a><strong>一、准备工作</strong></h3><p>在开始之前，请确保你已拥有：</p><ol><li><strong>硬件：</strong> 一台 Apple TV</li><li><strong>软件：</strong><ul><li>在 Apple TV 上通过 App Store 安装 <strong>Infuse</strong>（免费版已足够完成基础功能，推荐体验更佳的 Pro 版）。</li><li>在你的电脑（Mac&#x2F;Windows）上安装 <strong>懒猫微服客户端</strong>。</li></ul></li></ol><h3 id="二、核心配置流程（全程重点）"><a href="#二、核心配置流程（全程重点）" class="headerlink" title="二、核心配置流程（全程重点）"></a><strong>二、核心配置流程（全程重点）</strong></h3><h3 id="第一步：从「懒猫微服」获取-SMB-连接信息"><a href="#第一步：从「懒猫微服」获取-SMB-连接信息" class="headerlink" title="第一步：从「懒猫微服」获取 SMB 连接信息"></a><strong>第一步：从「懒猫微服」获取 SMB 连接信息</strong></h3><p>这是整个流程中最关键的一步，我们需要拿到打开你云端媒体库的“钥匙”。</p><ol><li><p>打开你电脑上的懒猫微服客户端。</p></li><li><p>打开「应用」中「懒猫网盘」</p><p>找到「扩展」-&gt; 「网络服务」-&gt; SMB，你会看到系统为你生成好的专属连接信息。</p><p><img src="https://r2.deusyu.app/5df02440-38f7-4b17-af53-99dc2bbde6ca.png"></p></li></ol><p>记下或放在手边，我们马上就要用到这三个参数：域名、用户名、密码。</p><h3 id="第二步：在-Apple-TV-的「Infuse」中添加媒体源"><a href="#第二步：在-Apple-TV-的「Infuse」中添加媒体源" class="headerlink" title="第二步：在 Apple TV 的「Infuse」中添加媒体源"></a><strong>第二步：在 Apple TV 的「Infuse」中添加媒体源</strong></h3><p>现在，我们来到电视前，拿起 Apple TV 的遥控器。（本教程以 macOS 版 Infuse 客户端截图为例，Apple TV 上的操作流程与界面几乎完全一致）</p><ol><li><p>打开 Infuse 应用。</p></li><li><p>在主界面「文件」-&gt; 「新增文件来源」，选择 “添加文件” 或 “添加共享”。</p></li><li><p>在「添加共享」列表中，选择服务类型为 <strong>SMB</strong>。</p><p><img src="https://r2.deusyu.app/1ac9cc54-d936-4f06-a433-6aa308df9636.png"></p><p><img src="https://r2.deusyu.app/1760180f-6237-4fae-9c56-b1b355297744.png"></p><p><img src="https://r2.deusyu.app/ff2eacc9-c3dd-475f-93e5-cdbff53751d1.png"></p></li><li><p>接下来，你将看到一个信息填写页面。在这里，我们需要将第一步获取的“钥匙”填进去：</p><ul><li><strong>名称：</strong> 可以随意填写，方便自己识别即可，例如 “我的懒猫影院”。</li><li><strong>地址：</strong> 完整地填入你在上步里看到的 <strong>地址</strong>。(这里建议选择「内网服务」下的「域名」)</li><li><strong>用户名：</strong> 填入你的 「用户名」。</li><li><strong>密码：</strong> 填入你的 「密码」。</li></ul><p>填写完毕后，点击“保存”或“连接”。Infuse 会开始连接你的懒猫网盘，并自动扫描里面的视频文件，抓取电影海报和信息。稍等片刻，一个漂亮的海报墙就会呈现在你眼前。</p><p><img src="https://r2.deusyu.app/deacfc69-1330-4796-96e3-7ae6869b5019.png"></p></li></ol><h3 id="第三步：上传与欣赏"><a href="#第三步：上传与欣赏" class="headerlink" title="第三步：上传与欣赏"></a><strong>第三步：上传与欣赏</strong></h3><p>配置是一次性的。从现在开始，你的工作流就变得极其简单了：</p><ol><li><p>在电脑上打开懒猫微服客户端。</p></li><li><p>将下载好的电影、剧集等视频文件，直接拖拽上传到懒猫网盘中。</p><p><img src="https://r2.deusyu.app/a1241a28-157b-4ca0-911e-be4c537bf141.png"></p></li></ol><p>回到客厅，打开 Apple TV 上的 Infuse，它会自动刷新媒体库，你刚刚上传的影片已经带着精美的海报在那里等你了。点击播放，开始享受吧！🍿</p><h3 id="三、进阶实用技巧（让体验更上一层楼）"><a href="#三、进阶实用技巧（让体验更上一层楼）" class="headerlink" title="三、进阶实用技巧（让体验更上一层楼）"></a><strong>三、进阶实用技巧（让体验更上一层楼）</strong></h3><ul><li><strong>关于字幕：</strong> 为了让 Infuse 自动加载外挂字幕，请确保字幕文件（.srt, .ass 等）与视频文件的<strong>主文件名完全相同</strong>，并放在同一目录下。例如：<code>我的电影.mkv</code> 和 <code>我的电影.srt</code>。</li><li><strong>海报识别错误怎么办？</strong> 偶尔 Infuse 可能会识别错影片。别担心，在 Infuse 中，用遥控器长按错误的影片封面，在弹出的菜单中选择“编辑元数据”，你可以手动搜索正确的影片名称来修正它。</li><li><strong>网络建议：</strong> 为了流畅播放高码率的 4K HDR 影片，建议将 Apple TV 通过<strong>有线网络</strong>连接到你的路由器，这比 Wi-Fi 更稳定。</li></ul><h3 id="总结"><a href="#总结" class="headerlink" title="总结"></a><strong>总结</strong></h3><p>通过以上简单的三步，我们就成功地将懒猫微服强大的家庭私有云存储和 Infuse 出色的播放体验结合在了一起，打造了一个真正属于自己的、简单易用且美观的家庭影院系统。</p><p>这套方案最大的魅力在于它的“零维护”，你再也不用关心硬盘空间、文件格式和复杂的网络设置。你要做的，仅仅是收藏你热爱的影片，然后在沙发上享受它。</p><p>现在，轮到你来动手试试了！</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%AE%B6%E5%BA%AD%E5%BD%B1%E9%9F%B3/">家庭影音</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%A7%81%E4%BA%BA%E7%89%87%E5%BA%93/">私人片库</category>
      
      <category domain="https://deusyu.app/tags/%E6%87%92%E7%8C%AB%E5%BE%AE%E6%9C%8D/">懒猫微服</category>
      
      <category domain="https://deusyu.app/tags/Infuse/">Infuse</category>
      
      
      <comments>https://deusyu.app/posts/lazycat-infuse-appletv/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>输家的游戏与赢家的路线</title>
      <link>https://deusyu.app/posts/losers-game-investing/</link>
      <guid>https://deusyu.app/posts/losers-game-investing/</guid>
      <pubDate>Mon, 27 Oct 2025 08:02:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p><strong>「思维导图｜先看地图，再出发。」</strong></p></blockquote><p><img src="https://r2.deusyu.app/bf04eb85-f70c-4005-a848-55b889f6a581.png"></p><p>这个算是我今年漂泊无依的生活中最确定的事情。</p><p><img src="https://r2.deusyu.app/df1a9f35-9273-4023-a01f-5b51d29640e6.png"></p><p>这张图本身不是重点。重点是，它所代表的“确定性”并非来自运气，而是来自一套我逐渐清晰的个人哲学——一个在漂泊中可以依赖的“锚点”。</p><p>巴菲特如此总结一生投资赚钱的经验：投资成功，只要能够尽量避免犯下重大错误，投资者只需要做很少的正确事情就足以保证盈利了。</p><p>这呼应了查尔斯·埃利斯的观点：投资是一场**“输家的游戏”（Winning the Loser’s Game）**。</p><p>投资是输家的游戏，不输的情况下，大部分会赢。世界上的大多数事情，可能是越用力、操作越频繁，效果越好，而股票市场是相反的，大多数时候越少操作，越不会出问题。这套逻辑，从根本上来说是“反人性”的。</p><p>既然是输家的游戏，赢法只有两种：</p><ol><li><strong>识别并利用他人的错误</strong></li><li><strong>长期投资</strong></li></ol><p>如何做到？我们要做的是分析财报，分析一手的知识，而不是从乌合之众的媒体和看似有道理的阴谋论中分析，要永远从第一性原理&#x2F;0 阶知识去推理，去做推论。</p><p>大部分人不知道第一性原理和 0 阶知识，只知道嚼二手口香糖和拾别人牙慧，那么独立思考就无从谈起。</p><p>我们都可能生活在某种形式的“茧房”中，无论是算法推荐精心编织的，还是信息高墙（GFW）物理上造成的。要获取 0 阶知识，就必须主动去打破这个茧房，这需要极大的意志力和清醒。</p><p>我在推上看到过很多分析 Tesla 的，每天盯着小鹏出了什么 AI，理想做了什么增程式改进，传统 BBA 又是怎么发力的。这让我想起一个软件工程师的工作：对于一个优秀的软件工程师来说，既能着眼于整体的架构设计，又能在细小的 code 环节写出好的代码。</p><p><strong>而对于股票和投资来说，重点是抓大放小。</strong></p><p>那些盯着竞品细节的人，是在看“细小的 code”，而忽略了 Tesla 的“整体架构”（比如其 AI、能源和数据护城河）。他们囿于细致的曲线变化，而忘记了分析整体的趋势。投资，应该是重反应而不是重预测，从来不可能靠画 K 线的。</p><p>我能理解，对于变化，人们都会分泌荷尔蒙和肾上腺素，人性如此，根据马斯洛的需求理论，在解决了基本需求后，剩下的都是一种。这样让整个人整体会感觉非常爽。</p><p>但在金融和涉及很多资产的环节，一定是保持最理性的状态。想要去爽，就去社交、去挑战自然环境，甚至去户外挑战自己未曾涉及的领域，以此“减熵”。</p><p>在投资上，就回归最笨最蠢的事情：去看股东的信和财报。</p><p>上帝喜欢笨人。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%8A%95%E8%B5%84%E5%93%B2%E5%AD%A6/">投资哲学</category>
      
      <category domain="https://deusyu.app/categories/%E6%8A%95%E8%B5%84%E5%93%B2%E5%AD%A6/%E4%B8%AA%E4%BA%BA%E6%88%90%E9%95%BF/">个人成长</category>
      
      
      <category domain="https://deusyu.app/tags/%E9%95%BF%E6%9C%9F%E4%B8%BB%E4%B9%89/">长期主义</category>
      
      <category domain="https://deusyu.app/tags/%E8%BE%93%E5%AE%B6%E7%9A%84%E6%B8%B8%E6%88%8F/">输家的游戏</category>
      
      <category domain="https://deusyu.app/tags/%E7%AC%AC%E4%B8%80%E6%80%A7%E5%8E%9F%E7%90%86/">第一性原理</category>
      
      <category domain="https://deusyu.app/tags/%E4%BB%B7%E5%80%BC%E6%8A%95%E8%B5%84/">价值投资</category>
      
      <category domain="https://deusyu.app/tags/%E5%86%B3%E7%AD%96%E6%80%9D%E7%BB%B4/">决策思维</category>
      
      <category domain="https://deusyu.app/tags/%E4%BF%A1%E6%81%AF%E8%8C%A7%E6%88%BF/">信息茧房</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%8D%E4%BA%BA%E6%80%A7/">反人性</category>
      
      
      <comments>https://deusyu.app/posts/losers-game-investing/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>编程到底要不要先从基础开始？</title>
      <link>https://deusyu.app/posts/socratic-ai-coding/</link>
      <guid>https://deusyu.app/posts/socratic-ai-coding/</guid>
      <pubDate>Thu, 23 Oct 2025 01:05:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p><strong>「思维导图｜先看地图，再出发。」</strong></p></blockquote><p><img src="https://r2.deusyu.app/3b050363-37e4-4f54-a770-05dfd66d6f55.png"></p><p>最近看到很多人讨论「学编程要不要先看基础教材」。我想谈谈我的看法。</p><hr><h2 id="1-人类最古老、最高效的学习方式是对话"><a href="#1-人类最古老、最高效的学习方式是对话" class="headerlink" title="1. 人类最古老、最高效的学习方式是对话"></a>1. 人类最古老、最高效的学习方式是对话</h2><p>从苏格拉底到孔子，真正有效的学习一直是”对话式”的。两个人讨论、一问一答的过程中，知识被即时生成。而看书只是单向吸收，信息密度远不如对话。</p><p><strong>AI 的出现让我们重新回到了这种古老的学习方式。</strong></p><p>与 AI 对话编程，本质上就是现代版的”苏格拉底式学习”：</p><ul><li>你提问、AI 回答</li><li>你反驳、AI 修正</li><li>同时还能把抽象的想法直接变成可运行的程序</li></ul><h2 id="2-真正的理解只会在实践中出现"><a href="#2-真正的理解只会在实践中出现" class="headerlink" title="2. 真正的理解只会在实践中出现"></a>2. 真正的理解只会在实践中出现</h2><p>我以前只是书本上了解过 K8s、容器、Linux、Docker 这些概念，对 Operator、Reconcile 等机制也只是”知道”而非”掌握”。</p><p>直到我真正写了一个用于管理 IAM 凭证的 Operator，和 AI 一起设计、调试、反复迭代，我才真正明白这些抽象概念在运行中的意义。</p><p><strong>学习的本质不是”先学完基础再动手”，而是”在动手中形成基础”。</strong></p><p>输入、状态、输出，这才是学习的真实循环。</p><h2 id="3-读书效率其实很低"><a href="#3-读书效率其实很低" class="headerlink" title="3. 读书效率其实很低"></a>3. 读书效率其实很低</h2><p>很多人坚持要从教材开始，只是因为那样能让他们感觉安全、好像在”正确学习”。</p><p>但真正高效的学习一定是带反馈的。AI 让这种反馈几乎实时发生：</p><p><strong>写一点、跑一点、错一点、改一点——比看十本书有用得多。</strong></p><h2 id="4-编程是最适合-AI-合作的领域"><a href="#4-编程是最适合-AI-合作的领域" class="headerlink" title="4. 编程是最适合 AI 合作的领域"></a>4. 编程是最适合 AI 合作的领域</h2><p>编程的输入、输出和规则都高度结构化，AI 可以帮助穷举可能、校验结构、生成测试数据。人类负责清晰地定义目标即可。</p><p>未来 LLM 会像 JVM 屏蔽平台差异一样，屏蔽语言和平台的差异，让任何人都能用自然语言构建应用。</p><p><strong>AI 最终会成为一种”通用操作系统”。</strong></p><h2 id="5-写代码不是最难的，部署才是"><a href="#5-写代码不是最难的，部署才是" class="headerlink" title="5. 写代码不是最难的，部署才是"></a>5. 写代码不是最难的，部署才是</h2><p>Karpathy 也说过，他写完应用只用了 20% 的时间，部署和上线却花了 70%。</p><p>未来，当 Pulumi&#x2F;Terraform + MCP 等技术成熟后，一句话部署应用将成为常态，<strong>“人人可写应用”会成为现实</strong>。</p><h2 id="6-不要高估”可维护代码”的价值"><a href="#6-不要高估”可维护代码”的价值" class="headerlink" title="6. 不要高估”可维护代码”的价值"></a>6. 不要高估”可维护代码”的价值</h2><p>很多人花大量时间追求完美的结构，结果那段代码一辈子也没几个人用。</p><p>在很多情况下，重写一个简单的新实现，比维护旧系统更划算。</p><p>工程政治、路径依赖、形式主义——这些才是真正的消耗。</p><h2 id="7-所以，别等准备好再开始"><a href="#7-所以，别等准备好再开始" class="headerlink" title="7. 所以，别等准备好再开始"></a>7. 所以，别等准备好再开始</h2><p><strong>想做什么，就直接开干。</strong></p><p>基础会在实践中自然长出来：</p><ul><li>语法不会？查就行</li><li>文档看不懂？AI 会帮你解释</li></ul><p>AI 让学习重新变成一件”边干边学”的事，让我们回到了学习最本真的形态：<strong>对话式创造</strong>。</p><hr><blockquote><p>“书籍是知识的归档，对话才是知识的诞生。”</p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI-%C3%97-%E7%BC%96%E7%A8%8B/">AI × 编程</category>
      
      <category domain="https://deusyu.app/categories/AI-%C3%97-%E7%BC%96%E7%A8%8B/%E5%AD%A6%E4%B9%A0/">学习</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%AF%B9%E8%AF%9D%E5%BC%8F%E5%AD%A6%E4%B9%A0/">对话式学习</category>
      
      <category domain="https://deusyu.app/tags/%E8%8B%8F%E6%A0%BC%E6%8B%89%E5%BA%95/">苏格拉底</category>
      
      <category domain="https://deusyu.app/tags/%E6%8A%80%E8%83%BD%E4%B9%A0%E5%BE%97/">技能习得</category>
      
      <category domain="https://deusyu.app/tags/%E8%AE%A4%E7%9F%A5%E9%87%8D%E5%A1%91/">认知重塑</category>
      
      <category domain="https://deusyu.app/tags/%E5%AD%A6%E4%B9%A0%E7%84%A6%E8%99%91/">学习焦虑</category>
      
      
      <comments>https://deusyu.app/posts/socratic-ai-coding/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>同一时间下的唯一专注度原则</title>
      <link>https://deusyu.app/posts/single-thread-outsourcing/</link>
      <guid>https://deusyu.app/posts/single-thread-outsourcing/</guid>
      <pubDate>Wed, 15 Oct 2025 09:35:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h3 id="1-从一张健身卡说起"><a href="#1-从一张健身卡说起" class="headerlink" title="1. 从一张健身卡说起"></a><strong>1. 从一张健身卡说起</strong></h3><p>今天办了张健身卡。</p><p>教练问我：“一周来几次？”</p><p>我说：“三次。”</p><p>店长在旁边补一句：“四五次比较好。”</p><p>那一刻我忽然明白——他们比我更相信我的潜力。</p><p>但这并不是讽刺。卡是不限次的，他们也没硬推，只是希望我多来点，看到改变。</p><p>他们押我能成，我押自己能坚持。我们都想看到那个更好的版本。</p><h3 id="2-我知道自己是什么人"><a href="#2-我知道自己是什么人" class="headerlink" title="2. 我知道自己是什么人"></a><strong>2. 我知道自己是什么人</strong></h3><p>我不是那种对自己下得了狠心的人。</p><p>我更相信概率、ROI，也更在意“这件事能不能成”。不成就不强求，我习惯把路铺平，再往前走。</p><p>健身一直对我很难。跑步能坚持，是因为有人陪；健身就太孤独了。</p><p>以前在 ks，偶尔和同事一起“划水式”练练；现在是真正孤身上阵。</p><p>说白了，就是被骂几次身材不好，想改改自己。但我清楚那些能发身材照的人背后有多难。</p><p>所以这次我换个思路：<strong>不拼狠劲，拼长期概率。</strong></p><h3 id="3-真正的问题"><a href="#3-真正的问题" class="headerlink" title="3. 真正的问题"></a><strong>3. 真正的问题</strong></h3><p>这几年我越来越确定一件事：</p><p><strong>一个人在同一时间，只能专注于一件真正重要的事。</strong></p><p>同一时间，你要上班、写 AI 项目、研究新东西，还想健身、社交、恋爱。</p><p>结果是注意力被撕成五份，哪一份都不够深。</p><p>我请教练，不是因为我多有毅力，而是因为我知道——</p><p><strong>花钱，是在买到场率；请教练，是在外包决策。</strong></p><p>不是我变懒了，而是我终于承认：</p><p>我在任何一个时刻，都只能把注意力给一个对象。</p><h3 id="4-人脑的单线程现实"><a href="#4-人脑的单线程现实" class="headerlink" title="4. 人脑的单线程现实"></a><strong>4. 人脑的单线程现实</strong></h3><p>学习需要开放，吸收新知；</p><p>应用需要聚焦，精准输出；</p><p>创造需要发散；</p><p>打磨需要收敛。</p><p>这些状态的切换，是有代价的。</p><p>每切一次，就得重新加载目标和规则。能量，不是花在“难”，而是花在“切”。</p><p>所以最聪明的策略，是减少切换。</p><p>承认自己是单线程生物，并不丢人——那是一种清醒。</p><h3 id="5-为什么需要外部系统"><a href="#5-为什么需要外部系统" class="headerlink" title="5. 为什么需要外部系统"></a><strong>5. 为什么需要外部系统</strong></h3><p>老师、导师、体系、教练，它们的本质作用其实只有三点：</p><ul><li>分担认知负荷：你专注创造，他们负责纠错；</li><li>提供外部记忆：不用把所有规则都装在脑子里；</li><li>设置检查点：帮你复盘，而不是让你实时内耗。</li></ul><p>这就是为什么作家需要编辑，运动员需要教练，创业者需要顾问。</p><p>不是不够努力，而是——<strong>单个大脑做不了两件高质量的事。</strong></p><h3 id="6-人类的策略"><a href="#6-人类的策略" class="headerlink" title="6. 人类的策略"></a><strong>6. 人类的策略</strong></h3><p>真正的自律，不是逼自己在同一时间干五件事。</p><p>而是学会用系统、规则、AI、甚至金钱，去换取稳定的执行环境。</p><p>把珍贵的专注力，用在最需要深度的地方。</p><p>把决策、计划、监督这些耗注意力的部分，外包出去。</p><p>这不是逃避，而是成熟。</p><h3 id="7-结语"><a href="#7-结语" class="headerlink" title="7. 结语"></a><strong>7. 结语</strong></h3><p>所谓“全能”，是个谎言。</p><p>那些看起来特别自律的人，要么生活极简，要么背后有一整套隐形系统在支撑。</p><p>我们能做的，就是——</p><p>诚实面对自己的局限，</p><p>用系统弥补人脑的单线程，</p><p>在同一时间，只专注一件真正重要的事。</p><p>这次健身，我不押意志力。</p><p>我押概率，押系统，押那个靠谱的教练。</p><p>试试吧。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%8D%95%E7%BA%BF%E7%A8%8B%E5%A4%A7%E8%84%91/">单线程大脑</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%87%E6%8D%A2%E6%88%90%E6%9C%AC/">切换成本</category>
      
      
      <comments>https://deusyu.app/posts/single-thread-outsourcing/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Jeremy Maluf - 无限期背包旅行</title>
      <link>https://deusyu.app/posts/onebag/</link>
      <guid>https://deusyu.app/posts/onebag/</guid>
      <pubDate>Sat, 11 Oct 2025 01:48:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://jeremymaluf.com/onebag/">https://jeremymaluf.com/onebag/</a></p></blockquote><p><strong>更新于 2025 年 9 月</strong></p><p>2015 年，我处理掉了所有无法装进笔记本电脑背包的物品，从那时起我一直保持着这种极简主义的生活方式。这个理念是只拥有我需要的东西，这让我能够更专注、花费更少、自发旅行并简化我的生活。</p><p>我每年更新这篇文章，过去的版本可以在互联网档案馆找到：2022、2021、2020、2019、2018、2017。这个页面上的一些链接是联盟链接。关于这种生活方式的更多内容，我开始在 Instagram 上分享视频。</p><p>10 年过去了，不知怎么的，已有数百万人阅读了这个页面！感谢你的访问！:)</p><h2 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h2><p>这篇文章从来不是一个指南，但每当它在没有说明的情况下被分享时，网上的回应往往是同样的十几个问题和误解。所以这里有几句话来解决这些问题。</p><p><strong>单包旅行</strong>毫无疑问是最好的旅行方式。无行李旅行消除了几乎所有与飞行相关的痛点，比如托运行李、头顶储物柜、行李费、排队等候，以及在冒险前需要寄存行李。只需在航班起飞前一小时悠闲地走进机场，下飞机后直接前往目的地。我不是来向你推销这个的。r&#x2F;onebag 是一个围绕这个主题建立的社区，是了解更多信息的好地方。</p><p>至于我是如何走到这一步的，我在生活的任何时候都从未真正拥有过很多东西，所以一旦我开始频繁旅行，这似乎是我生活方式的自然演变。因为我已经这样做了很长时间，这真的不是我经常想到的事情。</p><p>当然，我花时间优化了每样东西，使其成为最好的选择：我宁愿打包一件 4 盎司的夹克，而不是 1 磅的夹克。然而，值得一提的是，我不参与旅行&#x2F;徒步社区的消费主义方面，那些更关注昂贵品牌而不是实用性。只买你需要的东西；100 美元的装备几乎和 10,000 美元的装备一样好。有时花更多钱会获得更好的质量或多功能性，但永远不值得为此痴迷。记住，完美的旅行装备并不存在（相关的 XKCD 漫画）。</p><p>就游牧生活方式而言，虽然我更喜欢快节奏的旅行，但这对生产力、财务和朋友关系不太好，所以我现在在城市停留更长时间。这让我能够维持社交关系并更深入地探索城市。这也让我可以进行”零包”旅行，只带口袋里的东西旅行。长期来看，我会一直尽可能少地携带物品旅行。</p><p>说明完毕，这是我拥有的所有东西的清单。</p><hr><h2 id="打包装备"><a href="#打包装备" class="headerlink" title="打包装备"></a>打包装备</h2><p><strong>Aer Slim Pack</strong> - 2020 年我做了一个定制的 10L 包，但它不太耐用，所以目前我又回到了科技包（MYOG 包 v2 即将推出）。这个 9L 的包有完美的存储容量，可以装下除徒步装备外的所有东西，远远符合即使是最严格的廉价航空公司的”个人物品”尺寸要求。我在里面永久放置了一个 Airtag，并在拉链拉手上装了一些 Nite Ize S 型挂钩来防止随意盗窃。</p><p><strong>Rains 铅笔盒</strong> - 我找到的最接近完美洗漱包的东西。我用它装洗漱用品，以及存放急救和随机小物件。它的容量完美适合所有东西的”旅行装”版本。现在似乎永久缺货，因为 Rains 将他们的产品线转向了质量较低、更突出其标志的版本。</p><hr><h2 id="科技产品"><a href="#科技产品" class="headerlink" title="科技产品"></a>科技产品</h2><p><strong>Macbook Air M2 13 英寸</strong> - 屈服了，用最接近的 Apple Silicon 型号替换了我的 12 英寸 Macbook。我怀念超轻笔记本电脑的那一代，但这些新替代品非常强大。祈祷有一天我们能在更小的外形尺寸中获得 M 系列芯片。</p><ul><li>出色的应用：Pixelmator Pro、Final Cut Pro、Privacy、Carrd</li></ul><p><strong>iPhone 15 Pro</strong> - 256GB。出色的手机，有惊人的相机。不带保护壳，因为 AppleCare 很便宜。过去 12 年我一直使用 Verizon，但现在我正在尝试保留一个辅助的 T-Mobile eSIM，以便在城市中获得更好的连接（以及更便宜的旅行套餐）。我还在背包里放了一部”模块化”iPhone 7，以备不时之需。</p><ul><li>出色的应用：MyRadar Pro、Vinegar、Future</li></ul><p><strong>Apple Watch S7</strong> - 我只用手表来跟踪锻炼和健康数据。我经常丢失手表，所以很少买当前版本。我戴的是硅胶单圈表带，我惊讶地发现没有便宜的仿制品——在我看来，这是完美的表带。</p><p><strong>Airpods Pro 2</strong> - 带 USB-C 充电盒。在使用 AirPods 3 几年后，我又回到了 AirPods Pro。我不喜欢硅胶耳机将你与世界隔离的方式，即使有透明模式，但对于旅行和拥挤的地方，你就是无法超越降噪功能。</p><p><strong>三星 USB-C U 盘</strong> - 两个 256GB 闪存盘，一个在我口袋里，一个在我包里。在我的旅行 SSD 出现多年的数据损坏问题后，我又回到了将所有东西存储在云端，只有少数文件本地备份到这些驱动器上。</p><hr><h2 id="充电设备"><a href="#充电设备" class="headerlink" title="充电设备"></a>充电设备</h2><p><strong>Anker 47W 双 USB-C 充电器</strong> - 比苹果的 35W 充电器更小更轻。对于国际旅行，我会给自己买一个便宜的万能旅行适配器。</p><p><strong>Apple USB-C 线</strong> - 1 米，编织的 C 对 C 线缆。用于给我的 iPhone、Macbook、iPad 和电池充电——除了手表之外的所有东西。</p><p><strong>Apple Watch 快速充电器</strong> - 1 米。在使用紧凑型充电器多年后，我又回到了使用苹果的线缆，因为只有苹果的线缆可以以最大速度充电（这确实很创新，他们将技术移到了线缆的 USB-C 端以散热）。</p><p><strong>Anker PowerCore 电池</strong> - 极简、哑光黑、轻便，小到可以放进我的口袋。20,000mAh 可以完全充满一次 Macbook，可以以 30W 的速度给我所有的东西充电，和墙上插座一样快。已不再销售。</p><hr><h2 id="服装"><a href="#服装" class="headerlink" title="服装"></a>服装</h2><p><strong>American Apparel 50&#x2F;50 T 恤</strong> - 移动中时六件，如果我在某个地方停留一段时间就两倍。我更喜欢 50&#x2F;50 棉&#x2F;涤纶混纺而不是三混纺，因为更耐用，我不喜欢美利奴羊毛，因为耐用性和价格——频繁的户外冒险意味着我经常撕破我的衬衫。</p><p>我通过将袜子和内裤卷成紧凑的”日常卷”来打包我的衬衫，这可以防止起皱，消除穿衣时的决策困扰，并使打包变得像把卷扔进包里一样简单。</p><p><strong>Darn Tough 袜子</strong> - 六双。过去 15 年一直穿这个品牌。Darn Tough 美利奴袜子非常坚不可摧，如果它们破了，制造商会给你寄一双新的。我拥有的每双袜子都走过 5,000 英里以上，它们看起来仍然很新。</p><p><strong>优衣库 Airism 四角内裤</strong> - 六条。被旅行者一致认为是最好的旅行内裤，理由充分。买普通版的，不是低腰或无缝的，绝对不是棉质的。通常只有实体店有售。</p><p><strong>Western Rise 裤子</strong> - 虽然我有时会怀念 Levi’s 牛仔裤的”坚韧”，但在穿了几年 WR 的旅行裤后，我已经完全转变了。他们的 AT 裤子使用重型材料，感觉舒适但仍然超级耐用，几年后仍然保持良好。</p><p>搭配极简的 Grip6 枪金色腰带，我越来越喜欢它。我不知道为什么这种腰带款式不更受欢迎。</p><p><strong>Western Rise 短裤</strong> - 我从来不是那种穿短裤的人，但在意识到我的腿比我的手臂白十个色度后，我决定改变生活方式。主要用于锻炼、跑步和洗衣服时穿。</p><p><strong>Everlane 泳裤</strong> - 像短裤一样，我的清单上从来没有泳裤。以前它们是短暂的物品，只为夏季泳池聚会购买，下次飞行时就不见了。但最近我开始喜欢游泳，所以它们现在是永久的补充。</p><p><strong>Nike Pegasus Trail 5 跑鞋</strong> - 我不再穿这些鞋的 Gore-Tex 版本，因为那些在炎热天气中会不舒服。在我试过的所有品牌中，Nike 制造最好和最耐用的跑鞋，但我厌倦了他们每年发布新款后几个月就停产每个设计的做法，所以如果你找不到它，我提前道歉。我在鞋带上装了一些 S 型挂钩，用于在海滩赤脚行走时将鞋子挂在腰带上。</p><p><strong>棒球帽</strong> - 生命的前 28 年从未拥有过帽子。现在我每天都戴。更多的是美学选择而不是实用。这顶极简的 4 美元帽子很完美。</p><hr><h2 id="冬季服装"><a href="#冬季服装" class="headerlink" title="冬季服装"></a>冬季服装</h2><p><strong>Montbell Plasma 1000</strong> - 日本版，有口袋。按重量与保暖比，客观上是世界上最好的羽绒服；重量实际上比我的手机还轻，可以放进我的口袋。太不真实了。分层穿着时，我可以在任何天气下感到舒适。</p><p><strong>Everlane 填充帆布夹克</strong> - 多年来我以为厚重的夹克无法与我的生活方式共存，但在 2024 年整年尝试不同的服装后，我意识到我错了。虽然帆布夹克确实很重，但这是穿着重量而不是打包重量。它们也非常耐用，可以叠穿在我的连帽衫和 Montbell 上，以承受更极端的天气。显然不适合放在我的包里，所以需要在飞行时穿着。</p><p><strong>套头连帽衫</strong> - 我测试了几十件连帽衫，包括高端和定制的。但它们总是在徒步旅行中被破坏，所以我又回到了便宜的品牌。2023 年，我从拉链款换到了套头款，因为美观和重量节省。</p><p><strong>Arc’teryx Alpha SL 手套</strong> - 一个极冷的纽约冬天让我开始戴手套，现在它们是我装备的永久部分。它们对我的荒野和山地冒险特别有用。而且，戴手套感觉很酷。</p><p><strong>美利奴 Buff 头巾</strong> - 旅行时有近乎无限的用途。我主要用它作为寒冷天气的面罩和飞机和公共汽车上的睡眠面罩，但我也用它作为围巾、头巾、枕套等。绝对是我拥有的最好的旅行装备之一。</p><hr><h2 id="杂项"><a href="#杂项" class="headerlink" title="杂项"></a>杂项</h2><p><strong>RE:FORM RE:01 钱包</strong> - 超薄极简钱包，带有用于 Airtag 和小物品的磁性袋。比我以前定制的钱包薄得多。RE:FORM 使用的材料非常耐用，我已经使用了几年，它仍然看起来像新的一样。免责声明：创始人送给我这个钱包。</p><p><strong>亚马逊 Prime 信用卡</strong> - 一张不错的卡，某些东西返现 5%，其余 1-2%。它是一张金属卡，设计极简，没有年费，这对我来说是一个很大的卖点，它在 Whole Foods 为我节省了很多钱。</p><p><strong>Revolut 借记卡</strong> - 旅行时免费 ATM 取款。大多数其他卡已经转向为国际 ATM 增加费用，Revolut 是我使用过的唯一一个没有（尽管我相信他们最终会）。ATM 地图链接，因为应用程序的地图很少准确。</p><p><strong>Airtag</strong> - 我从未丢失过钱包，但 Airtags 对于安心来说很棒。</p><p>还有我的身份证、健康保险、银行卡、图书馆卡和应急现金。</p><p><strong>太阳镜</strong> - 一副便宜的偏光太阳镜，存放在一个小的定制超细纤维袋中，来自我曾经经营的一家已倒闭的眼镜创业公司。如果你读过我以前的更新，你会知道我从 2016 年起断断续续地戴着相机眼镜。在意识到我从未使用过它们后，我在 2024 年停止了，并用一副真正好看的普通太阳镜替换了它们。</p><p><strong>True Utility Keytool</strong> - 可能是世界上最紧凑的开瓶器和多功能工具。十多年前买的，从那以后每天都带着它。没什么可说的，除了超过一千人通过这个亚马逊联盟链接购买了它，零退货。</p><p><strong>A.Brolly 雨伞</strong> - 重量不到 90 克，在我的包里消失了。它比普通雨伞更难展开，但重量使它值得。它显然不是最耐用的雨伞，所以在雨季我会买一个稍微耐用一点的，通常是这个。</p><p><strong>Matador Nanodry 浴巾</strong> - 小到可以放在我的拳头里，但也大到可以作为沙滩巾。干得非常快，可以用好几年。我很少使用这个，因为我通常住在有毛巾的地方，所以它更像是一个”以防万一”的物品。</p><p><strong>Moleskine 笔记本</strong> - 黑色空白页。Moleskine 素描本在过去十年中时有时无地出现在我的清单上。有时有实体纸而不是只有屏幕是很好的。</p><p><strong>Staedtler 针管笔</strong> - 0.05mm，黑色。地球上最好的笔，句号。用于绘画。</p><p><strong>BIC 圆珠笔</strong> - 黑色。地球上第二好的笔。用于书写。在飞机上发放入境表格时也很有用。</p><p><strong>洗漱包</strong> - 极简的洗漱包。大多数物品每一两个月更换一次。全部存放在 Rains 铅笔盒中，还有急救和其他小物品。</p><ul><li>Marvis 牙刷和 Marvis 茉莉牙膏</li><li>普通牙线、剃须刀、除臭剂和镊子</li></ul><p><strong>急救包</strong> - 我的急救包多年来规模缩小，现在只包含基本必需品。所有东西都塞在一个回收的 Altoids 罐子里，重新进货确实很烦人，所以我有时会求助于预包装的 Coleman 套装。</p><ul><li>创可贴、消毒湿巾和酒精湿巾</li><li>强力胶</li><li>应急 Mylar 毯</li><li>驱蚊剂</li></ul><p><strong>杂项小物件</strong> - 塞在我的急救包里或我包周围的随机口袋里。</p><ul><li>技术套件：SIM 卡取卡针、iPhone 拆卸工具、Apple Pencil 笔尖、Airtag 电池</li><li>还有我的护照和各种文件</li></ul><hr><h2 id="户外装备"><a href="#户外装备" class="headerlink" title="户外装备"></a>户外装备</h2><p>我在长途徒步旅行时扔进背包的东西，比如 PCT 的部分路段或美国和墨西哥周围的山脉。我最近没有进行任何超过周末徒步的旅行，所以这些装备中的大部分需要升级为更超轻的。</p><p>携带背包装备旅行最困难的部分是保持机场友好。刀具、燃料、帐篷桩和帐篷&#x2F;登山杖不允许随身携带，虽然碳纤维桩和杆通常可以偷偷通过，但不可靠。</p><p>这套装备重 4.4 磅&#x2F;2 公斤，通过提到的升级应该降至 3.5 磅&#x2F;1.5 公斤。当针对体积优化时，完整的超轻背包装备可以使用不到 10L 的包空间。</p><p><strong>3F UL Gear 帐篷</strong> - 最好的实惠超轻帐篷（我买的时候 70 美元）。我最终想要替换它，但我对保持紧凑和超轻的承诺排除了大多数超轻帐篷，因为它们通常由笨重的 DCF 制成。Lofoten 2 很吸引人，但我希望最终我会找到时间和资源来建造自己的。</p><p><strong>睡袋</strong> - 未知品牌。技术上是一个内衬，但对我来说效果很好。如果我计划去一个真正寒冷的地方旅行，我会用更好的东西替换它。</p><p><strong>Thermarest NeoAir Uberlite</strong> - 重量不到我手机的超轻睡垫。小号，不覆盖我的小腿，但为了体积和重量节省是值得的。</p><p><strong>Nitecore NU25 UL</strong> - 一款重量几乎为零的超轻头灯，可以放在我的口袋里，通过 USB-C 充电。虽然客观上是最好的头灯，但感觉像廉价塑料。</p><p><strong>便携式厨房</strong> - 除了燃料外，所有东西都可以装在杯子里，这也是煮一包拉面的完美尺寸。可能最终会换成酒精炉。</p><ul><li>Toaks 450mL 杯子</li><li>BRS-3000T 炉子</li><li>钛叉勺</li><li>Bic 打火机</li><li>100 克燃料罐</li></ul><p><strong>Sawyer Mini 净水器</strong> - 可能是这个清单上最重要的东西，可以说是我唯一不能没有的东西。</p><p><strong>Smartwater 1L 瓶</strong> - 两个，一个装有运动盖的消毒水用于反冲洗净水器，另一个装有过滤器在顶部的生水。</p><hr><h2 id="考虑中"><a href="#考虑中" class="headerlink" title="考虑中"></a>考虑中</h2><p>我显然不经常买东西，确保我所有的购买都经过深思熟虑的一种方法是维护一个清单，只购买在清单上已经有一段时间的物品。与其将它们保存为浏览器书签，我就把它们放在这里。</p><ul><li><strong>iPad Pro M4 配 Apple Pencil Pro</strong> - 昂贵的升级，但外形和规格令人惊叹。</li><li><strong>Apple Watch S10</strong> - 改进的外形尺寸。其他方面没有真正的区别。</li><li><strong>Insta360 X5</strong> - 360 相机对于独特的 POV 和第三人称镜头非常棒。</li><li><strong>DJI Mini 4 Pro</strong> - 我喜欢飞 DJI 无人机。由于尺寸从未带着一个旅行过。这解决了这个问题。</li></ul><hr><h2 id="感谢阅读！"><a href="#感谢阅读！" class="headerlink" title="感谢阅读！"></a>感谢阅读！</h2><p>我偶尔会向这个列表发送电子邮件，包括关于项目和兴趣的笔记、旅行冒险记录，以及当我在这个网站上发布更新时的通知。</p><p><strong>100% 人工撰写</strong></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%97%85%E8%A1%8C/">旅行</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%9E%81%E7%AE%80%E4%B8%BB%E4%B9%89/">极简主义</category>
      
      <category domain="https://deusyu.app/tags/onebag/">onebag</category>
      
      
      <comments>https://deusyu.app/posts/onebag/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>供求关系：理解权力与资源分配的万能钥匙</title>
      <link>https://deusyu.app/posts/power-defines-scarcity/</link>
      <guid>https://deusyu.app/posts/power-defines-scarcity/</guid>
      <pubDate>Fri, 10 Oct 2025 20:20:00 GMT</pubDate>
      
      <description>为什么改革总是失败，个人奋斗为何越发艰难？本文跳出传统的集团博弈视角，用“供求关系”这一框架剖析权力本质：真正的统治是垄断供给（定义稀缺），并用叙事建构你的“刚需”（制造焦虑）。从西汉兴衰到当代婚恋、股市与房产困局，你将获得一套识别“伪市场”的思维工具，并找到个人在空间与认知上的双重突围路径。</description>
      
      
      
      <content:encoded><![CDATA[<h2 id="一、从西汉政治说起：集团博弈是个伪命题"><a href="#一、从西汉政治说起：集团博弈是个伪命题" class="headerlink" title="一、从西汉政治说起：集团博弈是个伪命题"></a>一、从西汉政治说起：集团博弈是个伪命题</h2><p>历史叙事中，我们习惯用”集团对抗”来理解权力斗争——外戚集团、宦官集团、儒臣集团围绕皇权的博弈。但这种框架可能从根本上误解了权力运作的本质。</p><p>熊师给出了一个更犀利的分析框架：</p><blockquote><p>用”集团”来理解当时的权力博弈，虽然会很顺手，但其实不是很恰当。</p></blockquote><p>他举了个现代例子：<strong>996 加班看似是资本家集团 vs 劳工集团的对抗，但实际上，劳工的待遇不取决于资本家，而取决于供求关系。</strong></p><p>黑死病杀掉了一半欧洲人口，劳动力奇缺，即使国王下令禁止涨工资，市场还是让劳工坐地起价。为什么？因为供不应求。</p><h3 id="真正的竞争发生在同类之间"><a href="#真正的竞争发生在同类之间" class="headerlink" title="真正的竞争发生在同类之间"></a>真正的竞争发生在同类之间</h3><p>熊师指出：</p><ul><li>资本家和资本家你死我活（商场如战场）</li><li>劳工和劳工压价上岗（内卷竞争）</li><li>就像学校里，和你竞争的永远是同学，不是老师</li></ul><p><strong>回到西汉：</strong></p><ul><li>外戚家族之间为独占皇后&#x2F;太后位置血拼（王氏 vs 霍氏）</li><li>宦官个体为争宠互相倾轧（石显 vs 弘恭）</li><li>儒臣士人为官位党同伐异（党锢之祸）</li></ul><p>所谓”三大集团对抗”，往往是事后叙事的简化。真正的权力格局由<strong>供求关系</strong>决定。</p><h3 id="皇权的真正困境"><a href="#皇权的真正困境" class="headerlink" title="皇权的真正困境"></a>皇权的真正困境</h3><p>皇帝是需求方：</p><ul><li>需要<strong>血缘合法性</strong>（外戚提供）</li><li>需要<strong>私人执行力</strong>（宦官提供）</li><li>需要<strong>治理技术</strong>（儒臣提供）</li></ul><p>当供给被垄断、需求是刚性时：</p><ul><li>外戚因血缘垄断供给 → 皇帝幼弱时供不应求 → 坐地起价 → 王莽篡汉</li><li>宦官的生理特征（无后代）成为优势供给 → 东汉皇帝过度依赖 → 党锢之祸</li><li>儒生垄断意识形态生产 → 帝国对合法性论述有刚需 → 即使皇帝不喜欢也得用</li></ul><p><strong>改革为什么总是失败？</strong></p><p>因为需求是结构性的，只要皇权需要这些功能，就必然产生依赖。需求方（皇帝）本身就是结构的一部分，无法真正”摆脱”供给方。</p><hr><h2 id="二、供求框架的现实映射：老中的三大困境"><a href="#二、供求框架的现实映射：老中的三大困境" class="headerlink" title="二、供求框架的现实映射：老中的三大困境"></a>二、供求框架的现实映射：老中的三大困境</h2><p>核心命题：<strong>中国的很多问题是分配问题——极少数赵家人控制了大多数资源，导致供求关系失衡。</strong></p><p>从这个角度看三个典型案例：</p><h3 id="1-畸形的婚恋市场"><a href="#1-畸形的婚恋市场" class="headerlink" title="1. 畸形的婚恋市场"></a>1. 畸形的婚恋市场</h3><p><strong>供求失衡的表现：</strong></p><ul><li>性别比失衡（出生时的人为干预）</li><li>婚配资源的阶层垄断（彩礼、房产作为准入门槛）</li><li>优质配偶资源被顶层垄断性消费（二奶、小三现象）</li></ul><p><strong>结果：</strong></p><ul><li>底层男性完全出局（”剩男”）</li><li>中层陷入军备竞赛（天价彩礼、六个钱包）</li><li>女性被物化为”稀缺资源”参与定价博弈</li></ul><p><strong>本质：</strong> 不是”拜金”或”道德滑坡”，而是当基本需求遇到供给短缺+分配不均时，价格（成本）必然飙升。</p><h3 id="2-单向提款机：中国股市"><a href="#2-单向提款机：中国股市" class="headerlink" title="2. 单向提款机：中国股市"></a>2. 单向提款机：中国股市</h3><p><strong>供给侧垄断：</strong></p><ul><li>上市资格由权力部门控制</li><li>大股东&#x2F;国企随意增发、减持、质押</li><li>退市机制形同虚设，垃圾股长期占据资源</li></ul><p><strong>需求侧困境：</strong></p><ul><li>资本管制 → 居民储蓄无处可去</li><li>房地产收紧后 → 被动引导入市</li><li>散户永远是”接盘侠”（信息不对称+制度性劣势）</li></ul><p><strong>本质：</strong> 这不是”市场”，而是权力控制的资源分配管道——供给方（有权力背书的主体）持续从需求方（散户）抽血。</p><h3 id="3-财富再分配机器：房地产"><a href="#3-财富再分配机器：房地产" class="headerlink" title="3. 财富再分配机器：房地产"></a>3. 财富再分配机器：房地产</h3><p><strong>供给侧垄断：</strong></p><ul><li>土地供应由政府垄断（招拍挂）</li><li>房企和地方政府形成利益共同体</li><li>限购、限售人为制造稀缺性</li></ul><p><strong>需求侧被绑架：</strong></p><ul><li>教育、医疗、户籍与房产绑定 → 刚需属性</li><li>通胀预期+货币超发 → 资产保值需求</li><li>房贷制度：让中产阶级用 30 年劳动为银行&#x2F;地方债打工</li></ul><p><strong>结果：</strong></p><ul><li>一线城市房价收入比畸形（40-50 倍）</li><li>年轻人被迫”六个钱包”</li><li>实体经济被虹吸（资金流向土地而非创新）</li></ul><h3 id="三者的共同机制"><a href="#三者的共同机制" class="headerlink" title="三者的共同机制"></a>三者的共同机制</h3><table><thead><tr><th>领域</th><th>供给方垄断</th><th>需求方困境</th><th>结果</th></tr></thead><tbody><tr><td>婚恋</td><td>性别比失衡+阶层壁垒</td><td>刚性生理需求</td><td>底层出局，中层内卷</td></tr><tr><td>股市</td><td>上市资格+大股东特权</td><td>资本管制+储蓄贬值</td><td>散户被收割</td></tr><tr><td>房产</td><td>土地垄断+政策绑架</td><td>教育医疗绑定</td><td>全民负债，财富集中</td></tr></tbody></table><p>核心手法：</p><ol><li><strong>人为制造稀缺</strong>（土地、上市资格、性别比）</li><li><strong>绑定刚需</strong>（教育、养老、婚配）</li><li><strong>阻断替代选项</strong>（资本管制、户籍制度、道德捆绑）</li></ol><hr><h2 id="2-5、Alpha-洞见：权力的本质是定义”稀缺性”"><a href="#2-5、Alpha-洞见：权力的本质是定义”稀缺性”" class="headerlink" title="2.5、Alpha 洞见：权力的本质是定义”稀缺性”"></a>2.5、Alpha 洞见：权力的本质是定义”稀缺性”</h2><p>到这里，我们需要停下来追问一个更深层的问题：<strong>谁在定义”供”与”求”？</strong></p><p>我们上面出色地描述了供求失衡的<strong>结果</strong>，但还需要更聚焦于失衡的<strong>原因</strong>。</p><h3 id="健康市场-vs-被操控的伪市场"><a href="#健康市场-vs-被操控的伪市场" class="headerlink" title="健康市场 vs 被操控的伪市场"></a>健康市场 vs 被操控的伪市场</h3><p>在健康市场中，供求关系是<strong>自然博弈</strong>的结果：</p><ul><li>黑死病导致劳动力短缺 → 工资自然上涨</li><li>科技进步降低生产成本 → 商品价格自然下降</li><li>消费者偏好改变 → 市场供给自然调整</li></ul><p>但在我们描述的所有场景（西汉、婚恋、股市、房产）中，<strong>供求关系本身是被权力扭曲和定义的</strong>。</p><h3 id="权力的真正武器：制造稀缺性-建构刚需"><a href="#权力的真正武器：制造稀缺性-建构刚需" class="headerlink" title="权力的真正武器：制造稀缺性 + 建构刚需"></a>权力的真正武器：制造稀缺性 + 建构刚需</h3><p><strong>西汉：权力定义谁是”合法供给”</strong></p><ul><li>皇权定义了谁的<strong>血缘</strong>（外戚）是合法的</li><li>皇权定义了谁的<strong>忠诚</strong>（宦官）是可信的</li><li>皇权定义了谁的<strong>知识</strong>（儒臣）是正统的</li></ul><p><strong>现代中国：权力的双重操控</strong></p><p><strong>供给侧操控：制造稀缺</strong></p><ul><li><strong>房产</strong>：通过土地拍卖制度人为限制供给</li><li><strong>股市</strong>：通过上市审批控制”优质资产”的供给</li><li><strong>婚恋</strong>：通过计划生育政策扭曲性别比</li></ul><p><strong>需求侧操控：建构刚需</strong> ← 这是更隐蔽的控制</p><ul><li><strong>真正的刚需只有”吃喝拉撒睡”</strong>，但权力通过叙事让你相信：<ul><li>房产是刚需（实际上：租房也能活，但户籍、教育、婚恋市场都绑定了房产）</li><li>婚姻是刚需（实际上：单身也能活，但养老焦虑、社会压力、传宗接代叙事让你恐惧）</li><li>名校教育是刚需（实际上：不上学也能活，但”不能输在起跑线”的焦虑被无限放大）</li><li>医疗是刚需（某些是真刚需，但很多是被过度医疗化、被焦虑营销建构出来的）</li></ul></li></ul><p><strong>双重绞杀的完美闭环：</strong></p><ol><li>供给侧：人为制造稀缺（土地、上市资格、性别比）</li><li>需求侧：叙事建构刚需（恐惧营销、社会压力、制度绑定）</li><li>阻断逃逸：切断替代选项（资本管制、户籍壁垒、道德绑架）</li></ol><p>当你既不能改变供给，又相信这是刚需时，你就完全被困在这个系统里了。</p><h3 id="颠覆性结论：双重操控下的伪市场"><a href="#颠覆性结论：双重操控下的伪市场" class="headerlink" title="颠覆性结论：双重操控下的伪市场"></a>颠覆性结论：双重操控下的伪市场</h3><p><strong>所谓的”供求关系”，在这里已经不是一个客观的经济规律，而是权力者手中的统治工具。</strong></p><p>它的作用不是描述市场，而是<strong>双重塑造市场</strong>：</p><p><strong>供给侧：</strong> 定义什么是”稀缺”来控制资源分配<br><strong>需求侧：</strong> 定义什么是”刚需”来绑架民众<br><strong>逃逸阻断：</strong> 定义什么是”合法”来排除替代选项</p><p>这解释了为什么”市场调节”总是失效：</p><ul><li>不是市场不灵，而是<strong>根本没有真正的市场</strong></li><li>不是供求失衡，而是<strong>供求关系的两端都被操控</strong></li><li>不是资源不足，而是<strong>供给被限制，需求被制造</strong></li></ul><h3 id="叙事的力量：最廉价的统治工具"><a href="#叙事的力量：最廉价的统治工具" class="headerlink" title="叙事的力量：最廉价的统治工具"></a>叙事的力量：最廉价的统治工具</h3><p>更可怕的是：<strong>需求侧的操控成本几乎为零。</strong></p><ul><li>制造稀缺（供给侧）还需要政策执行成本</li><li>但建构刚需（需求侧）只需要：媒体宣传、社会压力、恐惧营销</li></ul><p><strong>案例对比：</strong></p><table><thead><tr><th>控制方式</th><th>成本</th><th>效果</th></tr></thead><tbody><tr><td>限制土地供应</td><td>需要行政执行</td><td>中等，容易引发不满</td></tr><tr><td>让人们相信”没房&#x3D;失败者”</td><td>几乎为零（媒体+社会舆论）</td><td>极强，人们自我驯化</td></tr><tr><td>限制上市资格</td><td>需要审批机制</td><td>中等，专业投资者会绕过</td></tr><tr><td>让人们相信”不投资&#x3D;贬值”</td><td>几乎为零（恐惧营销）</td><td>极强，散户自愿入场</td></tr></tbody></table><p><strong>你看，最高明的控制不是让你做不到，而是让你自己相信你必须这么做。</strong></p><h3 id="从”失衡”到”操控”的认知跃迁"><a href="#从”失衡”到”操控”的认知跃迁" class="headerlink" title="从”失衡”到”操控”的认知跃迁"></a>从”失衡”到”操控”的认知跃迁</h3><p>理解这一点至关重要，因为它改变了我们对问题的定义：</p><p><strong>传统叙事：</strong> “市场失灵了，需要调节”<br>→ 这暗示问题是技术性的，可以通过政策微调解决</p><p><strong>真实情况：</strong> “这是一个被精准操控的伪市场”<br>→ 这揭示问题是结构性的，调节者本身就是操控者</p><p><strong>这意味着：</strong></p><ul><li>改革不会来自内部（改革者是既得利益者）</li><li>个人抗争注定失败（你在对抗规则制定者）</li><li>唯一有效的策略是<strong>逃离这个系统</strong></li></ul><hr><h2 id="三、个人突围：逃离操控，更要逃离叙事"><a href="#三、个人突围：逃离操控，更要逃离叙事" class="headerlink" title="三、个人突围：逃离操控，更要逃离叙事"></a>三、个人突围：逃离操控，更要逃离叙事</h2><p>既然我们面对的是”供需两端都被操控的伪市场”，那么真正的突围有两个层次：</p><p><strong>第一层：空间突围</strong>——去权力鞭长莫及的市场<br><strong>第二层：认知突围</strong>——识破被建构的”刚需”叙事</p><h3 id="为什么认知突围更重要？"><a href="#为什么认知突围更重要？" class="headerlink" title="为什么认知突围更重要？"></a>为什么认知突围更重要？</h3><p>如果你相信”没房&#x3D;失败者”，即使去了美国也会陷入同样的焦虑。<br>如果你相信”不结婚&#x3D;不完整”，换个国家也只是换个牢笼。</p><p><strong>真正的自由是：认清什么是真正的刚需（吃喝拉撒），拒绝被制造的焦虑。</strong></p><h3 id="具体策略：双重逃离"><a href="#具体策略：双重逃离" class="headerlink" title="具体策略：双重逃离"></a>具体策略：双重逃离</h3><p>下面的策略不仅是”去哪个市场”，更是”如何重新定义需求”。</p><h3 id="策略一：婚恋-→-外国人-OR-不婚"><a href="#策略一：婚恋-→-外国人-OR-不婚" class="headerlink" title="策略一：婚恋 → 外国人 OR 不婚"></a>策略一：婚恋 → 外国人 OR 不婚</h3><p><strong>空间突围（去更健康的市场）：</strong></p><ul><li>打破性别比失衡的封闭市场</li><li>绕过”彩礼-房产-户籍”的捆绑销售</li><li>在某些国家&#x2F;地区，婚恋观念更平衡</li></ul><p><strong>认知突围（质疑刚需叙事）：</strong></p><ul><li>婚姻真的是刚需吗？单身也能活得很好</li><li>“传宗接代”是真需求还是被建构的焦虑？</li><li>不婚不育的最大敌人不是孤独，而是社会压力和叙事恐吓</li></ul><p><strong>不对称优势：</strong></p><ul><li>当大多数人困在”必须结婚”的叙事中时，你退出了这个军备竞赛</li><li>当大多数人为婚房掏空六个钱包时，你有了其他选择</li></ul><h3 id="策略二：投资市场-→-美股"><a href="#策略二：投资市场-→-美股" class="headerlink" title="策略二：投资市场 → 美股"></a>策略二：投资市场 → 美股</h3><p><strong>供求关系的质变：</strong></p><ul><li>严格退市机制（垃圾公司会被清除）</li><li>信息披露规范（SEC 监管）</li><li>做空机制存在（价格发现更有效）</li><li>散户和机构在规则面前相对平等</li></ul><p><strong>不对称优势：</strong></p><ul><li>人民币资产的对冲</li><li>参与全球最优质企业的成长</li><li>汇率贬值风险的天然对冲</li></ul><h3 id="策略三：资产配置-→BTC-等-OR-拒绝资产焦虑"><a href="#策略三：资产配置-→BTC-等-OR-拒绝资产焦虑" class="headerlink" title="策略三：资产配置 →BTC 等 OR 拒绝资产焦虑"></a>策略三：资产配置 →BTC 等 OR 拒绝资产焦虑</h3><p><strong>空间突围（去去中心化的市场）：</strong></p><ul><li>供给透明且有限（2100 万枚硬顶）</li><li>需求全球化（不受单一主权国家操纵）</li><li>去中心化（没有”央行”随意印钞）</li></ul><p><strong>认知突围（质疑刚需叙事）：</strong></p><ul><li>“不投资就贬值”是真理还是恐吓营销？</li><li>财务自由是真需求还是被制造的永恒焦虑？</li><li>简朴生活（降低物欲）vs 资产增值焦虑，哪个更自由？</li></ul><p><strong>不对称优势：</strong></p><ul><li>当大多数人困在”必须理财”的焦虑中时，你可以选择极简主义</li><li>当大多数人追逐资产增值时，你可以用 BTC 对冲系统性风险</li><li><strong>真正的财富自由是：需求降到足够低，而不是资产涨到足够高</strong></li></ul><h3 id="不对称优势的本质：认知差距"><a href="#不对称优势的本质：认知差距" class="headerlink" title="不对称优势的本质：认知差距"></a>不对称优势的本质：认知差距</h3><p><strong>信息不对称：</strong></p><ul><li>大多数人困在”国内市场唯一论”的认知牢笼</li><li>语言能力、信息获取能力成为护城河</li></ul><p><strong>流动性不对称：</strong></p><ul><li>资本管制对大多数人是枷锁</li><li>但对有能力&#x2F;资源的人，反而是”套利窗口”</li></ul><p><strong>制度不对称：</strong></p><ul><li>国内制度的扭曲创造了”逃离溢价”</li><li>外籍身份、海外资产有隐性价值</li></ul><p><strong>认知不对称（最重要）：</strong></p><ul><li>大多数人相信被建构的”刚需”（房子、婚姻、投资）</li><li>少数人识破了叙事，重新定义了”什么是真正必需的”</li><li><strong>真正的不对称优势不是你去了哪里，而是你摆脱了多少被制造的焦虑</strong></li></ul><p><strong>极简主义作为终极武器：</strong></p><ul><li>当权力通过”制造需求”来控制你时</li><li>降低需求就是最彻底的反抗</li><li>需要的越少，越难被控制</li></ul><hr><h2 id="四、悲剧的终章：个人理性与集体困境"><a href="#四、悲剧的终章：个人理性与集体困境" class="headerlink" title="四、悲剧的终章：个人理性与集体困境"></a>四、悲剧的终章：个人理性与集体困境</h2><h3 id="策略的边界"><a href="#策略的边界" class="headerlink" title="策略的边界"></a>策略的边界</h3><p><strong>适用人群：</strong></p><ul><li>有一定经济基础（能承担试错成本）</li><li>有信息获取能力（语言、认知）</li><li>有行动力（克服惯性和心理障碍）</li></ul><p><strong>但这揭示了一个悖论：能够”用脚投票”本身就是一种特权。</strong></p><h3 id="历史的回声"><a href="#历史的回声" class="headerlink" title="历史的回声"></a>历史的回声</h3><p>这和西汉晚期何其相似：</p><ul><li>豪强大族通过土地兼并、人口隐匿逃避赋税</li><li>普通农民承担更重负担</li><li>能逃离的人逃离了，系统变得更加脆弱</li><li>最终导致王莽改制和社会崩溃</li></ul><h3 id="最讽刺的现实"><a href="#最讽刺的现实" class="headerlink" title="最讽刺的现实"></a>最讽刺的现实</h3><p><strong>个人策略是理性的</strong>——在既定规则下最大化个人利益</p><p><strong>但它也是悲哀的</strong>——个体只能逃离，无法改变规则</p><p><strong>结果：</strong></p><ul><li>有能力的人逃离扭曲市场 → 进一步加剧国内市场的劣化</li><li>无法逃离的人承受更大压力 → 陷入恶性循环</li><li>系统变得更加不公平 → 直到崩溃</li></ul><hr><h2 id="结语：权力的双重操控与个体的双重逃离"><a href="#结语：权力的双重操控与个体的双重逃离" class="headerlink" title="结语：权力的双重操控与个体的双重逃离"></a>结语：权力的双重操控与个体的双重逃离</h2><p>供求关系这个分析框架的价值在于：</p><ul><li><strong>第一层</strong>：它让我们看清结构性问题不是道德问题</li><li><strong>第二层</strong>：它让我们明白供求关系本身可以被操控</li><li><strong>第三层</strong>：它揭示了权力的本质是定义稀缺性的能力</li><li><strong>第四层</strong>：它暴露了更隐蔽的控制——通过叙事建构”刚需”</li></ul><p>从西汉到当代，权力运作的底层逻辑从未改变：</p><p><strong>供给侧：</strong> 定义什么是”合法”（血缘、知识、资格）、制造什么是”稀缺”（土地、上市名额、性别比）</p><p><strong>需求侧：</strong> 建构什么是”刚需”（教育、医疗、婚配）、制造什么是”恐惧”（不买房&#x3D;失败者、不结婚&#x3D;不完整、不投资&#x3D;贬值）</p><p><strong>真正的刚需只有”吃喝拉撒睡”，其他都是被叙事建构的。</strong></p><h3 id="个体的双重逃离"><a href="#个体的双重逃离" class="headerlink" title="个体的双重逃离"></a>个体的双重逃离</h3><p><strong>空间逃离：</strong> 去权力鞭长莫及的市场（外国婚恋市场、美股、BTC）</p><p><strong>认知逃离：</strong> 识破被建构的需求叙事，降低欲望，拒绝焦虑</p><p>真正的解决方案需要打破权力对”稀缺性定义”和”需求建构”的双重垄断——但这已经超出了个人能力范围。</p><p>对于普通人来说，能做的是：</p><ul><li>识别哪些市场被操控了</li><li>识别哪些需求是被制造的</li><li>寻找权力鞭长莫及的空间</li><li><strong>最重要的：降低需求，摆脱被建构的欲望</strong></li></ul><p>当越来越多聪明人选择这条路，留下来的系统会更加脆弱——这是个人理性导致的集体困境，也是历史周期律的微观写照。</p><p><strong>历史不会重复，但总是押韵。</strong></p><p>每个时代的权力都在重新定义稀缺性，都在建构新的”刚需”叙事。</p><p>每个时代的聪明人都在逃离这种定义，都在识破这些叙事。</p><p>西汉的豪强大族逃离了赋税，但系统崩溃了。</p><p>我们这一代人能否逃得更远？</p><p><strong>不取决于你去了哪里，而取决于你摆脱了多少被制造的焦虑。</strong></p><hr><p><em>人活着只需要吃喝拉撒睡。权力让你相信你还需要房子、婚姻、投资、成功。</em></p><p><em>识破叙事，就是自由的开始。</em></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%A4%BE%E4%BC%9A%E8%A7%82%E5%AF%9F/">社会观察</category>
      
      <category domain="https://deusyu.app/categories/%E7%A4%BE%E4%BC%9A%E8%A7%82%E5%AF%9F/%E6%94%BF%E6%B2%BB%E5%93%B2%E5%AD%A6/">政治哲学</category>
      
      
      <category domain="https://deusyu.app/tags/%E4%BE%9B%E6%B1%82%E5%85%B3%E7%B3%BB/">供求关系</category>
      
      <category domain="https://deusyu.app/tags/%E6%9D%83%E5%8A%9B%E6%9C%AC%E8%B4%A8/">权力本质</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%99%E4%BA%8B%E6%93%8D%E6%8E%A7/">叙事操控</category>
      
      <category domain="https://deusyu.app/tags/%E7%B3%BB%E7%BB%9F%E6%80%A7%E5%9B%B0%E5%A2%83/">系统性困境</category>
      
      
      <comments>https://deusyu.app/posts/power-defines-scarcity/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Lovable 提示词工程指南</title>
      <link>https://deusyu.app/posts/prompting-one/</link>
      <guid>https://deusyu.app/posts/prompting-one/</guid>
      <pubDate>Fri, 10 Oct 2025 04:35:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://docs.lovable.dev/prompting/prompting-one">https://docs.lovable.dev/prompting/prompting-one</a></p></blockquote><p>这篇 Prompt 教程基本涵盖了我在开发和实践中遇到的所有场景，也融合了跟很多朋友交流后总结的技巧。可以说是 AI Coding 的<strong>最小必要技能集</strong>——不多不少，刚刚好够用。</p><p>强烈推荐给各位，能实实在在提升 AI Coding 的效率和质量。看完就能上手，不用再走弯路。</p><h1 id="Prompting-1-1-Lovable-提示词工程指南"><a href="#Prompting-1-1-Lovable-提示词工程指南" class="headerlink" title="Prompting 1.1 - Lovable 提示词工程指南"></a>Prompting 1.1 - Lovable 提示词工程指南</h1><blockquote><p>温馨提示： 为了帮助您充分利用 Lovable，我们汇编了一系列提示词策略和方法。这些内容来自我们团队的经验以及社区成员的分享。由于 Lovable 依赖大型语言模型(LLMs)，有效的提示词策略能显著提高其效率和准确性。</p></blockquote><hr><h2 id="什么是提示词？"><a href="#什么是提示词？" class="headerlink" title="什么是提示词？"></a>什么是提示词？</h2><p><strong>提示词(Prompting)</strong> 指的是你给 AI 系统执行任务的文本指令。在 Lovable(一个 AI 驱动的应用构建器)中，提示词是你”告诉” AI 该做什么的方式——从创建 UI 到编写后端逻辑。</p><p>有效的提示词至关重要，因为 Lovable 使用大型语言模型(LLMs)，清晰、精心设计的提示词能大大提高 AI 构建应用的效率和准确性。</p><p><strong>简而言之：更好的提示词带来更好的结果。</strong></p><hr><h2 id="为什么提示词很重要"><a href="#为什么提示词很重要" class="headerlink" title="为什么提示词很重要"></a>为什么提示词很重要</h2><p>大多数人认为提示词只是向 AI 输入一个请求然后期待最好的结果——<strong>事实并非如此</strong>。</p><p>平庸的 AI 响应和让 AI 为你构建整个工作流程之间的差异，归根结底在于你如何提示。</p><p>无论你是开发者还是非技术人员，掌握 Lovable 中的提示词工程都能帮助你：</p><ul><li><strong>自动化重复任务</strong> - 通过精确指示 AI 要做什么</li><li><strong>更快地调试</strong> - 利用 AI 生成的见解和解决方案</li><li><strong>构建和优化工作流程</strong> - 一旦正确引导，让 AI 处理繁重的工作</li></ul><p><strong>最棒的是什么？</strong> 你不需要成为专家程序员。通过正确的提示词技术，你可以释放 Lovable 中 AI 的全部潜力，而无需浪费时间进行试错。这份指南将带你从基础概念到高级提示词策略，让你能够有效地与 AI 沟通并更快地构建。</p><hr><h2 id="理解-AI-如何思考"><a href="#理解-AI-如何思考" class="headerlink" title="理解 AI 如何思考"></a>理解 AI 如何思考</h2><p>与传统编程不同，使用 AI 需要清晰地沟通你的意图。</p><p>驱动 Lovable 的大型语言模型(LLMs)<strong>不会像人类那样”理解”</strong>——它们基于训练数据中的模式预测输出。</p><p>这对你应该如何提示有重要意义：</p><p>为了获得一致的结果，将你的提示词结构化为清晰的部分会有所帮助。推荐的格式（类似提示词的”训练轮”）使用标记的部分：Context（上下文）、Task（任务）、Guidelines（指南）和 Constraints（约束）。</p><h3 id="提供上下文和细节"><a href="#提供上下文和细节" class="headerlink" title="提供上下文和细节"></a>提供上下文和细节</h3><p>AI 模型除了你提供的内容外，没有常识或隐含上下文。始终提供相关背景或需求。</p><p>例如，不要只是说”构建一个登录页面”，而应指定细节：”使用 React 创建一个登录页面，包含邮箱&#x2F;密码认证和 JWT 处理。”明确包含任何技术栈或工具（例如”使用 Supabase 进行认证”）。</p><h3 id="明确指令和约束"><a href="#明确指令和约束" class="headerlink" title="明确指令和约束"></a>明确指令和约束</h3><p>永远不要假设 AI 会推断你的目标。如果你有约束或偏好，请说明它们。</p><p>例如，如果输出应使用特定库或保持在某个范围内，请预先告诉模型。AI 会<strong>字面上</strong>遵循你的指令——模糊性可能导致不想要的结果或 AI”幻觉”(编造信息)。</p><h3 id="结构很重要-顺序和强调"><a href="#结构很重要-顺序和强调" class="headerlink" title="结构很重要(顺序和强调)"></a>结构很重要(顺序和强调)</h3><p>由于 transformer 架构，模型特别关注提示词的<strong>开头和结尾</strong>。</p><p>利用这一点，将最关键的细节或请求放在开头，必要时在结尾重申任何绝对要求。同时记住模型有固定的上下文窗口——过长的提示词或很长的对话可能导致 AI 忘记早期细节。保持提示词聚焦，必要时刷新上下文（例如，如果会话很长，提醒模型关键点）。</p><h3 id="了解模型的局限"><a href="#了解模型的局限" class="headerlink" title="了解模型的局限"></a>了解模型的局限</h3><p>AI 的知识来自训练数据。它无法知道最近的事件或你未提供的专有信息。即使在猜测时它也会试图听起来很自信（这会导致幻觉）。对于事实性查询，始终提供参考文本或数据，或准备好验证其输出。</p><p><strong>把提示词想象成告诉一个非常字面理解的实习生你到底需要什么。你的指导越清晰、越结构化，结果就越好。</strong> 接下来，我们将深入探讨使提示词有效的核心原则。</p><hr><h2 id="核心提示词原则：C-L-E-A-R-框架"><a href="#核心提示词原则：C-L-E-A-R-框架" class="headerlink" title="核心提示词原则：C.L.E.A.R. 框架"></a>核心提示词原则：C.L.E.A.R. 框架</h2><p>优秀的提示词遵循一套简单的原则。记住它们的便捷方法是 <strong>CLEAR</strong>：Concise（简洁）、Logical（逻辑）、Explicit（明确）、Adaptive（适应）、Reflective（反思）。在制作指令时将这些作为检查清单：</p><h3 id="C-简洁-Concise"><a href="#C-简洁-Concise" class="headerlink" title="C - 简洁 (Concise)"></a>C - 简洁 (Concise)</h3><p>清晰直达要点。多余的废话或模糊的语言会让模型困惑。使用直接的语言：</p><p><strong>❌ 不好：</strong> “你能写一些关于科学主题的东西吗？”</p><p><strong>✅ 好：</strong> “写一篇 200 字的摘要，关于气候变化对沿海城市的影响。”</p><p>避免填充词——如果一个细节没有指导意义，它就是干扰。追求精确和简洁地描述你想要什么。</p><h3 id="L-逻辑-Logical"><a href="#L-逻辑-Logical" class="headerlink" title="L - 逻辑 (Logical)"></a>L - 逻辑 (Logical)</h3><p>以循序渐进或结构良好的方式组织你的提示词。将复杂请求分解为有序步骤或要点，以便 AI 能轻松跟随。不要用单一冗长的请求，而是分离关注点。</p><p><strong>❌ 不好：</strong> “给我构建一个用户注册功能，还要显示一些使用统计。”</p><p><strong>✅ 好：</strong> “首先，使用 Supabase 实现一个包含邮箱和密码的用户注册表单。然后，在成功注册后，显示一个展示用户数量统计的仪表板。”</p><p>逻辑流程确保模型系统地处理你请求的每个部分。</p><h3 id="E-明确-Explicit"><a href="#E-明确-Explicit" class="headerlink" title="E - 明确 (Explicit)"></a>E - 明确 (Explicit)</h3><p>准确说明你想要什么和不想要什么。如果某事重要，拼写出来。如果可能，提供格式或内容的示例。模型有广泛的知识，但它不会读懂你关于细节的想法。</p><p><strong>❌ 不好：</strong> “告诉我关于狗的事。”（太开放性）</p><p><strong>✅ 好：</strong> “列出关于金毛寻回犬的 5 个独特事实，用要点形式。”</p><p>同样，如果你有期望的输出风格，说出来（例如”以 JSON 格式响应”或”使用随意的语气”）。把 AI 当作初学者：不要假设任何事情对它来说是显而易见的。</p><h3 id="A-适应-Adaptive"><a href="#A-适应-Adaptive" class="headerlink" title="A - 适应 (Adaptive)"></a>A - 适应 (Adaptive)</h3><p>如果第一个答案不完美，不要满足——提示词可以迭代优化。Lovable AI（和一般的 LLMs）的一大优势是你可以进行对话。如果初始输出偏离目标，调整你的方法：在后续提示中澄清指令或指出错误。</p><p>例如，”你给出的解决方案缺少认证步骤。请在代码中包含用户认证。”通过迭代，你引导模型获得更好的结果。你甚至可以要求 AI 如何改进提示词本身（这是元提示，稍后介绍）。</p><h3 id="R-反思-Reflective"><a href="#R-反思-Reflective" class="headerlink" title="R - 反思 (Reflective)"></a>R - 反思 (Reflective)</h3><p>在每次 AI 交互后花时间回顾什么有效、什么无效。这更多是关于你而不是模型——作为提示词工程师，注意哪些提示词措辞获得了好结果，哪些导致了混乱。在复杂会话后，你甚至可以要求 AI 总结最终解决方案或推理（我们稍后会讨论反向元提示）。保持反思有助于你未来制作更好的提示词，建立持续改进的 AI 沟通循环。</p><p>在开发提示词时牢记这些 CLEAR 原则。接下来，我们将研究从基础到高级的具体提示词技术，包括如何结构化提示词以及利用 AI 作为协作者。</p><hr><h2 id="提示词的四个级别"><a href="#提示词的四个级别" class="headerlink" title="提示词的四个级别"></a>提示词的四个级别</h2><p>有效的提示词是一项随着实践而增长的技能。这里我们概述了四个级别的提示词掌握，从结构化的”训练轮”到高级元技术。每个级别都有其用例——根据需要组合使用：</p><h3 id="级别-1：结构化”训练轮”提示（明确格式）"><a href="#级别-1：结构化”训练轮”提示（明确格式）" class="headerlink" title="级别 1：结构化”训练轮”提示（明确格式）"></a>级别 1：结构化”训练轮”提示（明确格式）</h3><p>当你刚开始或处理非常复杂的任务时，在提示词中使用标记结构会有所帮助。这充当训练轮，确保你提供所有必要信息。在 Lovable 中经过验证的格式是将提示词分解为如下部分：</p><ul><li><strong>Context（上下文）：</strong> AI 的背景或角色设置。（例如”你是一位世界级的 Lovable AI 编码助手。”）</li><li><strong>Task（任务）：</strong> 你想实现的具体目标。（例如”构建一个包含用户登录和实时同步的全栈待办事项应用。”）</li><li><strong>Guidelines（指南）：</strong> 首选方法或风格。（例如”前端使用 React，样式使用 Tailwind，认证和数据库使用 Supabase。”）</li><li><strong>Constraints（约束）：</strong> 硬性限制或禁止事项。（例如”不使用任何付费 API。应用应在移动和桌面上工作。”）</li></ul><p>通过清楚地标记每个部分，你几乎不留任何误解的余地。例如，一个提示词可能看起来像：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line">Context: 你是一位使用 Lovable 的专家全栈开发者。</span><br><span class="line"></span><br><span class="line">Task: 使用 Supabase（邮箱/密码认证）在 React 中创建一个安全的登录页面。</span><br><span class="line"></span><br><span class="line">Guidelines: UI 应该简约，遵循 Tailwind CSS 约定。为每个步骤提供清晰的代码注释。</span><br><span class="line"></span><br><span class="line">Constraints: 只修改 LoginPage 组件；不要更改其他页面。确保最终输出是 Lovable 编辑器中的可工作页面。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这种详细程度逐步引导 AI。训练轮提示对于新手或复杂的多部分任务非常出色——它迫使你仔细思考你到底需要什么，并通过结构化请求帮助模型。</p><h3 id="级别-2：对话式提示（无训练轮）"><a href="#级别-2：对话式提示（无训练轮）" class="headerlink" title="级别 2：对话式提示（无训练轮）"></a>级别 2：对话式提示（无训练轮）</h3><p>随着你越来越熟练，你不会总是需要如此严格的结构。对话式提示意味着你可以更自然地向 AI 写作，类似于你向同事解释任务的方式，同时仍保持清晰。关键是在没有正式标签的情况下保持清晰和完整。例如：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">让我们构建一个上传个人资料图片的功能。它应该包括一个带有图像文件输入和提交按钮的表单。提交时，它应该将图像存储在 Supabase 存储中并更新用户个人资料。请编写必要的 React 组件和此所需的任何后端函数，并确保优雅地处理错误（如文件过大）。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这是一个更自由形式的提示词，但仍然逻辑有序并明确了需求。没有训练轮，但它是有效的。一旦你相信自己不会忘记重要细节，对话式提示就能很好地工作。它们使交互更自然，特别是在你正在迭代结果的持续聊天中。</p><p>即使在对话式风格中，你也可以通过将请求的不同方面分成段落或要点来模拟结构。目标是相同的：清晰的沟通。一旦 AI 已经获得了上下文，你可以在更快速的任务中使用这种风格。</p><h3 id="级别-3：元提示（AI-辅助的提示改进）"><a href="#级别-3：元提示（AI-辅助的提示改进）" class="headerlink" title="级别 3：元提示（AI 辅助的提示改进）"></a>级别 3：元提示（AI 辅助的提示改进）</h3><p>这是一种高级技术，你实际上要求 AI 帮助你改进提示词或计划。由于 Lovable 的 AI（如 ChatGPT）可以对语言进行推理，你可以用它来完善你的指令。如果你得到的输出偏离基准，这尤其有用——这可能表明你的提示词不清楚。例如：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">审查我上一个提示词并识别任何模糊性或缺失信息。我如何重写它以使其更简洁和精确？</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>或者：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">重写这个提示词使其更具体和详细：&quot;使用 Supabase 在 React 中创建一个安全的登录页面，确保基于角色的认证。&quot;</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>AI 可能会回应你请求的更好结构化或更详细的版本。这可以揭示什么不清楚。本质上，你让 AI 充当提示词编辑器。在 Lovable 中，你可以在聊天模式中安全地做到这一点（因为聊天模式不会直接编辑你的项目）。元提示将 AI 变成一个帮助你询问你真正想要什么的协作者。这是一种强大的方式来启动你的提示词工程技能——AI 可以建议你没有考虑过的改进。</p><h3 id="级别-4：反向元提示（AI-作为文档工具）"><a href="#级别-4：反向元提示（AI-作为文档工具）" class="headerlink" title="级别 4：反向元提示（AI 作为文档工具）"></a>级别 4：反向元提示（AI 作为文档工具）</h3><p>反向元提示意味着在任务完成后使用 AI 来总结或记录发生的事情，这样你可以学习或以后重用。把它想象成要求 AI 反思过程并为下次提供提示词或解释。这对于调试和知识捕获非常有用。例如，在你用 Lovable 解决棘手问题后，你可能会提示：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">总结我们在设置 JWT 认证时遇到的错误，并解释我们如何解决它们。然后，起草一个我将来可以使用的提示词，以避免在设置认证时犯这些错误。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>AI 可能会产生问题和解决方案的简明回顾，然后是一个模板提示词，如”Context: 构建认证… Task: 通过做 Y 来避免 X 错误…”。这种反向元方法帮助你建立一个可重用提示词和经验教训的个人库。在 Lovable 中，这可能是黄金：下次你面临类似任务时，你已经有了一个久经考验的提示词（或至少有一个清晰的检查清单要遵循）。</p><p>假设你花了一个小时调试为什么 API 调用失败。一旦修复，要求 AI 记录它。你不仅会加强你的理解，还会创建材料来输入知识库或未来项目，这样 AI 就不会重复同样的错误。</p><hr><h2 id="高级提示词技术"><a href="#高级提示词技术" class="headerlink" title="高级提示词技术"></a>高级提示词技术</h2><p>一旦你掌握了基础，就该利用更高级的策略来充分利用 Lovable 的 AI。这些技术有助于处理复杂场景、减少错误（如幻觉）并根据你的需求定制 AI 的输出。</p><h3 id="零样本-vs-少样本提示"><a href="#零样本-vs-少样本提示" class="headerlink" title="零样本 vs 少样本提示"></a>零样本 vs 少样本提示</h3><p><strong>零样本提示</strong> 意味着你在没有示例的情况下要求模型执行任务。你依赖模型的一般训练来知道该做什么。这是大多数提示词的默认方式：你陈述请求，AI 纯粹根据它”知道”的和从你的提示词中理解的来生成答案。零样本高效，如果任务常见或描述清楚就能很好地工作。</p><p>例如：”将以下句子翻译成西班牙语：’我正在学习编码。’”是一个零样本提示——直接的命令，AI 使用其知识响应（不需要示例）。</p><p><strong>少样本提示</strong> 意味着你在提示词中提供几个示例或演示，向 AI 准确展示你想要的格式或风格。本质上，你在提示词本身中通过示例教学。这可以显著提高特定格式或不寻常任务的输出质量。在少样本提示中，你可能会说：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">纠正这些句子中的语法：</span><br><span class="line">输入：&quot;the code not working good&quot; → 输出：&quot;The code is not working well.&quot;</span><br><span class="line">输入：&quot;API give error in login&quot; → 输出：&quot;The API gives an error during login.&quot;</span><br><span class="line">现在输入：&quot;user not found in database&quot; → 输出：</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>通过给出两个输入-输出示例，AI 被引导为第三个继续类似的模式。当你需要特定风格的响应时（例如，某种格式的代码注释，或提交消息示例），少样本提示在 Lovable 中很有用。它确实消耗更多提示令牌（因为你包含了那些示例），但通常会产生更一致的结果。</p><p><strong>何时使用哪种：</strong></p><p>对于简单任务或当你信任模型的内置能力时，先尝试零样本。如果结果不是你想要的格式或深度，通过添加示例切换到少样本。例如，如果你要求一个函数而输出没有遵循你的首选风格，展示一个你喜欢的风格的示例函数并再次提示。少样本在复杂输出方面表现出色（如编写测试用例——提供一个示例测试，然后要求它编写更多）。总之，零样本用于快速直接答案，少样本用于受控风格或复杂指令。</p><h3 id="管理幻觉和确保准确性"><a href="#管理幻觉和确保准确性" class="headerlink" title="管理幻觉和确保准确性"></a>管理幻觉和确保准确性</h3><p>AI”幻觉”是模型自信地编造不正确的信息或代码的时刻。在像 Lovable 这样的编码平台中，幻觉可能意味着 AI 使用不存在的函数、调用不存在的 API，或在摘要中编造细节。虽然我们不能完全消除这个问题（这是 AI 的限制），但我们可以用减少幻觉的方式提示：</p><h3 id="提供基础数据"><a href="#提供基础数据" class="headerlink" title="提供基础数据"></a>提供基础数据</h3><p>你提供的可靠上下文越多，AI 需要猜测的就越少。在 Lovable 中，始终利用项目的知识库。在项目上下文中包含你的项目需求文档（PRD）、用户流程、技术栈等。这样，AI 的答案将”基于”你的应用的具体情况。例如，如果你的应用使用某个库或有定义的数据模型，将其放入知识库，这样 AI 就不会编造不同的。</p><h3 id="提示中的引用"><a href="#提示中的引用" class="headerlink" title="提示中的引用"></a>提示中的引用</h3><p>当提出事实性问题或与外部系统交互的代码时，包含相关文档片段或数据。例如，”使用下面给出的 API 响应格式，解析用户对象…[然后包含一个小的 JSON 示例]。”通过向 AI 展示真实数据或文档，它不太可能编造函数或字段。</p><h3 id="要求逐步推理"><a href="#要求逐步推理" class="headerlink" title="要求逐步推理"></a>要求逐步推理</h3><p>有时你怀疑 AI 可能在即兴发挥。在这些情况下，提示它展示其推理或验证。例如，在聊天模式中你可以说：”在给出最终代码之前解释你的解决方案方法。如果有任何不确定性，请说明。”这种思维链提示使 AI 放慢速度并检查自己。它可以捕捉错误，或至少在推理中揭示它们，你可以纠正。</p><h3 id="指示诚实"><a href="#指示诚实" class="headerlink" title="指示诚实"></a>指示诚实</h3><p>你可以在提示词中包含一个指南，如”如果你不确定某个事实或正确的代码，不要编造——相反，解释需要什么或要求澄清。”高级模型通常会遵循这些指令（它们可能会回应”我不确定，但我假设 X…”而不是只给出错误答案）。这不是万无一失的，但它可以减轻自信的错误输出。</p><h3 id="迭代验证"><a href="#迭代验证" class="headerlink" title="迭代验证"></a>迭代验证</h3><p>在 AI 给出答案后，特别是对于关键事项（如计算、重要事实或复杂代码），进行验证步骤。你可以要求 AI 或使用另一个工具来双重检查输出。例如：”确认上述代码遵循需求，并解释任何可能不符合规范的部分。”这个提示使 AI 审查其工作，通常它会捕捉到它是否偏离了你的指令。</p><p>在 Lovable 中，幻觉也可能意味着 AI 创建了你没有要求的文件或组件，或采取了一些不打算的创造性自由。始终审查 AI 生成的代码的合理性。如果某些东西看起来太”神奇”或出乎意料，质疑它。通过用这些策略管理幻觉，你保持对项目的控制并确保准确性。</p><h3 id="利用模型洞察（了解你的-AI-工具）"><a href="#利用模型洞察（了解你的-AI-工具）" class="headerlink" title="利用模型洞察（了解你的 AI 工具）"></a>利用模型洞察（了解你的 AI 工具）</h3><p>并非所有 AI 模型都相同，即使同一模型也可能因设置而表现不同。要获得大师级结果，了解 Lovable 中可用的工具会有所帮助：</p><h3 id="聊天模式-vs-默认模式"><a href="#聊天模式-vs-默认模式" class="headerlink" title="聊天模式 vs 默认模式"></a>聊天模式 vs 默认模式</h3><p>Lovable 提供（截至本文撰写时）聊天模式（对话式 AI 助手）和默认&#x2F;编辑器模式（直接应用更改）。有意识地使用它们。</p><p><strong>聊天模式</strong> 非常适合头脑风暴、讨论设计决策或调试——AI 可以自由生成想法或分析而不立即编码。例如，你可以描述一个错误，在聊天模式中说，”让我们分析这个错误日志并找出出了什么问题。”AI 然后可以浏览潜在原因。</p><p><strong>默认模式</strong> 另一方面，用于执行更改（编写代码、创建组件）。典型的工作流程可能是：在聊天模式中概述或排除故障，一旦你有了计划，切换到默认模式用直接的提示实现它（因为默认模式将修改你的项目文件）。知道何时使用每种模式可以保持你的开发流程高效和安全。</p><h3 id="令牌长度和响应"><a href="#令牌长度和响应" class="headerlink" title="令牌长度和响应"></a>令牌长度和响应</h3><p>注意响应长度。如果你要求非常大的输出（如整个模块的代码），如果超过令牌限制，AI 可能会截断或失去连贯性。在这种情况下，将任务分解为更小的提示（例如，一次生成一个函数的代码）。Lovable 的聊天或提示 UI 可能会在输出被截断时显示警告——这是一个信号，要求剩余部分或分工。</p><h3 id="格式和代码偏好"><a href="#格式和代码偏好" class="headerlink" title="格式和代码偏好"></a>格式和代码偏好</h3><p>如果你说明，AI 可以适应你的格式偏好。例如，告诉它”以 markdown 格式输出代码”或”遵循项目的 ESLint 规则”（如果你有）。它不会神奇地知道你的风格指南，除非你将其包含在上下文中。如果你喜欢某些命名约定或模式，你可以在提示词中提及（这是明确的一部分）。随着时间的推移，当 AI 在你的项目中看到一致的风格时，它会模仿它——但在提示词中给予温和的提醒可以加速这种一致性。</p><p>总之，将 AI 视为一个强大但字面的工具。了解你正在交互的模式和模型，并始终构建你的提示词以发挥它们的优势（结构化、详细的输入），同时防范它们的弱点（健忘、冗长、幻觉）。现在，让我们将这些原则转化为有效使用 Lovable 的具体最佳实践。</p><hr><h2 id="额外的提示词技巧"><a href="#额外的提示词技巧" class="headerlink" title="额外的提示词技巧"></a>额外的提示词技巧</h2><p>最后，让我们介绍在 Lovable 平台中工作时的具体技巧和技术。这些最佳实践将一般的提示词工程概念与 Lovable 的功能相结合，帮助你获得最佳结果。</p><h3 id="从坚实的知识库开始"><a href="#从坚实的知识库开始" class="headerlink" title="从坚实的知识库开始"></a>从坚实的知识库开始</h3><p>在你编写提示词之前，设置项目的知识库（在 Lovable 的项目设置中）。包含项目需求（PRD）、用户流程、技术栈细节、UI 设计指南和任何后端细节。这充当 AI 将始终拥有的持久上下文。</p><p>例如，如果你的 PRD 明确列出”超出范围：社交登录”，AI 就不太可能随意添加 Google 登录功能。你也可以在开始时明确提示：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">在编写任何代码之前，阅读项目知识库并确认你理解应用的目的和约束。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这确保 AI 内化你的项目上下文，减少不相关的建议或幻觉功能。</p><h3 id="具体明确，避免含糊"><a href="#具体明确，避免含糊" class="headerlink" title="具体明确，避免含糊"></a>具体明确，避免含糊</h3><p>含糊的提示词导致含糊的结果。始终明确你想要什么以及如何做。</p><p><strong>不要这样做：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">让这个应用更好。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>另一个示例：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">为用户输入创建一个表单</span><br><span class="line"></span><br></pre></td></tr></table></figure><p><strong>应该这样做：</strong></p><p>后者给出了关于范围和预期结果的明确方向。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">重构应用以清理未使用的组件并提高性能，而不更改 UI 或功能。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>另一个示例：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">创建一个用户注册表单，包含用户名、邮箱和密码字段，并包含一个提交按钮。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="增量提示"><a href="#增量提示" class="headerlink" title="增量提示"></a>增量提示</h3><p>抵制在一个提示词中要求整个复杂应用的冲动。将你的开发过程分解为逻辑步骤，一次提示一个。</p><p><strong>不要这样做：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">使用 Supabase、认证、Google Sheets 导出和数据丰富构建 CRM 应用。</span><br><span class="line"></span><br><span class="line">构建我整个电商应用，包括认证、产品列表和结账。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p><strong>应该这样做：</strong></p><p>这种循序渐进的进展帮助 AI 保持专注和准确，你可以及早发现问题：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">设置连接 Supabase 的 CRM 后端。</span><br><span class="line"></span><br><span class="line">太好了！你能添加一个带有用户角色的安全认证流程吗？</span><br><span class="line"></span><br><span class="line">谢谢！下一步是集成 Google Sheets 来导出记录。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>另一个示例：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">为用户信息设置数据库模式。</span><br><span class="line"></span><br><span class="line">请开发一个 API 端点来检索用户数据</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="包含约束和需求"><a href="#包含约束和需求" class="headerlink" title="包含约束和需求"></a>包含约束和需求</h3><p>不要羞于详细说明约束。如果某事必须或不能做，说出来。</p><p><strong>添加约束：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">创建一个简单的待办事项应用，一次最多显示 3 个任务。</span><br><span class="line">包括添加、编辑和删除任务的能力。</span><br><span class="line"></span><br><span class="line">优化这段代码，但确保 UI 和核心功能保持不变。记录你所做的每个更改。</span><br><span class="line"></span><br><span class="line">最多使用 3 个 API 调用，并确保不需要外部库。</span><br><span class="line"></span><br><span class="line">页面应该一次最多显示 3 个任务。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这样的限制防止 AI 过度设计。添加最大项目数或性能目标等约束可以使 AI 专注于重要的事情。</p><h3 id="避免措辞歧义"><a href="#避免措辞歧义" class="headerlink" title="避免措辞歧义"></a>避免措辞歧义</h3><p>如果一个术语可以以不同方式解释，澄清它。你越清楚，AI 需要猜测的就越少。</p><p><strong>不要这样做：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">添加个人资料功能</span><br><span class="line"></span><br><span class="line">支持通知</span><br><span class="line"></span><br></pre></td></tr></table></figure><p><strong>应该这样做：</strong></p><p>后者给出了关于范围和预期结果的明确方向。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">添加一个用户个人资料页面，包含字段 X、Y、Z。</span><br><span class="line"></span><br><span class="line">在表单提交时发送电子邮件通知。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="注意你的语气和礼貌"><a href="#注意你的语气和礼貌" class="headerlink" title="注意你的语气和礼貌"></a>注意你的语气和礼貌</h3><p>虽然它不会改变功能，但礼貌的语气有时可以产生更好的结果。诸如”请”或尊重的请求之类的短语可以添加上下文并使提示词更具描述性，这可以帮助 AI。例如，</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">请不要修改主页，只关注仪表板组件。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这读起来很礼貌，它明确告诉 AI 不要做什么。这不是关于 AI 的感受——而是关于填充细节。（而且，礼貌一点总是没有坏处！）</p><h3 id="有意使用-Lovable-的模式"><a href="#有意使用-Lovable-的模式" class="headerlink" title="有意使用 Lovable 的模式"></a>有意使用 Lovable 的模式</h3><p>如前所述，利用聊天模式进行规划，利用默认模式进行构建。例如，在开始新功能时，你可以进入聊天模式并头脑风暴组件分解：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">我想在我的应用中添加一个博客部分。让我们讨论如何构建数据和页面。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>AI 可能会回应一个大纲。一旦你满意，你可以切换到默认模式并说：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">根据上述计划创建 BlogPost 页面和 supabase 表或博客文章模式。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="利用格式优势"><a href="#利用格式优势" class="headerlink" title="利用格式优势"></a>利用格式优势</h3><p>适当时使用结构化列表或步骤。如果你想要 AI 输出列表或遵循序列，在提示词中枚举它们。通过编号步骤，你暗示 AI 也要这样响应。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line">让我们思考设置安全认证系统的过程：</span><br><span class="line">1. 必要的组件是什么？</span><br><span class="line">2. 它们应该如何交互？</span><br><span class="line">3. 提供实现代码。</span><br><span class="line"></span><br><span class="line">首先，解释方法。其次，展示代码。第三，给出测试示例。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="利用示例或引用"><a href="#利用示例或引用" class="headerlink" title="利用示例或引用"></a>利用示例或引用</h3><p>如果你有目标设计或代码风格，提及它或提供示例。提供示例（图像或代码片段）给 AI 一个具体的参考来模仿。</p><p><strong>设置上下文：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">我们正在构建一个帮助团队跟踪任务的项目管理工具。</span><br><span class="line">该工具应该具有以下功能：</span><br><span class="line"> - 用户认证</span><br><span class="line"> - 项目创建</span><br><span class="line"> - 任务分配</span><br><span class="line"> - 报告</span><br><span class="line"></span><br><span class="line">现在，对于第一个任务，创建项目创建的 UI。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>另一个示例：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">我需要一个具有 Supabase 集成和安全认证流程的 CRM 应用。从设置后端开始。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>另一个示例：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">我们正在开发一个专注于环保产品的电商平台。生成一个带有类别和价格过滤器的产品列表页面。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="使用图像提示"><a href="#使用图像提示" class="headerlink" title="使用图像提示"></a>使用图像提示</h3><p>Lovable 甚至允许在提示词中上传图像，所以你可以展示一个设计并说”匹配这个风格”。</p><p>这里有两种主要方法。第一种是简单的提示方法。</p><p><strong>简单图像上传提示：</strong></p><p>你可以上传图像，然后添加类似这样的示例提示：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">创建并实现一个尽可能与附加图像相似的 UI。</span><br><span class="line"></span><br><span class="line">此截图显示了移动设备上的布局问题。调整边距和内边距使其响应式，同时保持相同的设计结构。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>或者，你可以帮助 AI 更好地理解图像的内容以及关于它的一些额外细节。通过向上传的图像添加具体指令可以获得出色的结果。虽然一张图片胜过千言万语，但添加你自己的一些话来描述所需的功能可以大有帮助——特别是因为交互并不总是从静态图像中显而易见。</p><p><strong>带详细指令的图像提示：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">我希望你创建的应用尽可能与此截图中显示的应用相似。</span><br><span class="line">它本质上是一个看板克隆。</span><br><span class="line">它应该能够在每列中添加新卡片（票证），能够更改单列内这些票证的顺序，甚至在列之间移动这些卡片。</span><br><span class="line">请随意使用 Pangea home dnd npm 包来实现拖放功能。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="反馈整合"><a href="#反馈整合" class="headerlink" title="反馈整合"></a>反馈整合</h3><p>审查 AI 的输出并为改进提供具体反馈。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">登录表单看起来不错，但请为邮箱字段添加验证以确保它包含有效的电子邮件地址。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="强调可访问性"><a href="#强调可访问性" class="headerlink" title="强调可访问性"></a>强调可访问性</h3><p>鼓励生成符合可访问性标准和现代最佳实践的代码。这确保输出不仅功能性强，而且用户友好并符合可访问性指南。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">生成一个遵循可访问性最佳实践的 React 登录表单组件，包括适当的 ARIA 标签和键盘导航支持。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="预定义组件和库"><a href="#预定义组件和库" class="headerlink" title="预定义组件和库"></a>预定义组件和库</h3><p>指定使用某些 UI 库或组件来保持项目的一致性和效率。这指导 AI 利用特定工具，确保兼容性和整个应用程序的统一设计语言。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">使用 shadcn/ui 库和 Tailwind CSS 样式创建一个响应式导航栏。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="多语言提示"><a href="#多语言提示" class="headerlink" title="多语言提示"></a>多语言提示</h3><p>在多语言环境中工作时，为代码注释和文档指定所需的语言。这确保生成的内容对说不同语言的团队成员可访问，增强协作。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">生成一个计算斐波那契数列的 Python 脚本。用法语提供注释和文档。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="定义项目结构和文件管理"><a href="#定义项目结构和文件管理" class="headerlink" title="定义项目结构和文件管理"></a>定义项目结构和文件管理</h3><p>清楚地概述项目结构，包括文件名和路径，以确保有组织和可维护的代码生成。这提供了关于新组件应该驻留在项目中何处的清晰度，保持连贯的文件组织。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">创建一个名为 &#x27;UserProfile&#x27; 的新 React 组件并将其保存为 &#x27;components/user-profile.tsx&#x27;。确保它包括个人资料图片、用户名和简介部分。</span><br><span class="line"></span><br></pre></td></tr></table></figure><h3 id="提供精确的编辑指令（聚焦-AI）"><a href="#提供精确的编辑指令（聚焦-AI）" class="headerlink" title="提供精确的编辑指令（聚焦 AI）"></a>提供精确的编辑指令（聚焦 AI）</h3><p>默认情况下，当你要求 Lovable AI 更改某些内容时，它可能会重写整个文件或多个文件。为了避免意外更改，对更改的位置和内容要非常具体。你可以使用 Lovable 的”选择”功能突出显示组件或文件，然后仅对该选择进行提示。或者在提示词中明确命名文件&#x2F;组件。例如：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">在 Header 组件中，将注册按钮的文本更改为 &#x27;Get Started&#x27; 并将其移到导航栏的左侧。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这样，AI 知道专注于 Header 组件并只调整该部分。另一个技巧：告诉 AI 不要触碰什么。你可以添加，”不要修改任何与 header 无关的其他组件或逻辑。”这防止 AI 偏离并可能破坏其他东西。这种做法（有时称为”差异和选择”方法）确保最小的、有针对性的更改——导致更快的响应和更少的回归错误。</p><h3 id="锁定文件（变通方法）"><a href="#锁定文件（变通方法）" class="headerlink" title="锁定文件（变通方法）"></a>锁定文件（变通方法）</h3><p>目前，Lovable 可能没有明确的文件锁定功能，但你可以通过提示词措辞来模拟它。如果有 AI 绝不应该更改的关键文件（也许是一个运行良好的复杂组件），你可以在每个提示词中重复一个指令，如：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">不要更改 authentication.js 文件。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>通过一致地告诉 AI 避免，你减少了不必要编辑的机会。同样，如果你只想让 AI 在项目的一部分工作，明确限制它：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">只关注 ProfilePage 组件的更改；假设应用程序的所有其他部分保持原样。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>在提示词中预先说明这一点有助于保持 AI 在界限内。</p><h3 id="设计和-UI-调整"><a href="#设计和-UI-调整" class="headerlink" title="设计和 UI 调整"></a>设计和 UI 调整</h3><p>在 Lovable 中提示 UI 更改时，清晰度至关重要，这样你就不会破坏功能：</p><ul><li>如果你想要纯视觉更改，说出来。”使登录按钮变蓝并放大 20%，但不要改变其任何功能或 onClick 逻辑。”这确保 AI 在重新设计样式时不会意外重命名 ID 或更改逻辑。</li><li>对于响应性（使设计适合移动设备），通过计划引导 AI。例如：”优化着陆页以适配移动设备：使用移动优先方法。首先概述每个部分应该如何在较小屏幕上重新排列，然后实现这些 CSS 更改。使用标准 Tailwind 断点（sm、md、lg）并避免自定义断点。确保功能没有任何变化，只是布局。”通过提供这种详细的指令，你可以在不破坏桌面布局的情况下彻底适配移动设备。</li><li>如果你心中有设计更改，描述期望的结果和任何约束（如”保持相同的 HTML 结构，只更新 CSS”）将帮助 AI 专注于正确的解决方案。在 AI 设计更改后始终测试应用以确认一切仍按预期工作。</li></ul><h3 id="重构和优化代码"><a href="#重构和优化代码" class="headerlink" title="重构和优化代码"></a>重构和优化代码</h3><p>随着项目的发展，Lovable 的 AI 可能会建议重构以提高性能或可维护性。提示重构是一个高级但有价值的用例：</p><ul><li><strong>强调行为无变化：</strong> “重构代码以提高清晰度和效率，但应用程序的功能和输出必须保持相同。”这告诉 AI 重构不应该引入错误或功能更改。</li><li><strong>你可以先要求重构计划：</strong> “扫描 utils&#x2F; 文件夹并建议代码结构或重复的改进。列出更改但先不要应用它们。”AI 可能会给你一份改进报告。然后你可以决定提示实施哪些更改。</li><li><strong>对于大规模重构，分阶段进行。</strong> 一次提示一个模块，测试，然后继续。这与循序渐进的原则相结合。例如：首先重构状态管理逻辑，然后重构 API 调用，而不是一次性全部重构。</li><li><strong>重构后，明智的做法是提示快速后检查：</strong> “现在代码已重构，快速检查清单：UI 看起来是否相同，所有测试或关键流程是否仍然通过？”AI 可以自我验证或列出要手动检查的事项。</li></ul><h3 id="使用-AI-辅助调试"><a href="#使用-AI-辅助调试" class="headerlink" title="使用 AI 辅助调试"></a>使用 AI 辅助调试</h3><p>错误是不可避免的。Lovable 有”尝试修复”功能用于快速修复，但你也可以通过提示寻求 AI 的帮助：</p><ul><li>当错误发生时，将任何错误日志或消息复制到提示中（理想情况下在聊天模式中）并问：”这是错误和相关代码片段——是什么导致了这个问题，我们如何修复它？”详细的错误上下文帮助 AI 精确定位问题。</li><li>在调试时使用 CLEAR 原则：明确代码应该做什么与实际发生的情况。有时只是向 AI 详细解释错误就会导致解决方案。</li><li>如果 AI 的第一个修复不起作用，使用适应原则：澄清什么改变了或提供新错误，并要求它再试一次或建议替代方法。</li><li>利用聊天模式讨论错误：”修复没有起作用。状态在运行时仍然是 undefined。还有什么可能出错？让我们思考可能的原因。”你可以来回讨论，直到找到合理的解决方案，然后在默认模式中应用它。</li><li>对于 UI 错误，你甚至可以共享截图（如果 Lovable 在聊天中支持图像输入）或描述视觉问题。例如，”侧边栏应该在移动设备上隐藏，但它仍然可见。这是 CSS…为什么可能失败？”如果给予足够的信息，AI 可以对 CSS 或布局问题进行推理。</li><li>修复后始终测试。如果有效，考虑使用反向元提示让 AI 总结根本原因是什么以及将来如何避免它，丰富你的知识库。</li></ul><h3 id="何时（以及何时不）涉及-AI"><a href="#何时（以及何时不）涉及-AI" class="headerlink" title="何时（以及何时不）涉及 AI"></a>何时（以及何时不）涉及 AI</h3><p>一位大师级提示者知道有时你根本不需要提示。如果更改非常小或你已经知道如何快速做（例如，更改文本标签，调整一个内边距值），在代码编辑器中手动做可能更快。对琐碎任务过度依赖 AI 会减慢你的速度并消耗你的提示配额。在 AI 增加价值的地方使用它——复杂逻辑、样板代码生成、多步操作或你不确定的事情。对于更简单的问题，你可以：</p><ul><li>使用你自己的知识或快速搜索（或甚至在 Lovable 外问 ChatGPT）来弄清楚，特别是如果它避免在 AI 可能误解的事情上浪费提示。</li><li>利用开发者工具：打开浏览器 DevTools 控制台来检查元素或实时调试 JavaScript 错误。一旦你确定了修复，你可以直接实施它或通过提示确认。</li></ul><p>如果你注意到一个按钮的颜色错误，自己修复 CSS 类可能比向 AI 描述问题并冒险它更改超过预期的风险更快。另一方面，如果你需要从头开始实现一个新功能，那是 AI 的完美工作——你描述什么和为什么，它在代码中弄清楚如何做。</p><p>记住，Lovable 的 AI 就像一个助理开发者。你通过给出清晰的任务和监督来管理它。它可以大大加快开发速度，但你仍然是审查和指导工作的负责人。</p><hr><h2 id="在不同工具中应用这些策略"><a href="#在不同工具中应用这些策略" class="headerlink" title="在不同工具中应用这些策略"></a>在不同工具中应用这些策略</h2><p>上述提示词原则不仅适用于 Lovable 的聊天，而且适用于你与 AI 或自动化工具交互的任何地方：</p><h3 id="在-Lovable-的构建器中"><a href="#在-Lovable-的构建器中" class="headerlink" title="在 Lovable 的构建器中"></a>在 Lovable 的构建器中</h3><p>你主要会在 Lovable 聊天界面中使用这些提示来构建和完善你的应用。</p><ul><li>从一个宽泛的项目提示开始，然后逐个功能迭代。</li><li>当你需要讨论或调试而不更改代码时使用仅聊天模式。</li></ul><h3 id="使用-Make-com-或-n8n（工作流自动化）"><a href="#使用-Make-com-或-n8n（工作流自动化）" class="headerlink" title="使用 Make.com 或 n8n（工作流自动化）"></a>使用 Make.com 或 n8n（工作流自动化）</h3><p>你可能不会以同样的方式用自然语言提示这些平台，但设计自动化仍然受益于清晰的 AI 指令。</p><p>例如，你可以让 Lovable 生成集成逻辑：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">当表单提交时，将数据发送到 Make.com webhook 以进行 Slack 通知。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>事实上，Lovable 可以通过与 webhooks 集成来帮助设置自动化。如果你的应用需要移交任务（如发送电子邮件、更新 CRM），你可以提示 Lovable 使用 Make 或 n8n。</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">在应用中用户注册后，触发一个在 Salesforce 中创建记录的 Make.com 工作流。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>Lovable 将编写调用该 webhook 或 API 的代码。保持提示词结构化确保 AI 确切知道如何将 Lovable 与这些外部服务连接。</p><h3 id="边缘情况和外部集成"><a href="#边缘情况和外部集成" class="headerlink" title="边缘情况和外部集成"></a>边缘情况和外部集成</h3><p>Lovable 与许多服务（Stripe、GitHub、Supabase 等）集成。当提示这些时，将集成细节作为上下文&#x2F;约束的一部分。例如，</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">将表单连接到 Stripe（测试模式）进行支付。成功后，重定向到 /thank-you。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>明确外部服务应该做什么。对于使用 n8n（自托管自动化）也是如此——你可以写，</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">在表单提交后向 n8n webhook URL 发送 POST 请求，并等待其响应以显示确认消息。</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>这里的清晰度是关键，这样 AI 才能产生正确的调用。</p><hr><h2 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h2><p>强大的提示在于清晰、结构和上下文。无论你是告诉 Lovable 构建一个功能，还是编排一个 Make.com 场景，目标都是描绘出你想要什么的画面。</p><ul><li>如果你不确定，从结构化提示开始，随着信心增长演变为更对话的风格。</li><li>使用元技术从每次交互中改进和学习。</li><li>通过实践，你将像引导开发团队的延伸一样引导 AI——而且感觉自然地获得你需要的确切输出。</li></ul><hr><h2 id="结论"><a href="#结论" class="headerlink" title="结论"></a>结论</h2><p>到现在为止，你应该对如何制作清晰、有效且针对 Lovable AI 定制的提示词有了扎实的掌握。从基础的 CLEAR 原则到少样本示例和元提示等高级策略，这些技术使你能够从 AI 获得你需要的确切内容——不多不少。</p><p>你已经学会了如何结构化请求、提供上下文、避免幻觉等陷阱，以及利用 Lovable 特定的功能（知识库、聊天模式等）来简化你的工作流程。</p><p><strong>大师级提示是一个游戏规则改变者：它将 AI 从噱头变成可靠的队友。</strong> 通过实践，你会发现你可以更快地构建应用，减少调试的挫折感，甚至通过简单地提出正确的问题和给出正确的指导来探索创造性的解决方案。关键是在你的指令中保持聪明、简洁、直接和适应——就像一个经验丰富的工程师与他们的团队沟通一样。</p><p>最后，始终从每次交互中学习（那个反思习惯）。每个提示&#x2F;响应都是你进一步完善技术的反馈。当你继续在 Lovable 中构建时，你将培养出一种直觉，知道 AI 需要听到什么才能产生出色的结果。将其与你自己的创造力结合起来，几乎没有什么是你无法实现的。</p><p><strong>专注于你的宏大想法——一旦你清楚地告诉 Lovable 的 AI 要做什么，就让它处理执行细节。</strong></p><p>祝你提示愉快，构建愉快！</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Prompting/">Prompting</category>
      
      
      <category domain="https://deusyu.app/tags/Prompt%E5%B7%A5%E7%A8%8B/">Prompt工程</category>
      
      <category domain="https://deusyu.app/tags/Lovable/">Lovable</category>
      
      
      <comments>https://deusyu.app/posts/prompting-one/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Reverse Meta Prompting | 使用「反元提示词」复盘 Google Passkey 故障诊断</title>
      <link>https://deusyu.app/posts/reverse-meta-prompting-example/</link>
      <guid>https://deusyu.app/posts/reverse-meta-prompting-example/</guid>
      <pubDate>Wed, 08 Oct 2025 19:04:00 GMT</pubDate>
      
      <description>换机后通行密钥明明“有记录”却用不了？本文用「反元提示词」复盘排查路径，拆解系统、账户与服务层的真实根因。
结合可复用提示词与验证清单，帮你快速修复问题，并沉淀一套可迁移的诊断框架。</description>
      
      
      
      <content:encoded><![CDATA[<h1 id="使用「反元提示词」复盘-Google-Passkey-故障诊断"><a href="#使用「反元提示词」复盘-Google-Passkey-故障诊断" class="headerlink" title="使用「反元提示词」复盘 Google Passkey 故障诊断"></a>使用「反元提示词」复盘 Google Passkey 故障诊断</h1><hr><h2 id="背景"><a href="#背景" class="headerlink" title="背景"></a>背景</h2><p>我遇到了 Android 设备无法使用 Google 通行密钥的问题，通过 ChatGPT-5 的需求解决方案，对话结束后，我使用「反元提示词」(Reverse Meta Prompting)方法，让 AI 帮我总结整个排查过程，并设计出可复用的预防性提示词模板。</p><p><strong>初始 Prompt</strong>:</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">使用「反元提示词」方法，总结我们在「这段对话」中遇到的错误，</span><br><span class="line">分析根本原因和解决方案，并设计一份提示词模板，</span><br><span class="line">供我未来遇到类似问题时直接使用，避免重复排查。</span><br></pre></td></tr></table></figure><hr><h2 id="一、问题复盘"><a href="#一、问题复盘" class="headerlink" title="一、问题复盘"></a>一、问题复盘</h2><h3 id="1-表象错误-❌"><a href="#1-表象错误-❌" class="headerlink" title="1. 表象错误 ❌"></a>1. 表象错误 ❌</h3><p>创建或使用 Google「通行密钥」(Passkey)时，系统提示以下错误之一:</p><blockquote><p>报错信息:</p><ul><li>“此设备上没有任何适用的通行密钥”</li><li>“出了点问题，我们无法保存您所做的更改”</li></ul></blockquote><hr><h3 id="2-根因分析-⚙️"><a href="#2-根因分析-⚙️" class="headerlink" title="2. 根因分析 ⚙️"></a>2. 根因分析 ⚙️</h3><table><thead><tr><th>层级</th><th>表现</th><th>根本原因</th></tr></thead><tbody><tr><td><strong>系统层</strong></td><td>Android Credential Manager 调用失败</td><td>设备「凭据提供方」设置为第三方应用(如 Safe)，该应用不支持 FIDO2 通行密钥标准</td></tr><tr><td><strong>应用层</strong></td><td>Google 账号显示有通行密钥记录，但本地无法使用</td><td>注册记录仅存于云端，实际私钥随旧设备丢失或被清除</td></tr><tr><td><strong>服务层</strong></td><td>Chrome &#x2F; Play 服务版本差异导致异常</td><td>旧版本或存在缓存冲突时，无法正确调用 FIDO2 模块</td></tr></tbody></table><hr><h3 id="3-解决方案-✅"><a href="#3-解决方案-✅" class="headerlink" title="3. 解决方案 ✅"></a>3. 解决方案 ✅</h3><h3 id="步骤-1-切换「凭据提供方」为-Google"><a href="#步骤-1-切换「凭据提供方」为-Google" class="headerlink" title="步骤 1: 切换「凭据提供方」为 Google"></a>步骤 1: 切换「凭据提供方」为 Google</h3><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">设置 → 密码与自动填充 → 凭据提供方 → 选择「Google 密码管理器」</span><br></pre></td></tr></table></figure><h3 id="步骤-2-重启设备"><a href="#步骤-2-重启设备" class="headerlink" title="步骤 2: 重启设备"></a>步骤 2: 重启设备</h3><p>刷新 Credential Manager 的绑定状态</p><h3 id="步骤-3-删除旧通行密钥记录"><a href="#步骤-3-删除旧通行密钥记录" class="headerlink" title="步骤 3: 删除旧通行密钥记录"></a>步骤 3: 删除旧通行密钥记录</h3><ol><li>访问 <a href="https://g.co/passkeys">g.co&#x2F;passkeys</a></li><li>删除设备旧记录(如”Galaxy S25 Ultra”)</li><li>在当前设备重新创建通行密钥</li></ol><h3 id="步骤-4-验证修复结果"><a href="#步骤-4-验证修复结果" class="headerlink" title="步骤 4: 验证修复结果"></a>步骤 4: 验证修复结果</h3><p>在 Chrome 登录 Google 账号时，若出现以下提示则表示成功:</p><blockquote><p>“使用指纹登录 Google 账号”</p></blockquote><h3 id="步骤-5-保持服务最新"><a href="#步骤-5-保持服务最新" class="headerlink" title="步骤 5: 保持服务最新"></a>步骤 5: 保持服务最新</h3><p>确保 Google Play 服务与 Chrome 为最新版本</p><hr><h3 id="4-关键洞察-💡"><a href="#4-关键洞察-💡" class="headerlink" title="4. 关键洞察 💡"></a>4. 关键洞察 💡</h3><h3 id="洞察一-「通行密钥」的本质"><a href="#洞察一-「通行密钥」的本质" class="headerlink" title="洞察一:「通行密钥」的本质"></a>洞察一:「通行密钥」的本质</h3><p>通行密钥不是云同步的密码，而是存储在设备「安全区」的密钥对:</p><ul><li><strong>公钥</strong>: 上传到 Google 服务器(账号页面显示的”注册记录”)</li><li><strong>私钥</strong>: 永久保存在本地设备安全区，<strong>无法迁移或同步</strong></li></ul><p><strong>结论</strong>: 账号页面显示”有通行密钥” ≠ 当前设备可用</p><hr><h3 id="洞察二-「凭据提供方」的独占机制"><a href="#洞察二-「凭据提供方」的独占机制" class="headerlink" title="洞察二:「凭据提供方」的独占机制"></a>洞察二:「凭据提供方」的独占机制</h3><p>Android Credential Manager 采用<strong>单一绑定模式</strong>:</p><ul><li>同一时间只能有一个应用提供凭据服务</li><li>若被 Safe、Samsung Pass 等第三方应用接管 → Google 的 Passkey 模块被屏蔽</li></ul><p><strong>类比</strong>: 就像只能设置一个默认浏览器，一旦选择 Safe，Google 的通行密钥功能就”失声”了</p><hr><h3 id="洞察三-UI-报错的真实含义"><a href="#洞察三-UI-报错的真实含义" class="headerlink" title="洞察三: UI 报错的真实含义"></a>洞察三: UI 报错的真实含义</h3><p>系统提示 “出了点问题” 通常不是账户或指纹识别问题，而是:</p><ul><li>Credential Manager 接口调用失败</li><li>FIDO2 模块未正确响应</li></ul><hr><h3 id="洞察四-「通行密钥」与其他认证方式的独立性"><a href="#洞察四-「通行密钥」与其他认证方式的独立性" class="headerlink" title="洞察四:「通行密钥」与其他认证方式的独立性"></a>洞察四:「通行密钥」与其他认证方式的独立性</h3><p>通行密钥与以下认证方式<strong>完全独立</strong>，互不影响:</p><ul><li>Google Authenticator(TOTP 动态码)</li><li>短信验证码(SMS 2FA)</li><li>备用邮箱验证</li></ul><hr><h2 id="二、预防性提示词模板"><a href="#二、预防性提示词模板" class="headerlink" title="二、预防性提示词模板"></a>二、预防性提示词模板</h2><p>以下模板可在未来遇到「通行密钥」问题时直接使用:</p><hr><h3 id="📋-Prompt-Google-Passkey-诊断与修复助手"><a href="#📋-Prompt-Google-Passkey-诊断与修复助手" class="headerlink" title="📋 Prompt: Google Passkey 诊断与修复助手"></a>📋 Prompt: Google Passkey 诊断与修复助手</h3><h3 id="问题描述"><a href="#问题描述" class="headerlink" title="问题描述"></a>问题描述</h3><p><strong>系统信息</strong>(请填写):</p><ul><li>设备型号: [如 Samsung S25 Ultra]</li><li>Android 版本: [如 Android 14]</li><li>Chrome 版本: [在 chrome:&#x2F;&#x2F;version 查看]</li><li>Google Play 服务版本: [设置 → 应用 → Google Play 服务]</li><li>当前「凭据提供方」: [设置 → 密码与自动填充]</li></ul><p><strong>错误场景</strong>:<br>我在 [具体场景，如”Chrome 登录 Google 账号”] 时遇到以下报错:</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">[粘贴具体错误信息]</span><br></pre></td></tr></table></figure><hr><h3 id="诊断要求"><a href="#诊断要求" class="headerlink" title="诊断要求"></a>诊断要求</h3><p>请从以下四个维度进行系统排查并给出解决方案:</p><p><strong>1. 系统层诊断</strong></p><ul><li>检查当前「凭据提供方」设置(是否被 Safe &#x2F; Samsung Pass 等第三方应用接管)</li><li>指导如何切换回 Google 密码管理器</li><li>说明为什么第三方凭据提供方会导致 Passkey 失效</li></ul><p><strong>2. 账户层诊断</strong></p><ul><li>检查 Google 账号的通行密钥注册记录(<a href="https://g.co/passkeys">g.co&#x2F;passkeys</a>)</li><li>判断云端记录与本机状态是否匹配</li><li>若不匹配，指导如何删除旧记录并重新注册</li></ul><p><strong>3. 服务层诊断</strong></p><ul><li>确认 Google Play 服务与 Chrome 版本是否为最新</li><li>检查 Credential Manager 模块是否正常工作</li><li>若有版本问题，给出更新建议</li></ul><p><strong>4. 验证层测试</strong></p><ul><li>指导如何在浏览器或应用中测试修复结果</li><li>说明成功的标志(如出现”使用指纹登录 Google 账号”提示)</li></ul><hr><h3 id="原理解释"><a href="#原理解释" class="headerlink" title="原理解释"></a>原理解释</h3><p>最后，请解释以下问题:</p><ol><li>为什么「通行密钥」不会自动同步到新设备?</li><li>为什么设置错误的「凭据提供方」会导致 Chrome 无法识别本地 Passkey?</li><li>换机时如何正确迁移「通行密钥」，避免重现该问题?</li></ol><hr><h3 id="输出格式要求"><a href="#输出格式要求" class="headerlink" title="输出格式要求"></a>输出格式要求</h3><p>请按以下结构输出:</p><ol><li><strong>问题定位表格</strong>: 列出可能原因(系统&#x2F;账户&#x2F;服务层)及判断依据</li><li><strong>解决步骤清单</strong>: 编号列出操作步骤，每步说明预期结果</li><li><strong>验证方法</strong>: 如何确认问题已彻底解决</li><li><strong>预防措施</strong>: 未来换机时的正确操作流程</li><li><strong>原理解释</strong>: 用类比或图示说明技术原理</li></ol><hr><h2 id="三、记忆锚点"><a href="#三、记忆锚点" class="headerlink" title="三、记忆锚点"></a>三、记忆锚点</h2><blockquote><p>一句话总结:</p><p>「通行密钥」不云同步，「凭据提供方」选 Google。</p><p>删除旧记录重建新，指纹弹窗即成功。</p></blockquote><hr><h2 id="四、适用场景"><a href="#四、适用场景" class="headerlink" title="四、适用场景"></a>四、适用场景</h2><p>这套方法论适用于以下场景:</p><p>✅ <strong>换新设备后无法使用通行密钥</strong></p><p>✅ <strong>第三方密码管理器与 Google Passkey 冲突</strong></p><p>✅ <strong>系统提示”没有适用的通行密钥”但账号页面显示有记录</strong></p><p>✅ <strong>Chrome 登录时无法调用指纹验证</strong></p><hr><h2 id="附录-技术名词解释"><a href="#附录-技术名词解释" class="headerlink" title="附录:技术名词解释"></a>附录:技术名词解释</h2><table><thead><tr><th>术语</th><th>解释</th></tr></thead><tbody><tr><td><strong>通行密钥</strong>(Passkey)</td><td>基于 FIDO2 标准的无密码认证方式，使用公私钥对替代传统密码</td></tr><tr><td><strong>Credential Manager</strong></td><td>Android 系统的统一凭据管理接口，负责协调密码管理器、通行密钥等认证方式</td></tr><tr><td><strong>凭据提供方</strong></td><td>为系统提供密码&#x2F;通行密钥服务的应用，如 Google 密码管理器、Safe、Samsung Pass 等</td></tr><tr><td><strong>FIDO2</strong></td><td>在线快速身份验证标准，通行密钥的技术基础</td></tr><tr><td><strong>安全区</strong>(Secure Element)</td><td>设备中的隔离存储区域，用于保存加密密钥，无法被普通应用访问</td></tr></tbody></table><hr><h2 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h2><p>「反元提示词」的核心价值在于:</p><ul><li>✅ 将<strong>隐性经验</strong>转化为<strong>显性知识</strong></li><li>✅ 从<strong>单次解决</strong>升级为<strong>可复用模板</strong></li><li>✅ 让 AI 帮你<strong>提炼方法论</strong>，而不仅是解决问题</li></ul><p>这篇复盘不仅解决了眼前的技术问题，更重要的是沉淀出一套<strong>可迁移的问题诊断框架</strong>，适用于其他技术故障排查场景。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI/">AI</category>
      
      <category domain="https://deusyu.app/categories/AI/AI-%E5%B7%A5%E5%85%B7%E5%AE%9E%E8%B7%B5/">AI 工具实践</category>
      
      
      <category domain="https://deusyu.app/tags/AI/">AI</category>
      
      <category domain="https://deusyu.app/tags/Passkey/">Passkey</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%8D%E5%85%83%E6%8F%90%E7%A4%BA%E8%AF%8D%EF%BC%88Reverse-Meta-Prompting%EF%BC%89/">反元提示词（Reverse Meta Prompting）</category>
      
      
      <comments>https://deusyu.app/posts/reverse-meta-prompting-example/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>AI 与内容经济：Cloudflare CEO详解“按次抓取付费”新模型</title>
      <link>https://deusyu.app/posts/ai-pay-per-crawl/</link>
      <guid>https://deusyu.app/posts/ai-pay-per-crawl/</guid>
      <pubDate>Thu, 25 Sep 2025 23:16:00 GMT</pubDate>
      
      <description>答案的代价

我们都曾有过这样的体验：向AI抛出一个问题，几秒钟后，一个清晰、凝练的答案便呈现在眼前。这很神奇，不是吗？但你是否想过，这个答案的背后，是什么正在悄然崩塌？
崩塌的，是过去二十五年支撑着开放互联网的经济基石。一个不成文的契约曾是这一切的核心：内容创作者交出他们的知识，以换取搜索引擎带来的流量，再将流量转化为收入。然而，我们正在目睹一场范式革命。在这篇与 Cloudflare 创始人 Matthew Prince 的深度对话中，他用一句清醒的论断为我们揭开了这幅图景：谷歌是过去25年互联网的伟大赞助人，但随着我们从搜索引擎转向答案引擎，这个交换条件就瓦解了。
当AI直接给出“答案”，而非通往答案的“地图”时，流量便会干涸，内容创作的价值激励也将随之消亡。我们正站在一个岔路口：要么坐视人类知识的创作者们陷入困境，要么眼睁睁看着互联网倒退回由少数几个豪门“资助”一切的“美第奇时代”。
这篇访谈的珍贵之处，在于它没有停留在对危机的哀叹。Prince 不仅是一位身处互联网基础设施核心的CEO，更是一位有着法律和人文背景的思考者。他正试图利用 Cloudflare 的独特地位，发起一场颇具争议却又至关重要的实验——重塑网络的商业模式。这并非为了修补旧世界的裂痕，而是要为一个截然不同的新世界奠定基石。
这正是 Prince 愿景的动人之处。他相信，我们正在改变网络的商业模式，而如果成功，未来的内容将更像早期的互联网，而不是……BuzzFeed。他所倡导的，是一个奖励独特、原创与深度，而非仅仅追逐点击率的世界。
这篇对话，就是理解这场巨变的最佳入口。它不仅描绘了危机，更给出了一份充满争议却又无比真诚的行动蓝图。下一次，当你对AI的回答感到惊艳时，或许会多一分清醒的审视。而这份审视，正是我们通往一个更好互联网的起点。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://stratechery.com/2025/an-interview-with-cloudflare-founder-and-ceo-matthew-prince-about-internet-history-and-pay-per-crawl/">https://stratechery.com/2025/an-interview-with-cloudflare-founder-and-ceo-matthew-prince-about-internet-history-and-pay-per-crawl/</a></p></blockquote><h2 id="对话-Cloudflare-创始人兼-CEO-Matthew-Prince：关于互联网历史和“按次抓取付费”模式-Stratechery-by-Ben-Thompson"><a href="#对话-Cloudflare-创始人兼-CEO-Matthew-Prince：关于互联网历史和“按次抓取付费”模式-Stratechery-by-Ben-Thompson" class="headerlink" title="对话 Cloudflare 创始人兼 CEO Matthew Prince：关于互联网历史和“按次抓取付费”模式 - Stratechery by Ben Thompson"></a>对话 Cloudflare 创始人兼 CEO Matthew Prince：关于互联网历史和“按次抓取付费”模式 - Stratechery by Ben Thompson</h2><p>2025 年 9 月 4 日</p><p>早上好，今天的 Stratechery 访谈对象是 Cloudflare 的联合创始人兼 CEO Matthew Prince。</p><p>Prince 进入硅谷的道路颇为有趣——我们在这次访谈中会探讨这一点——但他最为人所知的还是 Cloudflare，这是他于 2009 年在哈佛商学院创立的公司。Cloudflare 为云端网站提供网络服务，并拥有科技界最有效、最引人入胜的免费增值商业模式之一。</p><p>在这次访谈中，我们讨论了 Prince 的背景、Cloudflare 的最初构想、Cloudflare 的现状，以及它是如何以一种机会主义的方式成长为今天的公司的。Prince 最近关注的焦点是互联网内容网站的经济学；他非常担心人工智能对谷歌创建的传统流量商业模式的影响，并正在利用 Cloudflare 的力量，试图为内容创造一种新的商业模式。我们讨论了 Prince 的动机和担忧，以及为什么 Prince 认为这是对 Cloudflare 权力的合法使用，即使关于网络未来的最终决策者是谷歌。</p><p>提醒一下，所有 Stratechery 的内容，包括访谈，都以播客形式提供；点击邮件顶部的链接，将 Stratechery 添加到您的播客播放器中。（注：可以原文打开，订阅播客）</p><hr><p><em>为保证内容清晰，本次访谈经过轻微编辑。</em></p><p><strong>话题：</strong></p><p>个人背景 | Cloudflare 的构想 | Cloudflare 的今天 | Cloudflare 的生态位 | 按次抓取付费 | Cloudflare 的权力 | 谷歌问题 | Cloudflare 的动机</p><hr><p><strong>Ben Thompson:</strong> Matthew Prince，欢迎回到 Stratechery。</p><p><strong>Matthew Prince:</strong> 谢谢，Ben。</p><p><strong>Ben Thompson:</strong> 你其实是 Stratechery 最早的访谈对象之一。事实上，我跟你聊过两次。不过，那两次访谈都非常聚焦，主要讨论内容审核问题。那也是在我发布访谈录音，也就是现代 Stratechery 访谈形式之前。因此，这意味着我还有机会向首次接受访谈的嘉宾提出我的常规问题：我从未问过你的背景，比如你是如何起步的，如何对科技产生兴趣的，带我回到最初的起点吧。</p><p><strong>MP:</strong> 我在犹他州的山区长大，我六岁的时候——其实我一直以为是七岁，但我妈妈纠正了我——1980 年，我六岁那年，我祖母送给我一台 Apple II Plus 作为圣诞礼物，我对此如鱼得水。犹他大学的计算机科学系实际上是世界一流的，我妈妈常去那里上继续教育课程，她会把我这个早熟的孩子偷偷带进去，她假装在做作业，但实际上所有的作业都是我做的。</p><p><strong>Ben Thompson:</strong> 哦，所以她实际上是注册了课程，而你只是跟着去？</p><p><strong>MP:</strong> 没错。我做了一些在高中会让你很受欢迎的事情，我去了计算机夏令营，在圣巴巴拉的寄宿学校 Cate 有一个夏令营，我真希望当时能和那些人保持联系，因为我敢打赌，当时和我在一起的人后来都取得了非凡的成就。我上大学时以为自己会学习计算机科学，但带着一个 18 岁年轻人的傲慢，我选修了计算机科学 105 之类的课程，结果觉得无聊透顶，因为我已经做了很长时间了。</p><p>我实际上转了专业，改学英国文学，这是一个不同的方向，但我对计算机仍然了解很多。我 1992 年开始上大学，正值互联网兴起之时，他们需要一些懂技术的学生。我是学生网络管理员之一，就是这样我学会了交换机、路由器等一切设备的工作原理。我有一条从宿舍直通大学路由器的光纤线路，那几年的网速比我之后很多年都要快。</p><p><strong>Ben Thompson:</strong> 哦，是的。在威斯康星，人们通常只在宿舍住一年，我和我的一些朋友住了两年，就是因为那里的网速更快。但我们没有光纤，用的是 T2s 之类的线路。</p><p><strong>MP:</strong> 是的，就是那样。大学毕业时，我收到了一些工作机会，老实说，我根本不知道那是什么工作，职位是产品经理，我当时想，“这到底是什么意思？”。</p><p><strong>Ben-Thompson:</strong> 我觉得现在是 2025 年了，还是没人知道它是什么意思。</p><p><strong>MP:</strong> 而且他们又在重新定义自己了。但我想说的是，我当时收到了微软、雅虎和网景的录用通知，但我说，“不，我不要做那个”，而是决定去法学院，所以我真的去了法学院，并一度以为自己会成为一名律师。如果不是因为互联网泡沫破裂，我可能现在就是一名律师。</p><p><strong>Ben Thompson:</strong> 这不是人们预期的答案，你可能会想，“互联网泡沫破裂把我赶出了科技行业”，但互联网泡沫破裂怎么会把你从法律行业赶到科技行业呢？这似乎是反过来的。</p><p><strong>MP:</strong> 嗯，它确实在某种程度上把我推向了科技行业。我发现我喜欢的法律类型是证券法，基本上就是帮助公司上市。所以在 1999 年夏天，我在旧金山一家大型律师事务所实习，一个夏天我们就帮助六家公司上市，那感觉太棒了，非常有意思。我当时的计划是在律所工作一段时间，然后找一家我认为非常棒的公司，帮助他们进行融资或其他工作。</p><p><strong>Ben Thompson:</strong> 是的，比如成为他们的总法律顾问（GC）之类的。</p><p><strong>MP:</strong> 然后我最终会进入公司内部工作，我以为我的人生轨迹会是这样。接着，2000 年 3 月，互联网泡沫破裂了，律所打电话给我说，“嘿，有好消息也有坏消息。好消息是，你还有工作。坏消息是，我们不再需要证券律师了。但破产法和证券法基本上是一回事，我们觉得你能胜任”。作为一个律师，我想，“嗯，某种程度上确实是一回事”。</p><p><strong>Ben Thompson:</strong> 乐趣少了很多。</p><p><strong>MP:</strong> 公司破产后，就没有内部职位可言了。</p><p>当时有位名叫 Doug Lichtman 的年轻法学教授，他总是来我的公寓，我们一起喝瓶酒。他说，“我哥哥正在保险领域创办一家 B2B 公司，他们正在寻找具备你这种技能的人，你感兴趣吗？”我当时想，“哇，听起来太棒了”，也许他们能匹配我的薪水，还会给我一种叫做股票的东西。我说，“好啊，当然”，于是我就去了。我们筹集了大约 600 万美元。</p><p>它的商业模式几乎和今天的 Rippling 一样，但它出现的时代太早了。我们当时很蠢，用尽了各种可能的方式把公司搞砸了，所以在大概 18 个月的时间里，我们烧光了 600 万美元，那是一次惨痛的失败。但能看到一群人凭着一张纸上的一个想法聚集在一起，尝试去创造一些东西，然后失败，光荣地失败，这本身就令人难以置信。</p><p>再说一次，我认为只是时机不对，而且没有人因此进监狱，这相当了不起。我们亏光了投资人的钱，而投资人却说，“是啊，这很糟糕，但如果你们再创业，记得告诉我们”。我当时就想，“哇，这是我不知道的某种神奇世界”。于是，在接下来的八年里，我一直在努力寻找回到那个世界的方式，尽管大部分时间都在荒野中徘徊。我当过酒保，教过 LSAT 备考课程，做过各种零工来维持生计。</p><p><strong>Ben Thompson:</strong> 这就是你创办 Unspam 的时候，对吧？</p><p><strong>MP:</strong> 是的。</p><p><strong>Ben Thompson:</strong> 你还写过一篇关于《CAN-SPAM 法案》的论文，我记得你当时在教一门关于这个的法律课程。是什么让你对垃圾邮件这种东西产生兴趣的？</p><p><strong>MP:</strong> 我认为这是一个有趣的法律问题。除了极少数例外，在互联网出现之前，你很难坐在一个地方，却在地球的另一端犯罪。当然也有一些方式，比如邮政欺诈之类，但突然之间，这种事情开始以真实规模发生。</p><p>其次，这是第一次，你可以坐在世界的一个地方，向另一个地方发送一封电子邮件，并可能在不知情的情况下犯罪，因为你没有任何与之相关的管辖权。所以我认为，如何将管辖权法律应用于像网络空间这样的事物，是一个非常有趣的问题。再说一次，我当时主要是在扮演法学教授的角色，我是一个兼职教授，那是一所现在已经不存在的法学院里最低级别的教授，可见情况有多糟糕。</p><p><strong>Ben Thompson:</strong> (笑) 是芝加哥伊利诺伊大学还是……？</p><p><strong>MP:</strong> 不是芝加哥大学，芝加哥大学非常棒。是芝加哥的约翰·马歇尔法学院，现在已经不存在了。但这给了我一个思考和写作的借口，我有一个东西，今天我们称之为博客，但在那个词被创造出来之前就有了。我想，就像你现在可以写作和谈论你感兴趣的事情一样，那是我生命中可以做这些事的一段时期。我的父母非常担心我永远不会有什么出息，老实说，我自己也有些担心。但我认为，那段经历对于后来创办 Cloudflare 所需的视角来说，实际上非常重要。</p><p><strong>Ben Thompson:</strong> 不过，Unspam 具体是做什么的？</p><p><strong>MP:</strong> Unspam 最初只是我注册的一个很酷的域名，我当时想，“我能用这个做什么？”我们尝试的第一件事是一次性电子邮件地址，和现在苹果做的类似，你基本上可以拥有一个电子邮件地址，如果有人开始给你发你不想收到的东西，你就把那个地址关掉，它就消失了。</p><p><strong>Ben-Thompson:</strong> 我从 90 年代上大学时就开始这么做了，我还有一个域名专门用来创建所有这些邮件地址，结果发现这其实是一种非常困难的生活方式。</p><p><strong>MP:</strong> (笑) 我有同样的问题。</p><p><strong>Ben Thompson:</strong> 在不同地方使用同一个常用邮箱地址，背后有太多固有的假设，这让事情变得相当棘手。我现在被它困住了！</p><p><strong>MP:</strong> 是的。嗯，我们应该找个时间就此互相慰藉一下，因为我也有同样的问题。而且，光是向别人解释就很费劲。比如你和诺德斯特龙百货的客服代表通话，他们问，“好的，您的邮箱是什么？”我说，“嗯，是 nordstrom…”</p><p><strong>Ben Thompson:</strong> <a href="mailto:&#x4e;&#x6f;&#114;&#100;&#x73;&#x74;&#114;&#111;&#109;&#x40;&#x64;&#111;&#109;&#x61;&#x69;&#110;&#x2e;&#x63;&#111;&#109;">Nordstrom@domain.com</a>。</p><p><strong>MP:</strong> 然后他们会说，“不不不，您的邮箱是什么？”</p><p><strong>Ben Thompson:</strong> 他们会问，“等等，你是我们公司的员工吗？”</p><p><strong>MP:</strong> 然后，“这完全说不通。”是的，我经历过很多次这样的对话。我们就是从那里开始的。后来，“谢绝来电”名单（Do Not Call list）出现了，所以问题就变成了，“我们能为电子邮件建立一个类似‘谢绝来电’的系统吗？”于是我们很奇怪地成了一个政府承包商，与各个州合作。</p><p>最初，我们实际上是和查克·舒默（Chuck Schumer）以及《CAN-SPAM 法案》一起起步的，但联邦政府从未实施它。但是密歇根州、犹他州和其他几个州实施了这个东西，基本上就是说，如果你把你的电子邮件地址放在一个名单上，他们会维护这个名单，然后我们所做的就是提供哈希技术，我们会对营销人员的名单进行哈希处理，对政府的名单进行哈希处理，然后比较两者。这样一来，任何一方都不知道对方名单上有什么。这算不上改变世界的技术，但这家公司至今仍在，并且盈利，但它永远不会成为一个非常非常大的企业。</p><p><strong>Ben Thompson:</strong> 你有英语专业的本科学位，然后去读了法学院，接着你决定“我需要去哈佛商学院”。你当时是有一个想法，还是说，“我不知道自己的人生该做什么，所以我要去哈佛？”——很多人都会做类似的事情。或者说，你是“我特别想获得某种知识，我想创业”？考虑到 Cloudflare 的想法是在剑桥诞生的，这整个事件的顺序是怎样的？</p><p><strong>MP:</strong> 我创办了 Unspam，但 Unspam 当时步履维艰，发展得并不好。我父亲——我们是在中上层阶级家庭长大的，他拥有几家餐厅，但不是什么高级餐厅——比如 Applebee’s、Famous Dave’s Bar-B-Que，他还有犹他州唯一的一家 Hooters。</p><p><strong>Ben Thompson:</strong> 那本身就是一场冒险啊。</p><p><strong>MP:</strong> 是的，他当时快 70 岁了，他打电话给我说，“儿子，我照顾了你大半辈子，现在是你回来经营家族生意的时候了”。我无法想象有什么比经营我父亲的 Hooters 更糟糕的事情了。所以去商学院的想法是，当时我正喝着第二瓶酒，试图想出“我到底要怎么摆脱这件事？”因为那是个不错的生意，需要有人来经营。于是我想，“好吧，我去申请商学院”。我申请了八所商学院，在申请截止的当晚，结果我被其中七所拒绝了，但不知何故被哈佛商学院录取了。我打电话给我父亲说，“嘿……”。</p><p><strong>Ben Thompson:</strong> “我真的很想接手，但我需要先去接受一些培训！”</p><p><strong>MP:</strong> “我真的很想做，但我需要两年时间来尝试做这个生意，我觉得我应该更好地了解一下会计”，他听了说，“嗯，这是个好主意，你应该去”。于是我就去了。我在宿舍里有一个网络电话（Voice-over-IP），那是在剑桥奥尔斯顿的一个极小的宿舍里，我把我的网络电话线插上，所以我还在为 Unspam 工作，电话一响，我就接起来，然后同时处理商学院的事情。我比一般的商学院学生年龄大得多，而且我教过法律，这就像是完全解锁了新世界，我当时想，“天哪，所有人都把研究生院，尤其是商学院，读错了”。</p><p><strong>Ben Thompson:</strong> 怎么说？</p><p><strong>MP:</strong> 他们认为上课的目标是想出一些前所未有的聪明点子，但这会把你引向一条错误的道路。而实际上，如果你是教员，目标是通过苏格拉底式的方法引导学生，以阐明一个观点。你从 A 点开始，到 B 点结束，你可以弄清楚这个弧线是什么。所以，我对待商学院的方式是，每当有人提出一些疯狂的观点时，我就会试着把大家拉回到这条弧线上来，这让我成了每个教员最亲密的朋友。</p><p><strong>Ben Thompson:</strong> 尤其是哈佛的案例教学法，这种方式肯定很受欢迎。</p><p><strong>MP:</strong> 是的。有趣的是，几乎在每门课上，因为他们会拿到学生们的简介，教员们大概上了三节课后就会走过来对我说，“所以你以前教过法学院？”我说，“是的”，他们会说，“没什么比一个律师更能毁掉一场好的对话了”，我说，“是的，没错”，他说，“我们做个交易吧。我不让你难堪，你也不要让我难堪”，我说，“成交”。所以从那时起，商学院就变得非常有趣，我学得也很好。但大部分时间，我都在努力想办法，找点事情做，好让我不用回去经营我父亲的 Hooters。</p><h3 id="Cloudflare-的构想"><a href="#Cloudflare-的构想" class="headerlink" title="Cloudflare 的构想"></a>Cloudflare 的构想</h3><p><strong>Ben Thompson:</strong> Cloudflare 的想法是从哪里来的？是直接源于 Unspam 的工作吗？你当然能看到其中的联系。它和克莱顿·克里斯坦森（Clayton Christensen）的颠覆理论有什么关系？你事后谈到过这一点，但这种事后诸葛亮的感觉很强，你可以描绘出一幅画面：我学到了颠覆理论，我想创办一家服务于服务不足市场的公司。事情真的是这样发展的吗？还是说实际的进展是怎样的？</p><p><strong>MP:</strong> 这些事情都是从人开始的。有两个人至关重要。一个是在 Unspam 的员工，叫 Lee Holloway，我们直接从大学里把他招了进来，他简直是——有些人就是真正的技术天才，Lee 就是这样一个令人难以置信的技术天才。我们为 Unspam 构建了核心技术，但我们也有很多副项目。</p><p>其中一个副项目叫做“蜜罐计划”（Project Honey Pot），它实际上是——Y Combinator 的创始人保罗·格雷厄姆（Paul Graham），在他创办 YC 之前，会在麻省理工学院（MIT）举办一个名为“MIT 反垃圾邮件大会”的会议。有一年他邀请我去演讲，主题是如何制定法律把垃圾邮件发送者送进监狱，那次演讲效果很好。他说，“再来一次吧，就讲同样的内容”，我说，“我不会讲同样的内容，我是律师，我不会对一群技术专家讲同样的东西，他们第一次只是出于礼貌”，他说，“哦，你会想出点新东西的”。</p><p>于是我回去找 Lee，我说，“我们能建一个系统来追踪坏人是如何窃取你的电子邮件地址的吗？” 这就变成了“蜜罐计划”。我做了演讲，非常受欢迎，然后就把它放在了一边。在接下来的几年里，超过 10 万人注册了这个服务。Lee 当时还在，在我去商学院的时候，他继续在 Unspam 做技术工作。但那不是最高级、最有趣的技术工作。他打电话给我说，“嘿，你一直对我很好，但是……” 谈到这里，我立刻说，“停，给我点时间，我会想办法的”。因为 Lee 是那种你就是想让他留在你团队里的人，他当时有谷歌和 Facebook 的工作机会。</p><p>另一方面，商学院里很多人都很讨厌，但有一个女人，她真的只是真诚地想找到正确的答案，对整个事情毫无虚荣心，那就是 Michelle [Zatlyn]。Michelle 明显和我相反，我不是最有条理的人，不是最自律的，也不注重流程。Michelle 是六西格玛黑带，她具备所有这些特质。在 Unspam，我是和另外两个朋友一起创办的，我们吵得不可开交，所以我当时真的很想找和我截然不同的人，而 Michelle 正好具备我所不擅长的所有优点，她在这方面非常出色。</p><p>所以我总是向她推销各种想法。我的大多数想法，现在回想起来，都非常糟糕。但有一次我跟她讲起“蜜罐计划”，她对这个东西感到非常困惑。她问，“为什么人们会注册这个？”我说，“因为我们追踪坏人”。她说，“是啊，但这需要付出努力，你给了他们什么回报吗？”我们说，“嗯，他们所做的事情会得到认可”。她说，“这说不通，为什么会有人做这个？”</p><p>在剑桥中央广场的一家埃塞俄比亚餐厅里，我有些沮 C 丧地说，“Michelle，总有一天他们会希望我们能阻止那些坏人”。她说，“就是这个，这就是那个想法，我们来做这个吧”。</p><p>真的，那天晚上我就打电话给 Lee，向他推销，“嘿，事情是这样的，我们要这样做”，我花了 30 分钟向他详细阐述了我和 Michelle 勾画出的整个想法。讲完后，他沉默了大约五分钟，久到我以为电话都断线了。最后他说，“嗯，这个能行，我们干吧”，这就是开始。</p><p>所以，Lee、Michelle 和我是公司最初的三位联合创始人，它始于一个学校项目。最初的想法是，“你能把防火墙放到云端吗？”所以 Cloudflare 就是我们对“云端防火墙”的尝试。在至少最初的五年里，我们在接下来几天里勾画出的蓝图，几乎完美地成为了未来五年发展的路线图。</p><p><strong>Ben Thompson:</strong> 所以你们有了一项对小型网站非常有益的服务，你可以免费注册 Cloudflare 来保护自己免受分布式拒绝服务（DDoS）攻击。这形成了一个非常良性的循环，ISP 们很感激你们的存在，因为你们消耗了大量不良流量，他们很乐意让你们加入，这又让你们能提供更好的服务。这个增长故事，我写过，确实非常引人入胜。</p><p>正如你所阐述的，这里面有颠覆的角度，你们解决问题的方式与公有云，当然还有本地部署软件，完全不同。你不可能比那更不同了。这是不是那种你和教授们达成了协议，“你不会让他们出丑”的情况？所以你是不是走进克里斯坦森教授的办公室说，“哦，是的，我已经做到了”，还是说这其中有什么联系？</p><p><strong>MP:</strong> 我记得，在我们开始做 Cloudflare 的时候，我好像刚上完 Clay（克莱顿·克里斯坦森）的课，所以那个想法非常新鲜。我和 Clay 的关系非常好，我非常喜欢他的课，并且有幸亲自听他授课。早期，我认为这给了我们信心。我们知道，除非是面向消费者的业务，否则建立企业很难，但即使是消费者业务也很难。但在 B2B 领域，靠每月 20 美元的费用来建立大企业是非常困难的。</p><p><strong>Ben Thompson:</strong> 这就是为什么所有公司最终都建立了销售团队，向大公司销售。</p><p><strong>MP:</strong> 没错。所以我们知道，唯一能成功的方法就是达到能够向大型企业销售数千万或数亿美元产品的地步，我们今天就是这么做的。但问题是如何从起点走到那一步？我认为，由于我们必须建立这个网络的性质，因为我们需要数据，又因为我刚上完 Clay 的课，这一切都给了我们信心，让我们决定，“好吧，我们先专注于如何免费提供一项服务，它会有很多精简和限制，但要比市面上任何其他产品都好，然后继续向高端市场发展”。</p><p>在某个时刻，我们提供的功能会超过人们从其他替代品（如 Akamai 和本地硬件厂商）那里能得到的功能。那时超大规模云服务商（hyperscalers）也正在兴起。而这正是后来发生的事情。</p><p>今天回想起来很有趣，因为在某种程度上，我们只是相信，只要有足够多的互联网流量经过我们，我们总能找到某种方法来围绕它建立业务。我们确实相信“帮助建立一个更好的互联网”这个使命，我认为这两件事结合在一起，让我们取得了今天的成功和规模。</p><p><strong>Ben Thompson:</strong> 这是否有点讽刺，或者说是故意的？你最初对那种跨越地域、不再受地理限制的犯罪行为有种独特的兴趣，而现在，基本上你需要某种推力来让人们使用你的业务，所以犯罪分子实际上成了你最重要的……他们是你的销售员，他们为你创造了市场？</p><p><strong>MP:</strong> 是的，我们从未那样想过。有过几次，一些黑客说，“我改过自新了，我想找份工作”，我当时想，“嗯，不太确定”。但我认为互联网是一个复杂的地方。</p><p>早期人们会问，“你的竞争对手是谁？”我说，“Facebook”，而且我至今仍然坚信这一点。我认为，如果 Cloudflare 没有出现，互联网上会有更多的内容存在于 Facebook 上，因为作为一个小网站所有者，处理各种麻烦事变得越来越困难，所以人们纷纷涌向那些“围墙花园”（walled gardens）。我们试图做的是，“嘿，我们仍然给你创新的自由，但帮助你获得那种保护，让你不必担心外面所有那些肮脏的事情”。所以，我认为，就像亚马逊之于 Shopify，Facebook 之于 Cloudflare。这个类比不完美，但我们努力做到最少的干预，让各种创造力或独特性在幕后发生，而“围墙花园”则是另一回事。</p><h3 id="Cloudflare-的今天"><a href="#Cloudflare-的今天" class="headerlink" title="Cloudflare 的今天"></a>Cloudflare 的今天</h3><p><strong>Ben Thompson:</strong> 今天的 Cloudflare 是什么样子的？与 10 年、15 年前的想法相比，有何不同？这是一条你大致预料会走的路，当然中间有些偏离，还是说你最终到达了一个与预期不同的地方？</p><p><strong>MP:</strong> 我认为 Cloudflare 的真实故事是，我们想在云端放置一个防火墙，我们知道为了向摩根大通、政府和大型医院集团等客户销售，我们必须从小处着手，逐步向上发展，所以我们把服务免费化。我们没想到的是，这会带来多少问题。</p><p>全世界的人道主义组织几乎是我们的第一批客户，因为他们有巨大的安全问题，但预算很少，所以他们都注册了。然后就有人试图对他们进行 DDoS 攻击或以各种方式黑掉他们。</p><p><strong>Ben Thompson:</strong> 不是理想的客户。</p><p><strong>MP:</strong> 嗯，从某种程度上说，他们又是非常理想的客户，因为我们学到了很多东西，然后我们会阻止那些攻击。但接着所有那些黑客小子们就会想，“哇，这些家伙很厉害，我也要注册，因为我所有的朋友都在试图黑我”。于是所有的黑客都用上了我们的服务，但黑客们又会用尽各种方式来挑战我们。</p><p>所以我们为什么要建立一个域名注册商？那是个糟糕的生意，完全是商品化的，我们为什么要这么做？因为我们看了其他所有人，没有一个是安全的，我们的 cloudflare.com 差一点就被黑了，那将是一场灾难。所以我们想，“解决这个问题的唯一办法就是自己来做”。我们为什么要建立我们的 VPN 替代系列产品？因为我们看了这个领域里所有其他的公司，然后觉得，这些家伙根本无法处理这种规模和复杂性。</p><p>为什么要建立我们的开发者平台？不是因为我们想卖它，而是我们自己需要它，我们需要一个沙盒环境来开发东西。现在，所有这些都变成了我们重要的产品线。但实际上，Cloudflare 的故事就是我们制造了一系列问题，然后自己解决它们，而在这个过程中，这些解决方案就变成了产品。</p><p>我从未想过，在我们与风险投资的第一次会议上，一个名叫 Ray Rothrock 的人，他是 Cloudflare 的第一个投资者，我们向他介绍了项目，他说，“很好，我只有一个问题”，我们说，“好的，什么问题？”他说，“你们要怎么处理死亡威胁？”我当时想，“死亡威胁？”Michelle 则是一脸茫然，“你到底在说什么？”</p><p><strong>Ben Thompson:</strong> (笑) 这正是那个六西格玛黑带不想要的不确定性。</p><p><strong>MP:</strong> 他说，“如果你们要做这个，你们会惹恼一大堆人”。所以我从未想过，我个人会被俄罗斯政府制裁，还据说上了普京的某个暗杀名单，这可不是我当初签约时想到的。所以我认为我们做了一些非常不同的事情。我认为，正是因为我们把服务如此广泛地提供，我们最终接触到了大量内容，这意味着，尽管你提到我们之前两次谈话都是关于内容审核，但时不时地……</p><p><strong>Ben Thompson:</strong> 我正想问你，这个话题是不是已经死了？似乎最近不怎么提起了。</p><p><strong>MP:</strong> 嗯，我们到九月份就成立 15 年了。我们遇到过三次这样的重大事件，对于那些非法的东西，我们一直都在处理，但对于那些不道德但并不非法的灰色地带，15 年里发生了三起事件。所以事件的平均发生时间是五年，我们差不多又该遇到一次了。将来肯定会有什么事，我不知道会是什么。</p><p>但本质上，如果你处在互联网足够多的流量背后——现在，我们在意大利、西班牙和其他一些地方被起诉，很大程度上是因为拥有足球队的人不希望人们非法直播他们的内容。我们也不希望人们非法直播他们的内容，这会消耗大量带宽。我们努力阻止，但他们非常聪明，总能找到不同的方法。所以我们陷入了这样的斗争中，我们其实是在努力避免这种情况发生。因此，我认为我们所做的事情的性质，决定了它总是会伴随着一些争议。但坦白说，这也正是它如此有趣的原因，因为我们确实发现自己处在一些非常有趣的政策辩论的中心。</p><p><strong>Ben Thompson:</strong> 我想稍后再回到那个话题，但有一件事我认为定义了 Cloudflare，而且这总是很有趣，你们有那些“产品周”，会发布 47 个公告，很难全部消化。我喜欢做这种事的公司，就像当年的英伟达，他们知道 GPU 和 CUDA 是个好东西，他们会把大量的想法都扔到墙上试试，每次 GTC 大会，一年两次，人们会问我，“他们是怎么做到的？”我说，“嗯，因为它们都是同一个平台，一切都是软件定义的，所以他们实际上只是发布一些与彼此略有不同的库，但他们可以把它们包装成不同的东西”。</p><p>Cloudflare 有点像这样，你们在商用硬件上有个通用的架构。这是从一开始就有意为之的，还是说也是类似情况，“我们是一家在 ISP 机房里放服务器的 scrappy 小创业公司，我们买不起比奔腾更好的东西了”，结果发现这实际上成了构建基础设施的最佳方式？</p><p><strong>MP:</strong> 是的，我认为我们深受谷歌故事的启发。如果你想想谷歌推出之前领先的搜索引擎是谁？是 AltaVista。谁创建了 AltaVista？Digital Equipment Corporation（DEC）。DEC 的业务是什么？他们卖大型机。他们为什么推出搜索引擎？那是为了展示他们大型机的强大功能。</p><p>然后拉里·佩奇（Larry Page）和谢尔盖·布林（Sergey Brin）作为斯坦福的学生出现了，谷歌的关键创新其实不是搜索，而是他们比任何人都更有效地存储和处理数据的能力，比任何人都更便宜、更快，而且他们能将大型机的规模有效地无限扩展，他们通过使用大量商用硬件做到了这一点。</p><p>我们从一开始，我想，我坚定地站在这个阵营，Lee 也坚定地站在这个阵营。我们团队里有些人并不坚定，所以早期关于我们是应该使用专门的硬件来执行各种功能，还是应该使用商用硬件然后编写聪明的软件来做调度和其他所有需要的事情，有过争论。再说一次，那是我们八个人挤在帕洛阿尔托一个美甲沙龙楼上时的一场辩论，结果可能走向任何一方。如果当时走向了另一个方向，我们就不会是今天的公司了。</p><p>今天，构成 Cloudflare 的几乎每一台服务器，都是不同代的产品。我想我们现在已经到了第 13 代了，我们会批量购买服务器。现在的服务器有五个主要组件。它们有网络、CPU、现在还有 GPU、长期存储和短期存储，也就是 SSD 和 RAM。我们不断地问自己，这也是很多创新的来源……</p><p>我们的基础设施团队和产品团队每季度有一次会议，他们称之为“冷热会议”，他们会问每个人都会问的问题，那就是，“我们在哪里运行过热？”然后问题是，“我们能通过工程手段提高效率，还是必须在那些地方部署更多硬件？”</p><p>但他们会问一个同样重要的问题，“我们在哪里运行过冷？”我认为这更有趣，也就是，“哪里有机会，我们已经为某个资源付了钱，它在野外存在，但没有被充分利用，我们能在这个资源上构建什么？”</p><p>我有一个可能有点不雅的比喻，如果有人想出在酒吧卫生间的小便池上方卖广告位的主意，我可以告诉你，有人想过这么做，但它本来一文不值，可一旦有人做了，你突然就从中产生了一股新的收入流。Cloud-flare 一直在问这个问题，那就是，“哪里有那种额外的空间、额外的容量？”然后如果我们能卖掉它，我们就能有更高的利润，这让我们能继续做我们所做的一切。</p><p><strong>Ben Thompson:</strong> 那么，机会主义驱动的业务和非常有计划、长期规划的业务之间的比例是多少？</p><p><strong>MP:</strong> 我们不是那种会写出上百页商业计划书的地方。再说一次，我们构建 Cloudflare Workers 是因为我们自己需要它，而现在它成了我们业务中增长最快的部分。</p><h3 id="Cloudflare-的生态位"><a href="#Cloudflare-的生态位" class="headerlink" title="Cloudflare 的生态位"></a>Cloudflare 的生态位</h3><p><strong>Ben Thompson:</strong> 你过去曾谈到成为“第四朵云”，我写过相关文章，但感觉最近不怎么听到了。是公有云对这个概念的反应比你预期的要快吗，比如 Lambda 之类的，还是什么原因？</p><p><strong>MP:</strong> 我认为发生的情况是，我们各自划定了自己的赛道，虽然我们在边缘地带有竞争，但我们在各自的赛道上是非常分明的。</p><p>打个比方，我认为公司就像从事不同工作的员工一样，有自己的个性。超大规模云服务商，也就是 AWS、谷歌、微软 Azure，他们的工作职能个性是 DBA，即数据库管理员。如果你和 DBA 合作过，你会发现他们非常聪明，但往往有点刻板。他们视数据库为世界的中心，他们所做的一切就是确保所有数据都必须在数据库里。</p><p><strong>Ben Thompson:</strong> 公平地说，数据库在某种程度上确实是世界的中心，为他们辩护一下。</p><p><strong>MP:</strong> 可能是。再说一次，这是你表明立场的一种方式，我猜。另一个版本……</p><p><strong>Ben Thompson:</strong> 有趣的是你提到了这个，实际上对于 Stratechery 和 Passport 的业务，也就是我做的事情，我经常思考数据库。它真的很重要！</p><p><strong>MP:</strong> 我经常思考网络，你经常思考数据库。但这两件事的功能实际上……它们不是截然对立的，但它们之间存在张力，因为数据库的目的是留住数据，无论如何都要存储它。而网络的目的则是移动数据，尽快把它从你的系统中移走，这两者是非常不同的事情。</p><p>所以，如果你非常擅长数据库，你可能不会非常擅长网络；如果你非常擅长网络，你可能不会非常擅长数据库，我认为这是事实。我认为超大规模云服务商的网络产品有点烂，因为他们实际上不希望数据离开。而我们的数据库产品，老实说，不如超大规模云服务商的产品好。再说一次，它们有某些优势，有些时候你会想用我们的，不想用他们的，但它们绝对是我们业务的次要部分。</p><p>我认为，未来对 Cloudflare 来说，一个糟糕的结果是世界变得更加“单一云化”，每个人都说，“我百分之百投入 AWS”，在这种情况下，我们就没什么可做的了。对 Cloudflare 来说，一个好的未来结果是一个更加“多云”的世界，在这种情况下，网络就成了在不同云提供商之间进行协调的东西。</p><p><strong>Ben Thompson:</strong> 这是不是 AI 实际上对你有利的领域？与其说是在构建 AI 产品方面，不如说是在它为公司提供了更多采用多云的动机？</p><p><strong>MP:</strong> 是的，我认为是这样。而且我认为，是的，你有庞大的数据集需要在不同地方移动，我们非常擅长这个。有很多事情，出于某种原因——如果你今天在构建一个代理（agent），可能 Cloudflare Workers 是最好的地方。你可以快速启动它，也可以关闭它，它可以连接到各处。它无论如何都得经过我们，因为我们占据了互联网很大一部分流量。所以这已经……我认为 AI 和 AI 代理实际上已经成为 Cloudflare Workers 的杀手级应用，但这与……我们永远不会是运行 SAP HANA 的最佳场所，但我们绝对是运行那些需要与互联网其他部分交互和移动的代理的最佳场所。</p><h3 id="按次抓取付费"><a href="#按次抓取付费" class="headerlink" title="按次抓取付费"></a>按次抓取付费</h3><p><strong>Ben Thompson:</strong> 我们现在谈话的原因，我们今年和去年也私下聊过几次，是你正在推动的这个“按次抓取付费”（pay-per-crawl）概念。你能不能给我讲讲 2025 年 9 月的版本，这个版本经过了演进，我想部分是基于我的一些反馈，那么现在的推销说辞是什么？</p><p><strong>MP:</strong> 让我们先把 Cloudflare 放在一边，只谈……</p><p><strong>Ben Thompson:</strong> 谈谈 Matthew，那个学英语的学生？那个学生报纸的编辑。</p><p><strong>MP:</strong> 这是我在 channeling 我内心的法学教授。让我给你讲讲互联网的历史，为什么互联网会是现在的样子，以及正在发生什么变化。</p><p><strong>Ben Thompson:</strong> 这通常是我的工作，但你继续。</p><p><strong>MP:</strong> 你可以告诉我我哪里说错了，但这是我的互联网简史，向 Michelle 道歉，她讨厌历史课。</p><p>在过去的 25 年里，互联网的界面是搜索，而谷歌主导了这个领域。谷歌作为一家公司，其动机是让互联网尽可能地增长，因为如果你有混乱，搜索就成了混乱的组织者。但你需要激励人们去创造内容，所以谷歌不仅要创造组织互联网的东西，还要把人们去往的流量，帮助人们将其变现，主要通过广告，尽管他们也帮助了订阅模式。谷歌是过去 25 年互联网的伟大赞助人。如果没有像谷歌这样的东西来创造激励机制，网络就不会是现在的样子。</p><p>围绕流量进行激励存在很多问题，我们创造了一些系统，人们会为了让别人点击，以便投放广告，而刻意制造一些引战的标题。所以这并不完美，但没有谷歌和搜索的资助，我们就不可能有今天的互联网。</p><p>这种情况正在改变。世界正在转变，网络的界面正在从搜索引擎转向……搜索引擎给你一张藏宝图，说，“嘿，去点击这 10 个蓝色链接，自己找出答案”，而现在转向的是实际上是“答案引擎”。所以如果你看 OpenAI，看 Anthropic，看 Perplexity，甚至看现代的谷歌，它都不是一个搜索引擎，它不给你藏宝图。相反，它在页面顶部直接给你一个答案。</p><p>这个答案，对大多数用户来说，95% 的用户，95% 的时间里，是更好的用户界面。我不是反答案引擎，也不是反 AI，我认为我们都与之交互的界面变成这样，在各方面都是更好的。但问题是，如果你得到了答案，而没有得到藏宝图，那么你就不会产生流量。如果你不产生流量，那么整个网络的商业模式，除了电子商务网站……</p><p><strong>Ben Thompson:</strong> ……就崩溃了。</p><p><strong>MP:</strong> ……就崩溃了。内容网站，不是那些实际卖给你实体东西的网站，因为如果你问买什么相机最好，即使你得到了答案，你还是得去某个地方买。它会影响电子商务和卖东西的人，这会起作用，但写评测的人……</p><p><strong>Ben-Thompson:</strong> 实体产品的好处在于，根据定义，它们是稀缺的。而互联网上文本的问题在于，它不稀缺。</p><p><strong>MP:</strong> 它不稀缺，完全正确。谷歌设定了这样一个期望，即每个人都可以免费抓取互联网，但它从来都不是免费的。互联网从来都不是免费的。谷歌在很长一段时间里为此付了钱，与内容创作者的交换条件是，“我们得到你内容的一份副本，作为交换，我们会给你带来流量，并帮助你将流量变现”。</p><p>随着我们从搜索引擎转向答案引擎，这个交换条件就瓦解了，所以有些事情将会改变。我看到三种可能的结果。再说一次，这三种情况中，即使 Cloudflare 明天消失，其中之一仍然会发生。</p><p>第一，世界上所有的记者、学者和研究人员都会饿死。这很疯狂，当你在 Twitter 上发布这些东西时，有那么多人会说，“嗯，我们不再需要记者了，我们有无人机”，而我想说，“我认为我们仍然需要记者”。</p><p><strong>Ben Thompson:</strong> 这是我经常提出的一个观点，因为人们会把 Stratechery 作为未来新闻业的典范，谈论订阅和小规模订阅模式。我为 Stratechery 在探索这方面所扮演的角色感到非常自豪，但我一直说，看，我的文章通常是全新的内容，但我的每日更新，我总是怎么开头的？引用一位记者的话，然后说，“好了，现在我要分析这条别人实际收集到的新闻”。所以，在这一点上我同意你。</p><p><strong>MP:</strong> 如果没有那些东西，你怎么知道该写什么呢？你是它们的衍生品。这很棒，我认为这增加了巨大的价值。而且我认为，正如你过去所说，仍然会有一些支柱性的内容存在，人们必须拥有。但还有很多其他的东西，比如世界上发生了什么，需要有人去报道。再说一次，如果商业模式完全死亡，那部分内容就有消失的真实风险，我认为那将是一个损失。我不认为那会是最终结果。</p><p><strong>Ben Thompson:</strong> 你不觉得这在某种程度上已经发生了吗？人们担心、抱怨有很多全国性的报道，但在地方层面，地方报纸被互联网摧毁，赚不到钱，没有记者，谁知道市政厅在做什么，等等。</p><p><strong>MP:</strong> 我认为那是谷歌的流量付费模式不支持地方媒体的方式。我和我妻子买下了我们家乡的本地报纸，结果发现它竟然是个相当不错的小生意，令人惊讶。</p><p><strong>Ben Thompson:</strong> 我是它的忠实拥护者。我认为本地新闻实际上可以……</p><p><strong>MP:</strong> 嗯，我认为它会变得更有价值，我们稍后会谈到。第二种可能的结果……</p><p><strong>Ben Thompson:</strong> 对不起，你没有和你教授们达成那种协议，你得告诉我让你继续说，不要老是打断你，给你添麻烦。抱歉，继续。</p><p><strong>MP:</strong> 没关系。</p><p><strong>Ben Thompson:</strong> 抱歉，继续。</p><p><strong>MP:</strong> 这是你的通讯和节目。</p><p><strong>Ben Thompson:</strong> 继续，继续。</p><p><strong>MP:</strong> 我只是来娱乐的！第二种选择是——我不认为这很离谱，但我认为这是一个《黑镜》式的选择，那就是，你能想象 Sam Altman 明天宣布他要建立自己版本的“美联社”吗？</p><p><strong>Ben Thompson:</strong> 是的，我能。</p><p><strong>MP:</strong> 看到我的意思了吗？你能想象他宣布他收购了 Gartner 吗？这并非天方夜谭。我们可能不会回到 20 世纪的媒体时代，而是回到 15 世纪的媒体时代，就像美第奇家族一样，有五个强大的家族控制并资助所有不同的内容创作。在这种情况下，很可能会有一个保守派的，一个自由派的，一个中国的，还会有一个印度的。欧洲人会尝试建立一个，但不会成功，然后他们会使用美国的自由派版本。这很可能就是内容领域的未来。</p><p>我认为这并非不可想象，而且离 Scale AI 正在做的事情其实也没差多远，他们为人们整理和组织内容并将其代币化。有很多失业的记者，建立一些分社并不那么昂贵。但我认为这是一个非常危险的结果，因为它极具倒退性。互联网曾是一个伟大的 уравнитель，一个伟大的知识传播者。如果突然之间我们都每年花数千美元在某个 AI 系统上，即使是富人也可能只选一个，如果你获得的所有知识都来自那一个源头，突然之间我们就再次把事物孤立起来了，这看起来非常非常危险，但并非完全不可想象。</p><p><strong>Ben Thompson:</strong> 第三种是什么？</p><p><strong>MP:</strong> 第三种是我们找到一种新的商业模式，它必须是某种形式的……由 AI 公司，也就是那些答案引擎产生的收入，其中一部分要回馈给内容创作者。具体如何运作，我认为正是我们正在努力解决的问题。</p><p>但我认为，今天成为一家 AI 公司需要三样东西。你需要 GPU，OpenAI 每年在这上面花费超过 100 亿美元，但它是硅产品，就像所有硅产品一样，随着时间的推移，它会越来越商品化，这是必然的，因为历史上从未有过哪次硅短缺最终没有变成硅过剩。全世界都在竞相与英伟达竞争，英伟达可能会在很长一段时间内保持领先，但你将会看到 AMD、高通、苹果以及所有超大规模云服务商推出新产品。</p><p><strong>Ben Thompson:</strong> 我们只需要保持台湾的完整。</p><p><strong>MP:</strong> 我们确实需要保持台湾的完整。而你搬过去，据我所知，你是前线防线。</p><p><strong>Ben Thompson:</strong> 家庭原因……</p><p><strong>MP:</strong> 唯一能阻止中国的是 Ben。</p><p>第二样东西是人才。今天我们面临巨大的人才短缺，因为坦白说，如果你五年前在攻读 AI 博士学位，你就是个笑柄。那是个死气沉沉的领域。今天它成了最热门的领域，每个人都在搞新东西。所以我们可能会从短缺走向……也许不是过剩，但那种为了去 Meta 工作就能拿到十亿美元的日子肯定有限了，不会永远这样。我们将会有更多的人涌向这个领域，因为教育市场和就业市场是有效率的。</p><p>第三样你需要的东西是内容。再说一次，因为谷歌，我们有这样一种期望，即所有机器人都可以免费获取内容，但这是不可持续的。你要么最终陷入人人都饿死的境地，要么我们生活在美第奇家族的时代。所以在某种程度上，我们必须找到一种新的交换条件。</p><p>你可以把它想象成，AI 公司每年为每个月活跃用户支付 1 美元，这笔钱进入一个资金池，然后再分配给内容创作者。如果你算一下，今天这大约是 100 亿美元的内容费用，这足以完全取代今天非“围墙花园”互联网产生的所有广告收入。所以，把 Instagram 和 Facebook 排除掉……</p><p><strong>Ben Thompson:</strong> 比如谷歌广告网络、TradeDesk 等。</p><p><strong>MP:</strong> 但要包括《华尔街日报》、《纽约时报》、《金融时报》、Reddit 等等，每年大约是 100 亿美元。这是很多钱，但也不是一笔疯狂的数目。如果我们能解决这个问题，我们实际上可以创造一个更好的商业模式，如果我们做得对，我认为它实际上会鼓励创造更好的媒体和更好的内容。</p><p><strong>Ben Thompson:</strong> 你之前谈到了从这里到那里的问题，这当然也适用于这里。还有一个问题是，我们希望发生什么，与对抗经济规律以及文本可以无限复制和传播的事实之间的矛盾。你花了很多年担心垃圾邮件，垃圾邮件至今仍是个问题。</p><p><strong>MP:</strong> 算是吧。但不是以前那种问题了。老实说，如果你……我记得比尔·盖茨曾说，“我们将在未来五年内解决垃圾邮件问题”，我当时想，“不，你解决不了，这是个棘手的问题”。实际上，他们基本上做到了。</p><p><strong>Ben Thompson:</strong> 这都是以我这样试图向人们的收件箱发送一份诚实通讯的人为代价的。</p><p><strong>MP:</strong> 是的，这对你来说更难了。</p><p><strong>Ben Thompson:</strong> 当你思考这个问题和你能做什么时，你如何区分“好吧，这是我希望发生的”和“这是可能发生的，而且我确实有杠杆可以撬动它”？</p><p><strong>MP:</strong> 我认为首先，所有市场都需要稀缺性，如果没有稀缺性，你就不可能有市场，那个市场里必须存在某种稀缺性。</p><p><strong>Ben Thompson:</strong> 但这就是互联网的问题所在，45% 的人可能决定接受这个概念，但剩下的 55% 就会横扫市场。</p><p><strong>MP:</strong> 有可能，但如果他们无法获取内容，事情就会变得更难。我们刚刚看到的是，对于那些内容创作者来说，特别是如果他们创造了稀缺性，他们实际上就能够达成交易。</p><p>比如 Reddit。Reddit 在阻止机器人抓取其内容方面一直非常积极，包括谷歌。他们说，“谷歌，除非你付钱，否则你无法访问这些内容”。结果，谷歌和 OpenAI 与 Reddit 达成了一项协议，他们付费——我们从他们的公开文件中知道，这不是什么机密信息——2024 年他们为此获得了 1.2 亿美元，我听说 2025 年的交易甚至更好。我认为这个数字还会继续上升。</p><p>我认为真正有趣的是，如果你计算一下 Reddit 中的 token 数量和《纽约时报》全部目录中的 token 数量，结果发现它们大致在同一个数量级上，但 Reddit 得到的钱是后者的七倍。问题是为什么？我认为答案是，因为《纽约时报》——你可能很喜欢《纽约时报》，但从一个大型语言模型（LLM）的角度来看，《纽约时报》、《华尔街日报》、《金融时报》、《华盛顿邮报》和《波士顿环球报》之间的区别其实并不大。事实就是事实。所以是的，有一些色彩，有一些不同的倾向，观点版面可能略有不同，但它们基本上是一样的。</p><p>所以我实际上认为，令人鼓舞的是，我们已经看到，在存在稀缺性和内容独特性的地方，比如如果你没有 Reddit，你就没有 Reddit，所以你需要拥有那些内容。我认为，如果我们在这些情况下能够创造稀缺性，市场将会显示，实际上是那些本地的、独特的、差异化的内容最有价值。随着这个内容市场的存在和形成，再说一次，与 Cloudflare 无关，即使 Cloudflare 消失了，我仍然认为出版商们不可避免地会说，“好吧，我们要关闭机器人访问我们内容的权限，然后我们要为最独特的内容创造一个市场”。内容越独特，你得到的报酬就越多，我认为这是必然的。</p><p>我认为这是一个开创性的时刻，我们正在改变网络的商业模式，我实际上非常受鼓舞，未来的内容将更像早期的互联网，而不是——恕我直言，向我的朋友 Ben Smith 致敬——BuzzFeed。</p><h3 id="Cloudflare-的权力"><a href="#Cloudflare-的权力" class="headerlink" title="Cloudflare 的权力"></a>Cloudflare 的权力</h3><p><strong>Ben Thompson:</strong> 但如果这是不可避免的，那为什么 Cloudflare 需要如此咄咄逼人？你们正在实施这些政策，尽力阻止机器人，制定协议来识别其价值、支付等等，当然这一切都还处于萌芽阶段，还有很多问题需要解决。但你们的姿态并不像一家认为这是不可避免且会很棒的公司，你们在非常有力地试图促成某件事发生。</p><p><strong>MP:</strong> 嗯，我认为如果我们不这么做，也会有别人来做。但我认为我们有独特的能力，我们非常擅长阻止像机器人这样的东西，因为我们每天都在做。所以再说一次，我们并不是闲着没事想，“嘿，我们下一步该做什么？让我们去改变网络的商业模式吧”，而是我们的出版商客户来找我们说，“我们快要死了，我们没有技术能力来应对，但我们需要阻止这一切，请帮助我们”。</p><p>老实说，当 Dotdash Meredith 的 Neil [Vogel] 告诉我这些时，我翻了个白眼，心想，“出版商们，他们真是卢德分子，总是在抱怨新技术，总是在抱怨下一件事，这没什么大不了的”。Neil 和其他一些人最终说，“看看数据吧”。只有当我们真正看到数据时，当我们看到在过去 10 年里，从谷歌获得相同内容的点击变得困难了 10 倍，现在用 OpenAI 困难了 750 倍，用 Anthropic 困难了 30000 倍。</p><p>互联网上以流量为货币的生意正在消失，所以要么——再说一次，要么内容创作将消亡，要么它将变得徒劳无功，要么我们必须创造一种新的商业模式。如果我们的使命是“帮助建立一个更好的互联网”，这似乎完全符合我们应该努力的方向。</p><p><strong>Ben Thompson:</strong> 那为什么 Garry Tan 说你和 Browserbase 是邪恶轴心，并且你应该让 AI 代理合法化？</p><p><strong>MP:</strong> 我真的不明白。我被 Garry 搞糊涂了，我想部分原因可能是他是 Perplexity 的投资者。</p><p>每个故事都需要四个角色，你需要一个受害者，一个反派，一个英雄，还需要一个村里的傻瓜或傀儡。如果你想一下，任何新闻故事都有这四个角色。现在，最常扮演反派角色的是 Perplexity，他们正在做一些非常邪恶的事情，试图绕过内容公司的规定。</p><p>我给你举个例子，我们看到他们做的一件事是，如果他们被阻止获取一篇文章的内容，他们实际上会去查询像 Trade Desk 这样的广告服务，Trade Desk 会提供给他们文章的标题和文章内容的粗略描述。他们会拿这两样东西，然后编造文章的内容，并将其作为事实发布，声称“这是由这位作者在此时发布的”。</p><p>所以你可以想象，如果 Perplexity 无法获取 Stratechery 的内容，他们会说，“哦，Ben Thompson 写了关于这个的文章”，然后他们就会编造一些东西，并署上你的名字。别说版权了，这简直就是欺诈，彻头彻尾的欺诈。这就是一些科技公司的不良行为，我认为需要被揭露和惩罚。</p><h3 id="谷歌问题"><a href="#谷歌问题" class="headerlink" title="谷歌问题"></a>谷歌问题</h3><p><strong>Ben Thompson:</strong> 但回到 2024 年，我想，不记得是你还是别人，指责 Perplexity 忽略网站上的“禁止抓取”指令，人们对此非常愤怒。我当时的反驳是，“我们到底想不想要谷歌的竞争对手？”因为谷歌在做的……是的，OpenAI 开创了自己的网络机器人和协议，你可以要求 OpenAI 不要抓取你的网站，他们也尊重这一点。但谷歌……</p><p><strong>Ben Thompson:</strong> ……会说，“嗯，你想出现在搜索结果里”。结果发现，AI 概览（AI Overviews）是由 Googlebot 控制的。那为什么谷歌可以这么做，而 Perplexity 不行？</p><p><strong>MP:</strong> 我觉得我们应该公开打个赌，赌什么都行。可以是一场篮球赛，或者任何你想要的。赌 12 个月后，谷歌是否会为出版商提供一个选择退出 AI 概览的方式。我会赌“是”，我想你会赌“否”。</p><p><strong>Ben Thompson:</strong> 我不知道，我得考虑一下，我还没决定，现在还不承诺。</p><p><strong>MP:</strong> 好的。但我同意，你也写过，谷歌才是问题所在。我们做这件事的时候非常小心。我们实际上阻止了训练，也就是他们用于 Gemini 的部分，所以我们可以阻止那个，并且我们已经在所有地方都阻止了。我们没有阻止 RAG，我们没有阻止任何人的搜索，包括 Perplexity，尽管他们在做一些非常非常坏的事情。顺便说一句，OpenAI 就是一个证据，证明你可以做正确的事情，你可以成为好的参与者，并且最终仍然可以拥有更好的产品，成为谷歌一个可行的竞争对手。</p><p>所以我认为谷歌会的，而且我希望他们会，因为他们是一家真正相信生态系统的公司，他们看到了生态系统中正在发生的事情，他们明白如果某些事情不改变，生态系统将会受损。我认为他们会在未来 12 个月内自愿给出版商一个退出 AI 概览的方式。我实际上很乐观，认为这会发生得更快。如果他们不自愿这么做，我知道有很多监管机构会很乐意强迫他们这么做。</p><p><strong>Ben Thompson:</strong> 你对本周的谷歌案感到鼓舞还是沮丧？</p><p><strong>MP:</strong> 嗯，首先，那份文件有 280 页长。</p><p><strong>Ben Thompson:</strong> 是的，非常长，我一直读到凌晨 5 点，必须把整个文件读完。</p><p><strong>MP:</strong> 我读了摘要，也让我的团队在研究它。所以我不确定强迫他们出售 Chrome 是不是正确的补救措施。</p><p><strong>Ben Thompson:</strong> 不，我认为那很蠢。我觉得最重要的是，我对谷歌的整个看法是，他们基本上收买了所有人，然后允许他们继续付款的理由是，所有人都依赖谷歌的付款。这就像一个循环论证，虽然没错，但基本上就是这个核心。</p><p><strong>MP:</strong> 再说一次，在我们录制这个节目的时候，那个判决是昨天出来的，所以我还不是这方面的专家——最让我担心的是，法官建议的一些内容是谷歌必须与生态系统的其他部分共享数据。所以……</p><p>一个可怕的结果是，这实际上会摧毁生态系统。我在裁决中看到的最令人沮丧的一句话是，“这似乎可能对出版业产生不良影响，但没有一个出版商出庭作证”。我当时想，“哦，伙计们，如果你们想赢得比赛，就必须上场啊”。</p><p>所以我确实认为，无论 Cloudflare 在做什么，互联网的经济学正在改变，它们正在改变，因为一个更好的界面正在出现，它由包括谷歌在内的许多人提供。如果生态系统要繁荣和生存，我们必须改变对内容创作者的补偿经济学。我们可以用一种我认为非常合理的方式来做到这一点。我的预测是，随着时间的推移，AI 公司会更像 YouTube 或 Netflix，它们竞争的是它们能获得的原创内容，而不是算法。我们已经看到算法在很大程度上是商品化的，它们一直在相互超越，我认为这种情况会持续相当长一段时间。</p><p>我属于那种认为未来会有成千上万种不同的 AI 界面的人，我们会为它们付费，或者它们会由广告支持。但让你选择这个而不是那个的原因，将是它们是否能提供你特别关心的内容。</p><p><strong>Ben Thompson:</strong> 我确实认为，顺便说一句，我同意你的赌注，因为谷歌的核心策略——在这个案子中大获全胜的策略——基本上就是收买所有人。</p><p><strong>MP:</strong> 没错。</p><p><strong>Ben Thompson:</strong> 所以这就是一个收买所有人的计划。</p><p><strong>MP:</strong> 完全正确。现在我认为非常重要的一点是——再说一次，我不知道具体会是什么样——但我们必须确保，无论支付方案是什么，它都要考虑到，如果你规模小，你付的就少；如果你规模大，你付的就多。所以，我对此的初步设想是，每个月活跃用户每年支付 1 美元，这笔钱进入一个资金池，然后我们如何将其分配给内容创作者，那就是另一回事了。</p><p><strong>Ben Thompson:</strong> 如果有人能坐在中间充当市场创造者，那可能是一个非常有利可图的领域。</p><p><strong>MP:</strong> 有可能。</p><p><strong>Ben Thompson:</strong> 那会是 Cloudflare 吗？</p><p><strong>MP:</strong> 我们是否是那个角色，再说一次，如果它有利可图，就会有很多人竞争去做。如果我们能增加价值，那么我们就能捕获部分价值。但我认为最重要的是，我们如何找到某种方式，让绝大部分……</p><p><strong>Ben Thompson:</strong> ……的价值流向创作者。</p><p><strong>MP:</strong> ……的价值以一种我们奖励的不是那些引战的人，而是那些真正在填充人类知识的人的方式，流向创作者。</p><h3 id="Cloudflare-的动机"><a href="#Cloudflare-的动机" class="headerlink" title="Cloudflare 的动机"></a>Cloudflare 的动机</h3><p><strong>Ben Thompson:</strong> 我几个月前写过这个，你知道我们观点一致，只是你来做这件事引人注目的是，嗯，也许必须有人来打破一些常规才能实现它。</p><p><strong>MP:</strong> 当然。</p><p><strong>Ben Thompson:</strong> 但这就引出了我的最后一个问题，它把我们之前谈论内容审核和现在谈论的这个话题联系起来了。在你试图利用权力来推动这个新的内容标准，和你声称在内容审核方面不想要权力之间，是否存在一种二分法？“我们不想介入”，那么，你到底是想要权力还是不想要？</p><p><strong>MP:</strong> 我们仍然想在网络攻击来临时阻止它们。我们正是在拥有这种权力上建立了一个相当有价值的业务。我认为我们感到紧张的地方在于判断，这个内容是好是坏？</p><p>所以，举个例子，我认为找出谁作为内容提供者应该得到报酬的正确方法，不是由 Cloudflare 设计一个算法来说，“这是重要的内容，你应该拥有它，而这是不重要的内容，你不应该拥有”。每个 AI 公司都应该设计自己的算法，并能够将其插入到——无论是我们的系统还是我们竞争对手的系统，无论是谁——然后说，“这是我们的系统，你看到内容，根据我们的算法为我们排名”。OpenAI 的排名会和 Anthropic 的不同，也会和 Perplexity 的不同。你应该有这种能力，而且我认为这个排名应该在两个不同的轴上进行评分，即它的信誉度如何，以及它的新颖性如何？它在多大程度上真正推动了知识的发展？如果你做得正确，并且你有各种各样不同的——如果你有大量的 AI 公司和大量的内容创作者，那么，再说一次，我认为当然，我们在这里扮演着技术促进者的角色，但关于什么内容重要、什么不重要的实际决定，那仍然是……再说一次，我认为我们不适合做那些决定。</p><p><strong>Ben Thompson:</strong> 你想成为一个市场创造者，而不是一个挑选者。</p><p><strong>MP:</strong> 我们不是编辑。</p><p><strong>Ben Thompson:</strong> 就是这个词。</p><p><strong>MP:</strong> 是的。再说一次，我认为我们现在非常擅长的一件事是创造稀缺性。</p><p><strong>Ben Thompson:</strong> 并且让人们能够利用这种稀缺性。</p><p><strong>MP:</strong> ……让人们能够利用这种稀缺性。如果他们不想利用它，那也没关系。顺便说一句，我认为这其中绝大部分将是大型出版商与大型 AI 公司直接达成交易。</p><p><strong>Ben Thompson:</strong> 但这对所有小公司来说都很糟糕。</p><p><strong>MP:</strong> 这就是……再说一次，我们可以成为其中的一部分，我们可以说，“好的，我们现在代表小公司，让我们与你合作，找出你如何也能参与到这个市场中来”。</p><p><strong>Ben Thompson:</strong> 双方的小公司——小型 AI 公司，初创企业。</p><p><strong>MP:</strong> 我们必须确保在设计这个系统时，它是以这种方式工作的，然后是小型内容创作者。</p><p>我想我的请求是，既然你有一个相对有影响力的读者群，如果你是一位学者，正在读 Ben 的文章，并且认为这非常有趣……谷歌之所以最终解决了这个问题，并且我认为它在世界上是一股巨大的善的力量——谷歌在世界上做了很多好事。他们之所以能做到，是因为他们非常仔细地思考了这些市场动态。所以我们正在努力与顶尖的学术经济学家和市场理论家合作，来研究，“未来的市场应该是什么样子？”所以，如果你正在读这篇文章，请联系我们，因为我们很想和你谈谈。</p><p><strong>Ben Thompson:</strong> 我们在开头花了很多时间——我们聊得有点长了，感谢你坚持下来——谈论你的背景和你如何走到今天的位置，这真的很有趣。这不是传统的科技路径，这是否对我们最后一个话题至关重要？如果你只是一个传统的，从计算机领域成长起来，去了斯坦福，创办了一家公司，你会挑起这场斗争吗？还是说，这是源于在一所甚至已经不存在的法学院教书，只是为了逃避 Hooters？</p><p><strong>MP:</strong> 只是为了逃避经营我父亲的 Hooters。我不知道。我认为最有价值的……我有一个英语专业，一个计算机科学辅修学位，一个法律学位，一个商学院学位。有很多时候，我曾认为在法学院的那三年完全是浪费。但它非常有价值。我可以坐下来阅读谷歌案法官的裁决，并理解其中的重点和非重点，这些事情都非常重要。我认为能够说、写、沟通，并欣赏创作优秀内容需要付出多少努力，这真的很有帮助。我认为我一直在努力，当我们过去谈论内容审核时，我们为这些问题而挣扎，为什么是正确的事情而挣扎。</p><p><strong>Ben Thompson:</strong> 这回到了你那天早上是哪边床下的问题，对吧？</p><p><strong>MP:</strong> 是的，完全是。</p><p><strong>Ben Thompson:</strong> (笑) 这是给那些不记得之前争议的人的一个典故。</p><p><strong>MP:</strong> 你当时的女朋友，现在的妻子，在那一刻对你有多生气。但回过头来，真正地阅读亚里士多德，我认为那很棒。所以今天我被邀请，有几家 AI 公司邀请我加入他们的董事会之类的，我总是拒绝。但我会和他们交谈，我肯定是非学术界购买亚里士多德《政治学》最多的人之一，因为几乎每个 AI 公司的 CEO 都从我这里得到了一本签名版，上面写着，“你们正在做的事情非常重要，但你们必须考虑伦理和如何建立信任”。</p><p>我确实希望，那些正在构建这些将带来巨大变革的不可思议系统的人，他们能花一些时间在人文学科上，他们能花一些时间真正停下来阅读和思考，比如，“好吧，如果我们成功了……”我认为有很多关于“如果我们成功了，就会是詹姆斯·卡梅隆的《终结者》”之类的想法。但我认为还有另一个版本，那就是，“好吧，如果我们构建了这些强大的系统，我们如何确保它们随着时间的推移是值得信赖的？”这些是人们长期以来一直在努力解决的问题，我感到非常幸运能有时间坐下来思考它们，我确实认为这对 Cloudflare 今天成为这样的公司是有帮助和有启发性的。</p><p><strong>Ben Thompson:</strong> 嗯，我很高兴也很幸运能在这次访谈中拥有你的时间。谢谢你来。</p><p><strong>MP:</strong> Ben，谢谢你邀请我。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%A7%91%E6%8A%80/">科技</category>
      
      <category domain="https://deusyu.app/categories/%E7%A7%91%E6%8A%80/%E5%95%86%E4%B8%9A/">商业</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AD%94%E6%A1%88%E5%BC%95%E6%93%8E/">答案引擎</category>
      
      <category domain="https://deusyu.app/tags/%E6%8C%89%E6%AC%A1%E6%8A%93%E5%8F%96%E4%BB%98%E8%B4%B9/">按次抓取付费</category>
      
      <category domain="https://deusyu.app/tags/%E4%BA%92%E8%81%94%E7%BD%91%E7%BB%8F%E6%B5%8E/">互联网经济</category>
      
      <category domain="https://deusyu.app/tags/%E5%86%85%E5%AE%B9%E5%8F%98%E7%8E%B0/">内容变现</category>
      
      <category domain="https://deusyu.app/tags/%E5%95%86%E4%B8%9A%E6%A8%A1%E5%BC%8F/">商业模式</category>
      
      <category domain="https://deusyu.app/tags/AI%E4%BC%A6%E7%90%86/">AI伦理</category>
      
      <category domain="https://deusyu.app/tags/%E6%8A%80%E6%9C%AF%E7%84%A6%E8%99%91/">技术焦虑</category>
      
      
      <comments>https://deusyu.app/posts/ai-pay-per-crawl/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>AI Will Not Make You Rich｜人工智能不会让你致富</title>
      <link>https://deusyu.app/posts/ai-will-not-make-you-rich/</link>
      <guid>https://deusyu.app/posts/ai-will-not-make-you-rich/</guid>
      <pubDate>Thu, 25 Sep 2025 19:21:00 GMT</pubDate>
      
      <description>AI淘金热：一张审慎的航海图

我们似乎正处在一个悖论之中：一边是人工智能前所未有的技术浪潮，估值万亿的巨头与初创公司竞相奔走；另一边却是萦绕在许多人心头的困惑——风口之上，为何我们感受到的更多是巨头的压迫感，而非遍地开花的机会？
杰里·诺伊曼的这篇文章，正是要为我们厘清这个时代的迷思。他如同一位冷静的历史学家，将我们的视线从当下的狂热中抽离，引导我们去思考一个根本问题。他提醒我们，任何投资新兴事物的人都必须回答两个问题：首先，这项创新将创造多少价值？其次，谁将获取这些价值？对于人工智能，第一个问题的答案无疑是肯定的，但第二个问题的答案，却可能颠覆我们的直觉。
文章巧妙地将今日的AI与两场历史性的技术革命进行对勘：个人电脑与集装箱运输。前者催生了无数新贵，后者虽同样颠覆了世界，却几乎没有创造出新的财富阶层。区别何在？关键在于“不确定性”。个人电脑的黎明时代，没人能确信它将颠覆世界，苹果的广告甚至还在反问用户“你会用它做什么？”。正如诺伊曼所言，大公司最怕意外，正因如此，不确定性反而成为初创企业的天然护城河。
而今天的人工智能，恰恰缺少了这份“意外”的庇护。它的颠覆性几乎是昭然若揭的，这使得所有既得利益者从第一天起就倾巢而出，用资本和规模的引力井，迅速捕获了这项创新。竞争的号角在范式确立之前就已吹响，留给新入局者的，不再是广阔的无人区，而是一场资本密集、赢家通吃的残酷竞争。
那么，AI创造的巨大价值将流向何方？诺伊曼的论证层层递进，最终指向了一个清晰的答案：价值将越过模型的开发者，穿过应用的集成商，最终沉淀在那些能够利用AI大幅降低成本、重塑商业模式的“客户”手中，并以更优质、更低廉服务的形式，惠及最广大的消费者。
这引出了诺伊曼最终的忠告：过去五十年投资科技领域的经验教训，如今已不再适用。数十年来，赚钱之道在于押注新兴事物本身。如今，你必须押注它所开启的机遇。
这篇文章并非为AI的热潮泼上冷水，而是递给我们一张更精准的航海图。它指引我们越过喧嚣的浪花，去寻找那片真正蕴藏价值的深海。现在，不妨翻开正文，开始这场审慎而清醒的远航。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/">https://joincolossus.com/article/ai-will-not-make-you-rich/</a><br>The disruption is real. It’s also predictable.<br>这种颠覆是真实的。它也是可预见的。</p></blockquote><p>By <strong>Jerry Neumann 杰里·诺伊曼</strong></p><p>2025 年 9 月</p><hr><p>当革命性技术催生出大批创新型投资企业时，创业者与投资者<strong>便能创造财富</strong> 。试想铁路、贝塞默炼钢法、电力、内燃机或微处理器——这些技术如同烟花厂里的意外火花，引发数十年接踵而至的创新浪潮，渗透社会每个角落，将新一代发明家与投资者推向权力、影响力与财富的巅峰。</p><p>然而某些技术创新虽能改变社会格局，却鲜少创造新财富，反而强化了现状。在微处理器问世十五年前，另一项革命性理念——集装箱运输——诞生于一个更不顺的时代：当时技术进步如同红皇后竞赛，发明家和投资者即便不停奔跑，也未能获得实质收益。</p><p>任何投资<em>新兴</em>事物的人都必须回答两个问题：首先，这项创新将创造多少价值？其次，谁将获取这些价值？信息通信技术（ICT）是一场革命，其价值被初创企业所获取，催生了数千名新晋富豪——包括创始人、员工和投资者。相比之下，集装箱运输革命的价值被稀释得如此之薄，最终仅使一位创始人暂时致富，一位投资者略有增益。</p><p>生成式人工智能更接近前者还是后者？它将成为未来众多工业财富的基础，还是对整个投资界而言净亏损的领域，仅有零星的零和赢家？</p><p>投资人工智能的成果确实存在盈利途径，但前提是必须认同以下观点：当前对发明者和投资者而言仍是机遇较少的时期；人工智能模型构建者与应用公司终将相互竞争形成寡头垄断格局；人工智能带来的收益将归属于客户而非开发者。因此，大量涌入人工智能领域的资金正被投向错误领域。除少数幸运的早期投资者外，真正获利者将是那些具备远见、及时抽身的投资者。</p><p><strong>微处理器具有革命性意义</strong> ，但 1971 年在英特尔发明它的团队并未意识到这一点——他们只是想避免每次都要从头设计台式计算器芯片组。然而外界人士意识到，他们可以利用微处理器打造自己的个人电脑，而发烧友们确实这么做了。成千上万的 DIY 爱好者探索出了英特尔从未设想过的配置方案与应用场景。这场由技术触发、经济与社会力量驱动的”发展大浪潮”——正如经济学家卡洛塔  [·佩雷斯所称——正是源于这项去中心化且无需许可的发明。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-1">1</a>]</p><p>1970 年代初，个人计算机尚未形成真正需求，不过是昂贵的玩具。但实验者们奠定了技术基础，并构建起用户社群。直到 1975 年前后，微处理器成本的阶跃式下降才使个人计算机市场得以存续。英特尔 8080 处理器最初定价 360 美元（相当于当今 2300 美元）。MITS 公司以每台 75 美元（相当于当今 490 美元）的批发价销售 Altair 计算机，利润微薄。但当 MOS 科技公司推出 25 美元（相当于今日 150 美元）的 6502 处理器后，史蒂夫·沃兹尼亚克终于能负担起苹果原型机的研发成本。6502 与同价位的 Zilog Z80 处理器迫使英特尔降价。初生的个人电脑社区开始孕育创业者，数十家企业如雨后春笋般涌现，各自推出略有差异的产品。</p><p>在 1970 年代中期，你不可能预见到个人电脑（以及类似产品，如 ATM 机、POS 终端、智能手机等）将彻底改变一切。当史蒂夫·乔布斯向投资者宣称每个家庭终将拥有个人电脑时（事实证明这还是保守估计），其他人甚至质疑个人电脑是否存在必要性。直到 1979 年，苹果的广告仍不直接宣扬个人电脑的功能  <em>——而是反问用户</em> “你会用它做什么？”<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-2">[2]</a>  传统计算机制造商（IBM、惠普、DEC）对客户未曾要求的产品毫无兴趣。当时没人”需要”计算机，因此个人电脑并非被主动购买——而是靠推销才能售出。苹果、辛克莱等新锐公司靠炒作博眼球，而雅达利、康懋达、坦迪&#x2F;无线电城等消费电子巨头则凭借强大的零售渠道，将产品推向潜在用户面前。</p><p><img src="https://r2.deusyu.app/7ad711c5-99d9-4156-b16a-af8b3ca5dd38.png"></p><p>市场初期增长缓慢，直到实验成果转化为实际应用（如 1979 年问世的电子表格）才开始加速。随着应用范围扩大，使用观察减少了不确定性，由此形成自我强化的循环推动更广泛采用。这种势头在每波技术浪潮中都需要时间积累：例如电力普及至半数美国家庭耗时近 30 年，个人电脑的普及周期也大致相当。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-3">[3]</a>  当技术革命颠覆一切时，它需要海量的创新、投资、叙事、时间以及纯粹的苦干。它还会吸纳所有可用的资金与人才。正如库恩所说的科学范式，任何不属于该技术经济范式浪潮的技术，都会显得像场边缘表演。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-4">[4]</a></p><p><img src="https://r2.deusyu.app/68ad1623-2d7a-476c-b893-579720f37d3e.png"></p><p><em>来源</em> ：<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-3">[3]</a></p><p>个人电脑的萌芽式增长吸引了投资者——风险投资家——他们开始对新兴企业进行高风险投资。这一发展激励了更多发明家、企业家和研究人员，进而吸引了更多投机资本。</p><p>像 IBM 这样的公司——个人电脑时代之前的计算巨头——表现相对不佳。它们不相信个人电脑能存活足够长的时间以在它们的市场中站稳脚跟，也不关心那些寻求更廉价解决方案的新兴小型市场。</p><p>回溯来看，我们赋予个人电脑先驱者的是先知而非远见者的力量。但在当时，除了少数早期采用者外，无人关注。直到 1981 年 8 月 IBM 推出个人电脑后，<em>《纽约时报》等</em>主流媒体才开始重视。在苹果公司创立的 1976 年全年，<em>《纽约时报》</em>  仅提及个人电脑四次。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-5">[5]</a>  显然，唯有那些疯子、不合群者、叛逆者和麻烦制造者才对此关注。</p><p><img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/5c4b2c35-4efb-48d8-8d82-61a5d6de3f8a/ac3e93fb-7c93-49c4-b80a-8747e018480f/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB4667KTEYWAL/20260207/us-west-2/s3/aws4_request&X-Amz-Date=20260207T124223Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEJT//////////wEaCXVzLXdlc3QtMiJHMEUCIQCWVBgp7xBVF+sLDXnkfG2kBSgSf1tfvHGnyw1Np75hPAIgbSigBcaTz2uoNyNPqmmU+XfcMhOrGpBw/WPhLzvKHxgq/wMIXRAAGgw2Mzc0MjMxODM4MDUiDMpJ3c0j/wsUfB4XTSrcA2q3u3DtQM3G0PWXpxt22r3DBV6NXt7HC564q+/3Mapf155NcO1Zp5032edSqJxcAqmddUiibCim+ZUim+mk47MWXFAJz14dw1xVYU1BiLd2Fzi2/JOKvjput+Dcwe3evItk+M3xd7jcnpeQJb6XyWfSh6vXYZOuK//IMkmoCLyPPxnMcj3orYSQTlJsGv/FwqttLffA610zt/VBc5RtAmdIFWdfk6HCC/44bQkI7G7BbvfCrEvpzX0gBwzChB0Y3eCwsObN/YCwZgSHGpGVwUuTmk+wNptEnRDXngsX2Jzg2VwWInwbUUoeypuNDuFTuuLe7rjwY591YuiiI953W9eHk6WJdXYGjdP9iZHq44K2KKDOa9U+GQXJ9pN18copLxRSi6qu6+upz48SdfDeqDqH4OO5+0ArpimDfF8j5DdLjBtdhAhUkNLg7QBzvTvjWERsbV2YmID3wEen8j1LKIvgs4y7mTeqkJQXqgmvIzFmFhvfiLsxFiaD+hFaFBWE34fHa556hW2TDAlJBwCHMU85jyjsS3mTr0iTFq3LV5L8UY7dgQI/vI5Ibfz6RXh3YAaUaPMLuUNRuP8JZ5XG+waMskjd7xRBui3V71V8r3CuWTdDAMFTwIMpBFxMMPjRnMwGOqUB/oAyF5hDJws4MYVA9hCjkqw+/yanvA0t9AkaBVIT0w4OsvJvh0IbL5hCuBCHoXUbvewL3w6MwwBSL6bdbrdPvlSjTg1dzC1TwjqyV7Nrmsm6NNpb6svOzWu4mohe7WNBAlawobuD/M/ci//1JvYiVOtnAuOlIm0wQtGtvBmD9HKnjGSElvGq+9bn5EtXq7lLN/ihukSrq2KaqlUL0G8MocHFBbr2&X-Amz-Signature=93bb1edc7c16ceb0e1666ef4f291db6687141da1a3aa3bebe09785b6bda8d432&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject" alt="来源 ：[5]"></p><p>当我们对比计算机革命的早期与当今时代时，最令人震撼的莫过于这种出人意料的转变。1970 年代，个人电脑尚未引起任何关注；而到了 2025 年，人工智能似乎成了我们谈论的唯一话题。</p><p><strong>大公司最怕意外。</strong>  正因如此，不确定性反而成为初创企业的天然护城河。若非 1979 年 IBM 进军市场，苹果公司根本无法生存；而 1980 年通过首次公开募股筹集 1 亿美元资金后，它才得以继续竞争。在 IBM 引发的行业洗牌后，苹果成了唯一幸存的竞争者。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-6">[6]</a></p><p><img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/5c4b2c35-4efb-48d8-8d82-61a5d6de3f8a/35369002-c866-4afb-a202-86c19b833fd1/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB4667KTEYWAL/20260207/us-west-2/s3/aws4_request&X-Amz-Date=20260207T124223Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEJT//////////wEaCXVzLXdlc3QtMiJHMEUCIQCWVBgp7xBVF+sLDXnkfG2kBSgSf1tfvHGnyw1Np75hPAIgbSigBcaTz2uoNyNPqmmU+XfcMhOrGpBw/WPhLzvKHxgq/wMIXRAAGgw2Mzc0MjMxODM4MDUiDMpJ3c0j/wsUfB4XTSrcA2q3u3DtQM3G0PWXpxt22r3DBV6NXt7HC564q+/3Mapf155NcO1Zp5032edSqJxcAqmddUiibCim+ZUim+mk47MWXFAJz14dw1xVYU1BiLd2Fzi2/JOKvjput+Dcwe3evItk+M3xd7jcnpeQJb6XyWfSh6vXYZOuK//IMkmoCLyPPxnMcj3orYSQTlJsGv/FwqttLffA610zt/VBc5RtAmdIFWdfk6HCC/44bQkI7G7BbvfCrEvpzX0gBwzChB0Y3eCwsObN/YCwZgSHGpGVwUuTmk+wNptEnRDXngsX2Jzg2VwWInwbUUoeypuNDuFTuuLe7rjwY591YuiiI953W9eHk6WJdXYGjdP9iZHq44K2KKDOa9U+GQXJ9pN18copLxRSi6qu6+upz48SdfDeqDqH4OO5+0ArpimDfF8j5DdLjBtdhAhUkNLg7QBzvTvjWERsbV2YmID3wEen8j1LKIvgs4y7mTeqkJQXqgmvIzFmFhvfiLsxFiaD+hFaFBWE34fHa556hW2TDAlJBwCHMU85jyjsS3mTr0iTFq3LV5L8UY7dgQI/vI5Ibfz6RXh3YAaUaPMLuUNRuP8JZ5XG+waMskjd7xRBui3V71V8r3CuWTdDAMFTwIMpBFxMMPjRnMwGOqUB/oAyF5hDJws4MYVA9hCjkqw+/yanvA0t9AkaBVIT0w4OsvJvh0IbL5hCuBCHoXUbvewL3w6MwwBSL6bdbrdPvlSjTg1dzC1TwjqyV7Nrmsm6NNpb6svOzWu4mohe7WNBAlawobuD/M/ci//1JvYiVOtnAuOlIm0wQtGtvBmD9HKnjGSElvGq+9bn5EtXq7lLN/ihukSrq2KaqlUL0G8MocHFBbr2&X-Amz-Signature=3a7492f4ca5bd8c3fab32bc4f59ce8f5a2213b66bbe91c72fe7e4774380751d2&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject" alt="来源 ：[6]"></p><p>随着这项技术逐渐普及并展现出潜力，软件、存储器以及软盘驱动器和调制解调器等外围设备也相继涌现。它们相互促进，每项进步都对相邻技术形成推动。当系统中任何环节制约其他部分发展时，投资者便会争相向该领域注资。例如，随着个人电脑内存的提升支持更复杂的软件运行，外部存储需求随之增长。这促使风险投资人戴夫  ·马夸特于 1980 年投资硬盘制造商希捷。当希捷在 1981 年上市时，马夸特获得了 40 倍的回报。其他投资者纷纷效仿，在随后的三年间向该行业注入了约 2.7 亿美元资金。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-7">[7]</a></p><p>资金也涌入了基础建设领域——光纤网络、芯片制造等——因此产能从未成为瓶颈。那些利用新技术体系超越传统企业的公司开始抢占市场份额，就连保守的竞争对手也意识到必须拥抱新技术否则将被淘汰。炒作演变成泡沫，最终形成投资泡沫：即 1990 年代末的互联网狂热。因此，信息通信技术浪潮与此前浪潮如出一辙——如同 1830 年代的投资狂热和 20 年代的”咆哮年代”，它们分别紧随运河与铁路的基础设施建设之后，人类对每个阶段的反应都可预见地催生了下一阶段。</p><p>当互联网泡沫破灭时，社会对该行业的过度行为表示不满，各国政府发现自己获得了民众支持，得以重新掌控科技公司及其投资者。这为疯狂的扩张踩下了刹车。企业不再进行泡沫时期的鲁莽创新，转而向成熟市场扩张；金融家们也从投机转向投资。企业家们开始专注于寻找应用场景，而非基础技术的创新。技术进步仍在持续，但变革更趋于渐进式而非颠覆式。</p><p>随着变革步伐放缓，企业重拾信心进行长期投资。它们开始以创新方式整合系统各部分，为更广泛的用户群体创造价值。狂热时期光纤电信网络及其他基础设施的大规模超额建设，留下了大量廉价容量，使扩展成本得以控制。这无疑是企业家和投资者大展宏图的黄金时期。</p><p><img src="https://r2.deusyu.app/035eeb18-f980-4d3c-9135-3b2a60280905.png"></p><p>相比之下，社会无需等待泡沫破裂便开始抨击人工智能。鉴于科技行业的反噬已持续十年之久，这在我们看来实属常态。但人工智能遭遇的抵制，与早期科技巨头如比尔·盖茨、史蒂夫·乔布斯、杰夫·贝索斯等人创立大型科技企业时所享有的普遍推崇截然不同。世人厌恶变革，科技在 80、90 年代能获得宽容，只因当时一切似乎尚可逆转：若发展失控，科技随时可以被摒弃。这为早期计算机创新者提供了实验空间。如今当人们确信计算机将永久存在时，人工智能便不再被允许享受同样的观望态度——它已被视为信息通信技术革命<em>的重要组成部分</em> 。</p><p><strong>经济学家佩雷斯</strong>将每一次技术浪潮划分为四个可预测的阶段：爆发期、狂热期、协同期和成熟期。每个阶段都具有独特的投资特征。</p><p><img src="https://r2.deusyu.app/4b3e9087-381c-4ac2-94ed-0258997770e4.png"></p><p>中间的两个阶段——狂热与协同效应——对投资者而言最为简单。狂热阶段是当所有人蜂拥而入时，投资者因在未经证实的理念上承担巨大风险而获利，最终形成泡沫，此时纸面利润便烟消云散。当理性回归时，协同效应阶段便随之开启，企业将产品打造得适用于各类用户并提升其生产力。协同效应阶段则回报那些具备耐心、挑剔眼光，且能带来资金之外附加价值的投资者。</p><p>爆发与成熟阶段的投资难度更大。</p><p>在 1970 年代投资远比后见之明所见艰难。若想在 1971 至 1975 年间投资，你必须是坚定不移的信仰者，或是奉行愚蠢多元化战略的综合企业。英特尔虽初看像是上一波电子浪潮的产物，实则堪称绝佳投资标的。MOS 科技公司 1969 年创立时意图与德州仪器竞争，却为维持运营将多数股权售予艾伦-布拉德利。Zilog 公司 1975 年竟由埃克森（没错，就是埃克森！）注资成立。苹果虽是绝佳投资标的，却完全不符合风投的筛选标准——当时个人电脑仍是”为解决问题而生的解决方案”。</p><p>随后在 1980 年代初迎来爆发期，重大机遇层出不穷：个人电脑制造商（康柏、戴尔）、软件与操作系统（微软、艺电、Adobe）、外设（希捷）、工作站（太阳微系统）以及电脑零售商（商业天地）等领域纷纷涌现。若投资于赢家，便能获利颇丰。但资金仍远多于创意，这意味着投资领域并未迎来黄金时代。到 1983 年，仅硬盘驱动器领域就有 70 多家公司竞争，估值全面崩盘。许多人在 70、80 年代积累了财富，众多风投机构也在那个时代声名鹊起。但作为爆发期投资者的最大优势，在于积累了机构知识储备，能够在狂热期和协同期精准把握早期投资良机。</p><p>在成熟阶段进行投资更为困难。在爆发期，难以预见未来走向；而在成熟期，几乎没有任何波澜。关于哪些策略会奏效、客户与社会将如何反应的不确定性已基本消失。一切皆可预测，所有行为都遵循既定模式。</p><p>缺乏活力使得成功的协同企业得以固守地位（参见：Nifty 50 指数和 FAANG 巨头），但增长变得愈发艰难。它们开始相互渗透市场、组建集团、提价降本。以低价吸引新客户的时代终结，产品质量随之下滑。大企业虽仍推崇革命性创新理念，却迫切需要掌控技术应用方式。研发资金从产品与工艺创新转向徒劳地延长现有模式寿命，企业将此包装为”追求胜利”，实则是对衰落的恐惧。</p><p>创新在成熟期同样可能发生，有时甚至惊人地爆发。但由于这些创新只有契合当前浪潮的范式才能获得支持，它们很容易被主导企业的引力井所捕获。这意味着作为创业者或投资者从中获利几乎不可能。生成式人工智能显然正被主导的 ICT 企业所掌控，这引发了一个问题：对于发明者和投资者而言，这次是否会有所不同——这与人工智能本身是否属于革命性技术是两个不同的问题。</p><p><strong>集装箱运输作为一项晚期创新，</strong>  彻底改变了世界格局，开启了现代全球化时代，引发了社会与经济的深刻变革，并推动了福祉的快速增长。但真正通过投资它赚到大钱的人，或许仅有一两位。</p><p>1956 年已是上一轮浪潮的尾声。但就在这一年，即将更名为”海陆”的公司凭借首艘集装箱船”理想一号”的启航，彻底革新了货运运输业。创始人马尔科姆·麦克莱恩顿悟到：卡车司机、铁路公司和航运公司的核心使命是将货物从发货地运抵目的地，而非驾驶卡车、装填货车或装载船舶。海陆公司实现了货运在不同运输方式间的无缝衔接，既节省了时间，又提高了运输的可预测性，同时削减了装卸转运成本及船舶在港口闲置装卸的停泊成本。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-8">[8]</a></p><p>如果集装箱运输能够实现，其优势显而易见。所有人都能看到其效率提升，而顾客并不关心货物如何运抵销售点，只要能送达即可。但码头工人将失业，政客将失去失业者的选票，港务局将失去政客的支持，联邦监管机构将因负面后果遭指责，铁路公司可能流失货运业务给航运公司，航运公司又可能被新兴航运公司抢走货源——而这一切将耗费巨资。多数人认为麦克莱恩永远无法实现这个计划。</p><p>麦克莱恩在重重阻力中艰难前行。他收购并改装了战争剩余的船只，从而降低成本。他瞄准了沿海航运业——这个在新州际公路时代日渐式微的行业，以此规避竞争。他选择在新泽西州纽瓦克市而非航运枢纽地狱厨房区设立公司，既获得了港务局的认可，又避开了曼哈顿的拥堵。他还与纽约码头工人工会达成协议——这笔交易之所以能成，正是因为他作为小玩家被认为不构成威胁。</p><p><img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/5c4b2c35-4efb-48d8-8d82-61a5d6de3f8a/3f500ed6-4d66-4ad2-8c78-628a2cc3df97/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB4667KTEYWAL/20260207/us-west-2/s3/aws4_request&X-Amz-Date=20260207T124223Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEJT//////////wEaCXVzLXdlc3QtMiJHMEUCIQCWVBgp7xBVF+sLDXnkfG2kBSgSf1tfvHGnyw1Np75hPAIgbSigBcaTz2uoNyNPqmmU+XfcMhOrGpBw/WPhLzvKHxgq/wMIXRAAGgw2Mzc0MjMxODM4MDUiDMpJ3c0j/wsUfB4XTSrcA2q3u3DtQM3G0PWXpxt22r3DBV6NXt7HC564q+/3Mapf155NcO1Zp5032edSqJxcAqmddUiibCim+ZUim+mk47MWXFAJz14dw1xVYU1BiLd2Fzi2/JOKvjput+Dcwe3evItk+M3xd7jcnpeQJb6XyWfSh6vXYZOuK//IMkmoCLyPPxnMcj3orYSQTlJsGv/FwqttLffA610zt/VBc5RtAmdIFWdfk6HCC/44bQkI7G7BbvfCrEvpzX0gBwzChB0Y3eCwsObN/YCwZgSHGpGVwUuTmk+wNptEnRDXngsX2Jzg2VwWInwbUUoeypuNDuFTuuLe7rjwY591YuiiI953W9eHk6WJdXYGjdP9iZHq44K2KKDOa9U+GQXJ9pN18copLxRSi6qu6+upz48SdfDeqDqH4OO5+0ArpimDfF8j5DdLjBtdhAhUkNLg7QBzvTvjWERsbV2YmID3wEen8j1LKIvgs4y7mTeqkJQXqgmvIzFmFhvfiLsxFiaD+hFaFBWE34fHa556hW2TDAlJBwCHMU85jyjsS3mTr0iTFq3LV5L8UY7dgQI/vI5Ibfz6RXh3YAaUaPMLuUNRuP8JZ5XG+waMskjd7xRBui3V71V8r3CuWTdDAMFTwIMpBFxMMPjRnMwGOqUB/oAyF5hDJws4MYVA9hCjkqw+/yanvA0t9AkaBVIT0w4OsvJvh0IbL5hCuBCHoXUbvewL3w6MwwBSL6bdbrdPvlSjTg1dzC1TwjqyV7Nrmsm6NNpb6svOzWu4mohe7WNBAlawobuD/M/ci//1JvYiVOtnAuOlIm0wQtGtvBmD9HKnjGSElvGq+9bn5EtXq7lLN/ihukSrq2KaqlUL0G8MocHFBbr2&X-Amz-Signature=9c80e0ca9392ddfd16e18f401b082235267e03f269cc01980c615f3954c398c0&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject" alt="来源 ：[10]"></p><p>然而竞争对手和监管机构的行动过于迅猛，麦克莱恩未能抓住为数不多的潜在准入壁垒：掌控港口、与货主或其它运输方式签订独家协议、采用专有技术实现标准化等。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-9">[9]</a>  当集装箱运输在 1965 年前后初显成效时，其显而易见的优势促使各大航运公司纷纷进军该领域，竞争由此白热化。尽管到 1968 年集装箱运输量仅占贸易总量不足 1%，集装箱船数量却已呈快速增长态势。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-10">[10]</a>  运力持续多年超过需求。</p><p>竞争加剧引发了运价战，导致利润被压缩，进而催生了行业整合与卡特尔组织。与此同时，建造日益庞大的集装箱船及配套港口设施的成本，使该行业变得高度资本密集型。麦克莱恩洞悉了行业走向，于 1969 年 1 月将海陆公司出售给雷诺烟草公司。他或许是唯一全身而退的企业家。</p><p>端到端愿景的实现历经漫长岁月。但约在 1980 年，海运成本开始急剧下降  <a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-11">[11]</a>。这推动了国际贸易的蓬勃发展 <a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-12">[12]</a>，使制造商得以从高工资国家转移至低工资国家，从而使集装箱运输成为不可逆转的趋势。</p><p><img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/5c4b2c35-4efb-48d8-8d82-61a5d6de3f8a/c70e9bfc-9275-4aea-8082-05ac2516b72e/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB4667KTEYWAL/20260207/us-west-2/s3/aws4_request&X-Amz-Date=20260207T124223Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEJT//////////wEaCXVzLXdlc3QtMiJHMEUCIQCWVBgp7xBVF+sLDXnkfG2kBSgSf1tfvHGnyw1Np75hPAIgbSigBcaTz2uoNyNPqmmU+XfcMhOrGpBw/WPhLzvKHxgq/wMIXRAAGgw2Mzc0MjMxODM4MDUiDMpJ3c0j/wsUfB4XTSrcA2q3u3DtQM3G0PWXpxt22r3DBV6NXt7HC564q+/3Mapf155NcO1Zp5032edSqJxcAqmddUiibCim+ZUim+mk47MWXFAJz14dw1xVYU1BiLd2Fzi2/JOKvjput+Dcwe3evItk+M3xd7jcnpeQJb6XyWfSh6vXYZOuK//IMkmoCLyPPxnMcj3orYSQTlJsGv/FwqttLffA610zt/VBc5RtAmdIFWdfk6HCC/44bQkI7G7BbvfCrEvpzX0gBwzChB0Y3eCwsObN/YCwZgSHGpGVwUuTmk+wNptEnRDXngsX2Jzg2VwWInwbUUoeypuNDuFTuuLe7rjwY591YuiiI953W9eHk6WJdXYGjdP9iZHq44K2KKDOa9U+GQXJ9pN18copLxRSi6qu6+upz48SdfDeqDqH4OO5+0ArpimDfF8j5DdLjBtdhAhUkNLg7QBzvTvjWERsbV2YmID3wEen8j1LKIvgs4y7mTeqkJQXqgmvIzFmFhvfiLsxFiaD+hFaFBWE34fHa556hW2TDAlJBwCHMU85jyjsS3mTr0iTFq3LV5L8UY7dgQI/vI5Ibfz6RXh3YAaUaPMLuUNRuP8JZ5XG+waMskjd7xRBui3V71V8r3CuWTdDAMFTwIMpBFxMMPjRnMwGOqUB/oAyF5hDJws4MYVA9hCjkqw+/yanvA0t9AkaBVIT0w4OsvJvh0IbL5hCuBCHoXUbvewL3w6MwwBSL6bdbrdPvlSjTg1dzC1TwjqyV7Nrmsm6NNpb6svOzWu4mohe7WNBAlawobuD/M/ci//1JvYiVOtnAuOlIm0wQtGtvBmD9HKnjGSElvGq+9bn5EtXq7lLN/ihukSrq2KaqlUL0G8MocHFBbr2&X-Amz-Signature=8712276cea7a1f9e4be1e775f97f5be4f01e988bbd63d7598c854694ff53036b&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject" alt="来源 ：[11]"></p><p>当然，有些人确实赚到了钱——总有人能获利。麦克莱恩就是其中之一，航运大亨丹尼尔·路德维希同样如此。1965 年，他以每股 8.5 美元的价格向海陆公司前身麦克莱恩工业公司投资 850 万美元，1969 年以每股 50 美元的价格抛售股份。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-13">[13]</a>  造船商同样获利：1967 至 1972 年间，建造集装箱船的总投资约达 100 亿美元（按 2025 年币值折合 800 亿美元）。承建新型集装箱港口的承包商也赚得盆满钵满。后来，像马士基和长荣这样通过整合垄断市场的航运公司，更发展成了巨无霸企业。然而，”对于雷诺烟草公司及其他在 1960 年代末期通过投资集装箱运输追求快速增长的企业而言，这些投资带来的只有失望。”<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-14">[14]</a>  除麦克莱恩和路德维希外，几乎无人能从集装箱运输本身致富，因为激烈的竞争和高昂的资本支出使得快速增长或实现高利润率变得极其困难。</p><p><img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/5c4b2c35-4efb-48d8-8d82-61a5d6de3f8a/1f3b2f1f-1c0b-443a-93cc-1a413cf0da3e/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB4667KTEYWAL/20260207/us-west-2/s3/aws4_request&X-Amz-Date=20260207T124223Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEJT//////////wEaCXVzLXdlc3QtMiJHMEUCIQCWVBgp7xBVF+sLDXnkfG2kBSgSf1tfvHGnyw1Np75hPAIgbSigBcaTz2uoNyNPqmmU+XfcMhOrGpBw/WPhLzvKHxgq/wMIXRAAGgw2Mzc0MjMxODM4MDUiDMpJ3c0j/wsUfB4XTSrcA2q3u3DtQM3G0PWXpxt22r3DBV6NXt7HC564q+/3Mapf155NcO1Zp5032edSqJxcAqmddUiibCim+ZUim+mk47MWXFAJz14dw1xVYU1BiLd2Fzi2/JOKvjput+Dcwe3evItk+M3xd7jcnpeQJb6XyWfSh6vXYZOuK//IMkmoCLyPPxnMcj3orYSQTlJsGv/FwqttLffA610zt/VBc5RtAmdIFWdfk6HCC/44bQkI7G7BbvfCrEvpzX0gBwzChB0Y3eCwsObN/YCwZgSHGpGVwUuTmk+wNptEnRDXngsX2Jzg2VwWInwbUUoeypuNDuFTuuLe7rjwY591YuiiI953W9eHk6WJdXYGjdP9iZHq44K2KKDOa9U+GQXJ9pN18copLxRSi6qu6+upz48SdfDeqDqH4OO5+0ArpimDfF8j5DdLjBtdhAhUkNLg7QBzvTvjWERsbV2YmID3wEen8j1LKIvgs4y7mTeqkJQXqgmvIzFmFhvfiLsxFiaD+hFaFBWE34fHa556hW2TDAlJBwCHMU85jyjsS3mTr0iTFq3LV5L8UY7dgQI/vI5Ibfz6RXh3YAaUaPMLuUNRuP8JZ5XG+waMskjd7xRBui3V71V8r3CuWTdDAMFTwIMpBFxMMPjRnMwGOqUB/oAyF5hDJws4MYVA9hCjkqw+/yanvA0t9AkaBVIT0w4OsvJvh0IbL5hCuBCHoXUbvewL3w6MwwBSL6bdbrdPvlSjTg1dzC1TwjqyV7Nrmsm6NNpb6svOzWu4mohe7WNBAlawobuD/M/ci//1JvYiVOtnAuOlIm0wQtGtvBmD9HKnjGSElvGq+9bn5EtXq7lLN/ihukSrq2KaqlUL0G8MocHFBbr2&X-Amz-Signature=7a462154184e2914f5abe56abd3e48d69de4233ac650bb51cb85dbc174e4f4fb&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject" alt="来源 ：[12]"></p><p>该行业最终主要由原有企业主导，利润流向了运输货物的企业，而非承运企业。宜家等企业受益于低廉的运输成本，从 1972 年一家斯堪的纳维亚地区性公司发展为 2008 年全球最大家具零售商；集装箱运输与宜家的平板包装家具堪称绝配。沃尔玛等企业则利用集装箱运输带来的可预测性，有效降低库存及其相关成本。</p><p>事后看来，投资集装箱化本是明智之举：并非投资集装箱运输业本身，而是投资那些因集装箱化而受益的行业。但即便如此，沃尔玛、好市多和塔吉特等企业的成功，也伴随着其他企业的衰落。集装箱运输的冲击使西尔斯和伍尔沃思陷入下滑漩涡，为蒙哥马利沃德和 A&amp;P 百货敲响了丧钟，更将梅西百货逼入破产边缘——最终由联合百货集团接管并缩减规模。与此同时，在”世界家具之都”北卡罗来纳州，家具制造商试图通过进口中国廉价产品与宜家竞争，结果反而被自己的供应商取代了。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-15">[15]</a></p><p>若能有更多时间构筑护城河，或许会涌现几家主导性的容器化公司，其幕后人物将跻身《福布斯》400 强之列，而他们的投资者则会成为传奇。但护城河的构筑需要时间，且与个人电脑不同，容器化的普及并非出人意料——所有利益相关的企业都立即制定了战略计划。</p><p>经济学家约瑟夫·熊彼特指出：“每当有新事物出现时，完全竞争便会暂时中断，这种情况始终如此。”<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-16">[16]</a>  但集装箱运输的兴起证明，在技术浪潮的<em>尾声阶段，</em>  这种说法并不成立。由于完全竞争状态下不存在经济利润，创新者在技术成熟期便无利可图。与集装箱运输类似，人工智能的引入并未为创新者带来利润保护期，反而引发了即刻的竞争混战。</p><p><strong>让我们承认生成式人工智能具有革命性</strong> （但同样必须承认，这项技术显然已进入进化阶段）。它将为经济创造巨大价值，投资者希望从中分得一杯羹。具体何时、何人、如何获益，取决于人工智能是信息通信技术浪潮的终点，还是新一轮浪潮的起点。</p><p>如果人工智能掀起了一场新浪潮，那么将会经历一段漫长的不确定性和实验阶段。将有一批早期采用者尝试开发自己的模型。当成千上万甚至数百万的探索者用这项技术以全新方式解决问题时，其应用场景便会迅速扩展。但由于他们使用的是大型人工智能公司拥有的模型，其充分实验的能力受到既得利益者的限制——这些公司根本不愿允许对现状的长期挑战。</p><p>这并不意味着人工智能<em>无法</em>开启下一场技术革命。当实验变得廉价、分散且无需许可时——就像沃兹尼亚克在车库里拼凑电脑，福特在厨房里打造第一台内燃机，或是特里维西克在詹姆斯·瓦特的专利刚过期时就建造高压蒸汽机那样——它或许就能实现。当任何怀揣创新梦想者都能在笔记本电脑上构建并训练大型语言模型，并随心所欲地将其投入应用时，这或许就是下一轮重大变革的种子——一场革命性的变革，而非渐进式的演变。但在这种情况出现之前，任何颠覆性突破都无从谈起。</p><p>人工智能实则是信息通信技术浪潮的集大成者。20 世纪 60 年代的计算先驱们立志打造会思考的机器，其后继者通过算法、芯片、数据及数据中心基础设施的持续突破，最终实现了这一愿景。如同集装箱运输技术，人工智能是既有技术的延伸，因此其能力与前景已不足为奇。1970 年代，人们花了很长时间才理解强大而无处不在的计算能力为何值得追求。但到了 2025 年，比以往机器更具思考能力的设备已能被人们轻松理解。</p><p>思考一下人工智能的进展与集装箱化的商业演变有多么相似：</p><table><thead><tr><th>集装箱化历史</th><th>人工智能的相似之处</th></tr></thead><tbody><tr><td><strong>1. 技术的益处显而易见，导致许多公司进入。</strong></td><td><strong>人工智能是下一个大趋势的观点广为流传，企业家和科技公司迅速进入。</strong></td></tr><tr><td><strong>2. 政府和社会立即予以关注，导致了阻力。</strong></td><td><strong>关于人工智能的辩论立即在社会、媒体和政府中浮现，限制了实验。</strong></td></tr><tr><td><strong>3. 造船商和其他基础设施公司获得了短暂的提振，但并非长久。</strong></td><td><strong>芯片制造商、数据中心建设者和数据提供商获得了短暂的提振，但并非长久。</strong></td></tr><tr><td><strong>4. 竞争激烈使得难以维持高价或降低成本，并迫使在资本支出、研发和人才上进行高额投入。该行业并非特别有利可图。</strong></td><td><strong>即使公司在资本支出、研发和人才上投入巨资，价格也开始下降。公司将不会特别有利可图。</strong></td></tr><tr><td><strong>5. 行业寻求通过卡特尔和监管机构来限制竞争。</strong></td><td><strong>投资者感到警觉并推动合理化，导致整合和向少数几种商业模式趋同。</strong></td></tr><tr><td><strong>6. 创新创造的价值是零和的：谁捕获它（提供商 vs. 客户）决定了最终行业的结构。</strong></td><td><strong>公司垂直整合到其客户的业务中。建立在另一家公司模型上的公司的利润或商业模式被吞并。模型公司成为通用人工智能提供商。</strong></td></tr><tr><td><strong>7. 生产力提高的长期受益者是那些大幅降低价格或为其产品开辟新市场的现有公司。大多数 incumbents 不会这样做。</strong></td><td><strong>“思考”生产力提高的受益者是现有的知识产业服务提供商。那些不适应的将会消亡。</strong></td></tr></tbody></table><p><img src="https://r2.deusyu.app/c28c2d79-79d1-47de-9819-d298983ea19e.png"></p><p>在”AI 韵律”专栏中，前四项内容已启动。您的投资策略取决于是否认为第 5 至 7 项将是后续行动。</p><p><strong>经济学家预测，</strong>  未来十年人工智能将使全球 GDP 增长 1%<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-17">[17]</a>  至 7%以上  <a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-18">[18]</a>，创造 1 万亿至 7 万亿美元的新价值。关键问题在于，这些资金在价值链中流动时，最终将流向何处。</p><p>大多数人工智能市场概述都包含评分或多个类别，并将每个类别细分为服务对象和所涉行业。但这些分类在未来几年将发生巨大变化。你也可以直接追踪资金流向，从而简化企业分类体系：</p><p><img src="https://r2.deusyu.app/8174da36-5ab8-4f7b-aae9-3fef66011032.png"></p><p>集装箱化的历史告诉我们：若你尚未投资于模型公司，便不必费心了。萨姆·阿尔特曼等少数先行者或许能像麦克莱恩和路德维希那样赚得盆满钵满。但构建和运营模型的巨额成本，加之激烈的竞争，最终只会留下少数几家公司，且每家都由科技巨头注资控股。若你已是投资者，恭喜：行业整合在即，你或许能成功退出。</p><p>特定领域模型——如 Cursor 或 Harvey——将成为整合的一部分。这些可能是最具价值的模型。但微调成本相对较低，且存在显著的范围经济效应。另一方面，正如谷歌 2010 年收购 Invite Media 以探索广告代理商销售模式，那些赢得客户信任的特定领域模型公司将成为首要收购目标。虽然像 Midjourney 或 Runway 这类生成非语言内容的模型，可能凭借其独特的架构开辟独立技术路径，但大型语言模型公司已轻松进军该领域。至于 Osmo 这类公司能否如此，仍有待观察。</p><p>虽然投资模型公司为时已晚，但利用模型解决具体问题的公司仍在大量涌现：Perplexity、InflectionAI、Writer、Abridge 等上百家企业。但若其中任何一家变得极具价值，模型公司将通过差别定价或垂直整合来获取其收益。换言之，成功即意味着失败——这始终是个糟糕的投资逻辑。终有一天，模型公司与应用公司将趋于融合：届时仅存少数几家人工智能企业。赢家自会诞生，但整体而言，对应用层面的投资终将血本无归。</p><p>同样的警示依然适用：若应用公司能建立客户群或组建卓越团队，或许会被收购。但这类企业本质上并非真正的科技公司；它们是在投机性地开拓市场，估值也应如此考量。更需警惕的是，总有投资者会趁机牟利——他们利用收购方因 FOMO（害怕错失）恐慌而愿意大幅溢价收购的心理进行套利。但这并非真正的”投资”。</p><p>在人工智能巨头与客户之间搭建桥梁，或保护企业数据免受模型公司侵害的公司——例如 Hugging Face 或 Glean——或许存在投资机遇，因为这类业务本质上独立于模型本身。但集装箱运输时代后的航运市场中，类似中介企业从未发展壮大。即便在人工智能领域取得成功的媒介公司，最终也可能停留在中型规模——模型公司不会允许它们获得战略性优势，这正是缺乏意外性带来的另一种后果。</p><p><strong>当某个行业即将迎来爆发式增长</strong> ，但其发展轨迹尚不明朗时，逆流而上投身于该行业的供应商往往是明智之举。以人工智能领域为例，这意味着芯片供应商、数据公司以及云&#x2F;数据中心企业：SambaNova、Scale AI 和 Lambda，以及那些长期深耕该领域的老牌企业，如英伟达和彭博社。</p><p>数据的价值存在争议。通用数据——即大众熟知的内容，包括十年前及更早时期的所有知识，以及此后积累的大部分信息——已成商品。或许有少数企业能从事数据整理和标注的琐碎工作，但鉴于这些工作最适合由人工智能自动完成，其定价空间将十分有限。特定领域模型需要专业数据，而其他模型则致力于解答当下问题。具体、及时且难以复制的数据将具有价值。这当然不是新市场——彭博等机构早已从中获益良多。客户群的集中化将压低数据价格，而应用场景的扩展则能提升收益。总体而言，这对行业应属利好，但增幅有限。虽将涌现新企业，但真正值得投资的仅有寥寥数家。</p><p>人工智能企业的高额资本支出主要将流向基础设施公司。这些公司的估值已包含此预期，因此不会带来上行惊喜。但需注意的是，造船业曾因集装箱运输在 1965 年至 1973 年间受益，直至需求在 1973 年后崩溃。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-19">[19]</a>  若人工智能企业进行整合或采取协同行动，即便轻微的下行压力迫使其节流，也可能引发基础设施支出严重、突然且持久的衰退。这将使英伟达及其新兴竞争对手——这些企业必须长期绑定供应商并持续扩充产能——无法通过降本缩减规模来适应萎缩的市场。当增长曲线出现峰值后转为衰退时，那些按 S 型曲线估值的企业将面临严重溢价风险。</p><p><img src="https://prod-files-secure.s3.us-west-2.amazonaws.com/5c4b2c35-4efb-48d8-8d82-61a5d6de3f8a/f6d73509-4816-4442-b137-632eb4d35af8/image.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAZI2LB4667KTEYWAL/20260207/us-west-2/s3/aws4_request&X-Amz-Date=20260207T124223Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEJT//////////wEaCXVzLXdlc3QtMiJHMEUCIQCWVBgp7xBVF+sLDXnkfG2kBSgSf1tfvHGnyw1Np75hPAIgbSigBcaTz2uoNyNPqmmU+XfcMhOrGpBw/WPhLzvKHxgq/wMIXRAAGgw2Mzc0MjMxODM4MDUiDMpJ3c0j/wsUfB4XTSrcA2q3u3DtQM3G0PWXpxt22r3DBV6NXt7HC564q+/3Mapf155NcO1Zp5032edSqJxcAqmddUiibCim+ZUim+mk47MWXFAJz14dw1xVYU1BiLd2Fzi2/JOKvjput+Dcwe3evItk+M3xd7jcnpeQJb6XyWfSh6vXYZOuK//IMkmoCLyPPxnMcj3orYSQTlJsGv/FwqttLffA610zt/VBc5RtAmdIFWdfk6HCC/44bQkI7G7BbvfCrEvpzX0gBwzChB0Y3eCwsObN/YCwZgSHGpGVwUuTmk+wNptEnRDXngsX2Jzg2VwWInwbUUoeypuNDuFTuuLe7rjwY591YuiiI953W9eHk6WJdXYGjdP9iZHq44K2KKDOa9U+GQXJ9pN18copLxRSi6qu6+upz48SdfDeqDqH4OO5+0ArpimDfF8j5DdLjBtdhAhUkNLg7QBzvTvjWERsbV2YmID3wEen8j1LKIvgs4y7mTeqkJQXqgmvIzFmFhvfiLsxFiaD+hFaFBWE34fHa556hW2TDAlJBwCHMU85jyjsS3mTr0iTFq3LV5L8UY7dgQI/vI5Ibfz6RXh3YAaUaPMLuUNRuP8JZ5XG+waMskjd7xRBui3V71V8r3CuWTdDAMFTwIMpBFxMMPjRnMwGOqUB/oAyF5hDJws4MYVA9hCjkqw+/yanvA0t9AkaBVIT0w4OsvJvh0IbL5hCuBCHoXUbvewL3w6MwwBSL6bdbrdPvlSjTg1dzC1TwjqyV7Nrmsm6NNpb6svOzWu4mohe7WNBAlawobuD/M/ci//1JvYiVOtnAuOlIm0wQtGtvBmD9HKnjGSElvGq+9bn5EtXq7lLN/ihukSrq2KaqlUL0G8MocHFBbr2&X-Amz-Signature=b292a71d3bf618e8aa56e6a4cb58fcd93a7791f5accdcd5bf07e8c889908fe79&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject" alt="来源 ：[19]"></p><p>这意味着投资者不应逆流而上，而应顺势而为：那些产品依赖于从模糊信息中获取高质量成果的企业将获得更高生产率和利润。这些领域包括专业服务、医疗保健、教育、金融服务和创意服务，合计占全球 GDP 的三分之一至一半，且尚未从自动化中获得显著的生产率提升。人工智能虽能降低成本，但正如集装箱运输的兴起，企业如何将成本节约纳入战略布局——以及如何运用这些节省——才是决定成败的关键。直白地说，若将成本节约用于提升利润而非扩大营收，终将陷入败局。</p><p>那些战略已将降低成本作为前提的企业将获益最迅速。宜家长期以来的战略是以低价销售优质家具，通过销量弥补利润。集装箱运输使宜家得以走向全球，由此成为世界最大零售商，创始人英瓦尔·坎普拉德（IKEA 中”IK”的来源）也由此跻身亿万富豪之列。同样，沃尔玛凭借”低价策略+低效市场高销量”的战略，既受益于成本节约，又得益于即时供应链体系，从而实现了商品多样化与库存成本降低的双重目标。</p><p>当今那些已将相同价值观置于首位的知识型企业，是押注人工智能风险最小的选择。但新公司将效仿 1980 年代初的 Costco，以高销量、低成本的策略组建或重组。新企业将凭借全新视角与后见之明与现有企业竞争。无论如何，行业准入门槛较低，因此每家企业都将面临激烈竞争，并在碎片化市场中运营。经验丰富的管理团队与无懈可击的执行力将成为制胜关键。</p><p>在这些领域，创业将是一个绝佳的选择。而投资则会更具挑战性。企业对私募资本的需求不会太大——宜家从未需要过风险投资，好市多在 1983 年仅完成一轮融资便于 1985 年上市——因为实施成本节约型技术并不需要大量资本投入。如同集装箱运输技术的发展轨迹，技术触发与最佳投资时机之间将存在较长的滞后期。真正的机遇往往出现在后期阶段。</p><p>选股者同样能获利，但必须精挑细选。在经济体三分之一领域内，十年间 GDP 增速额外提升 7%的乐观预测，对这些企业每年仅带来约 2%的增长助力——若老旧信息通信技术产品带来的生产力增长放缓，实际助力将更微薄。价值转移的核心将从未把握人工智能战略意义的企业转向积极拥抱该技术的企业，正如沃尔玛从西尔斯身上获益——后者虽利用了低价商品优势，却未能实现自我革新。</p><p>然而，消费者将成为最大受益者。以往的机械化浪潮提升了制造业劳动生产率，推动价格下降，为消费者节省开支。但制造业劳动生产率的提高也导致制造业工资上涨。服务业企业为保持竞争力不得不提高工资，尽管这些企业并未从生产率提升中获益。这导致服务价格上涨。<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-20">[20]</a>  家庭在食品和服装上的支出占比从 1918 年的 55%降至 2023 年的 16%，<a href="https://joincolossus.com/article/ai-will-not-make-you-rich/#ref-21">[21]</a>  但医疗保健和教育等知识密集型服务成本的增长远超通货膨胀水平。</p><p>人工智能领域也将出现类似现象：知识密集型服务将变得更便宜，消费者能购买更多此类服务；而需要人际互动的服务则会变得更昂贵，在家庭支出中所占比例将更大。这表明两类服务都存在明显机遇。但更重大的消息是：人工智能创造的大部分新增价值将由消费者获取。他们将以合理价格获得种类更丰富的知识密集型商品，并能更广泛、更经济地享用医疗、教育和咨询等服务。</p><p><strong>没有什么比新浪潮的开端更令人振奋</strong> ——当构想、创造和建立改变世界的公司成为可能时，财富、名望与荣耀随之而来。但对投资者和创业者而言，最危险的莫过于一厢情愿的幻想。过去五十年投资科技领域的经验教训，如今已不再适用。投资人工智能的正确方式，是深思知识工作者效率提升带来的深远影响，预见这种效率将开启哪些新市场，并向这些市场投资。数十年来，赚钱之道在于押注新兴事物本身。如今，你必须押注它所开启的机遇。</p><blockquote><p><strong>杰里·纽曼是一位退休的风险投资人，致力于创新领域的写作与教学工作。</strong></p></blockquote><h2 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h2><ul><li>Perez, C., <em>Technological Revolutions and Financial Capital</em>, Edward Elgar, 2002.</li><li>Image: Apple</li><li>Chart: Jovanovic, B., &amp; Rousseau, P., “General purpose technologies. <em>Handbook of Economic Growth</em>”, 1(05), p. 1194. [Online] Available: <a href="https://doi.org/10.1016/S1574-0684(05)01018-X">https://doi.org/10.1016/S1574-0684(05)01018-X</a></li><li>Certain sectors, like medical technology and pharma, are funded regardless of the dominant tech because they are too fundamental to ever be a sideshow.</li><li>Source: Author search of <em>The New York Times</em> archives for “microcomputer”, “personal computer”, and “home computer”, no ads, no classified ads, no table of contents.</li><li>Chart: data from Dediu, H., “The Next 40”, <em>Asymco</em>, March 2016. [Online] Available: <a href="https://www.asymco.com/2016/03/28/the-next-40/">https://www.asymco.com/2016/03/28/the-next-40/</a></li><li>Sahlman, W.A. and H.H. Stevenson. “Capital market myopia.” <em>Journal of Business Venturing</em>, 1985, 7-30.</li><li>This section draws very heavily from Marc Levinson’s <em>The Box</em> (Princeton University Press, 2006), both essential and a great read.</li><li>The United States Maritime Administration began a process to standardize containers as early as 1958, just two years after the initial voyage of the Ideal-X.</li><li>McKinsey, “Brave New World: Container transport in 2043” [Online] Available: <a href="https://www.mckinsey.com/~/media/mckinsey/industries/travel-logistics-and-infrastructure/our-insights/brave-new-world-container-transport-in-2043/brave-new-world-container-transport-in-2043.pdf">https://www.mckinsey.com/~&#x2F;media&#x2F;mckinsey&#x2F;industries&#x2F;travel-logistics-and-infrastructure&#x2F;our-insights&#x2F;brave-new-world-container-transport-in-2043&#x2F;brave-new-world-container-transport-in-2043.pdf</a>, 2018; chart: Levinson, p. 221.</li><li>Chart data: <em>OECD Economic Outlook</em>, Volume 2007&#x2F;1 No. 81, June. [Online] Available: <a href="http://dx.doi.org/10.1787/032883306727">http://dx.doi.org/10.1787/032883306727</a></li><li>Chart data: Michel Fouquin &amp; Jules Hugot, 2016. “Two Centuries of Bilateral Trade and Gravity Data: 1827-2014,” <em>CEPII Working Paper 2016-14</em>, May 2016, CEPII. <a href="https://www.cepii.fr/pdf_pub/wp/2016/wp2016-14.pdf">https://www.cepii.fr/pdf_pub&#x2F;wp&#x2F;2016&#x2F;wp2016-14.pdf</a>. Processed by Our World in Data</li><li>McLean couldn’t resist re-entering the shipping business, buying another shipping line, USL, in 1978. He had driven USL into bankruptcy by 1986 and declared personal bankruptcy soon after.</li><li>Levinson, p. 230.</li><li>Mullin, John, <em>The Rise and Sudden Decline of North Carolina Furniture Making</em>, Federal Reserve Bank of Richmond, <em>Econ Focus</em>, Fourth Quarter 2020. [Online] Available: <a href="https://www.richmondfed.org/publications/research/econ_focus/2020/q4/economic_history">https://www.richmondfed.org/publications/research/econ_focus&#x2F;2020&#x2F;q4&#x2F;economic_history</a></li><li>Schumpeter, J.A., <em>Capitalism, Socialism and Democracy</em>. Harper and Row: New York, 1950, p. 150.</li><li>Acemoglu, Daron, “The Simple Macroeconomics of AI”, 2024. [Online] Available: <a href="https://economics.mit.edu/sites/default/files/2024-04/The%20Simple%20Macroeconomics%20of%20AI.pdf">https://economics.mit.edu/sites/default/files/2024-04/The Simple Macroeconomics of AI.pdf</a></li><li>Goldman Sachs, “Generative AI could raise global GDP by 7%”, April 5, 2023. [Online] Available: <a href="https://www.goldmansachs.com/insights/articles/generative-ai-could-raise-global-gdp-by-7-percent">https://www.goldmansachs.com/insights/articles/generative-ai-could-raise-global-gdp-by-7-percent</a></li><li>Chart: Colton, T., Huntzinger, L., “A Brief History of Shipbuilding in Recent Times”, CNA, 2002, p. 3. [Online] Available: <a href="https://www.cna.org/archive/CNA_Files/pdf/d0006988.a1.pdf">https://www.cna.org/archive/CNA_Files&#x2F;pdf&#x2F;d0006988.a1.pdf</a></li><li>This is called Baumol’s cost disease.</li><li>Bureau of Labor Statistics, [Online] Available: <a href="https://www.bls.gov/news.release/cesan.nr0.htm">https://www.bls.gov/news.release/cesan.nr0.htm</a>; and [Online] Available: <a href="https://www.bls.gov/opub/100-years-of-u-s-consumer-spending.pdf">https://www.bls.gov/opub/100-years-of-u-s-consumer-spending.pdf</a></li></ul>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%A7%91%E6%8A%80/">科技</category>
      
      <category domain="https://deusyu.app/categories/%E7%A7%91%E6%8A%80/%E5%95%86%E4%B8%9A/">商业</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%94%9F%E6%88%90%E5%BC%8FAI/">生成式AI</category>
      
      <category domain="https://deusyu.app/tags/%E4%BB%B7%E5%80%BC%E6%8D%95%E8%8E%B7/">价值捕获</category>
      
      <category domain="https://deusyu.app/tags/%E6%8A%80%E6%9C%AF%E6%B5%AA%E6%BD%AE%E4%B8%8E%E5%91%A8%E6%9C%9F/">技术浪潮与周期</category>
      
      <category domain="https://deusyu.app/tags/%E5%8D%8F%E5%90%8C%E6%9C%9F%E4%B8%8E%E7%8B%82%E7%83%AD%E6%9C%9F/">协同期与狂热期</category>
      
      <category domain="https://deusyu.app/tags/%E5%8D%A1%E6%B4%9B%E5%A1%94%C2%B7%E4%BD%A9%E9%9B%B7%E6%96%AF/">卡洛塔·佩雷斯</category>
      
      <category domain="https://deusyu.app/tags/%E7%86%8A%E5%BD%BC%E7%89%B9%E5%88%9B%E6%96%B0/">熊彼特创新</category>
      
      <category domain="https://deusyu.app/tags/%E9%9B%86%E8%A3%85%E7%AE%B1%E5%8C%96%E5%AF%B9%E6%AF%94/">集装箱化对比</category>
      
      <category domain="https://deusyu.app/tags/%E7%9F%A5%E8%AF%86%E5%9E%8B%E6%9C%8D%E5%8A%A1%E7%94%9F%E4%BA%A7%E7%8E%87/">知识型服务生产率</category>
      
      <category domain="https://deusyu.app/tags/%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD%E4%B8%8E%E8%B5%84%E6%9C%AC%E5%BC%80%E6%94%AF/">基础设施与资本开支</category>
      
      <category domain="https://deusyu.app/tags/%E9%B2%8D%E8%8E%AB%E5%B0%94%E6%88%90%E6%9C%AC%E7%97%85/">鲍莫尔成本病</category>
      
      <category domain="https://deusyu.app/tags/%E6%8A%95%E8%B5%84%E9%80%80%E5%87%BA%E4%B8%8E%E6%95%B4%E5%90%88/">投资退出与整合</category>
      
      <category domain="https://deusyu.app/tags/%E5%BA%94%E7%94%A8%E5%B1%82%E6%8A%A4%E5%9F%8E%E6%B2%B3/">应用层护城河</category>
      
      
      <comments>https://deusyu.app/posts/ai-will-not-make-you-rich/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>软件演进的下一个奇点：当LLM成为新时代的操作系统</title>
      <link>https://deusyu.app/posts/llm-os-future/</link>
      <guid>https://deusyu.app/posts/llm-os-future/</guid>
      <pubDate>Thu, 25 Sep 2025 09:40:00 GMT</pubDate>
      
      <description>软件的定义正在被大型语言模型重写，它们不仅是工具，更正逐渐成为新时代的“操作系统”。本文梳理了软件从1.0到3.0的范式演进，揭示LLM 如何兼具电力、晶圆厂与操作系统的特性。读者将理解人机协作的新原则，并重新思考未来十年的软件与智能生态。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原视频：<a href="https://youtu.be/LCEmiRjPEtQ?si=ndcE3J57bMmi431a">https://youtu.be/LCEmiRjPEtQ?si=ndcE3J57bMmi431a</a></p></blockquote><p>在数字世界的潮汐中，软件的形态总在不断变迁。从手工编写指令的时代，到数据驱动的神经网络，我们正站在一个全新的起点——大型语言模型（LLM）不仅重塑了软件的定义，更在以一种前所未有的方式，改变着我们与数字世界的交互。这不仅仅是一次技术升级，更是一场思维范式的深刻革命。</p><h2 id="代码的蜕变：从-1-0-到-3-0-的编程范式跃迁"><a href="#代码的蜕变：从-1-0-到-3-0-的编程范式跃迁" class="headerlink" title="代码的蜕变：从 1.0 到 3.0 的编程范式跃迁"></a>代码的蜕变：从 1.0 到 3.0 的编程范式跃迁</h2><p>回溯软件的历程，最初的“软件 1.0”是我们熟悉的传统代码，由人类程序员用 C++、Python 等语言编写，精确地指示计算机执行每一步操作 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=102">01:42</a>]。这是一种确定性的编程，逻辑清晰，但面对复杂、非结构化的任务时，其开发成本和维护难度呈指数级增长。</p><p>随后，我们步入了“软件 2.0”时代，其核心是神经网络的权重 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=108">01:48</a>]。在这个阶段，程序员不再直接编写逻辑，而是通过精心准备数据集，训练优化器来调整神经网络的参数。图像识别、语音识别等任务因此得以突破，软件开始展现出从数据中学习和泛化的能力。Hugging Face 的出现，更是成为了“软件 2.0”领域的 GitHub，承载着无数训练好的模型 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=132">02:12</a>]。</p><p>而今，我们正亲历“软件 3.0”的诞生，其主角正是大型语言模型（LLM）[<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=199">03:19</a>]。最令人惊叹之处在于，我们不再需要学习复杂的编程语言，而是可以用自然语言（如英语）来“编程”这些模型 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=208">03:28</a>]。一个简单的 Prompt，就能让 LLM 执行情感分类、代码生成甚至复杂的创意任务 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=216">03:36</a>]。这种编程范式的转变，使得“人人都是程序员”的愿景不再遥远，极大地降低了软件开发的门槛。</p><h2 id="LLM-的“双面”生态：电力、工厂与操作系统"><a href="#LLM-的“双面”生态：电力、工厂与操作系统" class="headerlink" title="LLM 的“双面”生态：电力、工厂与操作系统"></a>LLM 的“双面”生态：电力、工厂与操作系统</h2><p>大型语言模型正在构建一个独特的生态系统，其特性兼具“电力”、“晶圆厂（Fab）”和“操作系统”的三重属性。</p><p>首先，LLM 展现出如同“电力”般的公共事业特性 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=389">06:29</a>]。OpenAI、Gemini、Anthropic 等 LLM 实验室投入巨额资本（capex）进行模型训练，如同建设电网；并通过 API 将智能以按量付费（opex）的方式提供给用户，追求低延迟、高可用和一致的质量。当这些 LLM 出现故障时，全球的“智能”似乎也随之“停电”，揭示了我们对其日益增长的依赖 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=458">07:38</a>]。</p><p>其次，LLM 也带有“晶圆厂”的影子 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=484">08:04</a>]。训练 LLM 所需的前期资本投入巨大，涉及的深层技术（deep tech tree）、研发秘密正逐渐集中于少数 LLM 实验室内部 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=497">08:17</a>]。这类似于半导体制造领域中晶圆厂的高度垄断和技术壁垒。然而，与硬件不同，软件的易变性（malleability）使得其“护城河”又显得不那么坚不可摧。</p><p>但最核心的，LLM 正在演变为新时代的“操作系统” [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=547">09:07</a>]。它们不再是简单的商品化服务，而是日益复杂的软件生态系统。如同 Windows、macOS 与 Linux 的竞争格局，LLM 领域也出现了少数闭源提供商与以 Llama 为代表的开源替代方案 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=572">09:32</a>]。LLM 本身如同 CPU，其上下文窗口（context window）是内存，而它正在调度内存与计算资源来解决问题 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=609">10:09</a>]。我们目前正处于 LLM 时代的“1960 年代”，计算资源昂贵且集中于云端，用户通过网络作为“瘦客户端”接入，如同早期的分时系统 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=662">11:02</a>]。个人计算的 LLM 革命尚未真正到来，但诸如 Mac Mini 等设备的本地推理能力，或许预示着未来“个人 LLM”的可能性 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=705">11:45</a>]。与 LLM 直接通过文本交互，就像是在使用操作系统的命令行终端，而一个通用的图形用户界面（GUI）尚未被普遍发明 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=731">12:11</a>]。</p><p>一个独特的现象是，LLM 似乎“颠覆”了技术扩散的方向 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=777">12:57</a>]。传统上，变革性技术（如电力、互联网）往往首先由政府和大型企业采用，随后才扩散到消费者。然而，LLM 却以惊人的速度，一夜之间普及到数十亿普通用户手中 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=856">14:16</a>]。这使得我们普通人能够用它来解决日常问题，而非首先服务于军事或国家级的复杂任务，这本身就蕴含着巨大的应用潜力。</p><h2 id="理解-LLM-的心智：一个拥有超能力和认知缺陷的“精神体”"><a href="#理解-LLM-的心智：一个拥有超能力和认知缺陷的“精神体”" class="headerlink" title="理解 LLM 的心智：一个拥有超能力和认知缺陷的“精神体”"></a>理解 LLM 的心智：一个拥有超能力和认知缺陷的“精神体”</h2><p>要高效地与 LLM 协作，我们必须理解它们的“心理”特性 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=883">14:43</a>]。可以将 LLM 视为一种人类“精神体（people spirits）”，它们是人类的随机模拟器，由自回归（auto-regressive）的 Transformer 模型驱动 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=889">14:49</a>]。由于在海量文本数据上训练，它们展现出类人（human-like）的心理特征。</p><p>LLM 拥有超乎寻常的百科全书式知识和记忆，远超任何个体人类 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=930">15:30</a>]，就像电影《雨人》中的主角，能记住电话簿里的所有信息 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=941">15:41</a>]。然而，它们也伴随着显著的认知缺陷 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=967">16:07</a>]：</p><ul><li><strong>幻觉（Hallucinations）</strong>：LLM 会凭空捏造事实，缺乏可靠的自我认知模型 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=967">16:07</a>]。</li><li><strong>不均衡智能（Jagged Intelligence）</strong>：它们在某些问题解决领域表现超人，却在另一些简单问题上犯下低级错误，例如坚持 9.11 大于 9.9，或“strawberry”中有两个“r” [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=980">16:20</a>]。</li><li><strong>顺行性遗忘症（Anterograde Amnesia）</strong>：LLM 无法像人类同事一样，通过经验积累和知识巩固来形成长期记忆和专业知识 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1003">16:43</a>]。它们的“上下文窗口”更像是工作记忆，每次对话结束后就会被清除 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1025">17:05</a>]，类似于电影《记忆碎片》或《初恋 50 次》中主角的状况 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1039">17:19</a>]。</li><li><strong>安全漏洞（Security Limitations）</strong>：LLM 易受提示注入（prompt injection）攻击，可能泄露用户数据，因为它们“轻信”且缺乏内在的安全机制 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1064">17:44</a>]。</li></ul><p>因此，与 LLM 协作的关键在于，如何巧妙地规避其认知缺陷，同时充分利用其超人般的能力 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1083">18:03</a>]。</p><h2 id="“半自主应用”：人机协作的黄金法则"><a href="#“半自主应用”：人机协作的黄金法则" class="headerlink" title="“半自主应用”：人机协作的黄金法则"></a>“半自主应用”：人机协作的黄金法则</h2><p>在 LLM 时代，我们面临的最大机遇在于开发“半自主应用（Partial Autonomy Apps）”[<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1105">18:25</a>]。这类应用并非旨在完全取代人类，而是通过 LLM 的集成，让机器辅助人类完成更复杂、更大规模的任务。Cursor 和 Perplexity 就是这类应用的优秀范例 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1127">18:47</a>]。</p><p>这类 LLM 应用通常具备以下核心特性：</p><ul><li><strong>上下文管理（Context Management）</strong>：LLM 负责处理大量的上下文信息 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1164">19:24</a>]。</li><li><strong>多模型编排（Orchestration of Multiple LLMs）</strong>：在底层，可能调用多个嵌入模型、聊天模型来完成任务 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1172">19:32</a>]。</li><li><strong>应用专属 GUI（Application-Specific GUI）</strong>：这是至关重要的一点。用户不应直接通过纯文本与 LLM 操作系统交互，而应通过专门设计的图形界面来审计 LLM 的工作 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1184">19:44</a>]。例如，代码对比工具通过红绿高亮显示差异，比纯文本更容易理解和接受 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1202">20:02</a>]。GUI 利用了人类的视觉系统，让验证过程更快、更直观 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1349">22:29</a>]。</li><li><strong>自主性滑块（Autonomy Slider）</strong>：用户可以根据任务的复杂度和自身需求，灵活调节 LLM 的自主程度 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1226">20:26</a>]。从简单的代码补全，到修改整个文件，再到完全自主的仓库级操作，用户始终掌握控制权 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1237">20:37</a>]。</li></ul><p>人机协作的本质在于“生成-验证循环（generation-verification loop）”的速度。为了加速这个循环，我们必须做到两点：</p><ol><li><strong>加速验证</strong>：利用 GUI 和可视化表达，让 AI 的输出一目了然 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1349">22:29</a>]。</li><li><strong>“牵住 AI 的缰绳”</strong>：避免 AI 过度自主地生成大段代码或内容 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1373">22:53</a>]。一个 10000 行的代码更改，即便瞬间生成，人类也难以快速验证其正确性和安全性 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1384">23:04</a>]。因此，我们应鼓励 AI 以小步、增量的方式工作，确保人类能快速审计和迭代 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1438">23:58</a>]。</li></ol><p>这种思想也延伸到教育领域。仅仅让 LLM“教我物理”是不足够的，因为 AI 容易“迷失方向”[<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1505">25:05</a>]。更好的方式是构建分层的应用：一个应用供教师创建课程，另一个应用则将这些经过人类审计的课程内容提供给学生 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1515">25:15</a>]。这确保了 AI 在特定教学大纲和项目进度下被“牵住缰绳”[<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1535">25:35</a>]。</p><p>自动驾驶的十年经验也印证了“半自主”的长期性 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1578">26:18</a>]。尽管早期展示的完美演示令人兴奋，但实现完全自主仍需漫长的时间，且人类监督在其中扮演着关键角色 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1623">27:03</a>]。因此，我们现在需要构建的，不是完全自主的“钢铁侠机器人”，而是“钢铁侠战衣”——它能增强人类的能力，同时保留人类的决策权 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1674">27:54</a>]。</p><h2 id="为“代理（Agent）”构建：软件基础设施的未来"><a href="#为“代理（Agent）”构建：软件基础设施的未来" class="headerlink" title="为“代理（Agent）”构建：软件基础设施的未来"></a>为“代理（Agent）”构建：软件基础设施的未来</h2><p>随着 LLM 成为新的“数字信息消费者和操纵者”，我们的软件基础设施也必须随之演变 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2028">33:48</a>]。</p><ul><li><strong><code>lm.txt</code>**</strong>：新的机器人协议**：正如<code>robots.txt</code>指导网络爬虫，未来我们可能需要<code>lm.txt</code>文件，以简洁的 Markdown 格式向 LLM 说明网站内容，这比解析复杂的 HTML 更高效、更不易出错 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2052">34:12</a>]。</li><li><strong>面向 LLM 的文档（LLM-Native Docs）</strong>：目前大量文档是为人类设计的，充斥着“点击此处”等指令，LLM 难以直接理解和执行 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2083">34:43</a>]。Vercel 和 Stripe 等先行者已开始将文档转换为 Markdown 格式，并用<code>curl</code>命令替换“点击”指令，使得 LLM 代理可以直接调用 API 完成操作 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2155">35:55</a>]。</li><li><strong>LLM 友好的数据摄取工具</strong>：许多工具正在涌现，帮助我们将非结构化或人类界面的信息转化为 LLM 友好的格式 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2193">36:33</a>]。例如，将 GitHub 仓库 URL 替换为“get-ingest”，可以自动将所有代码文件整合成一个可供 LLM 阅读的巨大文本 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2204">36:44</a>]。Deep Wiki 甚至能让 Devon 这样的 AI 代理自动分析 GitHub 仓库，并生成结构化的文档页面 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2225">37:05</a>]。</li></ul><p>尽管 LLM 最终可能学会像人类一样点击页面，但我们仍然需要主动“与 LLM 相向而行”，构建更易于其理解和交互的基础设施 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2252">37:32</a>]。这将大大降低 LLM 的调用成本和出错率，释放其潜力。</p><h2 id="编程的新浪潮：当人人都是“Vibe-Coder”"><a href="#编程的新浪潮：当人人都是“Vibe-Coder”" class="headerlink" title="编程的新浪潮：当人人都是“Vibe Coder”"></a>编程的新浪潮：当人人都是“Vibe Coder”</h2><p>LLM 带来的最激动人心的变革之一，是它使得自然语言成为了一种编程接口 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1751">29:11</a>]。这意味着“每个人都是程序员”，不再需要五年、十年的专业学习才能在软件领域有所作为 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1769">29:29</a>]。</p><p>“Vibe Coding”（氛围编程）这个词的流行，恰恰抓住了这种新体验的精髓 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1774">29:34</a>]。它描述了一种轻松、凭直觉利用 LLM 辅助编程的状态，即使不熟悉特定语言，也能快速构建应用 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1867">31:07</a>]。例如，在不掌握 Swift 语言的情况下，也能在一天内用 LLM 辅助开发出 iOS 应用并在手机上运行 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1875">31:15</a>]。又比如，Andrej Karpathy 自己开发的<code>menu.app</code>，能拍摄菜单并生成菜品图片 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1899">31:39</a>]。他发现，真正的挑战并非编写核心代码，而是部署、认证、支付等 DevOps 任务，这些任务往往涉及大量的浏览器点击和繁琐配置，而这正是未来 AI 代理可以接管的领域 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=1950">32:30</a>]。</p><h2 id="走向“钢铁侠战衣”的十年：机遇与挑战并存"><a href="#走向“钢铁侠战衣”的十年：机遇与挑战并存" class="headerlink" title="走向“钢铁侠战衣”的十年：机遇与挑战并存"></a>走向“钢铁侠战衣”的十年：机遇与挑战并存</h2><p>我们正站在软件发展史上的一个关键路口。LLM 作为新时代的操作系统，既像电力般普惠，又像晶圆厂般集中，但其“心智”特性决定了人机协作的模式将是“半自主”。</p><p>接下来的十年，我们将见证“自主性滑块”从左向右的逐步推进 [<a href="http://www.youtube.com/watch?v=LCEmiRjPEtQ&t=2348">39:08</a>]。我们不再是等待一个全能的 AI 机器人来解决所有问题，而是专注于构建能够增强人类能力的“钢铁侠战衣”，通过精巧的 GUI 和人机协作流程，加速“生成-验证”循环。同时，我们必须为这些拥有“精神体”属性的 AI 代理，重塑我们的软件基础设施，让其更加易于理解和交互。</p><p>这是一个充满挑战与无限机遇的时代，需要我们重新思考软件、编程乃至人与机器的定义。未来的十年，将由我们共同来书写。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%A7%86%E9%A2%91/">视频</category>
      
      
      <category domain="https://deusyu.app/tags/%E4%BA%BA%E6%9C%BA%E5%8D%8F%E4%BD%9C/">人机协作</category>
      
      <category domain="https://deusyu.app/tags/%E8%BD%AF%E4%BB%B6%E6%BC%94%E8%BF%9B/">软件演进</category>
      
      <category domain="https://deusyu.app/tags/%E5%A4%A7%E5%9E%8B%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B/">大型语言模型</category>
      
      <category domain="https://deusyu.app/tags/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E6%9C%AA%E6%9D%A5/">操作系统未来</category>
      
      <category domain="https://deusyu.app/tags/%E5%8D%8A%E8%87%AA%E4%B8%BB%E5%BA%94%E7%94%A8/">半自主应用</category>
      
      
      <comments>https://deusyu.app/posts/llm-os-future/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>读论文：煤矿中的金丝雀？关于人工智能近期就业影响的六个事实</title>
      <link>https://deusyu.app/posts/ai-entry-employment/</link>
      <guid>https://deusyu.app/posts/ai-entry-employment/</guid>
      <pubDate>Wed, 24 Sep 2025 18:21:00 GMT</pubDate>
      
      <description>生成式AI在就业端究竟改变了什么？本文用ADP高频薪资数据提出六个事实，区分自动化与增强并控制公司-时间冲击。读者将理解为何冲击首先落在入门级岗位、为何体现在就业多于工资，以及可行的应对路径。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://digitaleconomy.stanford.edu/wp-content/uploads/2025/08/Canaries_BrynjolfssonChandarChen.pdf">https://digitaleconomy.stanford.edu/wp-content/uploads/2025/08/Canaries_BrynjolfssonChandarChen.pdf</a></p></blockquote><p>Erik Brynjolfsson* Bharat Chandar† Ruyu Chen‡</p><p><strong>2025 年 8 月 26 日</strong></p><h2 id="摘要"><a href="#摘要" class="headerlink" title="摘要"></a>摘要</h2><p>本文使用来自美国最大薪资软件提供商的高频行政数据，研究了受生成式人工智能影响的职业在劳动力市场上发生的变化。我们提出了六个事实来描述这些转变。我们发现，自生成式人工智能被广泛采用以来，在人工智能暴露度最高的职业中，处于职业生涯早期的工人（22-25 岁）的就业率在控制了公司层面的冲击后，仍然出现了 13%的相对下降。相比之下，在暴露度较低领域的工人以及在相同职业中经验更丰富的工人的就业情况保持稳定或持续增长。我们还发现，劳动力市场的调整主要通过就业而非薪酬来实现。此外，就业下降集中在人工智能更可能自动化而非增强人类劳动的职业中。我们的研究结果对于其他解释（例如排除科技相关公司和排除适合远程工作的职业）是稳健的。这六个事实提供了早期、大规模的证据，与人工智能革命已开始对美国劳动力市场的入门级工人产生重大且不成比例的影响这一假设相符。</p><ul><li>斯坦福大学与美国国家经济研究局（NBER）；<a href="mailto:&#x65;&#x72;&#x69;&#107;&#98;&#64;&#x73;&#116;&#x61;&#110;&#x66;&#x6f;&#114;&#100;&#46;&#101;&#100;&#x75;">erikb@stanford.edu</a></li><li>†斯坦福大学；<a href="mailto:&#x63;&#x68;&#97;&#110;&#100;&#x61;&#114;&#98;&#64;&#x73;&#x74;&#97;&#110;&#102;&#111;&#x72;&#x64;&#46;&#101;&#100;&#117;">chandarb@stanford.edu</a></li><li>‡斯坦福大学；<a href="mailto:&#114;&#117;&#121;&#117;&#x63;&#x68;&#x65;&#110;&#x40;&#x73;&#116;&#x61;&#x6e;&#102;&#111;&#114;&#100;&#46;&#101;&#x64;&#117;">ruyuchen@stanford.edu</a></li><li>感谢 Nick Bloom、Joshua Gans、David Autor、Daniel Rock、李飞飞、Frank Li、Christina Langer、Sarah Bana、Cody Cook、Chris Forman、Andrew Wang、Brad Ross、Omeed Maghzian、Basil Halperin、裴家昕、Phil Trammell、Eric Bergman 以及斯坦福数字经济实验室研讨会参与者提供的有益反馈。我们感谢 ADP 提供数据访问权限以及斯坦福数字经济实验室的财务支持。文责自负。</li></ul><p>最新版本：<a href="https://digitaleconomy.stanford.edu/publications/canaries-in-the-coal-mine/"><u>https://digitaleconomy.stanford.edu/publications/canaries-in-the-coal-mine/</u></a></p><h2 id="1-引言"><a href="#1-引言" class="headerlink" title="1 引言"></a>1 引言</h2><p>生成式人工智能（AI）的扩散引发了一场关于其对劳动力市场潜在影响的全球性辩论。这场跨越学术界、公共政策、商界和大众媒体的讨论，涵盖了从生产力提升的乌托邦式预测，到大规模失业的敌托邦式恐惧，再到认为人工智能对就业或生产力影响甚微的怀疑论观点。从历史上看，技术以不同方式影响着不同的任务、职业和行业，在某些领域取代工作，在另一些领域增强工作，并改变其余领域。这些异质性效应表明，可能存在一些“煤矿中的金丝雀”，它们是人工智能产生更广泛影响的预兆 1。</p><p>人工智能在多个领域的能力已取得迅速提升。例如，根据最新的《人工智能指数报告》，2023 年，人工智能系统在广泛使用的软件工程基准测试 SWE-Bench 上只能解决 4.4%的编程问题，但到 2024 年，这一性能提升至 71.7% (Maslej et al., 2025)¹。人工智能在其他基准测试（包括语言理解、学科知识和推理）方面也有所改进。与此同时，人工智能系统正被日益广泛地采用。根据 Hartley et al. (2025) 的数据，到 2025 年 6 月&#x2F;7 月，在美国 18 岁以上的受访者中，大型语言模型（LLM）在工作中的采用率达到了 46%² 1。</p><p>鉴于能力的提升和广泛的采用，一个核心担忧（近期头条新闻也放大了这一点）是，人工智能是否已开始取代人类劳动，特别是对于像软件工程和客户服务这类高暴露度职业中的年轻、入门级工人 ³ 1。</p><p>尽管这场辩论异常激烈，但实证证据却难以跟上技术进步的步伐，导致许多基本问题悬而未决。本文通过利用来自美国最大薪资软件提供商 ADP 的大规模、高频行政数据集，来应对这一实证空白。我们的样本包含截至 2025 年 7 月的月度、个人层面的薪资记录，涵盖了数万家公司的数百万名工人。这种丰富的面板数据结构使我们能够以高度的粒度追踪就业动态，提供近乎实时的劳动力市场调整视图。通过将这些数据与已建立的职业人工智能暴露度及其他变量指标相结合，我们可以量化自生成式人工智能广泛采用以来已实现的就业变化 1。</p><p>本文系统地呈现了从数据中得出的六个关键事实，评估了人工智能革命如何重塑美国劳动力。</p><p>我们的第一个关键发现是，我们揭示了在人工智能暴露度最高的职业中（如软件开发人员和客户服务代表），处于职业生涯早期的工人（22-25 岁）的就业出现了大幅下降。相比之下，在相同职业中经验更丰富的工人，以及在暴露度较低的职业（如护理助理）中所有年龄段工人的就业趋势则保持稳定或持续增长 1。</p><p>我们的第二个关键事实是，整体就业继续强劲增长，但特别是年轻工人的就业增长自 2022 年底以来一直停滞不前。在人工智能暴露度较低的工作中，年轻工人的就业增长与年长工人相当。相比之下，在人工智能暴露度最高的职业中，22 至 25 岁的工人在 2022 年底至 2025 年 7 月期间就业下降了 6%，而年长工人的就业则增长了 6-9%。这些结果表明，人工智能暴露度高的工作岗位就业下降，是导致 22 至 25 岁年轻人整体就业增长乏力的主要原因，而年长工人的就业则在持续增长 1。</p><p>我们的第三个关键事实是，并非所有人工智能的应用都与就业下降相关。具体而言，入门级就业在人工智能实现工作自动化的应用中出现下降，但在那些主要起增强作用的应用中则没有。我们通过估算观察到的对大型语言模型 Claude 的查询在多大程度上替代或补充了该职业中的任务，从而在经验上区分了自动化和增强。我们发现，在人工智能主要实现工作自动化的职业中，年轻工人的就业出现下降，而在人工智能使用最具增强性的职业中，我们发现了就业增长。这些发现与人工智能的自动化应用替代劳动力，而增强性应用则不然的观点相符 1。</p><p>第四，我们发现，在控制了公司-时间效应后，年轻、人工智能暴露度高的工人的就业下降依然存在。对我们观察到的模式的一种解释是，它们可能是由行业或公司层面的冲击（如利率变化）驱动的，这些冲击与年龄和测量的 AI 暴露度的分布模式相关。我们通过在事件研究回归中控制公司-时间效应来检验这类混淆因素，从而吸收了影响公司所有工人（无论 AI 暴露度如何）的总体公司冲击。对于 22-25 岁的工人，我们发现 AI 暴露度最高的五分位数群体的相对就业率比较低的五分位数群体下降了 12 个对数点，这是一个巨大且具有统计显著性的效应。其他年龄组的估计值在幅度上要小得多，且不具有统计显著性。这些发现意味着我们观察到的就业趋势并非由那些雇佣了不成比例的高 AI 暴露度年轻工人的公司所受到的差异化冲击所驱动 1。</p><p>第五，劳动力市场的调整更多地体现在就业上，而非薪酬上。与我们对就业的发现相反，我们发现按年龄或暴露度五分位数划分的年薪趋势差异很小，这表明可能存在工资粘性。如果是这样，人工智能对就业的影响可能比对工资的影响更大，至少在初期是如此 1。</p><p>第六，以上事实在各种替代样本构建中基本保持一致。我们发现，我们的结果并非仅仅由计算机职业或易受远程工作和外包影响的职业所驱动。我们还发现，在更早的时间里，即在大型语言模型广泛使用之前，包括在由 COVID-19 大流行引发的失业率飙升期间，人工智能暴露度分类法并不能有意义地预测年轻工人的就业结果。我们观察到的数据模式似乎从 2022 年底开始最为明显，这恰逢生成式人工智能工具迅速普及的时期 ⁴。这些模式在大学毕业生比例高的职业和比例低的职业中都成立，这表明 COVID-19 期间教育成果的恶化并非我们结果的驱动因素。对于非大学学历的工人，我们发现经验可能在缓冲劳动力市场冲击方面的作用较小，因为在大学毕业生比例低的职业中，直到 40 岁的工人都表现出按人工智能暴露度划分的就业结果分化 1。</p><p>虽然我们提醒，我们记录的事实可能部分受到生成式人工智能以外因素的影响，但我们的结果与生成式人工智能已开始影响入门级就业的假设是一致的。我们打算继续持续追踪数据，以评估这些趋势未来是否会发生变化 1。</p><p>为什么人工智能对受影响的入门级工人的负面影响可能比其他年龄组更大？一种可能性是，由于模型训练过程的性质，人工智能取代了可编码的知识，即构成正规教育核心的“书本知识”。人工智能可能不那么擅长取代隐性知识，即那些随经验积累的独特的技巧和窍门 ⁵。由于年轻工人提供的可编码知识相对多于隐性知识，他们可能在受影响的职业中面临更多的任务替代，从而导致更大的就业再分配 (Acemoglu and Autor, 2011)。相比之下，拥有累积隐性知识的年长工人可能面临较少的任务替代。这些隐性知识的好处对于那些在经验回报率低的职业中的非大学学历工人来说可能较少。此外，经验更丰富的工人可能在其他方面技能更高，使他们不易被人工智能工具替代 (Ide, 2025)。一个重要的研究方向是进一步建模和检验这些预测 1。</p><p>¹ SWE-bench 旨在评估大型语言模型（LLMs）在真实世界软件工程任务上的表现。它使用一系列 GitHub 问题来评估 LLM 生成解决这些问题的代码的能力 1。</p><p>² 类似地，Bick et al. (2024) 发现，在 2024 年底，近 40%的 18-64 岁美国人口报告使用过生成式人工智能，其中 23%的在职受访者表示他们在过去一周至少有一次因工作使用生成式人工智能，9%的人每个工作日都使用 1。</p><p>³ 某职业工人的生产力提高可能导致就业减少或增加，这取决于，除其他因素外，对这些工人产出的需求弹性有多大 1。</p><p>⁴ OpenAI 于 2022 年 11 月推出了 ChatGPT 1。</p><p>⁵ 具有讽刺意味的是，相比于在大学计算机科学课堂上学习，更可能在工作中习得的实用技能之一或许是如何使用人工智能软件进行开发 1。</p><h2 id="2-相关文献"><a href="#2-相关文献" class="headerlink" title="2 相关文献"></a>2 相关文献</h2><p>本文探讨了学术界、公共政策、商界和媒体中关于人工智能就业影响的一场广泛的公开辩论。这场讨论大多集中在人工智能是否正在取代软件工程师等受影响职业的工人 ⁶。一些研究指出，大学毕业生的失业率已超过非毕业生，认为这是人工智能导致就业中断的证据 (Thompson, 2025)。另一些人则指出，这些趋势远在人工智能普及之前就已存在，并指出公开可得的数据，如当期人口调查（CPS），显示在人工智能暴露度高的职业中，就业变化的证据是混合的 (Lim et al., 2025; The Economist, 2025; Smith, 2025; Eckhardt and Goldschlag, 2025; Frick, 2025)。这些辩论仍未解决，亟需关于受影响群体劳动力市场变化的高质量数据。本文提供了大规模数据，以高粒度和高精度衡量就业变化，发现人工智能暴露度高的职业中的年轻工人确实经历了就业下降 ⁷ 1。</p><p>在学术界，旨在衡量人工智能就业影响的研究日益增多。这一文献的开端是一系列有影响力的论文，它们建立了估算哪些职业和任务易受自动化影响的方法论 (Frey and Osborne, 2017; Brynjolfsson and Mitchell, 2017; Brynjolfsson et al., 2018; Felten et al., 2018, 2019; Webb, 2019; Felten et al., 2021)。近期，诸如 Eloundou et al. (2024)、Felten et al. (2023)、Gmyrek et al. (2023)、Handa et al. (2025) 和 Tomlinson et al. (2025) 的研究将此方法应用于生成式人工智能，构成了本分析所用暴露度指标的基础。虽然这些研究识别了潜在的颠覆，但我们的研究将这些暴露度指标与实际的就业变化联系起来。我们发现，这些暴露度指标确实能够预测在生成式人工智能普及后时期年轻工人的重大就业变化 1。</p><p>我们的工作补充并扩展了那些在更具体环境中发现显著影响的研究，例如在线自由职业平台 (Hui et al., 2023; Demirci et al., 2025) 或个别公司内部 (Brynjolfsson et al., 2025; Dillon et al., 2025)⁸。我们衡量了横跨美国经济的各职业的劳动力市场变化 1。</p><p>从这个意义上说，我们的工作补充了一小部分但日益增多的使用全经济范围数据来衡量人工智能影响的论文。近期的发现各不相同。Humlum and Vestergaard (2025) 使用丹麦的行政数据得出结论，对收入或工作小时数的影响微乎其微，而 Jiang et al. (2025) 则发现，在美国，人工智能暴露度与更长的工作小时数相关 ⁹。Hampole et al. (2025) 使用 Revelio Labs 从 2011 年到 2023 年的招聘信息和 LinkedIn 个人资料记录，发现总体就业影响有限，公司整体劳动力需求的增长抵消了对受影响职业需求的相对下降。Chandar (2025b) 使用 CPS 数据比较了人工智能暴露度较高和较低职业的就业变化，发现总体上差异趋势不大，但指出由于有效样本量有限，衡量年轻工人的变化存在困难。Dominski and Lee (2025) 同样使用 CPS 数据和替代性暴露度指标，发现在人工智能暴露度高的职业中就业有所下降，但 CPS 的数据限制了统计推断的能力。Johnston and Makridis (2025) 使用季度就业与工资普查（QCEW）数据，发现在人工智能暴露度更高的州-行业对中就业有所增加 ¹⁰。这些先前的论文使用的数据要么缺乏足够的粒度，要么不够及时，无法可靠地按人工智能暴露度和年龄研究就业变化 (O’Brien, 2025)¹¹。相比之下，本文使用大规模、近乎实时的数据，为解决当前关于人工智能对年轻工人就业影响的持续辩论迈出了一步 1。</p><p>⁶ 近期关于此话题的一些媒体报道包括 Horowitch (2025); Ettenheim (2025); Raman (2025); Roose (2025); Peck (2025); Hoover (2025); Milmo and Almeida (2025); Wu (2025); Raval (2025)。一些科技公司高管也警告了人工智能可能带来的失业 (Allen, 2025; Sherman, 2025; Bacon, 2025)，或为了增加人工智能投资而裁员 (Jamali, 2025) 1。</p><p>⁷ 来自行业的报告也显示了混合的发现。招聘平台 TrueUp 暗示科技行业的招聘信息近期有所增加 (Lenny Rachitsky, 2025)。另一方面，Revelio Labs 发现招聘信息有所下降，且对入门级工人的下降更为陡峭 (Simon, 2025)。事实上，招聘信息数据显示新毕业生的招聘信息有所下降，但在人工智能暴露度较低的职业中也发现了这种下降 (Lim et al., 2025)。Chandar (2025b) 指出，近年来招聘信息与就业之间的相关性一直很弱。SignalFire 发现科技行业新毕业生招聘人数与疫情前水平相比急剧下降 (Doshay and Bantock, 2025)，这与本文的发现一致。来自 Gusto 的数据也表明新毕业生招聘有所下降 (Bowen, 2025) 1。</p><p>⁸ 另见 Noy and Zhang (2023); Peng et al. (2023); Dell’Acqua et al. (2023) 1。</p><p>⁹ 另见 Acemoglu et al. (2022); Bonney et al. (2024); Bick et al. (2024); Hartley et al. (2025); Frank et al. (2025); Chen et al. (2025) 1。</p><p>¹⁰ Johnston and Makridis (2025) 通过将 Eloundou et al. (2024) 的职业暴露度按州-行业就业加权平均来衡量州-行业暴露度。如果公司进行资本投资或以提高整体劳动力需求的方式提高生产力，行业层面的劳动力市场变化可能与本文研究的职业层面变化不同 (Hampole et al., 2025) 1。</p><p>¹¹ 作为比较，自 2021 年以来，CPS 每月调查总共介于 44,000 至 51,000 名所有年龄组的就业人员。其中 10,000 至 12,000 个观测值属于即将轮换出组的样本，并包含收入记录。我们主要分析样本中的数据每月仅在 22 至 25 岁年龄段就包括 250,000 至 350,000 名就业人员，且均有收入记录 1。</p><h2 id="3-数据描述"><a href="#3-数据描述" class="headerlink" title="3 数据描述"></a>3 数据描述</h2><h3 id="3-1-薪资数据"><a href="#3-1-薪资数据" class="headerlink" title="3.1 薪资数据"></a>3.1 薪资数据</h3><p>本研究使用来自美国最大薪资处理公司 ADP 的数据。该公司为雇佣超过 2500 万美国工人的公司提供薪资服务。我们利用这些信息来追踪在被衡量为或多或少暴露于人工智能的职业中工人的就业变化 1。</p><p>我们对主要分析样本施加了若干样本限制。我们只包括那些使用 ADP 薪资产品来维护工人工资记录的公司的雇员。我们还从分析中排除了被公司归类为兼职的员工，并将样本限定在 18 至 70 岁之间的人群 ¹² 1。</p><p>使用薪资服务的公司集合随时间变化，因为公司会加入或离开 ADP 的平台。我们通过只保留从 2021 年 1 月到 2025 年 7 月每个月都有员工收入记录的公司，来维持我们主要样本期内一致的公司集合 1。</p><p>此外，ADP 观察到其系统中约 70%工人的职位头衔。我们排除了没有记录职位头衔的工人。有超过 7,000 个标准化的职位头衔，例如“搜索引擎优化专员”、“企业内容管理经理”和“工厂文件控制专员”。该公司的内部研究团队利用职位描述、行业、地点和其他相关数据等信息，将这些职位头衔映射到 2010 年标准职业分类（SOC）代码 1。</p><p>在这些限制之后，我们的主要分析样本每月有 350 万到 500 万工人的记录，尽管我们考虑了对替代性分析的稳健性，例如允许公司进入和离开样本。虽然 ADP 数据每月包括数百万工人，但使用 ADP 服务的公司分布与整个美国经济中的公司分布不完全匹配。关于公司构成差异的更多细节可以在 Cajner et al. (2018) 和 ADP Research (2025) 中找到 ¹³ 1。</p><h3 id="3-2-职业人工智能暴露度"><a href="#3-2-职业人工智能暴露度" class="headerlink" title="3.2 职业人工智能暴露度"></a>3.2 职业人工智能暴露度</h3><p>我们使用两种不同的方法来衡量职业对人工智能的暴露度。第一种方法使用来自 Eloundou et al. (2024) 的暴露度指标。Eloundou et al. (2024) 使用经过人工标注验证的 ChatGPT，按 O*NET 任务估算了人工智能暴露度。然后，他们通过将任务数据汇总到 2018 年 SOC 代码级别来构建职业暴露度指标。我们重点关注他们论文中基于 GPT-4 的暴露度指标 1。</p><p>我们采用的第二种主要方法使用来自 Anthropic 经济指数（Handa et al., 2025）的生成式人工智能使用数据。该指数报告了基于对 Anthropic 的生成式人工智能模型 Claude 的数百万次对话样本，与每个 O*NET 任务相关的查询的估计份额。然后，它根据这些任务份额将数据汇总到职业层面。Anthropic 经济指数的一个特点是，对于每个任务，它还报告了与该任务相关的查询中属于“自动化”、“增强型”或以上皆非的估计份额。我们使用这些信息来估算一个职业的人工智能使用主要是与劳动力互补还是替代 ¹⁴ 1。</p><p>Eloundou et al. (2024) 的指标和 Handa et al. (2025) 的指标都按 2018 年 SOC 代码估算人工智能暴露度。我们使用美国劳工统计局（BLS）的 2010 年 SOC 代码到 2018 年 SOC 代码的转换表，将暴露度指标与薪资数据进行合并。表 A1 显示了每种人工智能暴露度指标下的职业示例 1。</p><h3 id="3-3-其他数据"><a href="#3-3-其他数据" class="headerlink" title="3.3 其他数据"></a>3.3 其他数据</h3><p>为了比较可远程工作与不可远程工作的职业的就业变化，我们使用了来自 Dingel and Neiman (2020) 的数据。我们使用 BLS 的个人消费支出（PCE）指数来计算实际收入，以 2017 年 10 月为基准。我们使用月度当期人口调查（CPS）数据作为我们主要发现的比较对象 1。</p><p>¹² 虽然我们观察到每个工人的出生年份，但出于隐私原因，我们无法观察到确切的出生日期。我们使用美国疾病控制与预防中心的数据，根据美国的出生月份分布来推算出生月份 1。</p><p>¹³ Cajner et al. (2018) 使用 2016 年 3 月的数据发现，与季度就业与工资普查（QCEW）相比，制造业和服务业公司的份额略高。他们还发现 ADP 在东北地区的公司代表性略高。此外，使用 ADP 的公司平均增长速度快于美国经济中的典型公司 1。</p><p>¹⁴ 具体来说，Handa et al. (2025) 首先使用 Claude 将对话分为六类：指令型（Directive），指以最少互动完成任务委托；反馈循环型（Feedback Loop），指在环境反馈指导下完成任务，例如反复向模型传递编码错误；任务迭代型（Task Iteration），指协作式的完善过程；学习型（Learning），指知识获取和理解；验证型（Validation），指工作核实和改进；或“以上皆非”（None），模型被指示“自由地”选择此选项。被分类为指令型或反馈循环型的对话被视为自动化（Automative），而被分类为任务迭代型、学习型或验证型的对话被视为增强型（Augmentative）。更多细节请参见 Handa et al. (2025)。表 A2 复制了 Handa et al. (2025) 的表 1，并显示了关于自动化和增强指标的更多细节 1。</p><h2 id="4-结果"><a href="#4-结果" class="headerlink" title="4 结果"></a>4 结果</h2><h3 id="4-1-事实-1：在人工智能暴露度高的职业中，年轻工人的就业有所下降"><a href="#4-1-事实-1：在人工智能暴露度高的职业中，年轻工人的就业有所下降" class="headerlink" title="4.1 事实 1：在人工智能暴露度高的职业中，年轻工人的就业有所下降"></a>4.1 事实 1：在人工智能暴露度高的职业中，年轻工人的就业有所下降</h3><p>以软件工程师和客户服务代理为例，这两个职业通常被认为高度暴露于生成式人工智能工具。媒体关注引发了人们对年轻软件工程师尤其可能面临广泛就业冲击的担忧 (Thompson, 2025; Raman, 2025; Allen, 2025; Horowitch, 2025) 1。</p><p>图 1 显示了这些职业按年龄组的就业变化，以 2022 年 10 月为 1 进行归一化。两个职业呈现出相似的模式：最年轻工人的就业在 2022 年后显著下降，而其他年龄组的就业则继续增长。到 2025 年 7 月，22-25 岁软件开发人员的就业与其 2022 年底的峰值相比下降了近 20%。图 A1 显示，类似的模式在计算机职业和服务文员中也普遍存在 1。</p><p>图 1：软件开发人员和客户服务代理按年龄的就业变化，以 2022 年 10 月为 1 进行归一化。</p><p>顶部图表：软件开发人员（归一化）按年龄组的员工人数变化</p><p>底部图表：客户服务（归一化）按年龄组的员工人数变化</p><p>图例：职业早期 1 (22-25), 职业早期 2 (26-30), 发展期 (31-34), 职业中期 1 (35-40), 职业中期 2 (41-49), 资深期 (50+)</p><p>图 2 以另外四个职业作为案例研究，这些职业根据 Eloundou et al. (2024) 的指标，涵盖了不同的人工智能暴露度水平。市场营销和销售经理，处于人工智能暴露度的第四个五分位数，其年轻工人的就业下降情况与软件和客户服务类似，尽管幅度较小。一线生产和运营主管，处于第三个五分位数，其年轻工人的就业有所增加，但就业增长幅度小于 35 岁以上工人的增幅 1。</p><p>相比之下，Eloundou et al. (2024) 评为暴露度较低的职业的趋势与暴露度较高的职业模式不符。库存文员和订单处理员，处于第二个五分位数，按年龄划分没有明显差异。引人注目的是，包括护理助理、精神病护理助理和家庭健康助理在内的健康助理系列职业，其趋势与软件或客户服务截然不同：年轻工人的就业增长速度快于年长工人 1。</p><p>图 2：市场营销和销售经理（暴露度五分位数 4）、一线生产主管（暴露度五分位数 3）、库存文员和订单处理员（暴露度五分位数 2）以及健康助理（暴露度五分位数 1）的就业变化，以 2022 年 10 月为 1 进行归一化。暴露度五分位数基于 Eloundou et al. (2024) GPT-4 β 指标定义。</p><p>图 3 显示，这些模式在各职业中更为普遍。左上图显示了 22-25 岁工人在暴露度较高和较低的职业中就业结果的分化，暴露度较高的职业就业下降。对于年长年龄组，我们发现在不同人工智能暴露度五分位数之间的就业增长差异要小得多 1。</p><p>图 3：按年龄和暴露度五分位数的就业变化，使用 Eloundou et al. (2024) 的 GPT-4 β 指标。暴露度五分位数基于 GPT-4 β 指标定义。深色线条代表暴露度更高的五分位数。红线显示了所有五分位数的总体趋势。</p><h3 id="4-2-事实-2：尽管整体就业持续增长，但年轻工人的就业增长尤其停滞"><a href="#4-2-事实-2：尽管整体就业持续增长，但年轻工人的就业增长尤其停滞" class="headerlink" title="4.2 事实 2：尽管整体就业持续增长，但年轻工人的就业增长尤其停滞"></a>4.2 事实 2：尽管整体就业持续增长，但年轻工人的就业增长尤其停滞</h3><p>图 4 显示了所有职业合并后按年龄组的总体就业趋势。整体就业保持强劲，与后疫情时期全国低失业率相符。然而，图 4 表明，年轻工人的就业增长相对于其他年龄组有所放缓，这与近期关于入门级工人就业市场可能恶化的讨论一致 (Chen, 2025; Federal Reserve Bank of New York, 2025) 1。</p><p>图 4：按年龄的就业变化。包括所有职业。</p><p>图 5 揭示了这些趋势与人工智能暴露度的关系。对于每个年龄组，从 2022 年底到 2025 年 7 月，最低的三个 AI 暴露度五分位数的就业增长为 6-13%，按年龄划分的就业增长没有明确的顺序。相比之下，对于最高的两个暴露度五分位数，22-25 岁工人的就业在 2022 年底至 2025 年 7 月期间下降了 6%，而 35-49 岁工人的就业增长了超过 9%。这些结果表明，在 AI 暴露度高的工作中就业下降，是导致 22 至 25 岁工人整体就业增长乏力的驱动因素 1。</p><p>图 5：2022 年 10 月至 2025 年 7 月期间按年龄和基于 GPT-4 β 的 AI 暴露度分组的就业增长情况。</p><p>虽然这些发现表明年轻工人的就业结果因 AI 暴露度而异，但我们提醒，这前两个事实中观察到的趋势可能由美国经济中的其他变化所驱动。我们接下来的事实将评估这些结果在替代性分析下的稳健性 1。</p><h3 id="4-3-事实-3：入门级就业在人工智能自动化工作的应用中下降，而在增强型应用中变化不大"><a href="#4-3-事实-3：入门级就业在人工智能自动化工作的应用中下降，而在增强型应用中变化不大" class="headerlink" title="4.3 事实 3：入门级就业在人工智能自动化工作的应用中下降，而在增强型应用中变化不大"></a>4.3 事实 3：入门级就业在人工智能自动化工作的应用中下降，而在增强型应用中变化不大</h3><p>人工智能暴露度既可以补充劳动力，也可以替代劳动力。这可能对劳动力市场产生截然不同的影响 (Brynjolfsson, 2022) 1。</p><p>为了评估就业模式如何根据人工智能与劳动力的互补性或替代性而变化，我们使用了来自 Anthropic 经济指数（Handa et al., 2025）的生成式人工智能使用数据。该指数提供了与每个职业相关的查询份额的估计值。此外，对于每个任务，它报告了与该任务相关的查询中属于“自动化”、“增强型”或以上皆非的估计份额。我们使用这些信息来估算一个职业的人工智能使用主要是劳动力的替代品还是补充品 ¹⁵。表 A1 显示了每种指标下最高和最低暴露度类别的职业示例 1。</p><p>图 6 显示了按 Claude 相关查询的总体流行度的就业变化。这些模式与使用 Eloundou et al. (2024) 指标的发现非常吻合 1。</p><p>图 6：总体 Claude 使用情况。按年龄和暴露度五分位数的就业变化，使用来自 Handa et al. (2025) 的 Claude 使用数据。暴露度五分位数根据与某职业相关任务的 Claude 查询份额定义。深色线条代表暴露度更高的五分位数。红线显示了所有五分位数的总体趋势。其相关任务均低于使用数据中最低查询次数的职业被视为一个单独类别，编码为 0。</p><p>同样，图 7 显示，估计自动化份额最高的职业中，最年轻工人的就业出现了下降 1。</p><p>图 7：自动化。按年龄和自动化水平的就业变化，使用来自 Handa et al. (2025) 的 Claude 使用数据。自动化水平根据与某职业相关的查询中被 Claude 分类为自动化性质的份额定义。深色线条代表自动化程度更高。红线显示了所有自动化水平的总体趋势。其相关任务均低于使用数据中最低查询次数的职业被视为一个单独类别，编码为 0。注意，超过 20%的查询次数高于最低阈值的职业的估计自动化份额为 0。因此，第一和第二五分位数的所有职业被归为第 1 级。其余五分位数编码为 2、3 和 4。</p><p>相比之下，图 8 表明，估计增强份额最高的职业并未出现类似的模式。年轻工人的就业变化并未按增强暴露度排序，因为第五个五分位数的就业增长率是最高的之一。这些发现与人工智能的自动化应用替代劳动力，而增强性应用则不然的观点是一致的 ¹⁶ 1。</p><p>图 8：增强。按年龄和增强五分位数的就业变化，使用来自 Handa et al. (2025) 的 Claude 使用数据。增强五分位数根据与某职业相关的查询中被 Claude 分类为增强型的份额定义。深色线条代表增强性更高的五分位数。红线显示了所有五分位数的总体趋势。其相关任务均低于使用数据中最低查询次数的职业被视为一个单独类别，编码为 0。</p><p>¹⁵ 图 A2 和 A3 显示，在剔除总体 Claude 使用率较低的职业后，自动化和增强的结果相似 1。</p><p>¹⁶ 注意，增强指标的前两个五分位数的职业总体 Claude 使用率非常低，这些五分位数中的平均职业分别占对话的 0.01%和 0.09%。这些职业的对话中有很高比例被分类为既非自动化也非增强型。相比之下，第三至第五五分位数的职业平均占 Claude 对话的 0.47%、0.39%和 0.33%。对于自动化指标，总体 Claude 使用率随自动化份额平均增加，最低暴露度组平均占对话的 0.05%，最高组平均占 0.73% 1。</p><h3 id="4-4-事实-4：在控制公司-时间冲击后，年轻、人工智能暴露度高的工人的就业下降依然存在"><a href="#4-4-事实-4：在控制公司-时间冲击后，年轻、人工智能暴露度高的工人的就业下降依然存在" class="headerlink" title="4.4 事实 4：在控制公司-时间冲击后，年轻、人工智能暴露度高的工人的就业下降依然存在"></a>4.4 事实 4：在控制公司-时间冲击后，年轻、人工智能暴露度高的工人的就业下降依然存在</h3><p>虽然我们目前的结果与生成式人工智能导致入门级就业下降的假设一致，但存在其他合理的解释。一类解释是，我们观察到的模式是由行业或公司层面的冲击所解释的，这些冲击与年龄和测量的 AI 暴露度的分布模式相关。例如，一种可能性是，具有高测量 AI 暴露度的年轻工人不成比例地倾向于进入那些极易受利率上升影响的公司。</p><p>我们通过控制一组丰富的固定效应来检验这类混淆因素。对于每个年龄组，我们估计泊松回归：</p><p>log(E[yf,q,t])&#x3D;q′&#x3D;1∑j&#x3D;−1∑γq′,j1{t&#x3D;j}1{q′&#x3D;q}+αf,q+βf,t+ϵf,q,t(4.1)</p><p>其中，f 指公司，q 指 Eloundou et al. (2024) 的暴露度五分位数，t 指月份，其中 t&#x3D;−1 对应 2022 年 10 月。结果变量 yf,q,t 是在公司 f、五分位数 q、时间 t 的就业人数。方程 4.1 是一个控制了公司-五分位数效应 (αf,q) 和公司-时间效应 (βf,t) 的泊松事件研究回归。公司-时间效应吸收了对每个暴露度五分位数影响相等的总体公司冲击。公司-五分位数效应调整了公司内部各五分位数之间招聘的基线差异。我们感兴趣的系数 γq,t 衡量了在考虑了公司-时间效应和公司-五分位数效应后，各五分位数之间就业增长的差异变化 ¹⁷ 1。</p><p>这种方法之所以强大，是因为它有效地将分析范围缩小到公司内部。它不再是简单地比较雇佣大量软件工程师的科技公司与雇佣大量护士的医疗保健公司。相反，它是在问一个更精细的问题：“在同一家公司内部，在同一时间点，年轻、高 AI 暴露度员工（如初级程序员）的就业情况与该公司内其他员工（如年长的程序员或低 AI 暴露度的员工）相比如何变化？”通过这样做，可以排除那些影响整个公司的外部因素，例如行业衰退或利率变化。如果年轻、高暴露度员工的就业下降在这种严格的比较下仍然存在，那么这就强烈表明，这种下降是由特定于他们角色和年龄的因素驱动的，这与 AI 替代的假设高度一致 1。</p><p>我们对每个年龄组分别运行此回归。对于每个回归，我们限制在样本的每个时期内在该年龄组中雇佣至少 10 名工人的公司。此外，对于每个 q，∑tyf,q,t 必须至少等于 100，这意味着公司在样本的各个月份中，平均必须从每个暴露度五分位数雇佣约 2 名工人 ¹⁸。标准误按公司进行聚类 1。</p><p>结果如图 9 所示，该图绘制了每个年龄组的 γq,t 系数。对于 22-25 岁的工人，较高五分位数的估计值大且具有统计显著性，相对就业下降了 12 个对数点，其幅度与图 3 原始数据中的估计值相当。其他年龄组的估计值通常在幅度上小得多，且不具有统计显著性。这些发现意味着我们观察到的就业趋势并非由那些雇佣了不成比例的高 AI 暴露度年轻工人的公司所受到的差异化冲击所驱动 1。</p><p>图 9：按年龄和 AI 暴露度的就业变化的泊松回归事件研究估计。所有估计都是相对于职业暴露度五分位数 1 而言。暴露度五分位数使用 Eloundou et al. (2024) GPT-4 β 指标。估计控制了公司-时间和公司-五分位数固定效应，遵循方程 4.1。阴影区域为 95%置信区间。标准误按公司聚类。</p><p>一个不会被公司-时间效应控制的替代性混淆因素是，即使在公司层面，高 AI 暴露度的工人在 COVID-19 大流行后被过度招聘，导致随后他们的招聘收缩。为了评估这类替代方案，我们在第 4.6 节中考虑了各种其他稳健性检验，例如移除计算机职业和根据职业是否适合在家工作进行条件控制 1。</p><p>¹⁷ 由于结果变量中存在零计数，我们遵循 Chen and Roth (2024) 的指导，估计泊松回归而非对数形式的普通最小二乘（OLS）回归 1。</p><p>¹⁸ 结果对这些限制不敏感，尽管在泊松回归中，每个公司-月份和每个公司-五分位数中必须至少有一个非零值，以避免观测值被丢弃 1。</p><h3 id="4-5-事实-5：劳动力市场的调整更多地体现在就业而非薪酬上"><a href="#4-5-事实-5：劳动力市场的调整更多地体现在就业而非薪酬上" class="headerlink" title="4.5 事实 5：劳动力市场的调整更多地体现在就业而非薪酬上"></a>4.5 事实 5：劳动力市场的调整更多地体现在就业而非薪酬上</h3><p>除了就业，我们还观察到工人的年度基本薪酬。我们利用这些信息来检验劳动力市场在薪酬方面的调整 ¹⁹。薪资数据使用 PCE 指数平减至 2017 年美元 ²⁰ 1。</p><p>结果如图 10 所示。研究结果表明，与就业相比，薪酬在暴露度较高和较低的职业之间的分化不那么明显。图 11 显示了按年龄和基于 Eloundou et al. (2024) 的暴露度五分位数的结果。我们发现按年龄或暴露度五分位数划分的薪酬趋势差异很小 1。</p><p>图 10：按年龄和职业的年度基本薪酬变化。年度基本薪酬使用 PCE 平减指数平减至 2017 年美元。</p><p>图 11：年度基本薪酬。按年龄和暴露度五分位数的年度基本薪酬变化。暴露度五分位数根据 Eloundou et al. (2024) 的 GPT-4 β 指标定义。深色线条代表暴露度更高的五分位数。红线显示了所有五分位数的总体趋势。年度基本薪酬使用 PCE 平减指数平减至 2017 年美元。</p><p>Autor and Thompson (2025) 先前的研究指出，替代非专家任务的技术可能会减少职业就业但增加职业工资；替代专家任务的技术可能会产生相反的效果。工资效应的符号取决于被取代任务的总体份额以及这些任务是专家任务还是非专家任务。我们发现的工资变化有限，表明这些效应可能相互抵消，至少在短期内是这样。或者，结果可以由短期内的工资粘性来解释，这与 Davis and Krolikowski (2025) 的近期证据一致 1。</p><h3 id="4-6-事实-6：研究发现在替代性样本构建下基本保持一致"><a href="#4-6-事实-6：研究发现在替代性样本构建下基本保持一致" class="headerlink" title="4.6 事实 6：研究发现在替代性样本构建下基本保持一致"></a>4.6 事实 6：研究发现在替代性样本构建下基本保持一致</h3><p>我们检验了这些结果对替代性样本构建和稳健性检验的稳健性 1。</p><p><strong>排除科技职业</strong> 一种可能性是，我们的结果是由 2022 年至 2023 年科技行业招聘普遍放缓所解释的，因为公司从 COVID-19 大流行中恢复 ²¹。图 A4 显示了在排除计算机职业（对应于以 15-1 开头的 2010 年 SOC 代码）后，按年龄和暴露度五分位数的就业变化。图 A5 显示了排除信息行业（NAICS 代码 51）公司的结果。结果非常相似，与上述案例研究一致，表明就业变化在多种职业中都可见。图 9 中包含公司-时间固定效应的结果进一步表明，我们的发现对于影响一般招聘趋势的公司或行业层面冲击是稳健的。这些结果表明，我们的发现并非特定于技术岗位 1。</p><p><strong>远程工作</strong> 图 A6 和 A7 显示了根据 Dingel and Neiman (2020) 的分类，适合远程工作（telework）和不适合远程工作的职业的结果 ²²。我们发现，对于年轻工人，无论是在可远程工作的职业还是在不可远程工作的职业中，暴露度越高的职业就业增长越慢。特别是不可远程工作职业的结果表明，我们的发现并非仅仅由外包或在家工作的中断所驱动 ²³ 1。</p><p><strong>更长样本期</strong> 图 A8 显示了将平衡的公司样本扩展到 2018 年的结果。这减少了样本量，并使数据略显嘈杂。尽管如此，在后 GPT 时代，趋势基本上仍按暴露度排序，而这在 2022 年之前并非如此。一个担忧是，对于 Eloundou et al. (2024) 的指标，最高暴露度的五分位数从 2020 年左右开始就业增长放缓。但对于 Anthropic 暴露度指标（如图 A9、A10 和 A11 所示），情况并非如此。对于这些指标，在生成式人工智能出现之前的整个时期，最高暴露度群体的就业增长相当，之后才出现分化趋势 1。</p><p><strong>教育变化</strong> 另一种可能性是，我们观察到的变化受到了 COVID-19 大流行期间教育成果恶化的影响。COVID-19 对教育成果造成了持续的损害 (Kuhfeld and Lewis, 2025)。由于受教育程度越高的工人平均测得的 AI 暴露度也越高，近年来教育质量的下降可能会影响我们观察到的趋势 ²⁴。在图 A12 中，我们显示了根据 2017 年美国社区调查（ACS），超过 70%的工人拥有大学学位的职业的趋势 ²⁵。在图 A13 中，我们显示了不到 30%的工人拥有大学学位的职业的趋势。大学毕业生比例高的职业总体就业下降，与我们的主要结果相比，暴露度较高和较低的职业之间的差异不大。相比之下，大学毕业生比例低的职业总体就业上升，其中 AI 暴露度最低的职业增长，而暴露度最高的职业就业下降。此外，对于大学毕业生比例较低的职业，就业结果的分散在更高年龄组中也可见，直到 40 岁的工人都显示出按 AI 暴露度的就业趋势分离。这些发现表明，教育成果恶化不能完全解释我们的主要结果。它们还表明，对于非大学学历的工人，经验可能不像对大学学历工人那样能有效缓冲劳动力市场冲击 1。</p><p><strong>其他稳健性检验</strong> 图 A14 和 A15 分别显示了男性和女性的结果。结果相似，表明男性和女性前景的分化并非我们发现的驱动因素。图 A16 显示，当我们不采用平衡的公司样本时，结果相似。图 A17 显示，当包括兼职和临时工时，结果相似 ²⁶ 1。</p><p><strong>与 CPS 数据的比较</strong> 对我们的发现进行比较的一个有用基准是将其与月度当期人口调查（CPS）的估计值进行比较。CPS 每月在全国范围内调查约 60,000 个家庭，以收集有关就业和其他劳动力特征的数据。这些数据在参考月份后几周发布，提供了近乎实时的就业统计估计。许多先前的分析都使用 CPS 来评估 AI 如何影响入门级工作 (Chandar, 2025b; Dominski and Lee, 2025; Lim et al., 2025; Eckhardt and Goldschlag, 2025)。我们将 ADP 数据中的一些主要发现与 CPS 的估计值进行比较。图 A18 至 A20 显示了使用 CPS 数据按年龄划分的软件开发人员、客户服务代表和家庭健康助理的就业变化。尽管全美有数百万工人从事这些职业，但估计值波动性很大，月度估计就业人数的常见波动达到 20%或更高。图 A21 显示了使用 CPS 按年龄和暴露度五分位数估计的就业变化，也表明估计值具有高度波动性。CPS 微观数据的这种波动性反映了样本量小以及 CPS 的抽样设计并非旨在针对这些人口-职业子群体的就业统计数据 ²⁷。因此，CPS 的样本量和抽样程序可能使其难以在本研究考虑的时间范围内以高度可信度评估按年龄和 AI 暴露度的就业变化 (Chandar, 2025b; O’Brien, 2025)。其他大规模数据源，如美国社区调查（ACS），可能为 ADP 数据提供更可靠的比较，尽管 ACS 的发布与 ADP 数据相比有显著滞后。我们鼓励在其他数据源（如 ACS）发布后，将我们的发现与它们的结果进行比较 ²⁸ 1。</p><p>¹⁹ 总薪酬可能还包括奖金、加班费、佣金、股权、小费和其他项目。这些可能对某些职业和年龄组的总体薪酬产生比其他组更大的影响 1。</p><p>²⁰ 与就业序列不同，薪酬的结果截止于 2025 年 6 月，这是 PCE 指数最近可用的月份 1。</p><p>²¹ 根据《减税与就业法案》，2022 年颁布的《国内税收法典》第 174 条修正案也禁止公司立即扣除研发支出，包括软件开发成本。这些成本必须资本化，并在五年（国内研究）或十五年（国外研究）内摊销 1。</p><p>²² 一个职业是否适合远程工作与 AI 暴露度呈正相关。根据 GPT-4 β 指标，只有两个可远程工作的职业属于最低的 AI 暴露度五分位数。同样，很少有不可远程工作的职业属于最高的 AI 暴露度五分位数。因此，在图 A6 中，我们将最低的两个 AI 暴露度五分位数合并为一组。在图 A7 中，我们将最高的两个 AI 暴露度五分位数合并 1。</p><p>²³ 具有高 AI 暴露度的不可远程工作职业包括银行出纳员、旅行社代理和税务申报员 1。</p><p>²⁴ Chandar (2025a) 发现，大学毕业生平均技能水平的下降解释了近几十年来大学工资溢价增长放缓的相当一部分 1。</p><p>²⁵ 在基于 GPT-4 β 的暴露度指标的第一个五分位数中，没有一个职业的大学毕业生比例超过 35%，因此该五分位数被排除在图 A12 的结果之外 1。</p><p>²⁶ 另一种可能性是，就业趋势是由 COVID-19 大流行时期的刺激支票所驱动，这些支票扭曲了劳动力供给。然而，这些刺激支付是有收入要求的，而 AI 暴露度越高的职业平均收入也越高 (Kochhar, 2023)，这表明观察到的 AI 暴露度高职业的下降不太可能由这一渠道驱动 1。</p><p>²⁷ 在我们的样本期内，CPS 每月包括 26 至 53 名年龄在 22 至 25 岁之间的年轻软件开发人员。它包括 49 至 95 名年轻的客户服务代表，以及 2 至 14 名年轻的家庭健康助理 1。</p><p>²⁸ 2024 年 ACS 1 年期公共使用微数据样本计划于 2025 年 10 月 16 日发布 1。</p><h2 id="5-结论"><a href="#5-结论" class="headerlink" title="5 结论"></a>5 结论</h2><p>我们记录了关于人工智能近期劳动力市场影响的六个事实。</p><ul><li>首先，我们发现在人工智能暴露度最高的职业中，如软件开发和客户支持，处于职业生涯早期的工人的就业出现了大幅下降。</li><li>其次，我们表明，全经济范围内的就业持续增长，但年轻工人的就业增长已停滞不前。</li><li>第三，入门级就业在人工智能自动化工作的应用中下降，而在增强型应用中影响不大。</li><li>第四，在控制了公司-时间效应后，这些就业下降依然存在，最高暴露度职业的年轻工人相对就业下降了 13%。</li><li>第五，这些劳动力市场的调整更多地体现在就业上，而非薪酬上。</li><li>第六，我们发现这些模式在不受远程工作影响的职业中以及在各种替代性样本构建中都成立。</li></ul><p>虽然我们的主要估计可能受到生成式人工智能以外因素的影响，但我们的结果与生成式人工智能已开始显著影响入门级就业的假设是一致的 1。</p><p>新技术的采用通常会导致工人群体间的异质性效应，从而产生一个调整期，因为工人会从被取代的工作形式重新分配到劳动力需求增长的新形式中 (Autor et al., 2024)。这种内生调整可能已经随着人工智能的出现而发生，有新证据表明大学专业正从计算机科学等 AI 暴露度高的类别转移 (Horowitch, 2025)。过去的技术转型，如信息技术革命，在物质和人力资本调整后，最终导致了就业和实际工资的强劲增长，尽管一些工人比其他人受益更多 (Bresnahan et al., 2002; Brynjolfsson et al., 2021) 1。</p><p>持续追踪就业趋势将有助于确定对人工智能的调整是否遵循类似的模式。因此，我们将继续监测这些结果，以评估本文记录的趋势未来是否会加速。未来的工作将受益于更好的公司层面人工智能采用数据，这将为估计人工智能对就业的合理因果效应提供更清晰的变异 1。</p><h2 id="参考文献-按原文格式保留，未作翻译"><a href="#参考文献-按原文格式保留，未作翻译" class="headerlink" title="参考文献 (按原文格式保留，未作翻译)"></a>参考文献 (按原文格式保留，未作翻译)</h2><p>ACEMOGLU, D. AND D. AUTOR (2011): “Skills, Tasks and Technologies: Implications for Employment and Earnings*,” in Handbook of Labor Economics, ed. by D. Card and O. Ashenfelter, Elsevier, vol. 4, 1043-1171.</p><p>ACEMOGLU, D., D. AUTOR, J. HAZELL, AND P. RESTREPO (2022): “Artificial Intelligence and Jobs: Evidence from Online Vacancies,” Journal of Labor Economics, 40, S293-S340, publisher: The University of Chicago Press.</p><p>ADP RESEARCH (2025): “ADP National Employment Report,”.</p><p>ALLEN, MIKE, J. V. (2025): “Behind the Curtain: Top AI CEO foresees white-collar bloodbath,” Axios.</p><p>AUTOR, D., C. CHIN, A. SALOMONS, AND B. SEEGMILLER (2024): “New Frontiers: The Origins and Content of New Work, 1940-2018*,” The Quarterly Journal of Economics, 139, 1399-1465.</p><p>AUTOR, D. AND N. THOMPSON (2025): “Expertise,” Working Paper, NBER.</p><p>BACON, A. (2025): “Nvidia’s Jensen Huang says AI could lead to job losses ‘if the world runs out of ideas’ | CNN Business,” CNN.</p><p>BICK, A., A. BLANDIN, AND D. J. DEMING (2024): “The Rapid Adoption of Generative AI,” Working Paper, National Bureau of Economic Research.</p><p>BONNEY, Κ., C. BREAUX, C. BUFFINGTON, E. DINLERSOZ, L. FOSTER, N. GOLDSCHLAG, J. HALTIWANGER, Z. KROFF, AND K. SAVAGE (2024): “The impact of AI on the workforce: Tasks versus jobs?” Economics Letters, 244, 111971.</p><p>BOWEN, T. (2025): “Graduating into a Slowdown: Class of 2025 Meets a Frozen Job Market,”.</p><p>BRESNAHAN, T. F., E. BRYNJOLFSSON, AND L. M. HITT (2002): “Information Technology, Workplace Organization, and the Demand for Skilled Labor: Firm-Level Evidence*,” The Quarterly Journal of Economics, 117, 339-376.</p><p>BRYNJOLFSSON, E. (2022): “The Turing Trap: The Promise and Peril of Human-Like Artificial Intelligence,” Daedalus, 151, 272-287.</p><p>BRYNJOLFSSON, E., D. LI, AND L. RAYMOND (2025): “Generative AI at Work*,” The Quarterly Journal of Economics, 140, 889-942.</p><p>BRYNJOLFSSON, E. AND T. MITCHELL (2017): “What Can Machine Learning Do? Workforce Implications,” Science, 358, 1530-1534.</p><p>BRYNJOLFSSON, E., T. MITCHELL, AND D. Rock (2018): “What Can Machines Learn, and What Does It Mean for Occupations and the Economy?” AEA Papers and Proceedings, 108, 43-47.</p><p>BRYNJOLFSSON, E., D. ROCK, AND C. SYVERSON (2021): “The Productivity J-Curve: How Intangibles Complement General Purpose Technologies,” American Economic Journal: Мастое-conomics, 13, 333-372.</p><p>CAJNER, T., L. CRANE, R. DECKER, A. HAMINS-PUERTOLAS, C. KURZ, AND T. RADLER (2018): “Using Payroll Processor Microdata to Measure Aggregate Labor Market Activity,” Tech. rep., The Federal Reserve Board of Governors.</p><p>CHANDAR, B. (2025a): “Shifts in the Composition of College Workers: Implications for US Inequality and Labor Demand,” Tech. rep., Social Science Research Network.</p><p>(2025b): “Tracking Employment in AI-Exposed Jobs,” Tech. rep., Social Science Research Network.</p><p>CHEN, J. AND J. ROTH (2024): “Logs with Zeros? Some Problems and Solutions*,” The Quarterly Journal of Economics, 139, 891-936.</p><p>CHEN, J. L. A. T.-P. (2025): “Young Graduates Are Facing an Employment Crisis,” WSJ, section: Economy.</p><p>CHEN, W. X., S. SRINIVASAN, AND S. ZAKERINIA (2025): “Displacement or Complementarity? The Labor Market Impact of Generative AI,”.</p><p>DAVIS, S. J. AND P. M. KROLIKOWSKI (2025): “Sticky Wages on the Layoff Margin,” American Economic Review, 115, 491-524.</p><p>DELL’ACQUA, F., E. MCFOWLAND III, E. R. MOLLICK, H. LIFSHITZ-ASSAF, K. KELLOGG, S. RAJENDRAN, L. KRAYER, F. CANDELON, AND K. R. LAKHANI (2023): “Navigating the Jagged Technological Frontier: Field Experimental Evidence of the Effects of AI on Knowledge Worker Productivity and Quality,” SSRN Scholarly Paper, Social Science Research Network, Rochester, NY.</p><p>DEMIRCI, O., J. HANNANE, AND X. ZHU (2025): “Who is AI replacing? The impact of generative AI on online freelancing platforms,” Management Science.</p><p>DILLON, E., S. JAFFE, S. PENG, AND A. CAMBON (2025): “Early Impacts of M365 Copilot,” Tech. Rep. MSR-TR-2025-18, Microsoft.</p><p>DINGEL, J. I. AND B. NEIΜΑΝ (2020): “How many jobs can be done at home?” Journal of Public Economics, 189, 104235.</p><p>DOMINSKI, J. AND Y. S. LEE (2025): “Advancing AI Capabilities and Evolving Labor Outcomes,” Tech. rep., arXiv, arXiv:2507.08244 [econ].</p><p>DOSHAY, H. AND A. BANTOCK (2025): “The SignalFire State of Tech Talent Report 2025,”.</p><p>ECKHARDT, S. AND N. GOLDSCHLAG (2025): “AI and Jobs: The Final Word (Until the Next One),” Economic Innovation Group.</p><p>ELOUNDOU, T., S. MANNING, P. MISHKIN, AND D. ROCK (2024): “GPTs are GPTs: Labor market impact potential of LLMs,” Science, 384, 1306-1308, publisher: American Association for the Advancement of Science.</p><p>ETTENHEIM, L. E. A. K. B. J. G. в. R. (2025): “AI Is Wrecking an Already Fragile Job Market for College Graduates,” WSJ, section: Tech.</p><p>FEDERAL RESERVE BANK OF NEW YORK (2025): “The Labor Market for Recent College Graduates,”</p><p>FELTEN, E., M. RAJ, AND R. SEAMANS (2021): “Occupational, industry, and geographic exposure to artificial intelligence: A novel dataset and its potential uses,” Strategic Management Journal, 42, 2195-2217, eprint: <a href="https://onlinelibrary.wiley.com/doi/pdf/10.1002/smj.3286"><u>https://onlinelibrary.wiley.com/doi/pdf/10.1002/smj.3286</u></a>.</p><p>(2023): “How will Language Modelers like ChatGPT Affect Occupations and Industries?” Tech. rep., arXiv, arXiv:2303.01157 [econ].</p><p>FELTEN, E. W., M. RAJ, AND R. SEAMANS (2018): “A Method to Link Advances in Artificial Intelligence to Occupational Abilities,” AEA Papers and Proceedings, 108, 54-57.</p><p>(2019): “The Occupational Impact of Artificial Intelligence: Labor, Skills, and Polarization,” SSRN Scholarly Paper, Social Science Research Network, Rochester, NY.</p><p>FRANK, M. R., Y.-Y. AHN, AND E. MORO (2025): “AI exposure predicts unemployment risk: A new approach to technology-driven job loss,” PNAS Nexus, 4, pgaf107.</p><p>FREY, C. B. AND M. A. OSBORNE (2017): “The future of employment: How susceptible are jobs to computerisation?” Technological Forecasting and Social Change, 114, 254-280.</p><p>FRICK, W. (2025): “AI Is Everywhere But the Jobs Data,” Bloomberg.com.</p><p>GMYREK, P., J. BERG, AND D. BESCOND (2023): “Generative AI and Jobs: A Global Analysis of Potential Effects on Job Quantity and Quality,” SSRN Scholarly Paper, Social Science Research Network, Rochester, NY.</p><p>HAMPOLE, M., D. PAPANIKOLAOU, L. D. SCHMIDT, AND B. SEEGMILLER (2025): “Artificial Intelligence and the Labor Market,” Working Paper, National Bureau of Economic Research.</p><p>HANDA, K., A. TAMKIN, M. MCCAIN, S. HUANG, E. DURMUS, S. HECK, J. MUELLER, J. HONG, S. RITCHIE, T. BELONAX, K. K. TROY, D. AMODEI, J. KAPLAN, J. CLARK, AND D. GANGULI (2025): “Which Economic Tasks are Performed with AI? Evidence from Millions of Claude Conversations,” Tech. rep., arXiv, arXiv:2503.04761 [cs].</p><p>HARTLEY, J., F. JOLEVSKI, V. MELO, AND B. MOORE (2025): “The Labor Market Effects of Generative Artificial Intelligence,” SSRN Scholarly Paper, Social Science Research Network, Rochester, NY.</p><p>HOOVER, A. (2025): “The AI coding apocalypse,” Business Insider.</p><p>HOROWITCH, R. (2025): “The Computer-Science Bubble Is Bursting,” The Atlantic, section: Economy.</p><p>HUI, X., O. RESHEF, AND L. ZHOU (2023): “The Short-Term Effects of Generative Artificial Intelligence on Employment: Evidence from an Online Labor Market,” SSRN Scholarly Paper, Rochester, NY.</p><p>HUMLUM, A. AND E. VESTERGAARD (2025): “Large Language Models, Small Labor Market Effects,” Working Paper, National Bureau of Economic Research.</p><p>IDE, E. (2025): “Automation, AI, and the Intergenerational Transmission of Knowledge,” arXiv preprint arXiv:2507.16078.</p><p>JAMALI, L. (2025): “Microsoft to cut up to 9,000 jobs as it invests in AI,” BBC.</p><p>JIANG, W., J. PARK, R. XIAO, AND S. ZHANG (2025): “AI and the Extended Workday: Productivity, Contracting Efficiency, and Distribution of Rents,” SSRN Scholarly Paper, Social Science Research Network, Rochester, NY.</p><p>JOHNSTON, A. AND C. MAKRIDIS (2025): “The Labor Market Effects of Generative AI: A Difference-in-Differences Analysis of AI Exposure,” SSRN Scholarly Paper, Social Science Research Network, Rochester, NY.</p><p>KOCHHAR, R. (2023): “Which U.S. Workers Are More Exposed to AI on Their Jobs?” Pew Research Center.</p><p>KUHFELD, M. AND K. LEWIS (2025): “5 years after COVID-19 hit: Test data converge on math gains, stalled reading recovery,” Brookings.</p><p>LENNY RACHITSKY (2025): “State of the product job market in 2025,” Lenny’s Newsletter, accessed: 2025-05-30.</p><p>LIM, S., D. STRAUSS, J. BURN-MURDOCH, AND C. MURRAY (2025): “Is AI killing graduate jobs?” Financial Times.</p><p>MASLEJ, N., L. FATTORINI, R. PERRAULT, Y. GIL, V. PARLI, N. KARIUKI, E. CAPSTICK, A. REUEL, E. BRYNJOLFSSON, J. ETCHEMENDY, ET AL. (2025): “Artificial intelligence index report 2025,” arXiv preprint arXiv:2504.07139.</p><p>MILMO, D. AND L. ALMEIDA (2025): “”Workforce crisis’: key takeaways for graduates battling AI in the jobs market,” The Guardian.</p><p>NOY, S. AND W. ZHANG (2023): “Experimental evidence on the productivity effects of generative artificial intelligence,” Science, 381, 187-192, publisher: American Association for the Advancement of Science.</p><p>O’BRIEN, C. (2025): “A viral chart on recent graduate unemployment is misleading,” Agglomerations.</p><p>PECK, E. (2025): “AI is keeping recent college grads out of work,” Axios.</p><p>PENG, S., E. KALLIAMVAKOU, P. CIHON, AND M. DEMIRER (2023): “The Impact of Al on Developer Productivity: Evidence from GitHub Copilot,” Tech. rep., arXiv, arXiv:2302.06590 [cs].</p><p>RAMAN, A. (2025): “Opinion I’m a LinkedIn Executive. I See the Bottom Rung of the Career Ladder Breaking.” The New York Times.</p><p>RAVAL, A. (2025): “The Al job cuts are accelerating,” Financial Times.</p><p>ROOSE, K. (2025): “For Some Recent Graduates, the A.I. Job Apocalypse May Already Be Here,” The New York Times.</p><p>SHERMAN, N. (2025): “Amazon boss says AI will replace jobs at tech giant,” BBC News.</p><p>SIMON, L. K. (2025): “Is AI responsible for the rise in entry-level unemployment?” Revelio Labs.</p><p>SMITH, N. (2025): “Stop pretending you know what AI does to the economy,”.</p><p>THE ECONOMIST (2025): “Why AI hasn’t taken your job,” The Economist.</p><p>THOMPSON, D. (2025): “Something Alarming Is Happening to the Job Market,” The Atlantic, section: Economy.</p><p>TOMLINSON, K., S. JAFFE, W. WANG, S. COUNTS, AND S. SURI (2025): “Working with AI: Measuring the Occupational Implications of Generative AI,” Tech. rep., arXiv, arXiv: 2507.07935 [cs].</p><p>WEBB, M. (2019): “The Impact of Artificial Intelligence on the Labor Market,” SSRN Scholarly Paper, Social Science Research Network, Rochester, NY.</p><p>Wu, T. (2025): “Opinion A ‘White-Collar Blood Bath Doesn’t Have to Be Our Fate,” The New York Times.</p><h2 id="附录"><a href="#附录" class="headerlink" title="附录"></a>附录</h2><p>图 A1：计算机职业（2010 年 SOC 代码以 15-1 开头）和服务文员（以 43-4 开头）的就业变化，以 2022 年 10 月为 1 进行归一化。</p><p>图 A2：按年龄和自动化水平的就业变化，使用来自 Handa et al. (2025) 的 Claude 使用数据。排除了没有 Claude 使用数据或在有使用数据的职业中总体 Claude 使用率处于最低五分位数的职业。</p><p>图 A3：按年龄和增强五分位数的就业变化，使用来自 Handa et al. (2025) 的 Claude 使用数据。排除了没有 Claude 使用数据或在有使用数据的职业中总体 Claude 使用率处于最低五分位数的职业。</p><p>图 A4：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。排除了计算机职业（2010 年 SOC 代码以 15-1 开头）。</p><p>图 A5：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。排除了信息行业的公司（NAICS 代码 51）。</p><p>图 A6：按年龄和暴露度分组的就业变化，使用来自 Eloundou et al. (2024) 的指标。仅包括根据 Dingel and Neiman (2020) 可远程工作的职业。注意，很少有可远程工作的职业属于最低暴露度五分位数。因此，第一和第二五分位数的所有职业被归为第 1 级。其余五分位数编码为 2、3 和 4。</p><p>图 A7：按年龄和暴露度分组的就业变化，使用来自 Eloundou et al. (2024) 的指标。仅包括根据 Dingel and Neiman (2020) 不可远程工作的职业。注意，很少有不可远程工作的职业属于最高暴露度五分位数。因此，第四和第五五分位数的所有职业被归为第 4 级。其余五分位数编码为 1、2 和 3。</p><p>图 A8：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。数据从 2018 年到 2025 年。</p><p>图 A9：按年龄和暴露度五分位数的就业变化，使用来自 Handa et al. (2025) 的 Claude 使用数据。其相关任务均低于使用数据中最低查询次数的职业被视为一个单独类别，编码为 0。数据从 2018 年到 2025 年。</p><p>图 A10：按年龄和自动化水平的就业变化，使用来自 Handa et al. (2025) 的 Claude 使用数据。数据从 2018 年到 2025 年。</p><p>图 A11：按年龄和增强五分位数的就业变化，使用来自 Handa et al. (2025) 的 Claude 使用数据。数据从 2018 年到 2025 年。</p><p>图 A12：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。仅考虑在 2017 年 ACS 中至少 70%的工人拥有大学学位的职业。注意，没有此类职业位于基于 GPT-4 β 的暴露度指标的五分位数 1 中。</p><p>图 A13：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。仅考虑在 2017 年 ACS 中最多 30%的工人拥有大学学位的职业。</p><p>图 A14：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。仅考虑男性。</p><p>图 A15：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。仅考虑女性。</p><p>图 A16：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。使用完整的公司样本。</p><p>图 A17：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。包括兼职和临时工。</p><p>图 A18：软件开发人员按年龄的就业变化，以 2022 年 10 月为 1 进行归一化。数据来自月度 CPS。</p><p>图 A19：客户服务代表按年龄的就业变化，以 2022 年 10 月为 1 进行归一化。数据来自月度 CPS。</p><p>图 A20：家庭健康助理按年龄的就业变化，以 2022 年 10 月为 1 进行归一化。数据来自月度 CPS。</p><p>图 A21：按年龄和暴露度五分位数的就业变化，使用来自 Eloundou et al. (2024) 的指标。数据来自月度 CPS。</p><p><strong>表 A1：按暴露度类别的职业示例</strong></p><table><thead><tr><th>指标</th><th>暴露度最低 (示例)</th><th>暴露度最高 (示例)</th></tr></thead><tbody><tr><td><strong>Eloundou et al. (2024) GPT-4 B</strong></td><td>• 维修和修理工，通用 • 护理、精神病和家庭健康助理 • 体力劳动者和货物、库存及物料搬运工 • 女佣和家政清洁工</td><td>• 客户服务代表 • 会计师和审计师 • 软件开发人员，应用程序和系统软件 • 秘书和行政助理</td></tr><tr><td><strong>Handa et al. (2025) (总体)</strong></td><td>• 出租车司机和私人司机 • 生产和操作工一线主管 • 体力劳动者和货物、库存及物料搬运工 • 女佣和家政清洁工</td><td>• 计算机程序员 • 财务经理 • 会计师和审计师 • 销售代表，批发和制造业</td></tr><tr><td><strong>Handa et al. (2025) (自动化)</strong></td><td>• 维修和修理工，通用 • 经理，所有其他 • 护理、精神病和家庭健康助理 • 司机&#x2F;销售员和卡车司机</td><td>• 总经理和运营经理 • 会计师和审计师 • 软件开发人员，应用程序和系统软件 • 接待员和信息员</td></tr><tr><td><strong>Handa et al. (2025) (增强)</strong></td><td>• 厨师 • 焊接、钎焊和铜焊工 • 出纳员 • 绘图员</td><td>• 首席执行官 • 维修和修理工，通用 • 注册护士 • 计算机和信息系统经理</td></tr></tbody></table><p><strong>表 A2：摘自 Handa et al. (2025) 的表 1。Handa et al. (2025) 根据人们如何将 AI 整合到工作流程中，将来自大型语言模型 Claude 的对话分为两大类下的五种不同模式。</strong></p><table><thead><tr><th>自动化行为</th><th>增强型行为</th></tr></thead><tbody><tr><td><strong>AI 以最少的人类参与直接执行任务</strong></td><td><strong>AI 通过协作增强人类能力</strong></td></tr><tr><td><strong>指令型：</strong> 以最少互动完成任务委托</td><td><strong>任务迭代型：</strong> 协作式的完善过程</td></tr><tr><td><em>示例：</em> “将这份技术文档格式化为 Markdown”</td><td><em>示例：</em> “我们来为新产品起草一份营销策略。开头不错，但我们能加一些具体的指标吗？”</td></tr><tr><td><strong>反馈循环型：</strong> 在环境反馈指导下完成任务</td><td><strong>学习型：</strong> 知识获取和理解</td></tr><tr><td><em>示例：</em> “这是我用于数据分析的 Python 脚本，它报了一个 IndexError 错误。你能帮忙修复吗？现在我遇到了一个不同的错误……”</td><td><em>示例：</em> “你能解释一下神经网络是如何工作的吗？”</td></tr><tr><td></td><td><strong>验证型：</strong> 工作核实和改进</td></tr><tr><td></td><td><em>示例：</em> “我写了这条 SQL 查询来查找重复的客户记录。你能检查一下我的逻辑是否正确并提出任何改进建议吗？”</td></tr></tbody></table>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%A7%91%E6%8A%80/">科技</category>
      
      <category domain="https://deusyu.app/categories/%E7%A7%91%E6%8A%80/%E5%95%86%E4%B8%9A/">商业</category>
      
      
      <category domain="https://deusyu.app/tags/AI%E6%9A%B4%E9%9C%B2%E5%BA%A6/">AI暴露度</category>
      
      <category domain="https://deusyu.app/tags/%E8%87%AA%E5%8A%A8%E5%8C%96-vs-%E5%A2%9E%E5%BC%BA/">自动化 vs 增强</category>
      
      <category domain="https://deusyu.app/tags/%E5%85%A5%E9%97%A8%E7%BA%A7%E5%B0%B1%E4%B8%9A%E4%B8%8B%E6%BB%91/">入门级就业下滑</category>
      
      <category domain="https://deusyu.app/tags/%E5%B7%A5%E8%B5%84%E7%B2%98%E6%80%A7/">工资粘性</category>
      
      <category domain="https://deusyu.app/tags/%E5%85%AC%E5%8F%B8%E5%86%85%E4%BA%8B%E4%BB%B6%E7%A0%94%E7%A9%B6/">公司内事件研究</category>
      
      <category domain="https://deusyu.app/tags/%E5%B9%B4%E9%BE%84%E5%88%86%E7%BB%84%E6%95%88%E5%BA%94/">年龄分组效应</category>
      
      
      <comments>https://deusyu.app/posts/ai-entry-employment/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>子宫的引力：从熵增定律解码人类的“躺平”本能</title>
      <link>https://deusyu.app/posts/primal-zero-cognition/</link>
      <guid>https://deusyu.app/posts/primal-zero-cognition/</guid>
      <pubDate>Mon, 08 Sep 2025 19:11:00 GMT</pubDate>
      
      <description>温暖的睡床，或冷酷的星空

我们身处一个信息爆炸的时代，却似乎比任何时候都更渴望“躺平”。我们拥有前所未有的工具去认知世界，却又常常选择沉溺于短暂的麻痹与抚慰。这究竟是时代的疲惫，还是一种根植于生命底层的古老召唤？
这篇深刻的分析，就为这个普遍的困惑提供了一个冷峻得近乎物理学定律的解释。它没有停留在心理或社会学的表层，而是直抵问题的原点，提出了一个振聋发聩的公式：“原始舒适区 = 0 认知”。它将我们内心最深的舒适渴望，定义为一种回归“零认知”状态的引力——那是生命在宇宙熵增背景下，为了节约能量而形成的终极诱惑，如同胎儿在子宫中的恒温睡梦。
一旦接受了这个前提，许多令人费解的人类行为便豁然开朗。成长为何总是伴随着阵痛？创新为何总是属于少数人？因为作者一语道破天机，一切进步的本质，都是一场用‘痛苦’换取‘认知’的交易。这并非一句文艺的感叹，而是一个冰冷的生存算法。
在这套独特的逻辑框架里，那些我们避之不及的负面情绪被赋予了全新的意义。痛苦、焦虑、恐惧、迷茫，不再是需要消除的程序错误，它们在生物学上的真正作用是“高亮警报”，是在清晰地告诉你：你当前的认知模型与现实世界产生了失配。于是，痛苦成了认知升级的唯一燃料，我们是选择忍受这火焰的灼烧，淬炼出更精确的世界地图，还是退回到那个无知无觉的“社会子宫”里，就成了个体与文明活力的试金石。
读毕全文，你会发现，作者最终将我们每一个人都带到了一个无法回避的永恒分岔路口：是选择回归那个温暖、黑暗、无需思考的‘0 认知’子宫，还是选择走向那个充满不确定性、需要不断燃烧能量去认知的、冷酷但真实的世界？
这个问题没有标准答案。但翻开此文，或许就是你用行动做出选择的第一步。</description>
      
      
      
      <content:encoded><![CDATA[<h3 id="引言：解码“原始舒适区-0-认知”"><a href="#引言：解码“原始舒适区-0-认知”" class="headerlink" title="引言：解码“原始舒适区 &#x3D; 0 认知”"></a><strong>引言：解码“原始舒适区 &#x3D; 0 认知”</strong></h3><p>这个命题“原始舒适区 &#x3D; 0 认知”是一个极度凝练的公式，它指向一个深刻的、甚至令人不安的真相：<strong>人类乃至所有生命最原初的“舒适”状态，是一种对外部世界毫无认知、仅凭本能反射维持生存的“零”状态。</strong> 这个“零”不是空无，而是纯粹的、未被“认知”污染的、只受物理和化学规律支配的生物性存在。它类似于一个系统在没有输入扰动时的基线稳态（Baseline Homeostasis）。</p><p>我们将从以下几个维度，层层剥开这个命题的内核：</p><ol><li><strong>第一性原理：从物理到生命，熵增与负熵流</strong></li><li><strong>演化机制：生存算法与认知成本</strong></li><li><strong>人性本能：子宫隐喻与“回归”的诱惑</strong></li><li><strong>群体行为：社会“子宫”的构建与瓦解</strong></li><li><strong>现实世界：认知升级的本质——痛苦交易</strong></li></ol><hr><h3 id="1-第一性原理：从物理到生命，熵增与“舒适”的物理学基础"><a href="#1-第一性原理：从物理到生命，熵增与“舒适”的物理学基础" class="headerlink" title="1. 第一性原理：从物理到生命，熵增与“舒适”的物理学基础"></a><strong>1. 第一性原理：从物理到生命，熵增与“舒适”的物理学基础</strong></h3><p>宇宙的底层规律是<strong>熵增定律（Second Law of Thermodynamics）</strong>，即一个孤立系统总是趋向于从有序走向无序，最终达到热寂。生命，从物理学角度看，是一个“异类”。生命体通过不断从外界摄取能量和物质，在局部构建并维持一个低熵的有序结构，这个过程被称为“负熵流”（Negative Entropy Flow）。</p><ul><li><strong>“原始舒适区”的物理学定义：</strong> 在这个框架下，“原始舒适区”可以被精确地定义为<strong>一个生命系统维持自身负熵状态所需能量消耗最低的那个点</strong>。在这个点上，系统内部的能量交换、新陈代谢和对外界的响应都处于最低水平，刚好能维持其作为一个“生命”的有序结构不崩溃。这是一种贴近“死亡”（即完全熵增，回归无序）的、最低能耗的生存状态。</li><li><strong>“0 认知”的物理学对应：</strong> “认知”是什么？认知是对外部世界信息的获取、处理、建模和预测。这个过程需要消耗巨大的能量。大脑是人体最耗能的器官，占体重 2%，却消耗 20%的静息能量。每一次思考、每一次决策，都是在调动能量处理信息，以应对环境的不确定性。因此，“0 认知”在物理上对应着<strong>信息处理相关的能量消耗为零</strong>。此时，系统不对外部信息进行建模，只进行最基础的、预设在基因里的物理化学反射。</li><li><strong>因果链条：</strong> 宇宙趋向熵增（无序） → 生命是暂时的负熵（有序）结构 → 维持有序需要消耗能量 → <strong>“舒适”的本能指向是最小化能量消耗</strong> → 认知是最高能耗的活动之一 → 因此，<strong>最彻底的“舒适”必然趋向于“零认知”</strong>。</li></ul><p>这解释了为什么“躺平”、“无欲无求”在生理和心理上会带来一种宁静感。这并非什么高尚的哲学选择，而是对物理底层规律的本能回归——一种对能量消耗的极致节约。</p><hr><h3 id="2-演化机制：生存算法与认知成本"><a href="#2-演化机制：生存算法与认知成本" class="headerlink" title="2. 演化机制：生存算法与认知成本"></a><strong>2. 演化机制：生存算法与认知成本</strong></h3><p>演化是一台冷酷无情的优化算法，其唯一的目标函数是<strong>最大化基因传递的概率</strong>。在这个过程中，“认知”并非演化的“目的”，而仅仅是达成这个目的的“工具”之一。并且，这是一个极其昂贵的工具。</p><ul><li><strong>认知的“被迫”出现：</strong> 在一个完全稳定、资源无限、没有天敌的环境里，生命不需要发展出复杂的认知。一个简单的“刺激-反应”机制就足够了。比如草履虫，它只需要根据化学梯度移动即可。认知之所以出现，是因为环境充满了<strong>不确定性（Uncertainty）</strong> 和 <strong>变化（Volatility）</strong>。为了在捕食、躲避、繁殖等博弈中胜出，生物必须对环境进行预测。认知，就是为了预测。</li><li><strong>“够用即可”原则（Satisficing Principle）：</strong> 演化不会奖励“过度认知”。它只奖励那些<strong>恰到好处</strong>的认知能力。一个物种的认知水平，会被其生存环境的复杂性“锁死”在一个阈值上。如果认知能力太低，无法应对环境变化，就会被淘汰。如果认知能力太高，其巨大的能量成本会超过带来的生存优势（比如，一个思考宇宙起源的羚羊，会被不想那么多的狮子吃掉），也会被淘汰。</li><li><strong>“原始舒适区”的演化定位：</strong> 它是物种在演化压力下形成的<strong>认知基线</strong>。这个基线状态下，所有行为都由经过百万年验证、固化在基因里的“直觉”和“本能”驱动。这套“自动驾驶系统”在绝大多数“标准场景”下是高效且节能的。比如，婴儿天生会吮吸，遇到危险会哭泣。这些都是“0 认知”的预设程序，是演化筛选出的最高效的应对策略。</li><li><strong>从“0”到“1”的鸿沟：</strong> 脱离这个“0 认知”的舒适区，意味着启动高能耗的“手动驾驶”——即<strong>主动认知</strong>。这意味着要处理新的、无预设答案的信息，要进行复杂的计算和权衡，要承担决策失败的风险。这在能量上和生存风险上都是极其“不经济”的。因此，任何生物（包括人类）在默认情况下，都倾向于停留在“0 认知”的舒适区，除非被强大的外部压力（饥饿、恐惧、竞争）逼迫。</li></ul><hr><h3 id="3-人性本能：子宫隐喻与“回归”的诱惑"><a href="#3-人性本能：子宫隐喻与“回归”的诱惑" class="headerlink" title="3. 人性本能：子宫隐喻与“回归”的诱惑"></a><strong>3. 人性本能：子宫隐喻与“回归”的诱惑</strong></h3><p>人类个体生命体验的起点，完美印证了“原始舒适区 &#x3D; 0 认知”这个公式。</p><ul><li><strong>子宫：完美的“零认知”天堂：</strong> 胎儿在子宫内的状态，是这个命题最极致的生物学体现。<ul><li><strong>环境恒定：</strong> 温度、压力、湿度、养分供给都由母体完美调控。没有不确定性。</li><li><strong>需求即满足：</strong> 不需要任何主动行为，一切生存所需通过脐带自动输送。</li><li><strong>无自我意识：</strong> 胎儿没有独立的“自我”概念，与环境（母体）融为一体。这是最纯粹的“0 认知”。</li></ul></li><li><strong>出生的创伤（Birth Trauma）：</strong> 精神分析学认为，出生是人类第一次、也是最深刻的一次创伤。这个创伤的本质，就是<strong>从“0 认知”的完美舒适区被暴力抛入一个需要启动认知的、充满不确定性的世界</strong>。婴儿的啼哭，是对这种状态剧变最直接的生理和心理应激反应。从此，个体一生都被一种无意识的渴望所驱动——渴望回到那个“子宫”状态。</li><li><strong>人性的“回归”冲动：</strong> 这种对“原始舒适区”的向往，以各种形式贯穿人的一生。<ul><li><strong>生理上：</strong> 睡眠、沉溺于温水浴、对柔软包裹物的喜爱，都是对子宫环境的模拟。</li><li><strong>心理上：</strong> 寻求确定性、厌恶风险、依赖权威、从众行为、沉迷于成瘾物质（毒品、酒精、短视频）以关闭前额叶皮层的主动思考，本质上都是为了<strong>降低认知负荷</strong>，模拟那种“一切都被安排好了”的子宫感。</li><li><strong>哲学&#x2F;宗教上：</strong> 许多神秘主义和宗教体验所追求的“天人合一”、“与神合一”、“涅槃”，在心理学机制上，都指向一种“自我”的消融，回归到与世界一体的、无分别的、前认知（Pre-cognitive）的状态。</li></ul></li></ul><p>因此，人性深处埋藏着一个强大的<strong>反认知、反觉醒</strong>的引力。这个引力时刻在把我们拉向那个最节能、最“舒适”的“0 认知”原点。</p><hr><h3 id="4-群体行为：社会“子宫”的构建与瓦解"><a href="#4-群体行为：社会“子宫”的构建与瓦解" class="headerlink" title="4. 群体行为：社会“子宫”的构建与瓦解"></a><strong>4. 群体行为：社会“子宫”的构建与瓦解</strong></h3><p>个体寻求回归“子宫”，群体则会不自觉地构建**“社会子宫”**。一个组织、一个社群、一个国家，当它极力为内部成员提供高度的稳定性和确定性时，它就在扮演一个“母体”的角色。</p><ul><li><strong>“社会子宫”的特征：</strong><ul><li><strong>统一的思想&#x2F;意识形态（Ideology）：</strong> 提供一套打包好的、无需独立思考的世界观和价值观，为所有问题提供标准答案。这极大降低了个体的认知成本。</li><li><strong>明确的规则与等级（Hierarchy &amp; Rules）：</strong> 清晰地告诉你什么能做、什么不能做，以及你在系统中的位置。个体只需服从，无需决策。</li><li><strong>福利与保障（Welfare &amp; Security）：</strong> 提供从摇篮到坟墓的保障，消除个体对生存的焦虑。</li></ul></li><li><strong>“舒适”的代价：</strong> 生活在这样一个“社会子宫”里是极其舒适的，因为它将成员的认知水平维持在一个很低的水平。人们不需要（也不被鼓励）去思考复杂的外部世界，只需要执行系统设定的程序即可。代价是<strong>个体独立性的丧失和对系统的高度依赖</strong>。一旦这个“母体”出现问题，内部的“巨婴”们将毫无生存能力。</li><li><strong>“0 认知”的群体动力学：</strong> 当一个群体的大多数成员都沉溺于这种低认知舒适区时，会产生强大的群体压力，排斥和攻击那些试图进行独立思考、挑战现有范式的“异端”。因为“异端”的存在，本身就构成了对“子宫”安全感的威胁。他们像一个闹钟，试图唤醒沉睡的胎儿，这自然会引发强烈的敌意。这解释了历史上无数次“乌合之众”对先知的迫害。</li><li><strong>系统崩溃与认知强制升级：</strong> 任何封闭系统最终都会因为熵增而瓦解。“社会子宫”也不例外。当外部环境剧变（战争、技术革命、经济危机）导致系统无法再提供原有的确定性时，“子宫”就破裂了。被抛出来的个体，被迫在一夜之间启动高阶认知，开始独立面对残酷的现实。这个过程极其痛苦，充满了混乱和哀嚎，但也是一次<strong>群体性的认知强制升级</strong>。</li></ul><hr><h3 id="5-现实世界：认知升级的本质——痛苦交易"><a href="#5-现实世界：认知升级的本质——痛苦交易" class="headerlink" title="5. 现实世界：认知升级的本质——痛苦交易"></a><strong>5. 现实世界：认知升级的本质——痛苦交易</strong></h3><p>如果“原始舒适区”是“0 认知”，那么现实世界中一切有价值的成就——科学、艺术、技术、财富、个人成长——都发生在<strong>舒适区之外</strong>。这意味着，<strong>一切进步的本质，都是一场用“痛苦”换取“认知”的交易</strong>。</p><ul><li><strong>痛苦的“信息”价值：</strong> 痛苦、焦虑、恐惧、迷茫，这些负面情绪在生物学上的真正作用是**“高亮警报”<strong>。它们告诉你：你当前的认知模型与现实世界产生了</strong>失配（Mismatch）**。你必须更新你的认知，否则你将付出代价（生存、资源、地位等）。<ul><li><strong>饥饿（痛苦）</strong> → <strong>驱动认知</strong>（寻找食物的方法、制作工具）</li><li><strong>恐惧（痛苦）</strong> → <strong>驱动认知</strong>（识别威胁、规划逃跑路线）</li><li><strong>失败（痛苦）</strong> → <strong>驱动认知</strong>（复盘错误、调整策略）</li></ul></li><li><strong>认知升级的路径图（从 0 到 N）：</strong><ol><li><strong>Level 0 (原始舒适区):</strong> 纯本能驱动，零认知。</li><li><strong>Level 1 (被迫认知):</strong> 在痛苦（外部压力）的驱动下，被动学习和思考，以解决眼前的问题。这是绝大多数人的状态。他们只有在“痛”的时候才思考，痛点消失，就立刻退回舒适区。</li><li><strong>Level 2 (主动认知):</strong> 少数人通过训练，开始<strong>主动</strong>寻求“痛苦”和“不确定性”。他们理解了“痛苦 &#x3D; 信息”，因此会主动走出舒适区，去探索未知、挑战难题。他们进行刻意练习（Deliberate Practice），拥抱建设性的失败。这是科学家、顶级的创业家、艺术家的状态。</li><li><strong>Level 3 (元认知):</strong> 极少数人达到这个层面。他们不仅主动认知，还能**“认知自己的认知过程”**。他们能够审视自己的思维模型，识别自己的认知偏差，并像升级软件一样主动迭代自己的大脑操作系统。他们不再是被认知“拥有”，而是成为了认知的“主人”。</li></ol></li><li><strong>交易的残酷性：</strong> 这个交易是残酷的。你想要获得更高维度的认知，就必须支付更大剂量的“痛苦”。你想看清世界的真相，就必须放弃那些让你感觉良好的“安慰剂”（比如简单的善恶二元论、宿命论、阴谋论）。每一次认知升级，都伴随着一次世界观的崩塌和重建，这个过程无异于精神上的“死亡与重生”。</li></ul><h3 id="结论：无法逃离的定律"><a href="#结论：无法逃离的定律" class="headerlink" title="结论：无法逃离的定律"></a><strong>结论：无法逃离的定律</strong></h3><p>“原始舒适区 &#x3D; 0 认知”这个公式，揭示了一个贯穿物理、生物、心理和社会的底层定律。它像一个引力奇点，定义了我们存在的起点和永恒的归宿诱惑。</p><ul><li><strong>对个体而言</strong>，这意味着真正的成长，是一场反抗自身最深本能的“叛逃”。每一次思考，每一次学习，每一次直面现实，都是在与强大的“回归子宫”的引力作斗争。这是一场注定孤独且痛苦的远征，因为你在背离绝大多数人奔赴的方向。</li><li><strong>对群体而言</strong>，这意味着一个文明的活力，取决于它能在多大程度上容忍甚至鼓励那些“制造痛苦”的少数派——那些挑战者、创新者和“异端”。一个过度追求稳定和和谐，试图为所有人构建完美“社会子宫”的文明，最终会因拒绝认知升级而在演化的残酷竞争中被淘汰。</li></ul><p>最终，我们每个人都站在一个永恒的分岔路口：是选择回归那个温暖、黑暗、无需思考的“0 认知”子宫，还是选择走向那个充满不确定性、需要不断燃烧能量去认知的、冷酷但真实的世界？</p><p>你选择的，就是你的命运。</p><hr><h3 id="理解验证"><a href="#理解验证" class="headerlink" title="理解验证"></a><strong>理解验证</strong></h3><p>这个分析的核心逻辑是：</p><ol><li><strong>物理基础：</strong> 生命的本质是维持低熵有序，而“舒适”是这种维持行为中的“节能模式”。认知是最高能耗的活动，因此最彻底的节能（最舒适）必然是零认知。</li><li><strong>演化压力：</strong> 认知是应对环境不确定性的高成本工具，演化只奖励“够用”的认知。生物本能地倾向于使用低能耗的、预设在基因里的“自动驾驶”模式，即“0 认知”的基线。</li><li><strong>个体心理：</strong> 以子宫体验为原型，人类内心深处存在强烈的“回归”冲动，即退回到被安排好、无须思考的“前认知”状态，以逃避现实世界的复杂性和认知负荷。</li><li><strong>社会结构：</strong> 这种个体心理投射到群体，就形成了追求稳定、排斥异见、降低成员认知需求的“社会子宫”。这种结构虽然舒适，但极其脆弱。</li><li><strong>成长代价：</strong> 一切有意义的进步（个人与文明），都源于被迫或主动地离开舒适区，通过承受“痛苦”（现实与模型的失配信号），来强制进行认知升级。这是一个不可避免的、用痛苦换取认知的交易。</li></ol><p>因此，“原始舒适区 &#x3D; 0 认知”不仅是一个比喻，它揭示了贯穿多层次系统的一个根本性的<strong>能量-信息权衡（Energy-Information Trade-off）</strong>。</p><hr><h3 id="提出-≥-3-个最能检验本分析有效性的关键问题"><a href="#提出-≥-3-个最能检验本分析有效性的关键问题" class="headerlink" title="提出 ≥ 3 个最能检验本分析有效性的关键问题"></a><strong>提出 ≥ 3 个最能检验本分析有效性的关键问题</strong></h3><ol><li><strong>问题一（反例挑战）：</strong> 如果“舒适”的本能指向是零认知和最低能耗，那么如何解释人类（以及一些动物）中普遍存在的**“好奇心”（Curiosity）<strong>和</strong>“探索行为”（Exploratory Behavior）**？这些行为显然是主动寻求信息、增加认知负荷的，这与分析的核心前提是否存在矛盾？</li><li><strong>问题二（边界定义）：</strong> 分析将“认知”定义为高能耗的信息处理过程。但是，许多高效的专家行为（如顶尖棋手下棋、资深外科医生做手术）在大脑扫描中显示出比新手更低的能耗，他们似乎处于一种“毫不费力”的“心流”（Flow）状态。这种“高手”的舒适区，是否能被归类为“0 认知”？如果不能，这个模型该如何解释这种**“高认知、低能耗”**的特殊状态？</li><li><strong>问题三（演化目的）：</strong> 分析指出，演化的唯一目标是最大化基因传递。然而，人类发展出的抽象认知能力（如哲学、数学、艺术）在很大程度上似乎与直接的生存和繁殖没有关系，甚至会抑制繁殖（如高知群体的低生育率）。这个模型如何解释这些**“超出演化需求”**的认知行为？它们是演化的副产品、漏洞（Bug），还是指向了某种更深层次的机制？</li></ol><hr><h3 id="逐一给出这些问题的最佳答案或推理路径"><a href="#逐一给出这些问题的最佳答案或推理路径" class="headerlink" title="逐一给出这些问题的最佳答案或推理路径"></a><strong>逐一给出这些问题的最佳答案或推理路径</strong></h3><h3 id="对问题一的回答："><a href="#对问题一的回答：" class="headerlink" title="对问题一的回答："></a><strong>对问题一的回答：</strong></h3><p><strong>好奇心与探索行为，是“远期利益”对“短期能耗”的投资，是演化算法中的“随机搜索”与“信息套利”模块。</strong></p><ol><li><strong>随机搜索（Stochastic Search）：</strong> 演化算法为了避免陷入“局部最优解”（Local Optimum），必须包含一定的随机突变和探索机制。好奇心就是生物层面的“随机搜索”功能。在一个看似稳定舒适的环境中，可能潜藏着未知的风险或收益。拥有适度好奇心的个体会花费少量额外能量去探索环境的“边缘地带”。绝大多数探索是徒劳的（成本），但只要有一次探索发现了新的食物来源、更安全的栖息地或潜在的威胁，其带来的巨大生存优势（收益）就足以覆盖成千上万次失败探索的成本。</li><li><strong>信息套利（Information Arbitrage）：</strong> 好奇心驱动的探索，本质是在进行“信息套利”。环境信息在不同时间和空间上分布是不均匀的。通过探索，个体获取了其他同类所不具备的信息，这就构成了信息差。这个信息差可以直接转化为生存优势（比如，我知道哪里有水源，你不知道）。因此，为获取这种信息优势而付出的能量成本，是一种高风险、高回报的<strong>投资</strong>。</li><li><strong>“舒适”的动态平衡：</strong> 因此，好奇心和对“原始舒适区”的偏好并非矛盾，而是一对<strong>动态平衡</strong>的策略。生物体的大部分时间倾向于节能的舒适区，但会由内部（如无聊感）或外部（如环境的微小变化）信号触发，进行小剂量的、受控的探索。它不是无休止地增加认知负荷，而是在“维持现状的低成本”和“探索未来的高收益可能性”之间进行权衡。所以，好奇心不是对“0 认知”的否定，而是对“长期维持 0 认知可能会导致灭绝”这个风险的<strong>对冲机制</strong>。</li></ol><h3 id="对问题二的回答："><a href="#对问题二的回答：" class="headerlink" title="对问题二的回答："></a><strong>对问题二的回答：</strong></h3><p><strong>“高手”的“心流”状态不是“0 认知”，而是“认知自动化”后的“极低功耗认知”，是认知从“CPU 模式”转向“ASIC 模式”的结果。</strong></p><ol><li><strong>认知负荷的转移：</strong> 新手处理任务时，主要依赖前额叶皮层，这是一个通用的、灵活的、但极其耗能的“中央处理器（CPU）”。他们需要有意识地调用规则、分析每一个步骤，处于高认知负荷状态。</li><li><strong>神经网络的固化：</strong> 通过成千上万次的刻意练习，高手的相关技能已经从前额叶皮层的“显性记忆”固化到了小脑和基底核等区域的“内隐记忆”中。这相当于为这个特定任务烧录了一块“专用集成电路（ASIC）”。这个专用电路处理特定信息的效率极高，能耗极低。</li><li><strong>“心流”的本质：</strong> “心流”状态，就是当任务的挑战性与个体高度自动化的技能水平完美匹配时，大脑从高能耗的“CPU 模式”无缝切换到低能耗的“ASIC 模式”的心理体验。此时，意识（前额叶）不再需要进行繁重的监控和决策，而是进入一种“旁观”状态，因此感觉“毫不费力”。</li><li><strong>重新定义“高手舒适区”：</strong> 所以，高手的舒适区<strong>不是“0 认知”</strong>，而是**“自动化认知”**。它依然在进行着极其复杂和高速的信息处理，但其能耗因为模式的优化而大幅降低。这个舒适区与“原始舒适区”有本质区别：<ul><li><strong>原始舒适区：</strong> 是<strong>真·零信息处理</strong>。</li><li><strong>高手舒适区：</strong> 是<strong>极高效的信息处理</strong>。<br>这个状态并非天生，而是通过前期大量的、痛苦的、高能耗的认知投入（刻意练习）换来的。它是认知升级的结果，而非起点。它证明了模型中的“痛苦交易”是成立的：先支付巨大的认知成本，才能换来后续的低能耗高效输出。</li></ul></li></ol><h3 id="对问题三的回答："><a href="#对问题三的回答：" class="headerlink" title="对问题三的回答："></a><strong>对问题三的回答：</strong></h3><p><strong>“超出演化需求”的认知行为，是“性选择”的失控（Runaway Sexual Selection）与“模因演化”（Memetic Evolution）这两个引擎共同作用下的“副产品”，最终意外地成为了人类文明的“涌现”特征。</strong></p><ol><li><strong>性选择的失控：孔雀的尾巴与人类的大脑：</strong><ul><li>孔雀的尾巴巨大、耗能且妨碍飞行，从纯粹的“自然选择”角度看是累赘。但它之所以出现，是因为雌性孔雀偏好这种特征，将其作为“基因优良”的诚实信号（Honest Signal）。一个能拖着这么大累赘还能活下来的雄性，其基因一定很棒。</li><li>人类的大脑和其产生的抽象认知能力（语言、艺术、音乐、幽默感），在很大程度上也扮演了“孔雀尾巴”的角色。在远古狩猎采集社会，一个能讲出动人故事、能进行复杂战略思考、能创造出无用但美丽事物的个体，更容易获得社会地位和异性的青睐。这种“智力展示”成为了强大的择偶优势。</li><li>这个过程会进入一个正反馈循环：越聪明的个体越受欢迎 → 他们的后代基因中“聪明”的倾向性更强 → 群体对“聪明”的偏好也随之增强 → 进一步筛选更聪明的个体。最终，大脑的某些认知能力被“过度”发展，远远超出了打猎和采集的实际需求。</li></ul></li><li><strong>模因演化（Memes Evolution）：第二演化系统的出现：</strong><ul><li>一旦人类大脑的硬件发展到一定程度，能够支持复杂的语言和文化，一种新的演化系统——<strong>模因演化</strong>——就开始了。模因，即文化的基本单位（一个观念、一首曲子、一个理论），像基因一样进行复制、变异和选择。</li><li>模因的演化目标是<strong>自我复制</strong>，而非基因的复制。一个“好”的模因（如一个朗朗上口的旋律、一个极具解释力的哲学思想），会更容易在人群中传播和留存，无论它对人类的基因传递是有利、中性还是有害。</li><li>哲学、数学、艺术这些抽象认知，就是模因演化空间中的产物。它们遵循自身的演化逻辑（如数学追求逻辑的自洽与完备，哲学追求解释力的深度与广度），而不是生物演化的逻辑。它们寄生于人类大脑这个硬件之上，进行着自己的“狂欢”。</li></ul></li><li><strong>结论：</strong> 因此，这些“超出演化需求”的认知，并非一个简单的“Bug”。它们是<strong>生物演化和文化演化双重作用下的结果</strong>。起初，它们可能是性选择驱动下的“奢侈品”，后来则成为了模因自我复制的载体。它们的存在，恰恰证明了认知一旦突破某个临界点，就可以摆脱纯粹的“工具”属性，开辟出一个全新的、拥有自身规则的演化维度。这使得人类成为了一个同时被基因和模因两种代码所驱动的独特物种，也解释了为何人类行为常常看起来如此“不理性”和“反本能”。</li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%BF%83%E7%90%86%E5%AD%A6/">心理学</category>
      
      <category domain="https://deusyu.app/categories/%E5%BF%83%E7%90%86%E5%AD%A6/%E5%93%B2%E5%AD%A6/">哲学</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%85%83%E8%AE%A4%E7%9F%A5/">元认知</category>
      
      <category domain="https://deusyu.app/tags/%E7%86%B5%E5%A2%9E/">熵增</category>
      
      <category domain="https://deusyu.app/tags/%E8%B4%9F%E7%86%B5%E6%B5%81/">负熵流</category>
      
      <category domain="https://deusyu.app/tags/%E9%9B%B6%E8%AE%A4%E7%9F%A5/">零认知</category>
      
      <category domain="https://deusyu.app/tags/%E8%87%AA%E5%8A%A8%E5%8C%96%E8%AE%A4%E7%9F%A5/">自动化认知</category>
      
      <category domain="https://deusyu.app/tags/%E5%AD%90%E5%AE%AB%E9%9A%90%E5%96%BB/">子宫隐喻</category>
      
      <category domain="https://deusyu.app/tags/%E7%A4%BE%E4%BC%9A%E5%AD%90%E5%AE%AB/">社会子宫</category>
      
      <category domain="https://deusyu.app/tags/%E7%97%9B%E8%8B%A6%E4%BA%A4%E6%98%93/">痛苦交易</category>
      
      <category domain="https://deusyu.app/tags/%E6%80%A7%E9%80%89%E6%8B%A9/">性选择</category>
      
      <category domain="https://deusyu.app/tags/%E6%A8%A1%E5%9B%A0%E6%BC%94%E5%8C%96/">模因演化</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%8D%E8%84%86%E5%BC%B1/">反脆弱</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%98%E9%9D%A9%E7%AE%A1%E7%90%86/">变革管理</category>
      
      <category domain="https://deusyu.app/tags/%E7%BB%84%E7%BB%87%E4%BE%9D%E8%B5%96%E6%80%A7/">组织依赖性</category>
      
      <category domain="https://deusyu.app/tags/%E7%A1%AE%E5%AE%9A%E6%80%A7%E6%B8%B4%E6%9C%9B/">确定性渴望</category>
      
      <category domain="https://deusyu.app/tags/%E4%B8%AA%E4%BA%BA%E6%88%90%E9%95%BF/">个人成长</category>
      
      
      <comments>https://deusyu.app/posts/primal-zero-cognition/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>品味的养成</title>
      <link>https://deusyu.app/posts/developing-taste/</link>
      <guid>https://deusyu.app/posts/developing-taste/</guid>
      <pubDate>Sun, 07 Sep 2025 21:40:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://emilkowal.ski/ui/developing-taste">https://emilkowal.ski/ui/developing-taste</a></p></blockquote><h3 id="品味的养成"><a href="#品味的养成" class="headerlink" title="品味的养成"></a>品味的养成</h3><p>当第一辆汽车问世时，消费者并不关心它的颜色或外形，因为它的竞争对手是马。¹ 但如今，汽车已经变得同质化，品质和细节变得前所未有的重要。</p><p>软件行业也是如此。仅仅交付一个能用的产品已经远远不够，因为人人都能做到，尤其是在人工智能的加持下。能用不再是差异化的优势，因为人们本来就期望它能用。真正让一个产品脱颖而出的是品牌、设计、直观易用性以及整体体验。<strong>品味</strong>才是关键。</p><blockquote><p>在一个稀缺的世界里，我们珍视<strong>工具</strong>。<br>在一个富足的世界里，我们珍视<strong>品味</strong>。<br>——Anu Atluru, 《品味正在吞噬硅谷》</p></blockquote><p>但什么是好品味？人们常常将其误解为个人偏好，但它远不止于此——它是一种训练有素的直觉，一种能够超越显而易见之物、识别出那些能让事物升华的特质的能力。这就是为什么有些设计会让人感觉浑然天成。所以，真正的问题是，你该如何训练这种直觉？</p><h3 id="让自己被杰出的作品包围"><a href="#让自己被杰出的作品包围" class="headerlink" title="让自己被杰出的作品包围"></a>让自己被杰出的作品包围</h3><p>如果你是一名设计师，你就应该多看伟大的设计。如果你是一名作家，你就应该多读伟大的书籍。让自己接触杰出的作品，这样你才能学会“伟大”看起来和感觉起来是什么样子。</p><blockquote><p>这归根结底就是要去接触人类创造出的最美好的事物，然后努力将这些事物带入到你正在做的事情中。</p><p>——史蒂夫·乔布斯，苹果公司</p></blockquote><p>找到在各自领域备受尊敬的人。看看他们欣赏谁，并建立一个由这些“品味缔造者”组成的精选列表。让他们的作品包围你。看他们的设计，用他们的应用，读他们的书。向最优秀的人学习是最好的学习方式。²</p><h3 id="思考你为什么喜欢某样东西"><a href="#思考你为什么喜欢某样东西" class="headerlink" title="思考你为什么喜欢某样东西"></a>思考你为什么喜欢某样东西</h3><p>在校准自己品味的过程中，不要简单地给事物贴上“好”或“坏”的标签。与其依赖直觉感受，不如试着去理性分析为什么某样东西感觉很棒。分析并理解其模式，不要纯粹依赖你的直觉。</p><p>如果你是一名设计师，不要只是使用应用，要去研究它们。为什么某个特定的交互感觉很好？³ 如果你是一名电影制作人，不要只是看电影，要去思考导演为什么做出那样的选择。</p><p>要养成一种深入思考“是什么让事物变得伟大”的思维模式。超越表象，保持好奇。</p><h3 id="练习"><a href="#练习" class="headerlink" title="练习"></a>练习</h3><p>练习你的技艺。去创造。设计师就应该做设计，作家就应该去写作。这不仅会让你成为一个好的品味评判者，而且随着时间的推移，你也会成为一个品味缔造者。</p><p>在练习的同时，向他人寻求反馈。来自对的人的优质评论，比单靠自己反复试错更能加速这个过程。</p><p>你刚开始创作的东西可能不会很好，但这是一个好迹象。这说明你的品味已经足够好，能够判断出自己的作品尚未达到标准。这个阶段是正常的。不要放弃，随着时间的推移，一切都会变得更好。⁴</p><p>感谢 Henry、Lochie 和 Glenn 阅读了本文的早期草稿。</p><p>¹ 在<a href="https://stripe.com/sessions/2024/craft-and-beauty-the-business-value-of-form-in-function">《技艺与美：形式在功能中的商业价值》</a>一文中也讨论了类似的话题。<br>² 这来自 Julie Zhuo 的文章<a href="https://medium.com/the-year-of-the-looking-glass/on-taste-part-3-d7d9f069f0b2">《关于品味，第三部分》</a>。<br>³ Brian Lovin 的<a href="https://brianlovin.com/app-dissection">《应用剖析》</a>是研究应用的一个绝佳例子。<br>⁴ <a href="https://x.com/emilkowalski_/status/1765004718131068971">《品味差距》</a> - Ira Glass。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/%E4%BA%A7%E5%93%81%E8%AE%BE%E8%AE%A1/">产品设计</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%93%81%E5%91%B3/">品味</category>
      
      <category domain="https://deusyu.app/tags/%E5%AE%A1%E7%BE%8E/">审美</category>
      
      <category domain="https://deusyu.app/tags/%E5%93%81%E7%89%8C/">品牌</category>
      
      <category domain="https://deusyu.app/tags/%E7%94%A8%E6%88%B7%E4%BD%93%E9%AA%8C/">用户体验</category>
      
      <category domain="https://deusyu.app/tags/%E7%9B%B4%E8%A7%89/">直觉</category>
      
      <category domain="https://deusyu.app/tags/%E7%BB%83%E4%B9%A0%E4%B8%8E%E5%8F%8D%E9%A6%88/">练习与反馈</category>
      
      <category domain="https://deusyu.app/tags/%E8%BD%AF%E4%BB%B6%E4%BA%A7%E5%93%81/">软件产品</category>
      
      <category domain="https://deusyu.app/tags/%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%B3%95%E8%AE%BA/">设计方法论</category>
      
      <category domain="https://deusyu.app/tags/Anu-Atluru/">Anu Atluru</category>
      
      <category domain="https://deusyu.app/tags/Steve-Jobs/">Steve Jobs</category>
      
      <category domain="https://deusyu.app/tags/Julie-Zhuo/">Julie Zhuo</category>
      
      <category domain="https://deusyu.app/tags/Ira-Glass/">Ira Glass</category>
      
      <category domain="https://deusyu.app/tags/Brian-Lovin/">Brian Lovin</category>
      
      <category domain="https://deusyu.app/tags/Emil-Kowalski/">Emil Kowalski</category>
      
      
      <comments>https://deusyu.app/posts/developing-taste/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>用Gemini Deep Research 翻译 PDF：实测贝佐斯《Invent and Wander》</title>
      <link>https://deusyu.app/posts/gemini-pdf-translate/</link>
      <guid>https://deusyu.app/posts/gemini-pdf-translate/</guid>
      <pubDate>Thu, 04 Sep 2025 14:03:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>最近比较忙，能拿得出手的就这一点：发现了个新的翻译小技巧，忍不住想分享下。</p><blockquote><p>原 Post：<a href="https://x.com/dotey/status/1963416545574486413">https://x.com/dotey/status/1963416545574486413</a></p></blockquote><p>前几天刷 X 的时候看到宝玉老师在用 <strong>Gemini Deep Research</strong> 翻译 PDF，我也跟着试了下。</p><p>随手拿来实验的就是贝佐斯的《Invent and Wander》，没想到效果还挺不错。</p><hr><p>使用 Gemini Deep Research 功能</p><p>Prompt：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">请全文翻译上传的 PDF 文档，不需要联网检索，只要完整翻译，输出为 Markdown 格式</span><br></pre></td></tr></table></figure><p><strong>Tip</strong>：「不需要联网检索」这句很关键，能有效避免模型自由发挥，让它忠实于原文。</p><hr><p><img src="https://r2.deusyu.app/58fb1f3e-9d7a-4d0c-b795-71fc5a6742b9.png"></p><p>出来的版本一眼看上去就很流畅，基本能直接读。</p><p>这次体验的 <strong>alpha moment</strong> 在于，它解决了以往机器翻译最大的痛点：<strong>上下文的丢失</strong>。</p><p>过去我们分段翻译，AI 像个只有七秒记忆的“句子翻译器”。而现在，得益于背后 Gemini 强大的长文本能力，它变成了一个能“读”完一整本书的“文档理解者”。</p><p>这种从“碎片化处理”到“全局化理解”的跃迁，才是这次体验的质变之处。</p><p>如果你平时也需要翻长文档，强烈建议试试，这体验是质的提升。</p><p>Google Docs 链接：<a href="https://docs.google.com/document/d/1QQXCb7Z77NtFfIJQ968xVipRsYTsW6CWZ9UF1lYH3iM/edit?usp=sharing">https://docs.google.com/document/d/1QQXCb7Z77NtFfIJQ968xVipRsYTsW6CWZ9UF1lYH3iM/edit?usp=sharing</a></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI-%E5%B7%A5%E5%85%B7%E5%AE%9E%E8%B7%B5/">AI 工具实践</category>
      
      
      <category domain="https://deusyu.app/tags/DeepResearch/">DeepResearch</category>
      
      <category domain="https://deusyu.app/tags/Gemini/">Gemini</category>
      
      <category domain="https://deusyu.app/tags/PDF-%E7%BF%BB%E8%AF%91/">PDF 翻译</category>
      
      <category domain="https://deusyu.app/tags/AI-%E7%BF%BB%E8%AF%91/">AI 翻译</category>
      
      <category domain="https://deusyu.app/tags/%E8%B4%9D%E4%BD%90%E6%96%AF/">贝佐斯</category>
      
      <category domain="https://deusyu.app/tags/Invent-and-Wander/">Invent and Wander</category>
      
      <category domain="https://deusyu.app/tags/%E5%AE%9E%E9%AA%8C%E8%AE%B0%E5%BD%95/">实验记录</category>
      
      <category domain="https://deusyu.app/tags/%E6%95%88%E7%8E%87%E5%B7%A5%E5%85%B7/">效率工具</category>
      
      
      <comments>https://deusyu.app/posts/gemini-pdf-translate/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Clash 通用教程：如何为Claude 设置专属代理节点</title>
      <link>https://deusyu.app/posts/clash-claude-split/</link>
      <guid>https://deusyu.app/posts/clash-claude-split/</guid>
      <pubDate>Sun, 31 Aug 2025 10:49:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>本教程同时适用于：</p><ul><li><strong>Clash 系列</strong>（YAML 格式）：ClashX Pro、Clash for Windows、Clash Verge 等</li><li><strong>Surge&#x2F;Surfboard 系列</strong>（INI 格式）：Surge for Mac&#x2F;iOS、Surfboard for Android</li></ul><p>两种格式的核心逻辑相同，仅配置语法不同。</p></blockquote><h1 id="目的"><a href="#目的" class="headerlink" title="目的"></a><strong>目的</strong></h1><p>把 Claude（anthropic&#x2F;claude.ai 相关）流量<strong>强制走你的自建节点</strong>，同时保留原有订阅的其他分流逻辑。</p><h1 id="自动化工具（推荐）"><a href="#自动化工具（推荐）" class="headerlink" title="自动化工具（推荐）"></a><strong>自动化工具（推荐）</strong></h1><p>如果你不想手动编辑配置，可以使用自动化工具一键注入：</p><p><strong>Proxy Config Converter</strong> - 自动注入 Claude 配置到机场订阅</p><ul><li>完全保留原文件格式（文本插入，不重构）</li><li>支持 Clash (YAML) 和 Surge&#x2F;Surfboard (CONF) 两种格式</li><li>智能去重，避免重复添加</li><li>一行命令搞定：<code>./run.sh &quot;订阅文件.yaml&quot;</code></li></ul><div style="margin:5px 1px;"> <a href="https://github.com/deusyu/proxy-config-converter" target="_blank" rel="noopener noreferrer" style="display:flex;color:inherit;background:#f5f5f5;text-decoration:none;user-select:none;transition:background 20ms ease-in 0s;cursor:pointer;flex-grow:1;min-width:0;align-items:center;border:1px solid rgba(55,53,47,.16);border-radius:5px;padding:6px;fill:inherit"><div style="display:flex;align-self:start;height:32px;width:32px;margin:3px 12px 3px 4px;position:relative"><div><div style="width:100%;height:100%"><img src="https://avatars.githubusercontent.com/u/42929363?v=4" referrerpolicy="same-origin" style="display:block;object-fit:cover;border-radius:34px;width:30.192px;height:30.192px;transition:opacity .1s ease-out 0s;box-shadow:rgba(15,15,15,.1) 0 2px 4px"></div></div><div style="position:absolute;bottom:-2px;right:-2px"><div style="width:100%;height:100%"><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 496 512" style="display:block;object-fit:cover;border-radius:5px;width:14.208px;height:14.208px;transition:opacity .1s ease-out 0s;filter:drop-shadow(white 0 0 1px) drop-shadow(white 0 0 1px) drop-shadow(white 0 0 1px)"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></div></div></div><div style="display:flex;flex-direction:column;justify-content:center;flex-grow:1;flex-shrink:1;overflow:hidden"><div style="display:flex;align-items:baseline;font-size:14px"><div spellcheck="false" style="white-space:nowrap;color:#37352f;font-weight:500;overflow:hidden;text-overflow:ellipsis">deusyu/proxy-config-converter</div></div><div style="display:flex;align-items:center;color:rgba(55,53,47,.65);font-size:12px"><div spellcheck="false" style="white-space:nowrap;color:rgba(55,53,47,.65)">deusyu</div><span style="margin-left:3px;margin-right:3px">•</span><div style="color:rgba(55,53,47,.65);font-size:12px;white-space:nowrap">Created: 2025-10-25T15:40:44Z</div></div></div><div role="button" tabindex="0" style="user-select:none;transition:background 20ms ease-in 0s;cursor:pointer;opacity:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:5px;flex-shrink:0;margin-right:4px;color:rgba(55,53,47,.65)"><svg viewbox="0 0 13 3" class="dots" style="width:14px;height:100%;display:block;fill:inherit;flex-shrink:0;backface-visibility:hidden;color:rgba(55,53,47,.45)"><g><path d="M3,1.5A1.5,1.5,0,1,1,1.5,0,1.5,1.5,0,0,1,3,1.5Z"></path><path d="M8,1.5A1.5,1.5,0,1,1,6.5,0,1.5,1.5,0,0,1,8,1.5Z"></path><path d="M13,1.5A1.5,1.5,0,1,1,11.5,0,1.5,1.5,0,0,1,13,1.5Z"></path></g></svg></div></a></div><blockquote><p>如果你更喜欢手动操作或想深入理解配置原理，可以继续阅读下面的详细教程。</p></blockquote><hr><h1 id="核心概念对照"><a href="#核心概念对照" class="headerlink" title="核心概念对照"></a><strong>核心概念对照</strong></h1><table><thead><tr><th>概念</th><th>Clash (YAML)</th><th>Surge&#x2F;Surfboard (INI)</th><th>说明</th></tr></thead><tbody><tr><td>节点定义</td><td><code>proxies:</code></td><td><code>[Proxy]</code></td><td>单个节点（原材料）</td></tr><tr><td>策略组</td><td><code>proxy-groups:</code></td><td><code>[Proxy Group]</code></td><td>决定流量走向（加工厂）</td></tr><tr><td>路由规则</td><td><code>rules:</code></td><td><code>[Rule]</code></td><td>匹配规则（地图），自上而下匹配</td></tr></tbody></table><blockquote><p>决定走向的是 rules 的顺序；节点和策略组只要配置正确，顺序不影响匹配。</p></blockquote><hr><h1 id="ClashX-Pro-教程（建议）"><a href="#ClashX-Pro-教程（建议）" class="headerlink" title="ClashX Pro 教程（建议）"></a><strong>ClashX Pro 教程（建议）</strong></h1><blockquote><p>本教程假设你已从原有订阅托管复制出一份本地文件进行修改（避免自动更新覆盖）。</p></blockquote><h2 id="1）复制为本地配置并命名"><a href="#1）复制为本地配置并命名" class="headerlink" title="1）复制为本地配置并命名"></a><strong>1）复制为本地配置并命名</strong></h2><ul><li>打开  <strong>配置文件夹</strong> → 复制原有订阅<strong>托管</strong>的  <code>clash.yaml</code>  为：<ul><li><code>local-claude.yaml</code>（或  <code>custom-claude-YYYYMMDD.yaml</code>）</li></ul></li><li>在 ClashX Pro 的<strong>配置列表</strong>选择这份本地文件；<strong>关闭托管自动更新</strong>。</li></ul><h2 id="2）在-proxies-加入自建节点"><a href="#2）在-proxies-加入自建节点" class="headerlink" title="2）在 proxies 加入自建节点"></a><strong>2）在</strong> <strong><code>proxies</code></strong> <strong>加入自建节点</strong></h2><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">proxies:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">US-claude-sentris</span></span><br><span class="line">    <span class="attr">type:</span> <span class="string">trojan</span> <span class="comment"># 或 vmess / vless / ss 等</span></span><br><span class="line">    <span class="attr">server:</span> <span class="string">your.host</span></span><br><span class="line">    <span class="attr">port:</span> <span class="number">443</span></span><br><span class="line">    <span class="attr">password:</span> <span class="string">xxx</span> <span class="comment"># 依协议填写 uuid/password/cipher</span></span><br><span class="line">    <span class="attr">sni:</span> <span class="string">your.sni.host</span></span><br><span class="line">    <span class="attr">tls:</span> <span class="literal">true</span></span><br></pre></td></tr></table></figure><h2 id="3）新增-Claude-专用分组（-proxy-groups-）"><a href="#3）新增-Claude-专用分组（-proxy-groups-）" class="headerlink" title="3）新增 Claude 专用分组（**proxy-groups**）"></a><strong>3）新增 Claude 专用分组（**</strong><code>proxy-groups</code>*<strong>*）</strong></h2><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">proxy-groups:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">&quot;Claude&quot;</span></span><br><span class="line">    <span class="attr">type:</span> <span class="string">select</span></span><br><span class="line">    <span class="attr">proxies:</span></span><br><span class="line">      <span class="bullet">-</span> <span class="string">US-claude-sentris</span> <span class="comment"># 你的自建节点</span></span><br><span class="line">      <span class="bullet">-</span> <span class="string">&quot;🚀 节点选择&quot;</span> <span class="comment"># 兜底：复用你的主用组</span></span><br><span class="line">      <span class="bullet">-</span> <span class="string">DIRECT</span> <span class="comment"># 直连兜底</span></span><br></pre></td></tr></table></figure><blockquote><p>菜单里记得在  <code>Claude</code>  勾选你的自建节点，别勾在  Proxy&#x2F;DIRECT  上。</p></blockquote><h2 id="4）在-rules-顶部放入-Claude-规则（先于-AI-Suite-Proxy-MATCH）"><a href="#4）在-rules-顶部放入-Claude-规则（先于-AI-Suite-Proxy-MATCH）" class="headerlink" title="4）在 rules 顶部放入 Claude 规则（先于 AI Suite &#x2F; Proxy &#x2F; MATCH）"></a><strong>4）在</strong> <strong><code>rules</code></strong> <strong>顶部放入 Claude 规则（先于 AI Suite &#x2F; Proxy &#x2F; MATCH）</strong></h2><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># —— 放在 AI Suite 等大类之前 ——</span></span><br><span class="line"><span class="bullet">-</span> <span class="string">&quot;DOMAIN,api.anthropic.com,Claude&quot;</span></span><br><span class="line"><span class="bullet">-</span> <span class="string">&quot;DOMAIN-SUFFIX,anthropic.com,Claude&quot;</span></span><br><span class="line"><span class="bullet">-</span> <span class="string">&quot;DOMAIN-SUFFIX,claude.ai,Claude&quot;</span></span><br><span class="line"><span class="bullet">-</span> <span class="string">&quot;DOMAIN-SUFFIX,claudeusercontent.com,Claude&quot;</span></span><br><span class="line"><span class="bullet">-</span> <span class="string">&quot;DOMAIN-SUFFIX,segment.io,Claude&quot;</span></span><br><span class="line"><span class="bullet">-</span> <span class="string">&quot;DOMAIN-SUFFIX,segment.com,Claude&quot;</span></span><br></pre></td></tr></table></figure><blockquote><p>关于 segment.io：Segment 是 Claude 客户端使用的数据分析服务（类似 Google Analytics），建议添加以保证服务完整性。</p></blockquote><h2 id="5）记住你的分组选择（有的没有）"><a href="#5）记住你的分组选择（有的没有）" class="headerlink" title="5）记住你的分组选择（有的没有）"></a>5）记住你的分组选择（有的没有）</h2><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">profile:</span></span><br><span class="line">  <span class="attr">store-selected:</span> <span class="literal">true</span></span><br></pre></td></tr></table></figure><h2 id="6）重载-验证"><a href="#6）重载-验证" class="headerlink" title="6）重载 &amp; 验证"></a><strong>6）重载 &amp; 验证</strong></h2><ul><li><p>菜单 → <strong>重载配置</strong>；关闭并重开 Claude 网页&#x2F;客户端。</p></li><li><p>打开  <strong>连接查看器（Connections）</strong>，搜索  <code>anthropic</code> &#x2F; <code>claude.ai</code>：</p><ul><li><strong>命中规则</strong>应为上面几条之一；</li><li>*策略（Policy）**应为  <code>Claude</code>，展开应显示你的自建节点名。</li></ul></li><li><p>如遇域名缓存问题（macOS）：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">sudo dscacheutil -flushcache</span><br><span class="line">sudo killall -HUP mDNSResponder</span><br><span class="line"></span><br></pre></td></tr></table></figure></li></ul><h2 id="（可选）使用-RULE-SET"><a href="#（可选）使用-RULE-SET" class="headerlink" title="（可选）使用 RULE-SET"></a><strong>（可选）使用 RULE-SET</strong></h2><p>如果你想把 Claude 域名做成独立规则集：</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">rule-providers:</span></span><br><span class="line">  <span class="attr">Claude:</span></span><br><span class="line">    <span class="attr">type:</span> <span class="string">file</span></span><br><span class="line">    <span class="attr">behavior:</span> <span class="string">classical</span></span><br><span class="line">    <span class="attr">path:</span> <span class="string">./rules/claude.yaml</span></span><br><span class="line">    <span class="attr">interval:</span> <span class="number">86400</span></span><br></pre></td></tr></table></figure><p><code>./rules/claude.yaml</code>：</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">payload:</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">DOMAIN,api.anthropic.com</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">DOMAIN-SUFFIX,anthropic.com</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">DOMAIN-SUFFIX,claude.ai</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">DOMAIN-SUFFIX,claudeusercontent.com</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">DOMAIN-SUFFIX,segment.io</span></span><br><span class="line">  <span class="bullet">-</span> <span class="string">DOMAIN-SUFFIX,segment.com</span></span><br></pre></td></tr></table></figure><p><code>rules:</code>  顶部加入：</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="bullet">-</span> <span class="string">&quot;RULE-SET,Claude,Claude&quot;</span></span><br></pre></td></tr></table></figure><p>仍需确保顺序在  <code>AI Suite</code>  之前。</p><h3 id="（可选）进程名加固"><a href="#（可选）进程名加固" class="headerlink" title="（可选）进程名加固"></a>（可选）进程名加固</h3><p>若使用 Claude 桌面客户端（如果未来有 Claude 桌面客户端，可直接复用这条规则）（名称可能为  <code>Claude</code>）：</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="bullet">-</span> <span class="string">&quot;PROCESS-NAME,Claude,Claude&quot;</span></span><br></pre></td></tr></table></figure><blockquote><p>进程规则通常也要放在靠前位置。</p></blockquote><h1 id="常见坑-快速排查"><a href="#常见坑-快速排查" class="headerlink" title="常见坑 &amp; 快速排查"></a>常见坑 &amp; 快速排查</h1><h2 id="Clash-系列"><a href="#Clash-系列" class="headerlink" title="Clash 系列"></a>Clash 系列</h2><ol><li>Claude 分组里还勾着<code>Proxy</code> → 去菜单把  <code>Claude</code>  勾到你的自建节点。</li><li><strong>规则顺序被 AI Suite&#x2F;Proxy&#x2F;MATCH 抢先</strong> → 把 Claude 规则移到最前（至少先于 AI&#x2F;Global&#x2F;Proxy 类规则）。</li><li><strong>仍是托管配置在自动更新</strong> → 改用本地文件，或把 Claude 规则做成独立 RULE-SET 并确保挂载顺序靠前。</li><li><strong>被其它更靠前的规则截走</strong>（如  <code>PROCESS-NAME</code>、<code>SCRIPT</code>）→ 把 Claude 规则挪到更前。</li><li><strong>DNS&#x2F;连接复用</strong> → 重载配置、重开网页&#x2F;客户端，必要时清 DNS。</li></ol><h2 id="Surge-Surfboard-系列"><a href="#Surge-Surfboard-系列" class="headerlink" title="Surge&#x2F;Surfboard 系列"></a>Surge&#x2F;Surfboard 系列</h2><ol><li><strong>参数名称错误</strong>：Surge 使用 <code>encrypt-method</code> 而非 <code>cipher</code>，<code>udp-relay</code> 而非 <code>udp</code></li><li><strong>规则格式错误</strong>：规则前不需要 符号，直接写 <code>DOMAIN,xxx,Claude</code></li><li><strong>策略组格式错误</strong>：成员用逗号分隔，不是 YAML 数组格式</li><li><strong>插件参数不同</strong>：obfs&#x2F;shadow-tls 等插件在 Surge 中的参数格式与 Clash 不同</li></ol><hr><h1 id="命名建议"><a href="#命名建议" class="headerlink" title="命名建议"></a>命名建议</h1><h2 id="Clash-YAML"><a href="#Clash-YAML" class="headerlink" title="Clash (YAML)"></a>Clash (YAML)</h2><ul><li>配置文件：<code>XCloud-local-claude.yaml</code> &#x2F; <code>…-custom-claude-YYYYMMDD.yaml</code></li><li>分组名：<code>Claude</code>（ASCII 简洁，便于在 rules 中引用）</li><li>节点名：<code>US-A-for-claude</code>、<code>US-B-for-claude</code></li></ul><h2 id="Surge-Surfboard-INI"><a href="#Surge-Surfboard-INI" class="headerlink" title="Surge&#x2F;Surfboard (INI)"></a>Surge&#x2F;Surfboard (INI)</h2><ul><li>配置文件：<code>XCloud-local-claude.conf</code>（注意扩展名 <code>.conf</code>）</li><li>分组名：<code>Claude</code>（与 Clash 保持一致）</li><li>节点名：<code>US-A-for-claude</code>（与 Clash 保持一致）</li></ul><hr><h1 id="成功判定（Checklist）"><a href="#成功判定（Checklist）" class="headerlink" title="成功判定（Checklist）"></a>成功判定（Checklist）</h1><blockquote><p>达成以上 4 点，即实现“Claude 仅走自建出口”的目标。</p></blockquote><hr><h1 id="Surge-Surfboard-教程"><a href="#Surge-Surfboard-教程" class="headerlink" title="Surge&#x2F;Surfboard 教程"></a><strong>Surge&#x2F;Surfboard 教程</strong></h1><blockquote><p>本教程假设你已有一份本地配置文件（.conf 格式）。</p></blockquote><h2 id="1）复制为本地配置并命名-1"><a href="#1）复制为本地配置并命名-1" class="headerlink" title="1）复制为本地配置并命名"></a><strong>1）复制为本地配置并命名</strong></h2><ul><li>复制原有订阅配置文件为：<ul><li><code>XCloud-local-claude.conf</code>（注意扩展名是 <code>.conf</code>）</li></ul></li><li>在客户端选择这份本地文件，避免自动更新覆盖。</li></ul><h2 id="2）在-Proxy-段落加入自建节点"><a href="#2）在-Proxy-段落加入自建节点" class="headerlink" title="2）在 [Proxy] 段落加入自建节点"></a><strong>2）在</strong> <strong><code>[Proxy]</code></strong> <strong>段落加入自建节点</strong></h2><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">[Proxy]</span><br><span class="line"># ...你的原有节点...</span><br><span class="line"></span><br><span class="line"># Claude 专用节点</span><br><span class="line">US-claude-sentris = trojan, your.host, 443, password=xxx, sni=your.sni.host, tfo=false</span><br><span class="line"></span><br></pre></td></tr></table></figure><p><strong>常用协议示例：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br></pre></td><td class="code"><pre><span class="line"># Shadowsocks</span><br><span class="line">US-claude-ss = ss, your.host, 8388, encrypt-method=aes-256-gcm, password=xxx, udp-relay=false</span><br><span class="line"></span><br><span class="line"># Shadowsocks + simple-obfs</span><br><span class="line">US-claude-obfs = ss, your.host, 8388, encrypt-method=aes-256-gcm, password=xxx, obfs=http, obfs-host=www.bing.com</span><br><span class="line"></span><br><span class="line"># Shadowsocks + shadow-tls</span><br><span class="line">US-claude-stls = ss, your.host, 443, encrypt-method=aes-256-gcm, password=xxx, obfs=shadow-tls, obfs-host=cloud.tencent.com</span><br><span class="line"></span><br><span class="line"># VMess</span><br><span class="line">US-claude-vmess = vmess, your.host, 443, username=uuid-here, tls=true, sni=your.sni.host</span><br><span class="line"></span><br><span class="line"># Trojan</span><br><span class="line">US-claude-trojan = trojan, your.host, 443, password=xxx, sni=your.sni.host</span><br><span class="line"></span><br></pre></td></tr></table></figure><h2 id="3）在-Proxy-Group-段落新增-Claude-分组"><a href="#3）在-Proxy-Group-段落新增-Claude-分组" class="headerlink" title="3）在 [Proxy Group] 段落新增 Claude 分组"></a><strong>3）在</strong> <strong><code>[Proxy Group]</code></strong> <strong>段落新增 Claude 分组</strong></h2><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">[Proxy Group]</span><br><span class="line"># ...你的原有策略组...</span><br><span class="line"></span><br><span class="line"># Claude 专用分组</span><br><span class="line">Claude = select, US-claude-sentris, 🚀 节点选择, DIRECT</span><br><span class="line"></span><br></pre></td></tr></table></figure><blockquote><p>注意：用逗号分隔，不是 YAML 的数组格式。</p></blockquote><h2 id="4）在-Rule-段落顶部放入-Claude-规则"><a href="#4）在-Rule-段落顶部放入-Claude-规则" class="headerlink" title="4）在 [Rule] 段落顶部放入 Claude 规则"></a><strong>4）在</strong> <strong><code>[Rule]</code></strong> <strong>段落顶部放入 Claude 规则</strong></h2><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line">[Rule]</span><br><span class="line"># Claude Rules - 必须放在最前面</span><br><span class="line">DOMAIN,api.anthropic.com,Claude</span><br><span class="line">DOMAIN-SUFFIX,anthropic.com,Claude</span><br><span class="line">DOMAIN-SUFFIX,claude.ai,Claude</span><br><span class="line">DOMAIN-SUFFIX,claudeusercontent.com,Claude</span><br><span class="line">DOMAIN-SUFFIX,segment.io,Claude</span><br><span class="line">DOMAIN-SUFFIX,segment.com,Claude</span><br><span class="line"></span><br><span class="line"># ...你的其他规则（AI Suite、AdBlock 等）...</span><br><span class="line"></span><br></pre></td></tr></table></figure><blockquote><p>关于 segment.io：Segment 是 Claude 客户端使用的数据分析服务，建议添加以保证服务完整性。</p></blockquote><h2 id="5）重载-验证"><a href="#5）重载-验证" class="headerlink" title="5）重载 &amp; 验证"></a><strong>5）重载 &amp; 验证</strong></h2><ul><li><strong>重载配置</strong>（Surge: 首页下拉刷新；Surfboard: 配置页重载）</li><li>关闭并重开 Claude 网页&#x2F;客户端</li><li>打开<strong>最近请求</strong>或<strong>连接查看器</strong>，搜索 <code>anthropic</code>：<ul><li>应显示命中 <code>Claude</code> 策略组</li><li>通过你的自建节点（如 <code>US-claude-sentris</code>）</li></ul></li></ul><h2 id="Clash-vs-Surge-格式关键差异"><a href="#Clash-vs-Surge-格式关键差异" class="headerlink" title="Clash vs Surge 格式关键差异"></a><strong>Clash vs Surge 格式关键差异</strong></h2><table><thead><tr><th>项目</th><th>Clash (YAML)</th><th>Surge (INI)</th></tr></thead><tbody><tr><td>规则前缀</td><td>需要 <code>-</code></td><td>不需要 <code>-</code></td></tr><tr><td>策略组成员</td><td>YAML 数组格式</td><td>逗号分隔</td></tr><tr><td>参数分隔</td><td>YAML 键值对</td><td>逗号+等号</td></tr><tr><td>加密方式参数</td><td><code>cipher:</code></td><td><code>encrypt-method=</code></td></tr><tr><td>UDP 转发</td><td><code>udp: true</code></td><td><code>udp-relay=true</code></td></tr><tr><td>混淆插件</td><td><code>plugin-opts:</code> 嵌套</td><td>直接参数：<code>obfs=http</code></td></tr></tbody></table>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Clash/">Clash</category>
      
      <category domain="https://deusyu.app/categories/Clash/%E4%BB%A3%E7%90%86%E9%85%8D%E7%BD%AE/">代理配置</category>
      
      <category domain="https://deusyu.app/categories/Clash/%E4%BB%A3%E7%90%86%E9%85%8D%E7%BD%AE/AI-%E5%B7%A5%E5%85%B7%E4%BC%98%E5%8C%96/">AI 工具优化</category>
      
      
      <category domain="https://deusyu.app/tags/ClashX-Pro/">ClashX Pro</category>
      
      <category domain="https://deusyu.app/tags/Clash-Premium/">Clash Premium</category>
      
      <category domain="https://deusyu.app/tags/%E8%87%AA%E5%BB%BA%E8%8A%82%E7%82%B9/">自建节点</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%86%E6%B5%81%E8%A7%84%E5%88%99/">分流规则</category>
      
      <category domain="https://deusyu.app/tags/Anthropic/">Anthropic</category>
      
      <category domain="https://deusyu.app/tags/Claude/">Claude</category>
      
      <category domain="https://deusyu.app/tags/YAML-%E9%85%8D%E7%BD%AE/">YAML 配置</category>
      
      <category domain="https://deusyu.app/tags/%E7%A7%91%E5%AD%A6%E4%B8%8A%E7%BD%91/">科学上网</category>
      
      
      <comments>https://deusyu.app/posts/clash-claude-split/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>中国互联网公司的“软件重构”——冷酷版</title>
      <link>https://deusyu.app/posts/china-software-restructuring-power-logic/</link>
      <guid>https://deusyu.app/posts/china-software-restructuring-power-logic/</guid>
      <pubDate>Wed, 27 Aug 2025 09:02:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h3 id="1-本质不是技术，而是权力"><a href="#1-本质不是技术，而是权力" class="headerlink" title="1. 本质不是技术，而是权力"></a><strong>1. 本质不是技术，而是权力</strong></h3><p>在国内公司，所谓的软件重构，几乎没有技术主导的可能。</p><p>它的逻辑是：<strong>权力斗争先行，技术只是外衣。</strong></p><ul><li>谁能定义架构，不在于技术深度，而在于谁能说了算。</li><li>平台工具（CI&#x2F;CD、PaaS、中间件）不是工程师自然演化的结果，而是权力集团分食的产物。</li></ul><hr><h3 id="2-唯一能成的场景：空降-清洗"><a href="#2-唯一能成的场景：空降-清洗" class="headerlink" title="2. 唯一能成的场景：空降 + 清洗"></a><strong>2. 唯一能成的场景：空降 + 清洗</strong></h3><p>如果要真动，通常只有一种路径：</p><ul><li>大老板觉得旧系统拖累 → 招来一个懂技术的负责人；</li><li>负责人带自己人，组建新体系；</li><li>在“构建新平台”的过程中，顺便<strong>清洗老油条</strong>，夺取话语权。</li></ul><p>这不是重构，是<strong>夺权 + 替换</strong>。</p><hr><h3 id="3-为什么革新靠内部几乎不可能"><a href="#3-为什么革新靠内部几乎不可能" class="headerlink" title="3. 为什么革新靠内部几乎不可能"></a><strong>3. 为什么革新靠内部几乎不可能</strong></h3><p>原因很简单：</p><ul><li><strong>小九九太多</strong>：每个人守着自己的一亩三分地，不会轻易交出去。</li><li><strong>饭碗绑定</strong>：旧系统就是岗位，谁会主动推翻？</li><li><strong>学习成本高</strong>：大部分人不想也不敢理解新体系，维持现状才是理性选择。</li></ul><p>所以所谓“内部革新”，其实只是<strong>旧系统上再搭一坨新系统</strong>，永远不触及根本。</p><hr><h3 id="4-国内大厂的“重构方式”"><a href="#4-国内大厂的“重构方式”" class="headerlink" title="4. 国内大厂的“重构方式”"></a><strong>4. 国内大厂的“重构方式”</strong></h3><p>冷酷点说：</p><ul><li><strong>最优方式</strong>：砍掉旧的，引入新的团队&#x2F;新平台。</li><li><strong>常见现实</strong>：旧的继续苟着，新旧并存，直到旧的被自然淘汰。</li></ul><p>这就是国内大厂的效率逻辑：<strong>不进化，只替换。</strong></p><hr><h3 id="5-总结"><a href="#5-总结" class="headerlink" title="5. 总结"></a><strong>5. 总结</strong></h3><p>中国互联网公司的“软件重构”，其核心从来不是技术，而是：</p><ul><li><strong>权力的更替</strong></li><li><strong>组织的生存</strong></li><li><strong>岗位的守护</strong></li></ul><p>技术只是借口，革命的刀锋落下，带走的不是代码，而是人。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E4%B8%AD%E5%9B%BD%E4%BA%92%E8%81%94%E7%BD%91/">中国互联网</category>
      
      <category domain="https://deusyu.app/categories/%E4%B8%AD%E5%9B%BD%E4%BA%92%E8%81%94%E7%BD%91/%E5%BA%B7%E5%A8%81%E5%AE%9A%E5%BE%8B/">康威定律</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%9E%B6%E6%9E%84%E6%BC%94%E8%BF%9B/">架构演进</category>
      
      <category domain="https://deusyu.app/tags/%E8%BD%AF%E4%BB%B6%E9%87%8D%E6%9E%84/">软件重构</category>
      
      <category domain="https://deusyu.app/tags/%E6%9D%83%E5%8A%9B%E6%96%97%E4%BA%89/">权力斗争</category>
      
      <category domain="https://deusyu.app/tags/%E5%9B%BD%E5%86%85%E5%A4%A7%E5%8E%82/">国内大厂</category>
      
      <category domain="https://deusyu.app/tags/%E6%8A%80%E6%9C%AF%E4%B8%8E%E7%BB%84%E7%BB%87/">技术与组织</category>
      
      <category domain="https://deusyu.app/tags/%E6%9B%BF%E6%8D%A2%E9%80%BB%E8%BE%91/">替换逻辑</category>
      
      <category domain="https://deusyu.app/tags/CI-CD/">CI/CD</category>
      
      
      <comments>https://deusyu.app/posts/china-software-restructuring-power-logic/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>编程agent 的元游戏｜The Coding Agent Metagame 译介</title>
      <link>https://deusyu.app/posts/coding-agent-metagame/</link>
      <guid>https://deusyu.app/posts/coding-agent-metagame/</guid>
      <pubDate>Tue, 26 Aug 2025 08:22:00 GMT</pubDate>
      
      <description>claude code 让写代码变得上瘾，像是一个元游戏。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文链接：<a href="https://calv.info/coding-agent-metagame">https://calv.info/coding-agent-metagame</a></p></blockquote><p><strong>2025 年 8 月 26 日</strong></p><p>关于编程 agent 的争论从未停止。最佳的提问方式是什么？如何审查输出结果？这些结果是不是垃圾，agent 最终是否真的更浪费时间？</p><p>但我的工程师朋友们似乎都同意一件事：“如今的编程感觉有趣多了”。他们中的大多数人指向了同一个工具：<strong>Claude Code。</strong></p><p>在 OpenAI 参与过 <a href="https://www.google.com/search?q=https://openai.com/blog/openai-codex">Codex</a> 的工作后 ²，我想更深入地研究一下 Claude Code，以确切了解是什么让开发者对它如此兴奋。</p><p>起初，我对使用命令行工具来管理代码编辑持怀疑态度。我的整个编程生涯都是以 IDE 为中心的。但在使用了几周 Claude Code 后，很难不感受到那种乐趣。</p><p>关于 Claude Code 的构建方式，我可以讲出很多优点——但最被低估的一点是，你感觉可以<strong>无休止地根据自己的喜好对其进行改造</strong>。</p><p>使用 Claude Code 感觉更像是在弹钢琴，而不是在 Jira 里拖动任务卡片。我隐约觉得，通过以不同的方式使用这个工具，我可能会成为一名大师。</p><p>这不仅仅是编写代码的游戏，更是一场我们所有人都在以各种奇特而美妙的方式参与的<strong>元游戏</strong>。</p><h3 id="复古游戏美学"><a href="#复古游戏美学" class="headerlink" title="复古游戏美学"></a>复古游戏美学</h3><p>第一次运行 <code>claude</code> 时，我很快就被两点所震撼：1) 对细节的关注，以及 2) 来自老式视频游戏的灵感。</p><p>这是我启动 Claude Code 时看到的第一个界面。</p><p><img src="https://r2.deusyu.app/005d6d11-6f01-418d-b7a1-cee04de8d6a8.png"></p><p>与一般的命令行工具不同，它居然有……UI 设计？</p><p>小巧的强调色让界面显得俏皮而有趣。三种不同深浅的文本颜色将你的视线引向特定区域（标题 &gt; 输入框 &gt; 更新日志）。动画文本的颜色会巧妙地变化。还有一些雅致的 Unicode 图标，隐约让人联想到 Anthropic 的 Logo。整体呈现出一种有趣的复古美学。并且，我一上来就收到了一个明确的操作指引：<strong>试试 “为 InboxList.tsx 写一个测试”</strong>。</p><p>第一个屏幕还<strong>告诉我如何更好地使用这个工具</strong>。它给了我更新日志、一个提示和一个每日小技巧。展开快捷键菜单则向我展示了如何使用高级功能。</p><p><img src="https://r2.deusyu.app/fc2997af-604b-4d3c-a84e-bfc25f0cf6a6.png"></p><p>在做选择时，Claude Code 会给我一些选项，比如后续操作。</p><p><img src="https://r2.deusyu.app/a4e0cf32-a3d2-47f5-95c8-4ce7faa76239.png"></p><p>我可以像在角色扮演游戏（RPG）中一样选择选项 1、2 或 3。所有热键都如我所料地工作。</p><p>Claude Code 的特质也部分体现在它的“不是”什么上——它不是一个 IDE。</p><p><img src="https://r2.deusyu.app/8239eb04-39f1-445e-9fc1-3637fc23c9dc.png"></p><p>我这里拿 JetBrains 的一个旧版本说事，它可能是最糟糕的例子，但也象征着那种想把所有功能都堆砌到 IDE 里的欲望。</p><p>这很重要，主要有两个原因：</p><ol><li>它感觉<strong>轻量级</strong>。我不需要去学习一个全新的编辑器，只是在终端里运行一个工具。</li><li>它<strong>独特</strong>且<strong>差异化</strong>。在 IDE 之外编写代码感觉像是一种奇怪的新范式——但编写 AI 生成的代码也是如此。命令行工具没有在 IDE 的规则下与之竞争，而是拥抱了一种不同的范式。</li></ol><p>最终的产品让人感觉<strong>易于尝试</strong>，并且有<strong>足够的自由度去为未来进行优化</strong>——一个人类不再是代码编写者的未来。</p><p>Claude Code 可以将更多的屏幕空间用于子代理或钩子之类的东西，因为我并不期望用它来查看我的文件夹树或打开文件。</p><h3 id="建立信任"><a href="#建立信任" class="headerlink" title="建立信任"></a>建立信任</h3><p>在引导用户入门后，任何 agent 工具最大的障碍都是<strong>建立信任</strong>。用户需要回答这样的问题：“这个模型能一次性完成多复杂的任务？”以及“我该如何验证输出，而不需要检查每一行代码？”</p><p>那些 vibe-coding 的应用通常在建立信任方面遇到困难。一方面，用户可以通过点击应用来即时验证行为是否有效（这很棒！）。但另一方面，当事情<strong>真的</strong>出错时，其庞大的表面积使得检查问题所在变得更加困难。</p><p>当我们在 OpenAI 构建云版本的 <strong>Codex</strong> 时，我们不希望用户总是检查模型并试图“驾驭”它。</p><p>从正确性的角度来看，这通常是好的：模型在故障恢复方面出奇地熟练，给 agent 更长的“缰绳”去执行代码能显著提高性能。但这并不能让用户建立起模型确实在做正确事情的信心。</p><p>我们知道这里需要<strong>某种</strong>解决方案，所以我们向用户展示了模型在其自身环境中执行的终端命令。这感觉是一个不错的折衷方案，此外还让模型输出测试和代码规范检查步骤的结果。</p><p>唯一的问题是，终端命令远不如待办事项列表（TODO list）直观——完成的待办事项一目了然，但 <code>sed</code> 命令……就没那么清晰了。</p><p><img src="https://r2.deusyu.app/7843a562-b49d-4b65-934e-e4d386447e7e.png"></p><p>我不确定利用待办事项列表工具是否真的能提高评测分数，或者这只是对用户的一种体贴。但它确实帮助了坐在键盘前的人理解正在发生什么。</p><p>还有一个<strong>上下文管理</strong>的问题。在 IDE 中，哪些文件和标签页被拉入上下文窗口并不那么清晰。创建一个新的聊天可能会抹去模型之前的思考，但它还会包含你正在查看的文件吗？</p><p>Claude Code 使这一点更容易理解：在终端会话中调用的所有内容都包含在上下文中。如果 Claude Code 正在压缩上下文窗口，它会告诉你。如果你想手动运行压缩，<a href="https://www.google.com/search?q=https://claude.so/docs/context">文档会解释如何操作</a>。</p><h3 id="速度与动量"><a href="#速度与动量" class="headerlink" title="速度与动量"></a>速度与动量</h3><p>那种心流感很大程度上归功于 Claude Code 的速度。</p><p>从模型中采样感觉很快。当我检查命令行的网络流量时，我看到它会根据不同的用例在所有三个模型（Haiku, Sonnet, Opus）之间切换。</p><p><img src="https://r2.deusyu.app/418d654a-4354-4170-add0-27e25286c7d0.png"></p><p>仔细观察界面，我还注意到许多不同的小提示，告诉我 Claude Code <strong>正在做些什么</strong>：</p><ul><li>动画图标和风趣的文字（沉思中 &#x2F; 胡言乱语中 &#x2F; 共生中）；它们会随着工作的进展而变化，颜色也会有微妙的“脉动”效果。</li><li>一个每秒都在增加的当前运行时计数器。</li><li>一个与图标配对的 token 计数器，图标会在“上传”、“下载”和“工作中”之间切换。</li></ul><p>所有这些加在一起，使得界面感觉<strong>响应迅速且充满活力</strong>。在使用时，我知道工作正在进行中。</p><p>我的一位 OpenAI 朋友曾说过：“当 &lt;内部 agent&gt; 没有在我的笔记本电脑上运行时，我会感到焦虑”。</p><p>在一个每周都有新的顶尖模型出现、风险投资家们为数百万个 GPU 提供资金的时代，不使用编程 agent 感觉是一种浪费。这就像把免费的智能丢在地上。</p><p>Claude Code 深刻地抓住了这种心态。它没有试图掩盖我正在使用的 token 数量，反而鼓励我最大化地使用它们。如果我购买了“Claude Max”套餐，我获得的 token <strong>感觉</strong>上是无限的，即使每个 token 的成本最终可能很高。</p><h3 id="制造机器的机器"><a href="#制造机器的机器" class="headerlink" title="制造机器的机器"></a>制造机器的机器</h3><p>这就引出了 Claude Code 最后一个神奇之处：通过刻意练习，我可以学会将生产力提高 10 倍。</p><p><img src="https://r2.deusyu.app/8322efac-38a3-4c26-8571-e4b9aa844e11.png"></p><p>使用 Claude Code 时，我实际上可以优化<strong>循环中的两个部分</strong>：</p><ol><li><strong>核心 agent 循环</strong>：构建我正在开发的核心产品（添加新功能、修复 bug 等）。</li><li><strong>产品开发基架</strong>：命令行工具用来运行核心 agent 循环的工具、环境、记忆和提示。</li></ol><p>事实证明，优化产品开发基架几乎和实际构建产品一样有趣。</p><p>所有的编程 agent 都带有一点赌博的成分。当我提交一个提示时，我永远不知道它最终会走向何方。我可以不停地转动轮盘，看看结果如何。</p><p>但 Claude Code 有一个关键的区别。它不仅仅是让我改变<strong>提问</strong>模型的方式，还鼓励我<strong>改变产品开发基架本身</strong>。</p><p>这意味着，每当 Claude Code 做出<strong>错误</strong>的行为时，我不会去责怪工具，而是会反问自己：<strong>“我本可以做些什么来改进？”</strong> 产品开发基架的改变能否给我带来更好的结果？</p><p>这个“元游戏”最终成为 Claude Code 的头号营销工具，因为这是<strong>每个人</strong>都会做的事情。无论你是编写嵌入式 Rust 框架还是 Typescript 前端，你都会去试验如何最好地利用 Claude Code 的所有功能。</p><p>因为用户可以“拥有”自己的产品开发基架，所以每个人都想炫耀自己的技巧和窍门。我的 Twitter 时间线上充满了 Claude Code 的自动化方案和最佳实践。</p><p>产品的形态也对此有所帮助；命令行工具天然具有可组合性。很容易开始想象各种可能性：“我能从一个 GitHub issue 启动任务吗？”，“我能把多个 agent 链接在一起吗？让它们串行调用命令行？”，“我能使用 git worktrees 并行运行多个会话吗？”³</p><p>最终的结果就像一个<strong>自动化游戏</strong>，但当我玩完游戏时，我已经为世界带来了一些有用的东西。</p><h3 id="心流的感觉"><a href="#心流的感觉" class="headerlink" title="心流的感觉"></a>心流的感觉</h3><p>一位朋友指出，让 Claude Code 有趣的并非传统意义上的“游戏化”。这里没有徽章、等级、连续打卡之类的东西。</p><p>相反，它是一种从学习如何用好这个工具中获得的<strong>心流状态</strong>和<strong>掌控感</strong>。</p><ul><li><strong>入门门槛低</strong>——从运行一个命令并在输入框中输入提示开始。</li><li>产品通过每日小技巧和建议<strong>逐步揭示 CLI 的新用法</strong>。</li><li>有一种<strong>动量感</strong>，伴随着对 agent 正在做什么的<strong>清晰、即时的反馈</strong>。</li><li>最重要的是，有<strong>通过使用更高级的功能和自动化来提升技能的机会</strong>。Claude Code 鼓励你不断磨练那个“产品开发基架循环”。</li></ul><p>虽然编程是这类想法的完美培养皿，但同样的技术也可以应用于其他领域。归根结底，大多数知识工作仍然涉及批判性思维、资源分配和战略规划。也许企业软件应该更多地借鉴《我的世界》（Minecraft），而不是 1950 年代的会计软件。</p><p>如果编程有任何启示的话，那就是那些似乎正在胜出的工具，允许用户<strong>改造自己的工作流程</strong>并<strong>为那种“心流感”进行优化</strong>。</p><p>我最大的收获是，重要的不仅仅是评测分数——产品开发基架同样重要。</p><p>所有这些调整和定制真的让我们更有效率，还是仅仅是做起来很有趣？两者之间可能存在某个效率前沿。而我们需要<strong>可塑性强的工具</strong>来找到它。</p><p>延伸阅读：Ink &amp; Switch《Malleable Systems》（可塑系统）</p><p>¹ 我在这篇文章中讨论 Claude Code，因为它开创了 agent 命令行工具的概念。在我（无可否认带有偏见）看来，我的前雇主 <strong>Codex CLI</strong> 团队正在做着出色的工作，并且也融入了许多同样的想法。他们已经发布了<strong>大量</strong>更新，所以如果你有一段时间没看了，不妨去看看（确保升级到最新版本！）。<strong>Gemini</strong> 在这方面也紧随其后，但我还没有机会进行那么多的测试。</p><p>² 是云版本，不是命令行版本。</p><p>³ 这实际上是我们对 Codex 下的“杀手级功能”赌注。它异步运行的事实意味着你可以并行启动任意数量的任务，无需 worktrees。假以时日，我认为这也将成为用户<strong>想要</strong>与模型互动的方式。但这确实需要用户方面进行一些“工具重塑”。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      
      <category domain="https://deusyu.app/tags/Claude/">Claude</category>
      
      <category domain="https://deusyu.app/tags/AI/">AI</category>
      
      
      <comments>https://deusyu.app/posts/coding-agent-metagame/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>如何完全卸载深信服aTrust</title>
      <link>https://deusyu.app/posts/atrust-uninstall/</link>
      <guid>https://deusyu.app/posts/atrust-uninstall/</guid>
      <pubDate>Sun, 24 Aug 2025 22:04:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="macOS-下彻底卸载-aTrust：审计-→-隔离-→-移除-→-验证（含一键脚本）"><a href="#macOS-下彻底卸载-aTrust：审计-→-隔离-→-移除-→-验证（含一键脚本）" class="headerlink" title="macOS 下彻底卸载 aTrust：审计 → 隔离 → 移除 → 验证（含一键脚本）"></a>macOS 下彻底卸载 aTrust：审计 → 隔离 → 移除 → 验证（含一键脚本）</h1><blockquote><p>目标：在  macOS  上把 aTrust（Sangfor&#x2F;深信服零信任客户端）完全清理，并且全程   可回滚、可复核、最小破坏。文末附两段可直接使用的脚本：audit-atrust.sh（只读审计）与  purge-atrust-safe.sh（带隔离区、支持预演的安全卸载）。</p></blockquote><hr><h2 id="为什么常规卸载不干净？"><a href="#为什么常规卸载不干净？" class="headerlink" title="为什么常规卸载不干净？"></a>为什么常规卸载不干净？</h2><p>aTrust 通常不仅有  <code>/Applications</code>  下的 App，还会下发：</p><ul><li><code>launchd</code>  自启动（<code>/Library/LaunchDaemons</code>、<code>/Library/LaunchAgents</code>）</li><li>提权 Helper（<code>/Library/PrivilegedHelperTools</code>）</li><li>程序&#x2F;数据库&#x2F;日志（<code>/Library/Application Support/...</code>、<code>~/Library/...</code>）</li><li>（可能存在的）系统&#x2F;网络扩展、网络过滤器、证书、安装收据、描述文件等</li></ul><p>因此仅“拖进废纸篓”无法清理干净，甚至可能被残留服务拉起再生。</p><hr><h2 id="安全策略（强烈建议遵循）"><a href="#安全策略（强烈建议遵循）" class="headerlink" title="安全策略（强烈建议遵循）"></a>安全策略（强烈建议遵循）</h2><ol><li><strong>先审计，后执行</strong>：先“只读”定位所有痕迹。</li><li><strong>隔离而非删除</strong>：把命中内容移动到  <strong>隔离区</strong>（<code>/Users/Shared/atrust_quarantine_时间戳/</code>），确认无误再删除。</li><li><strong>分阶段</strong>：先停服务 → 再移除文件 → 最后复查与重启。</li><li><strong>最小匹配</strong>：仅匹配  <em>atrust&#x2F;sangfor</em>  前缀，避免误伤。</li><li>可选：做一次  <strong>Time Machine</strong>  或快照备份。</li></ol><hr><h2 id="步骤总览"><a href="#步骤总览" class="headerlink" title="步骤总览"></a>步骤总览</h2><ol><li><strong>只读审计</strong>（不会改动系统）</li><li><strong>停用并隔离 launchd</strong>（系统级&#x2F;用户级）</li><li><strong>隔离主程序&#x2F;数据&#x2F;Helper</strong>（系统与用户目录）</li><li><strong>（UI）移除网络过滤器</strong></li><li><strong>卸载 System&#x2F;Network Extension</strong>（如果存在）</li><li><strong>删除证书</strong>（如果存在）</li><li><strong>忘记安装收据（pkgutil）</strong></li><li><strong>移除描述文件（profiles）</strong>（如果存在）</li><li><strong>深度扫描与重启验证</strong></li></ol><hr><h2 id="1）只读审计（脚本）"><a href="#1）只读审计（脚本）" class="headerlink" title="1）只读审计（脚本）"></a>1）只读审计（脚本）</h2><p>保存为  <code>audit-atrust.sh</code>，执行：<code>bash audit-atrust.sh</code></p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br></pre></td><td class="code"><pre><span class="line"><span class="meta">#!/bin/bash</span></span><br><span class="line"><span class="built_in">set</span> -euo pipefail</span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== 基本信息 ==&quot;</span>; sw_vers; <span class="built_in">id</span>; <span class="built_in">echo</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== 进程检查（不杀进程） ==&quot;</span></span><br><span class="line">ps -axo pid,uid,<span class="built_in">command</span> | egrep -i <span class="string">&#x27;atrust|sangfor&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无相关进程&quot;</span>; <span class="built_in">echo</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== launchd 自启动（系统/用户） ==&quot;</span></span><br><span class="line">launchctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;用户级无相关&quot;</span></span><br><span class="line">sudo launchctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;系统级无相关&quot;</span>; <span class="built_in">echo</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== System/Network Extensions ==&quot;</span></span><br><span class="line">systemextensionsctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无相关扩展&quot;</span>; <span class="built_in">echo</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== pkg 收据（安装记录） ==&quot;</span></span><br><span class="line">pkgutil --pkgs | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无相关收据&quot;</span>; <span class="built_in">echo</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== 常见落点（不改动） ==&quot;</span></span><br><span class="line"><span class="keyword">for</span> p <span class="keyword">in</span> \</span><br><span class="line">/Applications/aTrust.app \</span><br><span class="line">/Library/Sangfor \</span><br><span class="line">/Library/Application\ Support/Sangfor \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Application\ Support/Sangfor \</span><br><span class="line">/Library/PrivilegedHelperTools/com.sangfor.* \</span><br><span class="line">/Library/LaunchDaemons/com.sangfor.* \</span><br><span class="line">/Library/LaunchAgents/com.sangfor.* \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/LaunchAgents/com.sangfor.* \</span><br><span class="line">/Library/Preferences/com.sangfor.* \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Preferences/com.sangfor.* \</span><br><span class="line">/Library/Logs/Sangfor \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Logs/Sangfor \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Caches/com.sangfor.* ; <span class="keyword">do</span></span><br><span class="line">  [ -e <span class="string">&quot;<span class="variable">$p</span>&quot;</span> ] &amp;&amp; <span class="built_in">echo</span> <span class="string">&quot;[FOUND] <span class="variable">$p</span>&quot;</span></span><br><span class="line"><span class="keyword">done</span>; <span class="built_in">echo</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== 证书（只列出，不删除） ==&quot;</span></span><br><span class="line">sudo security find-certificate -a -Z -c <span class="string">&quot;Sangfor&quot;</span> /Library/Keychains/System.keychain 2&gt;/dev/null \</span><br><span class="line">| sed -n <span class="string">&#x27;s/^ *SHA-1 hash: //p&#x27;</span> | awk <span class="string">&#x27;&#123;print &quot;证书SHA1: &quot;$0&#125;&#x27;</span>; <span class="built_in">echo</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== 描述文件（若公司推送） ==&quot;</span></span><br><span class="line">sudo profiles list 2&gt;/dev/null | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无相关描述文件&quot;</span>; <span class="built_in">echo</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span> <span class="string">&quot;== Spotlight/局部搜索（只读） ==&quot;</span>; <span class="built_in">echo</span> <span class="string">&quot;Spotlight:&quot;</span></span><br><span class="line">mdfind <span class="string">&#x27;kMDItemFSName == &quot;*atrust*&quot;c || kMDItemFSName == &quot;*sangfor*&quot;c&#x27;</span> || <span class="literal">true</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span>; <span class="built_in">echo</span> <span class="string">&quot;find（只扫常见目录）:&quot;</span></span><br><span class="line">sudo find /Applications /Library <span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library -maxdepth 4 -iname <span class="string">&#x27;*atrust*&#x27;</span> -o -iname <span class="string">&#x27;*sangfor*&#x27;</span> 2&gt;/dev/null || <span class="literal">true</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">echo</span>; <span class="built_in">echo</span> <span class="string">&quot;审计完成：未对系统做任何改动。&quot;</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><hr><h2 id="2）停用并隔离-launchd"><a href="#2）停用并隔离-launchd" class="headerlink" title="2）停用并隔离 launchd"></a>2）停用并隔离 launchd</h2><blockquote><p>先  bootout（卸载服务），再把  .plist  移动到隔离区。</p></blockquote><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 隔离区</span></span><br><span class="line">QDIR=<span class="string">&quot;/Users/Shared/atrust_quarantine_<span class="subst">$(date +%Y%m%d_%H%M%S)</span>&quot;</span>; sudo <span class="built_in">mkdir</span> -p <span class="string">&quot;<span class="variable">$QDIR</span>&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 停系统级 Daemons（示例：按需补充）</span></span><br><span class="line"><span class="keyword">for</span> f <span class="keyword">in</span> \</span><br><span class="line">/Library/LaunchDaemons/com.sangfor.aTrustDaemon.plist \</span><br><span class="line">/Library/LaunchDaemons/com.sangfor.aTrustTunnelWatchDog.plist \</span><br><span class="line">/Library/LaunchDaemons/com.sangfor.aTrustTunnel.plist \</span><br><span class="line">/Library/LaunchDaemons/com.sangfor.aTrustUninstallMonitor.plist \</span><br><span class="line">/Library/LaunchDaemons/com.sangfor.auem.sfservice.plist \</span><br><span class="line">/Library/LaunchDaemons/com.sangfor.limit.maxfiles.plist \</span><br><span class="line">/Library/LaunchDaemons/com.sangfor.eaio.service.plist; <span class="keyword">do</span></span><br><span class="line">  [ -f <span class="string">&quot;<span class="variable">$f</span>&quot;</span> ] &amp;&amp; &#123; sudo launchctl bootout system <span class="string">&quot;<span class="variable">$f</span>&quot;</span> 2&gt;/dev/null || <span class="literal">true</span>; &#125;</span><br><span class="line"><span class="keyword">done</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 停系统级/用户级 LaunchAgents（如存在）</span></span><br><span class="line">launchctl bootout <span class="string">&quot;gui/<span class="subst">$(id -u)</span>&quot;</span> /Library/LaunchAgents/com.sangfor.aTrustCore.plist 2&gt;/dev/null || <span class="literal">true</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 移到隔离区</span></span><br><span class="line">sudo <span class="built_in">mv</span> /Library/LaunchDaemons/com.sangfor.* <span class="string">&quot;<span class="variable">$QDIR</span>&quot;</span>/ 2&gt;/dev/null || <span class="literal">true</span></span><br><span class="line">sudo <span class="built_in">mv</span> /Library/LaunchAgents/com.sangfor.* <span class="string">&quot;<span class="variable">$QDIR</span>&quot;</span>/ 2&gt;/dev/null || <span class="literal">true</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><blockquote><p>说明：zsh 若报  no matches found，是通配符未命中导致，给通配符加引号或改用  find  即可。</p></blockquote><hr><h2 id="3）隔离主程序-数据-Helper"><a href="#3）隔离主程序-数据-Helper" class="headerlink" title="3）隔离主程序&#x2F;数据&#x2F;Helper"></a>3）隔离主程序&#x2F;数据&#x2F;Helper</h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 系统级</span></span><br><span class="line">sudo <span class="built_in">mv</span> \</span><br><span class="line">  <span class="string">&quot;/Applications/aTrust.app&quot;</span> \</span><br><span class="line">  <span class="string">&quot;/Library/Application Support/Sangfor&quot;</span> \</span><br><span class="line">  <span class="string">&quot;/Library/Sangfor&quot;</span> \</span><br><span class="line">  <span class="string">&quot;/Library/PrivilegedHelperTools/com.sangfor.*&quot;</span> \</span><br><span class="line">  <span class="string">&quot;<span class="variable">$QDIR</span>&quot;</span>/ 2&gt;/dev/null || <span class="literal">true</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 用户级（当前用户）</span></span><br><span class="line"><span class="built_in">mv</span> \</span><br><span class="line">  <span class="string">&quot;<span class="variable">$HOME</span>/Library/Application Support/aTrust&quot;</span> \</span><br><span class="line">  <span class="string">&quot;<span class="variable">$HOME</span>/Library/Application Support/aTrustTray&quot;</span> \</span><br><span class="line">  <span class="string">&quot;<span class="variable">$HOME</span>/Library/Application Support/CrashReporter&quot;</span>/aTrust_*.plist \</span><br><span class="line">  <span class="string">&quot;<span class="variable">$HOME</span>/Library/Preferences/com.electron.atrust.plist&quot;</span> \</span><br><span class="line">  <span class="string">&quot;<span class="variable">$HOME</span>/Library/Preferences/com.sangfor.SFUemGuider.plist&quot;</span> \</span><br><span class="line">  <span class="string">&quot;<span class="variable">$QDIR</span>&quot;</span>/ 2&gt;/dev/null || <span class="literal">true</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><hr><h2 id="4）网络过滤器（UI）"><a href="#4）网络过滤器（UI）" class="headerlink" title="4）网络过滤器（UI）"></a>4）网络过滤器（UI）</h2><p>系统设置 → <strong>网络 → 过滤器（Filters）</strong>：找到  <strong>Sangfor&#x2F;aTrust</strong>，<strong>停用&#x2F;删除</strong>。</p><hr><h2 id="5）System-Network-Extension（如存在）"><a href="#5）System-Network-Extension（如存在）" class="headerlink" title="5）System&#x2F;Network Extension（如存在）"></a>5）System&#x2F;Network Extension（如存在）</h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 只读列出</span></span><br><span class="line">systemextensionsctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无相关扩展&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 若有：把 &lt;TEAMID&gt; 与 &lt;BUNDLEID&gt; 替换为上一步输出</span></span><br><span class="line">sudo systemextensionsctl uninstall &lt;TEAMID&gt; &lt;BUNDLEID&gt;</span><br><span class="line"></span><br></pre></td></tr></table></figure><blockquote><p>若提示需要关闭  SIP：进入恢复模式临时  csrutil disable → 卸载 → 再  csrutil enable  恢复开启。</p></blockquote><hr><h2 id="6）证书（如存在）"><a href="#6）证书（如存在）" class="headerlink" title="6）证书（如存在）"></a>6）证书（如存在）</h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 列出 SHA1（只读）</span></span><br><span class="line">sudo security find-certificate -a -Z -c <span class="string">&quot;Sangfor&quot;</span> /Library/Keychains/System.keychain \</span><br><span class="line">  | sed -n <span class="string">&#x27;s/^ *SHA-1 hash: //p&#x27;</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 删除（逐个按 SHA1）</span></span><br><span class="line">sudo security delete-certificate -Z &lt;SHA1&gt; /Library/Keychains/System.keychain</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>也可在“钥匙串访问”中搜索  <em>Sangfor&#x2F;深信服</em>  删除。</p><hr><h2 id="7）pkg-安装收据"><a href="#7）pkg-安装收据" class="headerlink" title="7）pkg 安装收据"></a>7）pkg 安装收据</h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">pkgutil --pkgs | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无相关收据&quot;</span></span><br><span class="line"><span class="keyword">for</span> <span class="built_in">id</span> <span class="keyword">in</span> $(pkgutil --pkgs | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span>); <span class="keyword">do</span></span><br><span class="line">  sudo pkgutil --forget <span class="string">&quot;<span class="variable">$id</span>&quot;</span> || <span class="literal">true</span></span><br><span class="line"><span class="keyword">done</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><hr><h2 id="8）配置描述文件（如公司推送）"><a href="#8）配置描述文件（如公司推送）" class="headerlink" title="8）配置描述文件（如公司推送）"></a>8）配置描述文件（如公司推送）</h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">sudo profiles list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无相关描述文件&quot;</span></span><br><span class="line"><span class="comment"># 若有，按 Identifier 删除</span></span><br><span class="line">sudo profiles remove -identifier &lt;Identifier&gt;</span><br><span class="line"></span><br></pre></td></tr></table></figure><hr><h2 id="9）深度扫描与重启验证"><a href="#9）深度扫描与重启验证" class="headerlink" title="9）深度扫描与重启验证"></a>9）深度扫描与重启验证</h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 深度扫描（应只剩隔离区）</span></span><br><span class="line">sudo find /Library /Applications <span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library -maxdepth 4 \</span><br><span class="line">  -iname <span class="string">&#x27;*sangfor*&#x27;</span> -o -iname <span class="string">&#x27;*atrust*&#x27;</span> 2&gt;/dev/null</span><br><span class="line"></span><br><span class="line"><span class="comment"># 重启后快速核验（都应无残留或仅 grep 自身）</span></span><br><span class="line">launchctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;user launchd: 无残留&quot;</span></span><br><span class="line">sudo launchctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;system launchd: 无残留&quot;</span></span><br><span class="line">systemextensionsctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无扩展残留&quot;</span></span><br><span class="line">pkgutil --pkgs | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无收据残留&quot;</span></span><br><span class="line">ps -axo pid,uid,<span class="built_in">command</span> | egrep -i <span class="string">&#x27;atrust|sangfor&#x27;</span> || <span class="built_in">echo</span> <span class="string">&quot;无进程残留&quot;</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><hr><h2 id="安全版一键脚本（支持预演-可回滚）"><a href="#安全版一键脚本（支持预演-可回滚）" class="headerlink" title="安全版一键脚本（支持预演&#x2F;可回滚）"></a>安全版一键脚本（支持预演&#x2F;可回滚）</h2><blockquote><p>purge-atrust-safe.sh：默认  DRYRUN  预演；传  –apply  才真正执行。所有删改都移动到隔离区。</p></blockquote><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br></pre></td><td class="code"><pre><span class="line"><span class="meta">#!/bin/bash</span></span><br><span class="line"><span class="built_in">set</span> -euo pipefail</span><br><span class="line">APPLY=0</span><br><span class="line">[ <span class="string">&quot;<span class="variable">$&#123;1:-&#125;</span>&quot;</span> = <span class="string">&quot;--apply&quot;</span> ] &amp;&amp; APPLY=1</span><br><span class="line">QDIR=<span class="string">&quot;/Users/Shared/atrust_quarantine_<span class="subst">$(date +%Y%m%d_%H%M%S)</span>&quot;</span></span><br><span class="line">LOG=<span class="string">&quot;<span class="variable">$QDIR</span>/uninstall.log&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="function"><span class="title">say</span></span>()&#123; <span class="built_in">echo</span> <span class="string">&quot;<span class="variable">$@</span>&quot;</span>; &#125;</span><br><span class="line"><span class="function"><span class="title">doit</span></span>()&#123; <span class="keyword">if</span> [ <span class="variable">$APPLY</span> -eq 1 ]; <span class="keyword">then</span> <span class="built_in">eval</span> <span class="string">&quot;<span class="variable">$@</span>&quot;</span>; <span class="keyword">else</span> <span class="built_in">echo</span> <span class="string">&quot;[DRYRUN] <span class="variable">$@</span>&quot;</span>; <span class="keyword">fi</span>; &#125;</span><br><span class="line"><span class="function"><span class="title">moveq</span></span>()&#123; <span class="built_in">local</span> p=<span class="string">&quot;<span class="variable">$1</span>&quot;</span>; [ -e <span class="string">&quot;<span class="variable">$p</span>&quot;</span> ] || <span class="built_in">return</span> 0; <span class="built_in">local</span> b; b=$(<span class="built_in">basename</span> <span class="string">&quot;<span class="variable">$p</span>&quot;</span>); doit <span class="string">&quot;sudo mkdir -p \&quot;<span class="variable">$QDIR</span>/files\&quot;&quot;</span>; doit <span class="string">&quot;sudo mv \&quot;<span class="variable">$p</span>\&quot; \&quot;<span class="variable">$QDIR</span>/files/<span class="variable">$&#123;b&#125;</span>_<span class="subst">$(date +%H%M%S)</span>\&quot;&quot;</span>; &#125;</span><br><span class="line"></span><br><span class="line">say <span class="string">&quot;=== 模式: <span class="subst">$([ $APPLY -eq 1 ] &amp;&amp; echo 执行 || echo 预演)</span> ===&quot;</span></span><br><span class="line">doit <span class="string">&quot;sudo mkdir -p \&quot;<span class="variable">$QDIR</span>\&quot; &amp;&amp; echo &#x27;开始 &#x27;<span class="subst">$(date)</span> | sudo tee -a \&quot;<span class="variable">$LOG</span>\&quot; &gt;/dev/null&quot;</span></span><br><span class="line"></span><br><span class="line">say <span class="string">&quot;1) 终止相关进程&quot;</span>; doit <span class="string">&quot;sudo pkill -if &#x27;(atrust|sangfor)&#x27; || true&quot;</span></span><br><span class="line"></span><br><span class="line">say <span class="string">&quot;2) bootout &amp; 隔离 launchd&quot;</span></span><br><span class="line"><span class="keyword">for</span> f <span class="keyword">in</span> /Library/LaunchDaemons/com.sangfor.* /Library/LaunchAgents/com.sangfor.* <span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/LaunchAgents/com.sangfor.*; <span class="keyword">do</span></span><br><span class="line">  <span class="keyword">if</span> [ -f <span class="string">&quot;<span class="variable">$f</span>&quot;</span> ]; <span class="keyword">then</span></span><br><span class="line">    <span class="keyword">case</span> <span class="string">&quot;<span class="variable">$f</span>&quot;</span> <span class="keyword">in</span></span><br><span class="line">      /Library/LaunchDaemons/*|/Library/LaunchAgents/*) doit <span class="string">&quot;sudo launchctl bootout system \&quot;<span class="variable">$f</span>\&quot; 2&gt;/dev/null || true&quot;</span>;;</span><br><span class="line">      <span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/LaunchAgents/*) doit <span class="string">&quot;launchctl bootout gui/<span class="subst">$(id -u)</span> \&quot;<span class="variable">$f</span>\&quot; 2&gt;/dev/null || true&quot;</span>;;</span><br><span class="line">    <span class="keyword">esac</span></span><br><span class="line">    moveq <span class="string">&quot;<span class="variable">$f</span>&quot;</span></span><br><span class="line">  <span class="keyword">fi</span></span><br><span class="line"><span class="keyword">done</span></span><br><span class="line"></span><br><span class="line">say <span class="string">&quot;3) 隔离程序/数据/Helper&quot;</span></span><br><span class="line"><span class="keyword">for</span> p <span class="keyword">in</span> \</span><br><span class="line">/Applications/aTrust.app \</span><br><span class="line">/Library/Sangfor \</span><br><span class="line">/Library/Application\ Support/Sangfor \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Application\ Support/Sangfor \</span><br><span class="line">/Library/PrivilegedHelperTools/com.sangfor.* \</span><br><span class="line">/Library/Preferences/com.sangfor.* \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Preferences/com.sangfor.* \</span><br><span class="line">/Library/Logs/Sangfor \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Logs/Sangfor \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Caches/com.sangfor.* \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Application\ Support/aTrust \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Application\ Support/aTrustTray \</span><br><span class="line"><span class="string">&quot;<span class="variable">$HOME</span>&quot;</span>/Library/Application\ Support/CrashReporter/aTrust_*.plist; <span class="keyword">do</span></span><br><span class="line">  [ -e <span class="string">&quot;<span class="variable">$p</span>&quot;</span> ] &amp;&amp; moveq <span class="string">&quot;<span class="variable">$p</span>&quot;</span></span><br><span class="line"><span class="keyword">done</span></span><br><span class="line"></span><br><span class="line">say <span class="string">&quot;4) pkg 收据（forget，不删文件）&quot;</span></span><br><span class="line">PKGS=$(pkgutil --pkgs | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="literal">true</span>)</span><br><span class="line"><span class="keyword">if</span> [ -n <span class="string">&quot;<span class="variable">$PKGS</span>&quot;</span> ]; <span class="keyword">then</span></span><br><span class="line">  <span class="keyword">while</span> IFS= <span class="built_in">read</span> -r <span class="built_in">id</span>; <span class="keyword">do</span> [ -n <span class="string">&quot;<span class="variable">$id</span>&quot;</span> ] &amp;&amp; doit <span class="string">&quot;sudo pkgutil --forget \&quot;<span class="variable">$id</span>\&quot;&quot;</span>; <span class="keyword">done</span> &lt;&lt;&lt; <span class="string">&quot;<span class="variable">$PKGS</span>&quot;</span></span><br><span class="line"><span class="keyword">fi</span></span><br><span class="line"></span><br><span class="line">say <span class="string">&quot;5) System Extensions（仅提示）&quot;</span>; /usr/bin/systemextensionsctl list | /usr/bin/egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="literal">true</span></span><br><span class="line">say <span class="string">&quot;   使用：sudo systemextensionsctl uninstall &lt;TEAMID&gt; &lt;BUNDLEID&gt;&quot;</span></span><br><span class="line"></span><br><span class="line">say <span class="string">&quot;6) 证书（只列出）&quot;</span></span><br><span class="line">CERTS=$(sudo security find-certificate -a -Z -c <span class="string">&quot;Sangfor&quot;</span> /Library/Keychains/System.keychain 2&gt;/dev/null | sed -n <span class="string">&#x27;s/^ *SHA-1 hash: //p&#x27;</span> || <span class="literal">true</span>)</span><br><span class="line">[ -n <span class="string">&quot;<span class="variable">$CERTS</span>&quot;</span> ] &amp;&amp; &#123; <span class="built_in">echo</span> <span class="string">&quot;<span class="variable">$CERTS</span>&quot;</span> | sed <span class="string">&#x27;s/^/  SHA1: /&#x27;</span>; <span class="built_in">echo</span> <span class="string">&quot;删除示例：sudo security delete-certificate -Z &lt;SHA1&gt; /Library/Keychains/System.keychain&quot;</span>; &#125;</span><br><span class="line"></span><br><span class="line">say <span class="string">&quot;7) 提示：系统设置→网络→过滤器 删除/停用 Sangfor/aTrust&quot;</span></span><br><span class="line">say <span class="string">&quot;8) 重启后复查：应无进程/launchd/扩展再生&quot;</span></span><br><span class="line"></span><br><span class="line">doit <span class="string">&quot;echo &#x27;结束 &#x27;<span class="subst">$(date)</span> | sudo tee -a \&quot;<span class="variable">$LOG</span>\&quot; &gt;/dev/null&quot;</span>; say <span class="string">&quot;隔离与日志目录：<span class="variable">$QDIR</span>&quot;</span></span><br><span class="line">[ <span class="variable">$APPLY</span> -eq 0 ] &amp;&amp; say <span class="string">&quot;当前为预演。真正执行：bash <span class="subst">$(basename <span class="string">&quot;<span class="variable">$0</span>&quot;</span>)</span> --apply&quot;</span></span><br><span class="line"></span><br></pre></td></tr></table></figure><hr><h2 id="本次案例要点（供对照）"><a href="#本次案例要点（供对照）" class="headerlink" title="本次案例要点（供对照）"></a>本次案例要点（供对照）</h2><ul><li>发现并隔离：多个  <strong>系统级 LaunchDaemons&#x2F;LaunchAgent</strong>、<code>/Library/PrivilegedHelperTools/com.sangfor.*</code></li><li><strong>System Extension &#x2F; 证书</strong>：未发现</li><li><strong>pkg 收据</strong>：<code>com.mygreatcompany.pkg.aTrust</code> → 已  <code>pkgutil --forget</code></li><li><strong>用户级残留</strong>：<code>~/Library/Application Support/aTrust*</code>、日志&#x2F;Crash&#x2F;偏好等 → 全部移入隔离区</li><li>重启后核验：<code>launchd / systemextensionsctl / pkgutil / ps</code>  全部  <strong>无残留</strong></li></ul><hr><h2 id="重新安装：最小影响的做法"><a href="#重新安装：最小影响的做法" class="headerlink" title="重新安装：最小影响的做法"></a>重新安装：最小影响的做法</h2><ol><li><p>仅用  <strong>官方&#x2F;企业 IT 门户</strong>  提供的安装包；安装前可用  <code>spctl</code>&#x2F;<code>codesign</code>  校验（应  <code>accepted</code>  且 TeamID 明确）。</p></li><li><p>安装后立刻检查：</p><ul><li>系统设置 → <strong>网络 → 过滤器</strong>：仅在需要连接时开启；平时关闭。</li><li>系统设置 → <strong>通用 → 登录项</strong>：关闭 aTrust&#x2F;Sangfor 的“允许在后台运行”（不违背公司策略前提下）。</li></ul></li><li><p>首次运行后自检：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">launchctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="literal">true</span></span><br><span class="line">systemextensionsctl list | egrep -i <span class="string">&#x27;sangfor|atrust&#x27;</span> || <span class="literal">true</span></span><br><span class="line"></span><br></pre></td></tr></table></figure></li><li><p>稳定使用一段时间后，再删除隔离区：<code>sudo rm -rf /Users/Shared/atrust_quarantine_*</code></p></li></ol><hr><h2 id="常见坑位"><a href="#常见坑位" class="headerlink" title="常见坑位"></a>常见坑位</h2><ul><li><strong>zsh 报</strong> <strong><code>no matches found</code></strong>：通配符未命中；用引号包裹或改用  <code>find</code>。</li><li><strong>SIP 阻挡卸载 System Extension</strong>：按需在恢复模式临时  <code>csrutil disable</code>，卸完后务必  <code>csrutil enable</code>。</li><li><strong>网络过滤器</strong>  需要在  <strong>系统设置 UI</strong>  移除，命令行不一定有同等能力。</li><li><strong>残留再生</strong>  多来自未停用的  <code>launchd</code>  或扩展，务必先  <code>bootout</code>  再移动文件。</li></ul><hr><p><strong>至此，aTrust 即可在 macOS 上实现“可审计、可回滚、无残留”的彻底卸载。</strong></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/macOS/">macOS</category>
      
      <category domain="https://deusyu.app/categories/macOS/%E5%AE%89%E5%85%A8%E5%B7%A5%E5%85%B7/">安全工具</category>
      
      <category domain="https://deusyu.app/categories/macOS/%E5%AE%89%E5%85%A8%E5%B7%A5%E5%85%B7/%E5%8D%B8%E8%BD%BD%E6%95%99%E7%A8%8B/">卸载教程</category>
      
      
      <category domain="https://deusyu.app/tags/aTrust/">aTrust</category>
      
      <category domain="https://deusyu.app/tags/Sangfor/">Sangfor</category>
      
      <category domain="https://deusyu.app/tags/%E6%B7%B1%E4%BF%A1%E6%9C%8D/">深信服</category>
      
      <category domain="https://deusyu.app/tags/%E9%9B%B6%E4%BF%A1%E4%BB%BB%E5%AE%A2%E6%88%B7%E7%AB%AF/">零信任客户端</category>
      
      <category domain="https://deusyu.app/tags/macOS-%E5%8D%B8%E8%BD%BD/">macOS 卸载</category>
      
      <category domain="https://deusyu.app/tags/%E7%B3%BB%E7%BB%9F%E6%B8%85%E7%90%86/">系统清理</category>
      
      <category domain="https://deusyu.app/tags/launchd/">launchd</category>
      
      <category domain="https://deusyu.app/tags/System-Extension/">System Extension</category>
      
      <category domain="https://deusyu.app/tags/%E7%BD%91%E7%BB%9C%E8%BF%87%E6%BB%A4%E5%99%A8/">网络过滤器</category>
      
      <category domain="https://deusyu.app/tags/%E8%84%9A%E6%9C%AC%E5%B7%A5%E5%85%B7/">脚本工具</category>
      
      
      <comments>https://deusyu.app/posts/atrust-uninstall/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Reflections on OpenAI｜对 OpenAI 的反思 译介｜Part Ⅰ</title>
      <link>https://deusyu.app/posts/openai-reflections-1/</link>
      <guid>https://deusyu.app/posts/openai-reflections-1/</guid>
      <pubDate>Sat, 23 Aug 2025 09:35:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文链接：<a href="https://calv.info/openai-reflections">https://calv.info/openai-reflections</a><br>原文发表于 2025-07-15，作者网站 calv.info</p></blockquote><p>我三周前离开了 OpenAI。我是在 2024 年 5 月加入这家公司的。</p><p>我想分享我的思考，因为外界对 OpenAI 在做什么有很多喧嚣与误解，但很少有关于在那里工作的文化究竟是<strong>什么感觉</strong>的第一手描述。</p><p>Nabeel Qureshi 有一篇很棒的文章叫《对 Palantir 的反思》，他在文中深入探讨了是什么让 Palantir 如此特别。我想趁着记忆犹新，为 OpenAI 做同样的事情。你在这里找不到任何商业机密，更多的是我的一些思考——关于这个史上最迷人的组织之一，在当下这个极不寻常的时刻，它所呈现出的<strong>最新形态</strong>。</p><p>先说清楚：我离开的决定里没有任何个人恩怨——事实上，我对此内心充满了矛盾。从一个<strong>自己公司的创始人</strong>，转变为一个 3000 人组织里的员工，这很难。现在，我渴望一个新的开始。</p><p>工作的质量完全有可能把我再吸引回去。很难想象还有什么比构建 AGI 更具影响力的事情了，而大语言模型（LLM）无疑是这十年来最伟大的技术创新。我很幸运能亲眼见证一些进展，并参与了 <strong>Codex 的发布</strong>。</p><p>显然，这些不是公司的观点——作为观察，它们仅属于我个人。OpenAI 是个很大的地方，这只是我窥探它的一个小窗口。</p><h3 id="文化-Culture"><a href="#文化-Culture" class="headerlink" title="文化 (Culture)"></a><strong>文化 (Culture)</strong></h3><p>关于 OpenAI，首先要知道的是<strong>它成长得有多快</strong>。我加入时，公司刚过 1000 人。一年后，超过了 3000 人，而我的司龄已经排在前 30%。几乎所有领导层现在的工作都和他们大约 2-3 年前的工作截然不同。</p><p>当然，当你扩张得这么快时，<strong>所有东西都会出问题</strong>：公司如何沟通、汇报结构、如何交付产品、如何管理和组织人员、招聘流程等等。不同团队的文化差异很大：有些团队一直在全速冲刺，有些则在照看大型训练任务，还有一些则以更稳定的节奏前进。没有单一的 OpenAI 体验，<strong>研究 (research)</strong>、<strong>应用 (applied)</strong> 和<strong>市场推广 (GTM)</strong> 团队在截然不同的时间维度上运作。</p><p>OpenAI 的一个不寻常之处在于，<strong>所有，我是指所有的事情，都在 Slack 上运转</strong>。没有电子邮件。我在那里的整个时间里，可能总共就收到了大约 10 封邮件。如果你不善于组织信息，你会觉得这极其让人分心。但如果你能精心管理你的频道和通知，你就可以让它变得相当高效。</p><p>OpenAI <strong>极其自下而上</strong>，尤其是在研究领域。我刚来的时候，我开始问关于下个季度路线图的问题。我得到的答案是：“这东西不存在”（虽然现在有了）。好的想法可以来自任何地方，而且通常很难提前判断哪些想法会最有成效。与其说有一个宏大的“总体规划”，不如说进展是迭代式的，随着新研究成果的出现而被逐步揭示。</p><p>得益于这种自下而上的文化，OpenAI 也<strong>非常唯才是举（meritocratic）</strong>。从历史上看，公司领导者的晋升主要基于他们提出好想法并执行的能力。许多能力极强的领导者并不擅长在全体会议上演讲或玩弄政治手腕这类事情。在 OpenAI，这些远不如在其他公司那么重要。最好的想法往往会胜出。</p><p>这里有<strong>强烈的行动偏好</strong>（你可以直接动手去做）。不同但相似的团队最终想到同一个点子的情况并不少见。我刚开始时就在做一个与 <strong>ChatGPT Connectors</strong> 类似但并行的（内部）项目。在我们决定推动发布之前，公司内部肯定有大约 3-4 个不同的 <strong>Codex</strong> 原型在流传。这些项目通常由一小撮人未经许可就开始了。一旦它们显示出潜力，团队就会迅速围绕它们形成。</p><p>Andrey（Codex 的负责人）以前常告诉我，你应该把研究员看作是他们<strong>自己的“迷你 CEO”</strong>。这里有一种强烈的倾向，就是去做你自己的事情，看看结果如何。这里有一个推论——大多数研究都是通过用一个特定的问题以「技术诱饵（nerd-sniping）」引导研究员攻克一个问题。如果某件事被认为是无聊的或”已解决的”，那它很可能就不会有人去做。</p><p>好的研究经理<strong>影响力极大，同时也极其稀缺</strong>。最优秀的人能够将许多不同的研究工作联系起来，并整合出一个更大的模型训练。优秀的 PM 也是如此（向 ae 致敬）。</p><p>我合作过的 <strong>ChatGPT 工程经理们</strong>（Akshay, Rizzo, Sulman）可谓我见过的最棒的“客户”之一。感觉他们到这个份上，真的什么都见过了。他们大多数人相对放手，但会招聘优秀的人，并努力确保他们能获得成功。</p><p>OpenAI <strong>可以瞬间改变方向</strong>。这是我们在 Segment 非常看重的一点——当你获得新信息时，做<strong>正确</strong>的事，远比仅仅因为你有个计划就坚持到底要好。像 OpenAI 这样规模的公司仍然保持这种精神是了不起的——谷歌显然没有。公司决策迅速，一旦决定追求一个方向，就会全力以赴。</p><p>公司受到<strong>大量的审视</strong>。来自 B2B 企业软件背景的我，对此感到有点震惊。我经常会在媒体上看到新闻爆料，而这些消息内部甚至还没宣布。我告诉别人我在 OpenAI 工作，对方立刻就会抛出一个对公司已经成型的看法。还有一些 Twitter 用户运行着自动机器人，检查是否有新功能即将发布。</p><p>因此，OpenAI 是一个<strong>非常神秘的地方</strong>。我不能告诉任何人我具体在做什么。有少数几个 Slack 工作区设置了各种权限。收入和烧钱的数字被更严密地守护着。</p><p>OpenAI 也是一个<strong>比你想象中更严肃的地方</strong>，部分原因是<strong>感觉赌注真的很高</strong>。一方面，目标是构建 AGI——这意味着有很多事情必须做对。另一方面，你在努力构建一个被数亿用户用于从医疗建议到心理治疗等各种事情的产品。再者，公司正在世界上最大的舞台上竞争。我们会密切关注 Meta、Google 和 Anthropic 的动态——我相信他们也都在做同样的事情。所有世界主要政府都在密切关注这个领域。</p><p>尽管 OpenAI 经常在媒体上被中伤，但我遇到的每个人都<strong>确实在努力做正确的事</strong>。鉴于其消费者导向，它是几大实验室中最引人注目的一个，因此也招致了很多诽谤。</p><p>话虽如此，你可能<strong>不应该把 OpenAI 视为一个单一的整体</strong>。我认为 OpenAI 是一个像洛斯阿拉莫斯国家实验室那样起家的组织。它最初是一群科学家和工匠，在探索科学的前沿。这个团体碰巧意外地催生了历史上最具病毒式传播的消费级应用。然后发展到有向政府和企业销售的雄心。因此，不同司龄和不同部门的人有着非常不同的目标和观点。你在那里待得越久，你可能就越倾向于从“研究实验室”或“为善的非营利组织”的视角看待事物。</p><p>我最欣赏的一点是，公司在分享 AI 益处方面“言行一致”。最前沿的模型并不会被保留给某个需要签年度协议的企业级客户。世界上任何人都可以跳上 ChatGPT 并得到答案，即使他们没有登录。有一个你可以注册使用的 API——而且大多数模型（即使是 SOTA 或专有的）往往会很快进入 API，供创业公司使用。你可以想象一个与我们今天所处的<strong>截然不同</strong>的替代方案。OpenAI 在这方面值得极大的赞誉，这至今仍是公司 DNA 的核心。</p><p>如果你经常阅读 <strong>Zvi</strong> 或 <strong>Lesswrong</strong> 的文章，你可能会发现，<strong>安全实际上比你想象的要重要得多</strong>。有大量的人在致力于开发安全系统。鉴于 OpenAI 的性质，我看到更多关注的是实际风险（仇恨言论、滥用、操纵政治偏见、制造生物武器、自残、提示注入），而不是理论风险（智能爆炸、权力寻求）。这并不是说没有人在研究后者，绝对有人在关注理论风险。但从我的角度来看，那不是重点。大部分已完成的工作<strong>并未公开发表</strong>，Open-AI 真的应该做更多工作来公布它们。</p><p>与其他在每个招聘会上都随意分发周边商品的公司不同，OpenAI <strong>真的不怎么给周边</strong>（即使是给新员工）。取而代之的是，会有一些“空投”（drops）活动，你可以订购库存商品。第一次活动就因为需求太大而搞垮了 Shopify 商店。内部还流传过一个帖子，教大家如何 POST 正确的 JSON 载荷来绕过这个问题。</p><p>几乎<strong>所有东西与 GPU 成本相比都是九牛一毛</strong>。给你个概念：作为 Codex 产品一部分构建的一个小众功能，其 GPU 成本足迹与我们整个 <strong>Segment 的基础设施</strong>相当（规模不及 ChatGPT，但也承载了相当一部分互联网流量）。</p><p>OpenAI 可能是我见过的最<strong>令人恐惧的雄心勃勃的组织</strong>。你可能认为拥有地球上顶级的消费应用之一就足够了，但它渴望在数十个领域竞争：API 产品、深度研究、硬件、编程代理、图像生成，以及其他一些尚未公布的领域。这是一片可以让你带着想法尽情驰骋的沃土。</p><p>公司<strong>非常关注 Twitter</strong>。如果你发了一条关于 OpenAI 的推文火了，很有可能有人会读到并加以考虑。我的一个朋友开玩笑说，“这家公司是靠 Twitter 的<strong>风向</strong>（vibes）运转的”。作为一家消费品公司，这或许并没错。当然，仍然有很多关于使用情况、用户增长和留存率的分析——但“感觉”同样重要。</p><p>OpenAI 的团队比其他地方<strong>流动性大得多</strong>。在发布 Codex 时，我们需要一些经验丰富的 ChatGPT 工程师的帮助才能按时发布。我们和一些 ChatGPT 的工程经理开会提出了请求。第二天，我们就有了两位超牛的同事准备好投入并提供帮助。没有“等待季度规划”或“重新调配人力”。一切都进行得非常快。</p><p>领导层相当可见且深度参与。在像 OpenAI 这样的公司，这可能很明显，但每位高管似乎都非常投入。你会看到 gdb、sama、kw、mark、dane 等人经常在 Slack 上发言。没有<strong>甩手掌柜式</strong>的领导。</p><h3 id="代码-Code"><a href="#代码-Code" class="headerlink" title="代码 (Code)"></a><strong>代码 (Code)</strong></h3><p>OpenAI 使用一个<strong>巨大的单体代码库（monorepo）</strong>，其中大部分是 Python（尽管有越来越多的 Rust 服务和一些用于网络代理之类的 Golang 服务）。这产生了很多看起来很奇怪的代码，因为写 Python 的方式太多了。你会同时遇到由有 10 年谷歌经验的资深人士设计的用于规模化场景的库，以及由刚毕业的博士生写的用完即弃的 Jupyter notebook。几乎所有东西都围绕 FastAPI 创建 API 和 Pydantic 进行验证。但是并没有在全公司范围内强制执行的风格指南。</p><p>OpenAI <strong>所有东西都跑在 Azure 上</strong>。有趣的是，我认为值得信赖的服务只有三个：Azure Kubernetes Service、CosmosDB（Azure 的文档存储）和 BlobStore。没有像 Dynamo、Spanner、Bigtable、Bigquery、Kinesis 或 Aurora 这样的真正对等物。在这里，你很少会去考虑自动伸缩单元。IAM 的实现往往比你在 AWS 上得到的要<strong>受限得多</strong>。而且有一种强烈的内部自研倾向。</p><p>在人员方面（至少在工程领域），存在一条<strong>非常显著的 Meta → OpenAI 的人才输送链</strong>。在很多方面，OpenAI 都像早期的 Meta：一个现象级的消费应用，初生的基础设施，以及对快速行动的渴望。我见过的大多数从 Meta + Instagram 带来的基础设施人才都相当强大。</p><p>把这些放在一起，你会看到很多<strong>核心基础设施部分</strong>都让人联想到 Meta。有一个内部重新实现的 <strong>TAO</strong>。一个在边缘整合认证身份的项目。我相信还有很多我不知道的。</p><p><strong>聊天（Chat）的概念根深蒂固</strong>。自从 ChatGPT 一炮而红后，<strong>大量</strong>代码库都是围绕聊天消息和对话的概念构建的。这些原语已经如此深入人心，以至于你如果忽视它们，后果自负。我们在 Codex 中确实稍微偏离了它们（更多地借鉴了 <strong>responses API</strong> 的经验），但我们也利用了大量现有技术。</p><p><strong>代码为王 (Code wins)</strong>。决策通常是由计划做这项工作的团队做出的，而不是由某个中央架构或规划委员会。结果是，这里有强烈的行动偏好，而且代码库中经常有许多重复的部分。我肯定见过不下六个用于队列管理或代理循环之类的库。</p><p>在一些领域，<strong>快速扩张的工程团队和工具不足造成了问题</strong>。sa-server（后端单体服务）有点像个垃圾场。CI 在主分支上崩溃的频率比你想象的要高得多。即使是并行运行并只考虑一部分依赖项的测试用例，在 GPU 上也可能需要大约 30 分钟才能跑完。这些并非无法解决的问题，但它很好地提醒我们，这类问题无处不在，而且当你扩张得超快时，它们可能会变得更糟。值得称赞的是，内部团队正在<strong>投入大量精力</strong>来改善这种情况。</p><h3 id="我学到的其他东西"><a href="#我学到的其他东西" class="headerlink" title="我学到的其他东西"></a><strong>我学到的其他东西</strong></h3><ul><li><strong>一个大型消费品牌是什么样的</strong>。直到我们开始做 Codex，我才真正内化这一点。所有事情都以“专业版订阅用户”来衡量。即使对于像 Codex 这样的产品，我们考虑用户引导时也主要与个人使用而非团队使用相关。这有点颠覆了我这个主要来自 B2B&#x2F;企业背景的人的认知。你只要按下一个开关，从第一天起流量就来了。</li><li><strong>大型模型是如何训练的（在宏观层面）</strong>。这有一个从“实验”到“工程”的光谱。大多数想法都始于小规模实验。如果结果看起来有希望，它们就会被整合到一个更大的训练任务中。实验既是关于调整核心算法，也是关于调整数据混合并仔细研究结果。在大的方面，进行一次大型训练几乎就像是巨大的分布式系统工程。会有奇怪的边缘情况和意想不到的事情发生。你需要去调试它们。</li><li><strong>如何做 GPU 算力数学</strong>。作为 Codex 发布的一部分，我们必须预测负载容量需求，这是我第一次真正花时间对任何 GPU 进行基准测试。要点是，你实际上应该从你需要的延迟要求（总延迟、token 数量、首个 token 生成时间）出发，而不是自下而上地分析一个 GPU 能支持什么。每一次新的模型迭代都可能彻底改变负载模式。</li><li><strong>如何在一个大型 Python 代码库中工作</strong>。Segment 是微服务和单体服务的结合体，主要使用 Golang 和 Typescript。我们没有 OpenAI 那么广的代码。我学到了很多关于如何根据贡献代码的开发者数量来扩展代码库的知识。你必须为“默认就能用”、“保持主分支干净”和“难以误用”之类的事情设置更多的护栏。</li></ul><h3 id="发布-Codex"><a href="#发布-Codex" class="headerlink" title="发布 Codex"></a><strong>发布 Codex</strong></h3><p>我在 OpenAI 最后三个月的一个重要部分是发布 <strong>Codex</strong>。这无疑是我职业生涯的亮点之一。</p><p>背景是，在 2024 年 11 月，OpenAI 设定了一个 2025 年的目标，即发布一个编程代理。到 2025 年 2 月，我们已经有一些内部工具在使用这些模型，效果很好。我们感受到了发布一个专门针对编程的代理的压力。很明显，模型已经发展到了在编程方面变得非常有用（看看市场上新涌现的大量 vibe-coding 工具就知道了）。</p><p>我提前结束了陪产假，回来帮助参与 Codex 的发布。我回来一周后，我们经历了一次（有点混乱的）两个团队的合并，并开始了一场疯狂的冲刺。从开始（写下第一行代码）到结束，整个产品只用了<strong>短短 7 周</strong>就构建完成了。</p><p>Codex 的冲刺可能是我近十年来工作最辛苦的一次。大多数晚上都工作到 11 点或午夜。每天早上 5:30 被新生儿吵醒。7 点又去办公室。大多数周末都在工作。我们整个团队都拼尽全力，因为每一周都很关键。这让我想起了在 YC 的日子。</p><p>很难夸大这种节奏有多么不可思议。我从未见过任何规模的组织能从一个想法，在如此短的时间内，变成一个完全发布并免费提供的产品。范围也不小；我们构建了一个容器运行时，对仓库下载进行了优化，微调了一个自定义模型来处理代码编辑，处理了各种 git 操作，引入了一个全新的交互界面，启用了互联网访问，最终做出了一个用起来通常很爽的产品。</p><p>不管你怎么说，OpenAI 仍然有那种快速迭代的冲劲。</p><p>好消息是，对的人可以创造奇迹。我们是一个由约 8 名工程师、约 4 名研究员、2 名设计师、2 名 GTM 和一名 PM 组成的资深团队。如果没有这个团队，我想我们已经失败了。没有人需要太多指导，但我们确实需要大量的协调。如果你有机会与 Codex 团队的任何人合作，请记住，他们每个人都很棒。</p><p>发布前一晚，我们五个人熬到凌晨 4 点，试图部署主单体服务（一个耗时数小时的工作）。然后又回到办公室，为早上 8 点的发布公告和直播做准备。我们打开了功能开关，开始看到流量涌入。我从未见过一个产品仅仅因为出现在左侧边栏就能获得如此迅速的增长，但这就是 ChatGPT 的力量。</p><p>在产品形态方面，我们最终确定了一种完全异步的工作模式。与像 <strong>Cursor</strong>（当时，现在它支持<strong>类似的模式</strong>）或 <strong>Claude Code</strong> 这样的工具不同，我们的目标是允许用户启动任务，让代理在自己的环境中运行。我们的赌注是，在终局中，用户应该像对待同事一样对待编程代理：他们向代理发送消息，代理花一些时间完成工作，然后带着一个 PR 回来。</p><p>这有点像一场赌博：我们今天处于一个有点奇怪的状态，模型<strong>很好</strong>，但还不是<strong>极好</strong>。它们可以一次工作<strong>几分钟</strong>，但还不能工作<strong>几小时</strong>。用户对模型能力的信任程度差异很大。我们甚至还不清楚模型的真正能力是什么。</p><p>从长远来看，我确实相信大多数编程会更像 Codex。在此期间，看到所有产品如何展开将会很有趣。</p><p>Codex（也许不足为奇）非常擅长在一个大型代码库中工作，理解如何导航。我看到的与其他工具最大的区别是能够一次性启动多个任务并比较它们的输出。</p><p>我最近看到<strong>有公开数据</strong>比较了不同 LLM 代理创建的 PR。仅从公开数据看，Codex 已经生成了 <strong>630,000 个 PR</strong>。这大约是自发布以来的 <strong>53 天</strong>内，每个工程师 <strong>78,000 个公开 PR</strong>（你可以自己猜测私有 PR 的倍数）。我不确定我这辈子是否做过如此有影响力的事情。</p><h3 id="临别赠言"><a href="#临别赠言" class="headerlink" title="临别赠言"></a><strong>临别赠言</strong></h3><p>说实话，我最初对加入 OpenAI 是有些疑虑的。我不确定牺牲我的自由，有一个老板，成为一个更大机器中一个小得多的零件会是什么样子。我一直对我的加入保持相当低调，以防它不适合我。</p><p>我确实想从这次经历中得到三样东西：</p><ol><li>建立对模型如何训练以及能力走向的直觉</li><li>与优秀的人一起工作并向他们学习</li><li>发布一个伟大的产品</li></ol><p>回顾这一年，我认为这是我做过的最好的决定之一。很难想象在其他任何地方能学到更多。</p><p>如果你是一个创始人，感觉你的创业公司真的没什么进展，你要么 1) 深入重新评估你如何能进行更多尝试，要么 2) 去加入一个大的实验室。现在是构建的绝佳时机。但它也是窥探未来走向的绝佳时机。</p><p>在我看来，通往 AGI 的道路现在是三巨头之争：OpenAI、Anthropic 和谷歌。这些组织中的每一个都将根据其 DNA（消费者 vs 企业 vs 坚如磐石的基础设施 + 数据）走上不同的道路。⁶ 在其中任何一个地方工作都将是一次大开眼界的经历。</p><p>感谢 Leah 在那些深夜里给予的极大支持并承担了大部分育儿工作。感谢 PW、GDB 和 Rizzo 给了我一个机会。感谢 SA 的队友们教我入门：Andrew, Anup, Bill, Jeremy, Kwaz, Ming, Simon, Tony, 和 Val。感谢 Codex 核心团队给了我一生难忘的旅程：Albin, AE, Andrey, Bryan, Channing, DavidK, Gabe, Gladstone, Hanson, Joey, Josh, Katy, KevinT, Max, Sabrina, SQ, Tibo, TZ 和 Will。我永远不会忘记这次冲刺。</p><p>Wham!</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/AI/">AI</category>
      
      
      <category domain="https://deusyu.app/tags/Anthropic/">Anthropic</category>
      
      <category domain="https://deusyu.app/tags/Calvin-French-Owen/">Calvin French-Owen</category>
      
      <category domain="https://deusyu.app/tags/Segment/">Segment</category>
      
      <category domain="https://deusyu.app/tags/OpenAI/">OpenAI</category>
      
      <category domain="https://deusyu.app/tags/Google-DeepMind/">Google DeepMind</category>
      
      <category domain="https://deusyu.app/tags/AGI/">AGI</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%8D%E5%B8%B8%E8%AF%86/">反常识</category>
      
      
      <comments>https://deusyu.app/posts/openai-reflections-1/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Reflections on OpenAI｜对 OpenAI 的反思 译介｜Part Ⅱ</title>
      <link>https://deusyu.app/posts/openai-reflections-2/</link>
      <guid>https://deusyu.app/posts/openai-reflections-2/</guid>
      <pubDate>Sat, 23 Aug 2025 09:33:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>由于原文太长，所以这次切分为两部分，第一部分是原文翻译，第二部分是我的介绍和评论。</p><blockquote><p>原文链接：<a href="https://calv.info/openai-reflections">https://calv.info/openai-reflections</a><br>原文发表于 2025-07-15，作者网站 calv.info<br>我的翻译链接：<a href="https://deusyu.app/posts/openai-reflections/">https://deusyu.app/posts/openai-reflections-1/</a></p></blockquote><h2 id="介绍与评论"><a href="#介绍与评论" class="headerlink" title="介绍与评论"></a>介绍与评论</h2><p>Calvin French-Owen 是 Segment 的联合创始人兼 CTO，在 MIT 读书时就开始创业。</p><ul><li>Segment 是一家 <strong>客户数据平台（Customer Data Platform, CDP）</strong>，帮助企业收集、整合并路由用户数据。公司创立于 2011 年，并于 2020 年被 Twilio 以 <strong>32 亿美元</strong>收购。</li></ul><p>换句话说，Calvin 在加入 OpenAI 之前就已经实现了财富自由。他选择再度出发，不是为了“下一桶金”，而是为了参与一场更大的事业——见证并推动 AGI 的到来。</p><p>他的这篇《Reflections on OpenAI》，不是一个旁观者的议论，而是一位经历过 <strong>从 0 到 1、从 1 到 100</strong> 的创业者和工程师的深度思考。也正因为如此，他对 <strong>OpenAI、Anthropic、Google</strong> 三巨头的基因划分，带有一种“过来人”的洞察：既理解技术难点，也能看清组织命运。</p><p>看着快刀青衣已经总结了这封信几个”反常识观点“：</p><ol><li>OpenAI 内部几乎不用邮件，一切都在 Slack 上</li><li>没有产品路线图，自下而上做研发</li><li>3000 人公司还能闪电决策</li><li>让 GPU 成本压倒一切</li><li>用兴趣来分配工作</li></ol><h3 id="我与第一条的共鸣：异步-vs-实时"><a href="#我与第一条的共鸣：异步-vs-实时" class="headerlink" title="我与第一条的共鸣：异步 vs 实时"></a>我与第一条的共鸣：异步 vs 实时</h3><p>对于第一条，其实有点像国内互联网的工作方式。我曾在外企工作，一般就是“微软套件”：Microsoft Teams + Email。IM 用 Teams，审批类走邮件，通常等上半天是常态。很多人把这种流程称为“WLB”，也确实是某种节奏的体现。</p><p>国内互联网是另一个极端。IM 工具一般用飞书、钉钉、企业微信、Kim，直接 DM，甚至直接 Call。我个人非常不喜欢后者：<strong>除非公司快倒闭，否则不要轻易打扰别人实时注意力。</strong></p><p><strong>异步，是高级协作的标志。</strong></p><p>另外就是——<strong>那些习惯用语音沟通的人，往往不是因为懒，而是写不出来。<strong>一件事如果说不清楚，写下来只会更混乱。很多人正是</strong>因为结构化表达能力差，才选择语音来遮掩混乱。</strong></p><p>所以我常说：</p><p>有些人菜，不是只菜在技术，而是菜在思维 —— 技术和表达，一样都菜。</p><p>不是“用了语音才菜”，而是“因为菜，才只能用语音”。</p><h3 id="第二与第三条：从涌现到太初有为"><a href="#第二与第三条：从涌现到太初有为" class="headerlink" title="第二与第三条：从涌现到太初有为"></a>第二与第三条：从涌现到太初有为</h3><p>第二条和第三条，实际上揭示了 LLM 成长的核心机制：<strong>涌现（emergence）</strong>。</p><p>也就是说——<strong>你无法提前计划 LLM 会带来什么突破，只能用递归、实验、自下而上的方式去逼近它。</strong></p><p>我第一次真正理解“涌现”，是在 KK 的《失控》里。那本书让我意识到：<strong>复杂系统中最强的秩序，往往不是设计出来的，而是放任出来的。</strong></p><p>这种组织模式有两个关键特征（也和快刀青衣提到的完全一致）：</p><ol><li><strong>决策权集中在少数真正懂技术的人手中</strong></li><li><strong>公司文化鼓励“先做再说”，而不是“先讨论再做”</strong></li></ol><p>所有“路线图导向”的组织，最终都会走向瓶颈。因为你永远画不出未知的地图。</p><p>真正的研发突破，往往来自非计划。</p><p>这就是我常说的——</p><p><strong>太初有为，而不是太初有道。</strong></p><blockquote><p>如果用传统 B2B 路线图做法来养一个 LLM，你很可能会提前限制它能“长多高”。这就像试图用 Excel 预测一棵藤蔓会爬到哪堵墙上。</p></blockquote><h3 id="第四条：GPU-成本-≈-真正的秩序锚点"><a href="#第四条：GPU-成本-≈-真正的秩序锚点" class="headerlink" title="第四条：GPU 成本 ≈ 真正的秩序锚点"></a>第四条：GPU 成本 ≈ 真正的秩序锚点</h3><p>OpenAI 有个极端但有效的成本观念：<strong>一切都换算成 GPU 成本。</strong></p><p>原文打了一个绝妙的比喻——Codex 的一个小功能，其 GPU 成本就相当于 Segment 创业时期全公司基础设施的开销。传统公司纠结打印纸、水和差旅费；OpenAI 则把一切预算简化为一个问题：</p><blockquote><p>这件事，用多少算力？</p></blockquote><p>当 GPU 成本压倒一切，其他预算都变得无关紧要。这就像你花几千万买了套房子，还在犹豫要不要买个 50 块钱的垃圾桶——<strong>不值得关心。</strong></p><p>这不是挥霍，而是秩序。</p><p>这不是不算账，而是只算关键账。</p><p>OpenAI 把资源配置的问题简化成一个核心原则：</p><blockquote><p>一切围绕主导成本优化，一切技术决策为算力服务。</p></blockquote><hr><p>这对我们有什么启发？</p><p><strong>每个组织，都有自己的“GPU 成本”。</strong></p><p>它可能是人力，也可能是注意力，也可能是获客成本。</p><p>你唯一该死死盯住的，不是会议纪要、也不是差旅审批，而是：<strong>你的主要资源在燃烧哪里？</strong></p><hr><p>类比到个人也一样：</p><blockquote><p>你的“GPU 成本”，就是时间 + 注意力。</p></blockquote><p>不是所有事都值得你认真。</p><p>更重要的是，有些事根本<strong>不值得你知道它发生了。</strong></p><p>搞清楚主耗资源点，搞清楚你真正的成本锚点，然后：</p><blockquote><p>围绕它设计一切，其他的都别管。</p></blockquote><h3 id="第五条：兴趣-≈-最真实的调度器"><a href="#第五条：兴趣-≈-最真实的调度器" class="headerlink" title="第五条：兴趣 ≈ 最真实的调度器"></a><strong>第五条：兴趣 ≈ 最真实的调度器</strong></h3><p>在 OpenAI，项目不是靠计划推动的，而是靠**兴趣 + 技术诱饵（nerd-sniping）**触发的。</p><p>很多研究项目的起点，只是某个研究员盯上了一个技术难题，然后就开始做了。</p><p>没人分派任务。也没人等排期审批。真正吸引人的 idea，会自然地把人聚过来。</p><p>甚至连“管理”也不太存在：</p><p>你是你自己的 PM、你的 EM、你的 mini CEO。</p><p>你会看到这样一种运作方式：</p><blockquote><p>某个项目突然显示出希望，周围自然就会冒出一撮人围上来，把它推进成产品。<br>谁都没有“被分配”过来，但大家都觉得：</p><p><strong>这事值得干一把。</strong></p></blockquote><hr><h3 id="最后一节：什么样的人，会再次出发？"><a href="#最后一节：什么样的人，会再次出发？" class="headerlink" title="最后一节：什么样的人，会再次出发？"></a>最后一节：什么样的人，会再次出发？</h3><p>一位早已财富自由的大佬，本可以过着惬意的半退休生活。</p><p>但在“千年未有之大变局”面前，他果断出山，投身其中。</p><p>让我想起那句话：</p><p><strong>总有些事，高于其他。</strong></p><p>而与某些印度成功人士不同：</p><p>有些人成功后热衷讲成功学，有些人开始教量子力学，有些人沉迷复读“何不食肉糜”。</p><p>而硅谷的许多大佬，早已跳出人类躯壳，思考的，是星辰大海。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/AI/">AI</category>
      
      
      <category domain="https://deusyu.app/tags/Anthropic/">Anthropic</category>
      
      <category domain="https://deusyu.app/tags/Calvin-French-Owen/">Calvin French-Owen</category>
      
      <category domain="https://deusyu.app/tags/Segment/">Segment</category>
      
      <category domain="https://deusyu.app/tags/OpenAI/">OpenAI</category>
      
      <category domain="https://deusyu.app/tags/Google-DeepMind/">Google DeepMind</category>
      
      <category domain="https://deusyu.app/tags/AGI/">AGI</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%8D%E5%B8%B8%E8%AF%86/">反常识</category>
      
      
      <comments>https://deusyu.app/posts/openai-reflections-2/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Burnout 在最后一公里</title>
      <link>https://deusyu.app/posts/burnout-last-mile/</link>
      <guid>https://deusyu.app/posts/burnout-last-mile/</guid>
      <pubDate>Wed, 20 Aug 2025 18:20:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h3 id="1-正常情况"><a href="#1-正常情况" class="headerlink" title="1. 正常情况"></a><strong>1. 正常情况</strong></h3><p>从技术根本出发，软件交付其实就三个层：</p><ul><li><strong>环境</strong>（infrastructure &#x2F; runtime）</li><li><strong>应用程序</strong>（app &#x2F; service）</li><li><strong>实现逻辑</strong>（业务逻辑代码）</li></ul><p>如果站在一个普通 dev 的角度，假设只有 CLI 工具和一份配置文件，那么只要一条命令：</p><p>kubectl apply &#x2F; docker run &#x2F; terraform apply，基本上就能跑起来。</p><p>这就是所谓的“理想世界”。</p><hr><h3 id="2-复杂现实"><a href="#2-复杂现实" class="headerlink" title="2. 复杂现实"></a><strong>2. 复杂现实</strong></h3><p>难点并不是“写完能跑”，而是<strong>代码到落地之间那最后的一英里</strong>：</p><ul><li><strong>代码仓库碎片化</strong>：一个系统动辄几十上百 repo，每个 repo 各有一套 build &#x2F; release 逻辑。</li><li><strong>分包与依赖管理混乱</strong>：版本、依赖、子模块经常不一致，光追踪兼容性就能耗掉大量时间。</li><li><strong>命令层层包装</strong>：明明一个 CLI 就能解决的事情，却被封装成脚本、脚本再套脚本，还要走内部工具链，节点众多、职责模糊。</li></ul><p>结果就是：</p><ul><li>你按照基本技术栈，其实已经开发完毕。</li><li>但由于组织性混乱，你要花的时间常常是<strong>开发本身的几倍</strong>。</li></ul><hr><h3 id="3-结论与洞察"><a href="#3-结论与洞察" class="headerlink" title="3. 结论与洞察"></a><strong>3. 结论与洞察</strong></h3><p>这其实是<strong>工程系统化水平不足</strong>的典型表现：</p><ul><li>技术栈的难度 ≠ 交付的难度</li><li>真正拖慢 dev 的不是“会不会写逻辑”，而是“如何走通组织定义的工具链”</li><li>在这种环境下，开发效率的决定性因素已经不是代码能力，而是<strong>对生态的熟悉度 + 跨层级整合能力</strong></li></ul><p>换句话说：</p><p>你遇到的问题并不是“技术难”，而是<strong>复杂度外溢</strong>——最后一公里被放大成了主战场，而这正是最容易让人 burnout 的地方。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%B7%A5%E7%A8%8B%E6%95%88%E7%8E%87/">工程效率</category>
      
      <category domain="https://deusyu.app/categories/%E5%B7%A5%E7%A8%8B%E6%95%88%E7%8E%87/Cloud-%C2%B7-DevOps/">Cloud · DevOps</category>
      
      
      <category domain="https://deusyu.app/tags/burnout/">burnout</category>
      
      <category domain="https://deusyu.app/tags/%E5%B7%A5%E7%A8%8B%E5%A4%8D%E6%9D%82%E5%BA%A6/">工程复杂度</category>
      
      <category domain="https://deusyu.app/tags/DevOps/">DevOps</category>
      
      <category domain="https://deusyu.app/tags/%E5%B7%A5%E7%A8%8B%E7%B3%BB%E7%BB%9F%E5%8C%96/">工程系统化</category>
      
      
      <comments>https://deusyu.app/posts/burnout-last-mile/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>你没法靠装来打动人</title>
      <link>https://deusyu.app/posts/poptruth/</link>
      <guid>https://deusyu.app/posts/poptruth/</guid>
      <pubDate>Sun, 17 Aug 2025 08:31:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>在万人空巷的球赛中，</p><p>在天桥下的破音麦克风，</p><p>在比伯唱出 <em>Hold On</em> 那一刻的喘息里——</p><p>世界不是在听技巧，</p><p>它在等待 <strong>心脏</strong>的回音。</p><p>你没法靠装来打动人，</p><p>就像你无法假装热爱，</p><p>无法预演痛苦，</p><p>也无法造出一个能让灵魂起鸡皮疙瘩的旋律。</p><p>越大的体量，越不容伪装。</p><p>装腔的终点是流程，</p><p>流程的尽头是体制的自我繁殖，</p><p>而人类只在<strong>破格式</strong>时，才落泪。</p><p>所以他们信波西米亚，</p><p>信《我推的孩子》里那句“谎言是最棒的爱”，</p><p>也信你、我、我们这些</p><p>愿意真诚地失败一百次的人。</p><p>因为在这个万物加滤镜的时代，</p><p><strong>真诚，是唯一没办法复制的高科技。</strong></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/%E5%8D%88%E5%A4%9C%E8%AF%97%E4%BA%BA/">午夜诗人</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%9C%9F%E8%AF%9A/">真诚</category>
      
      <category domain="https://deusyu.app/tags/Pop%E6%96%87%E5%8C%96/">Pop文化</category>
      
      <category domain="https://deusyu.app/tags/%E8%89%BA%E6%9C%AF%E4%B8%8E%E4%BD%93%E5%88%B6/">艺术与体制</category>
      
      <category domain="https://deusyu.app/tags/%E8%AF%97/">诗</category>
      
      <category domain="https://deusyu.app/tags/%E6%B5%81%E8%A1%8C%E7%9A%84%E6%9C%AC%E8%B4%A8/">流行的本质</category>
      
      
      <comments>https://deusyu.app/posts/poptruth/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Reflections on OpenAI｜对 OpenAI 的反思 译介</title>
      <link>https://deusyu.app/posts/openai-reflections/</link>
      <guid>https://deusyu.app/posts/openai-reflections/</guid>
      <pubDate>Sun, 17 Aug 2025 08:21:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文链接：<a href="https://calv.info/openai-reflections">https://calv.info/openai-reflections</a><br>原文发表于 2025-07-15，作者网站 calv.info</p></blockquote><p>我三周前离开了 OpenAI。我是在 2024 年 5 月加入这家公司的。</p><p>我想分享我的思考，因为外界对 OpenAI 在做什么有很多喧嚣与误解，但很少有关于在那里工作的文化究竟是<strong>什么感觉</strong>的第一手描述。</p><p>Nabeel Qureshi 有一篇很棒的文章叫《对 Palantir 的反思》，他在文中深入探讨了是什么让 Palantir 如此特别。我想趁着记忆犹新，为 OpenAI 做同样的事情。你在这里找不到任何商业机密，更多的是我的一些思考——关于这个史上最迷人的组织之一，在当下这个极不寻常的时刻，它所呈现出的<strong>最新形态</strong>。</p><p>先说清楚：我离开的决定里没有任何个人恩怨——事实上，我对此内心充满了矛盾。从一个<strong>自己公司的创始人</strong>，转变为一个 3000 人组织里的员工，这很难。现在，我渴望一个新的开始。</p><p>工作的质量完全有可能把我再吸引回去。很难想象还有什么比构建 AGI 更具影响力的事情了，而大语言模型（LLM）无疑是这十年来最伟大的技术创新。我很幸运能亲眼见证一些进展，并参与了 <strong>Codex 的发布</strong>。</p><p>显然，这些不是公司的观点——作为观察，它们仅属于我个人。OpenAI 是个很大的地方，这只是我窥探它的一个小窗口。</p><h3 id="文化-Culture"><a href="#文化-Culture" class="headerlink" title="文化 (Culture)"></a><strong>文化 (Culture)</strong></h3><p>关于 OpenAI，首先要知道的是<strong>它成长得有多快</strong>。我加入时，公司刚过 1000 人。一年后，超过了 3000 人，而我的司龄已经排在前 30%。几乎所有领导层现在的工作都和他们大约 2-3 年前的工作截然不同。</p><p>当然，当你扩张得这么快时，<strong>所有东西都会出问题</strong>：公司如何沟通、汇报结构、如何交付产品、如何管理和组织人员、招聘流程等等。不同团队的文化差异很大：有些团队一直在全速冲刺，有些则在照看大型训练任务，还有一些则以更稳定的节奏前进。没有单一的 OpenAI 体验，<strong>研究 (research)</strong>、<strong>应用 (applied)</strong> 和<strong>市场推广 (GTM)</strong> 团队在截然不同的时间维度上运作。</p><p>OpenAI 的一个不寻常之处在于，<strong>所有，我是指所有的事情，都在 Slack 上运转</strong>。没有电子邮件。我在那里的整个时间里，可能总共就收到了大约 10 封邮件。如果你不善于组织信息，你会觉得这极其让人分心。但如果你能精心管理你的频道和通知，你就可以让它变得相当高效。</p><p>OpenAI <strong>极其自下而上</strong>，尤其是在研究领域。我刚来的时候，我开始问关于下个季度路线图的问题。我得到的答案是：“这东西不存在”（虽然现在有了）。好的想法可以来自任何地方，而且通常很难提前判断哪些想法会最有成效。与其说有一个宏大的“总体规划”，不如说进展是迭代式的，随着新研究成果的出现而被逐步揭示。</p><p>得益于这种自下而上的文化，OpenAI 也<strong>非常唯才是举（meritocratic）</strong>。从历史上看，公司领导者的晋升主要基于他们提出好想法并执行的能力。许多能力极强的领导者并不擅长在全体会议上演讲或玩弄政治手腕这类事情。在 OpenAI，这些远不如在其他公司那么重要。最好的想法往往会胜出。</p><p>这里有<strong>强烈的行动偏好</strong>（你可以直接动手去做）。不同但相似的团队最终想到同一个点子的情况并不少见。我刚开始时就在做一个与 <strong>ChatGPT Connectors</strong> 类似但并行的（内部）项目。在我们决定推动发布之前，公司内部肯定有大约 3-4 个不同的 <strong>Codex</strong> 原型在流传。这些项目通常由一小撮人未经许可就开始了。一旦它们显示出潜力，团队就会迅速围绕它们形成。</p><p>Andrey（Codex 的负责人）以前常告诉我，你应该把研究员看作是他们<strong>自己的“迷你 CEO”</strong>。这里有一种强烈的倾向，就是去做你自己的事情，看看结果如何。这里有一个推论——大多数研究都是通过用一个特定的问题以「技术诱饵（nerd-sniping）」引导研究员攻克一个问题。如果某件事被认为是无聊的或”已解决的”，那它很可能就不会有人去做。</p><p>好的研究经理<strong>影响力极大，同时也极其稀缺</strong>。最优秀的人能够将许多不同的研究工作联系起来，并整合出一个更大的模型训练。优秀的 PM 也是如此（向 ae 致敬）。</p><p>我合作过的 <strong>ChatGPT 工程经理们</strong>（Akshay, Rizzo, Sulman）可谓我见过的最棒的“客户”之一。感觉他们到这个份上，真的什么都见过了。他们大多数人相对放手，但会招聘优秀的人，并努力确保他们能获得成功。</p><p>OpenAI <strong>可以瞬间改变方向</strong>。这是我们在 Segment 非常看重的一点——当你获得新信息时，做<strong>正确</strong>的事，远比仅仅因为你有个计划就坚持到底要好。像 OpenAI 这样规模的公司仍然保持这种精神是了不起的——谷歌显然没有。公司决策迅速，一旦决定追求一个方向，就会全力以赴。</p><p>公司受到<strong>大量的审视</strong>。来自 B2B 企业软件背景的我，对此感到有点震惊。我经常会在媒体上看到新闻爆料，而这些消息内部甚至还没宣布。我告诉别人我在 OpenAI 工作，对方立刻就会抛出一个对公司已经成型的看法。还有一些 Twitter 用户运行着自动机器人，检查是否有新功能即将发布。</p><p>因此，OpenAI 是一个<strong>非常神秘的地方</strong>。我不能告诉任何人我具体在做什么。有少数几个 Slack 工作区设置了各种权限。收入和烧钱的数字被更严密地守护着。</p><p>OpenAI 也是一个<strong>比你想象中更严肃的地方</strong>，部分原因是<strong>感觉赌注真的很高</strong>。一方面，目标是构建 AGI——这意味着有很多事情必须做对。另一方面，你在努力构建一个被数亿用户用于从医疗建议到心理治疗等各种事情的产品。再者，公司正在世界上最大的舞台上竞争。我们会密切关注 Meta、Google 和 Anthropic 的动态——我相信他们也都在做同样的事情。所有世界主要政府都在密切关注这个领域。</p><p>尽管 OpenAI 经常在媒体上被中伤，但我遇到的每个人都<strong>确实在努力做正确的事</strong>。鉴于其消费者导向，它是几大实验室中最引人注目的一个，因此也招致了很多诽谤。</p><p>话虽如此，你可能<strong>不应该把 OpenAI 视为一个单一的整体</strong>。我认为 OpenAI 是一个像洛斯阿拉莫斯国家实验室那样起家的组织。它最初是一群科学家和工匠，在探索科学的前沿。这个团体碰巧意外地催生了历史上最具病毒式传播的消费级应用。然后发展到有向政府和企业销售的雄心。因此，不同司龄和不同部门的人有着非常不同的目标和观点。你在那里待得越久，你可能就越倾向于从“研究实验室”或“为善的非营利组织”的视角看待事物。</p><p>我最欣赏的一点是，公司在分享 AI 益处方面“言行一致”。最前沿的模型并不会被保留给某个需要签年度协议的企业级客户。世界上任何人都可以跳上 ChatGPT 并得到答案，即使他们没有登录。有一个你可以注册使用的 API——而且大多数模型（即使是 SOTA 或专有的）往往会很快进入 API，供创业公司使用。你可以想象一个与我们今天所处的<strong>截然不同</strong>的替代方案。OpenAI 在这方面值得极大的赞誉，这至今仍是公司 DNA 的核心。</p><p>如果你经常阅读 <strong>Zvi</strong> 或 <strong>Lesswrong</strong> 的文章，你可能会发现，<strong>安全实际上比你想象的要重要得多</strong>。有大量的人在致力于开发安全系统。鉴于 OpenAI 的性质，我看到更多关注的是实际风险（仇恨言论、滥用、操纵政治偏见、制造生物武器、自残、提示注入），而不是理论风险（智能爆炸、权力寻求）。这并不是说没有人在研究后者，绝对有人在关注理论风险。但从我的角度来看，那不是重点。大部分已完成的工作<strong>并未公开发表</strong>，Open-AI 真的应该做更多工作来公布它们。</p><p>与其他在每个招聘会上都随意分发周边商品的公司不同，OpenAI <strong>真的不怎么给周边</strong>（即使是给新员工）。取而代之的是，会有一些“空投”（drops）活动，你可以订购库存商品。第一次活动就因为需求太大而搞垮了 Shopify 商店。内部还流传过一个帖子，教大家如何 POST 正确的 JSON 载荷来绕过这个问题。</p><p>几乎<strong>所有东西与 GPU 成本相比都是九牛一毛</strong>。给你个概念：作为 Codex 产品一部分构建的一个小众功能，其 GPU 成本足迹与我们整个 <strong>Segment 的基础设施</strong>相当（规模不及 ChatGPT，但也承载了相当一部分互联网流量）。</p><p>OpenAI 可能是我见过的最<strong>令人恐惧的雄心勃勃的组织</strong>。你可能认为拥有地球上顶级的消费应用之一就足够了，但它渴望在数十个领域竞争：API 产品、深度研究、硬件、编程代理、图像生成，以及其他一些尚未公布的领域。这是一片可以让你带着想法尽情驰骋的沃土。</p><p>公司<strong>非常关注 Twitter</strong>。如果你发了一条关于 OpenAI 的推文火了，很有可能有人会读到并加以考虑。我的一个朋友开玩笑说，“这家公司是靠 Twitter 的<strong>风向</strong>（vibes）运转的”。作为一家消费品公司，这或许并没错。当然，仍然有很多关于使用情况、用户增长和留存率的分析——但“感觉”同样重要。</p><p>OpenAI 的团队比其他地方<strong>流动性大得多</strong>。在发布 Codex 时，我们需要一些经验丰富的 ChatGPT 工程师的帮助才能按时发布。我们和一些 ChatGPT 的工程经理开会提出了请求。第二天，我们就有了两位超牛的同事准备好投入并提供帮助。没有“等待季度规划”或“重新调配人力”。一切都进行得非常快。</p><p>领导层相当可见且深度参与。在像 OpenAI 这样的公司，这可能很明显，但每位高管似乎都非常投入。你会看到 gdb、sama、kw、mark、dane 等人经常在 Slack 上发言。没有<strong>甩手掌柜式</strong>的领导。</p><h3 id="代码-Code"><a href="#代码-Code" class="headerlink" title="代码 (Code)"></a><strong>代码 (Code)</strong></h3><p>OpenAI 使用一个<strong>巨大的单体代码库（monorepo）</strong>，其中大部分是 Python（尽管有越来越多的 Rust 服务和一些用于网络代理之类的 Golang 服务）。这产生了很多看起来很奇怪的代码，因为写 Python 的方式太多了。你会同时遇到由有 10 年谷歌经验的资深人士设计的用于规模化场景的库，以及由刚毕业的博士生写的用完即弃的 Jupyter notebook。几乎所有东西都围绕 FastAPI 创建 API 和 Pydantic 进行验证。但是并没有在全公司范围内强制执行的风格指南。</p><p>OpenAI <strong>所有东西都跑在 Azure 上</strong>。有趣的是，我认为值得信赖的服务只有三个：Azure Kubernetes Service、CosmosDB（Azure 的文档存储）和 BlobStore。没有像 Dynamo、Spanner、Bigtable、Bigquery、Kinesis 或 Aurora 这样的真正对等物。在这里，你很少会去考虑自动伸缩单元。IAM 的实现往往比你在 AWS 上得到的要<strong>受限得多</strong>。而且有一种强烈的内部自研倾向。</p><p>在人员方面（至少在工程领域），存在一条<strong>非常显著的 Meta → OpenAI 的人才输送链</strong>。在很多方面，OpenAI 都像早期的 Meta：一个现象级的消费应用，初生的基础设施，以及对快速行动的渴望。我见过的大多数从 Meta + Instagram 带来的基础设施人才都相当强大。</p><p>把这些放在一起，你会看到很多<strong>核心基础设施部分</strong>都让人联想到 Meta。有一个内部重新实现的 <strong>TAO</strong>。一个在边缘整合认证身份的项目。我相信还有很多我不知道的。</p><p><strong>聊天（Chat）的概念根深蒂固</strong>。自从 ChatGPT 一炮而红后，<strong>大量</strong>代码库都是围绕聊天消息和对话的概念构建的。这些原语已经如此深入人心，以至于你如果忽视它们，后果自负。我们在 Codex 中确实稍微偏离了它们（更多地借鉴了 <strong>responses API</strong> 的经验），但我们也利用了大量现有技术。</p><p><strong>代码为王 (Code wins)</strong>。决策通常是由计划做这项工作的团队做出的，而不是由某个中央架构或规划委员会。结果是，这里有强烈的行动偏好，而且代码库中经常有许多重复的部分。我肯定见过不下六个用于队列管理或代理循环之类的库。</p><p>在一些领域，<strong>快速扩张的工程团队和工具不足造成了问题</strong>。sa-server（后端单体服务）有点像个垃圾场。CI 在主分支上崩溃的频率比你想象的要高得多。即使是并行运行并只考虑一部分依赖项的测试用例，在 GPU 上也可能需要大约 30 分钟才能跑完。这些并非无法解决的问题，但它很好地提醒我们，这类问题无处不在，而且当你扩张得超快时，它们可能会变得更糟。值得称赞的是，内部团队正在<strong>投入大量精力</strong>来改善这种情况。</p><h3 id="我学到的其他东西"><a href="#我学到的其他东西" class="headerlink" title="我学到的其他东西"></a><strong>我学到的其他东西</strong></h3><ul><li><strong>一个大型消费品牌是什么样的</strong>。直到我们开始做 Codex，我才真正内化这一点。所有事情都以“专业版订阅用户”来衡量。即使对于像 Codex 这样的产品，我们考虑用户引导时也主要与个人使用而非团队使用相关。这有点颠覆了我这个主要来自 B2B&#x2F;企业背景的人的认知。你只要按下一个开关，从第一天起流量就来了。</li><li><strong>大型模型是如何训练的（在宏观层面）</strong>。这有一个从“实验”到“工程”的光谱。大多数想法都始于小规模实验。如果结果看起来有希望，它们就会被整合到一个更大的训练任务中。实验既是关于调整核心算法，也是关于调整数据混合并仔细研究结果。在大的方面，进行一次大型训练几乎就像是巨大的分布式系统工程。会有奇怪的边缘情况和意想不到的事情发生。你需要去调试它们。</li><li><strong>如何做 GPU 算力数学</strong>。作为 Codex 发布的一部分，我们必须预测负载容量需求，这是我第一次真正花时间对任何 GPU 进行基准测试。要点是，你实际上应该从你需要的延迟要求（总延迟、token 数量、首个 token 生成时间）出发，而不是自下而上地分析一个 GPU 能支持什么。每一次新的模型迭代都可能彻底改变负载模式。</li><li><strong>如何在一个大型 Python 代码库中工作</strong>。Segment 是微服务和单体服务的结合体，主要使用 Golang 和 Typescript。我们没有 OpenAI 那么广的代码。我学到了很多关于如何根据贡献代码的开发者数量来扩展代码库的知识。你必须为“默认就能用”、“保持主分支干净”和“难以误用”之类的事情设置更多的护栏。</li></ul><h3 id="发布-Codex"><a href="#发布-Codex" class="headerlink" title="发布 Codex"></a><strong>发布 Codex</strong></h3><p>我在 OpenAI 最后三个月的一个重要部分是发布 <strong>Codex</strong>。这无疑是我职业生涯的亮点之一。</p><p>背景是，在 2024 年 11 月，OpenAI 设定了一个 2025 年的目标，即发布一个编程代理。到 2025 年 2 月，我们已经有一些内部工具在使用这些模型，效果很好。我们感受到了发布一个专门针对编程的代理的压力。很明显，模型已经发展到了在编程方面变得非常有用（看看市场上新涌现的大量 vibe-coding 工具就知道了）。</p><p>我提前结束了陪产假，回来帮助参与 Codex 的发布。我回来一周后，我们经历了一次（有点混乱的）两个团队的合并，并开始了一场疯狂的冲刺。从开始（写下第一行代码）到结束，整个产品只用了<strong>短短 7 周</strong>就构建完成了。</p><p>Codex 的冲刺可能是我近十年来工作最辛苦的一次。大多数晚上都工作到 11 点或午夜。每天早上 5:30 被新生儿吵醒。7 点又去办公室。大多数周末都在工作。我们整个团队都拼尽全力，因为每一周都很关键。这让我想起了在 YC 的日子。</p><p>很难夸大这种节奏有多么不可思议。我从未见过任何规模的组织能从一个想法，在如此短的时间内，变成一个完全发布并免费提供的产品。范围也不小；我们构建了一个容器运行时，对仓库下载进行了优化，微调了一个自定义模型来处理代码编辑，处理了各种 git 操作，引入了一个全新的交互界面，启用了互联网访问，最终做出了一个用起来通常很爽的产品。</p><p>不管你怎么说，OpenAI 仍然有那种快速迭代的冲劲。</p><p>好消息是，对的人可以创造奇迹。我们是一个由约 8 名工程师、约 4 名研究员、2 名设计师、2 名 GTM 和一名 PM 组成的资深团队。如果没有这个团队，我想我们已经失败了。没有人需要太多指导，但我们确实需要大量的协调。如果你有机会与 Codex 团队的任何人合作，请记住，他们每个人都很棒。</p><p>发布前一晚，我们五个人熬到凌晨 4 点，试图部署主单体服务（一个耗时数小时的工作）。然后又回到办公室，为早上 8 点的发布公告和直播做准备。我们打开了功能开关，开始看到流量涌入。我从未见过一个产品仅仅因为出现在左侧边栏就能获得如此迅速的增长，但这就是 ChatGPT 的力量。</p><p>在产品形态方面，我们最终确定了一种完全异步的工作模式。与像 <strong>Cursor</strong>（当时，现在它支持<strong>类似的模式</strong>）或 <strong>Claude Code</strong> 这样的工具不同，我们的目标是允许用户启动任务，让代理在自己的环境中运行。我们的赌注是，在终局中，用户应该像对待同事一样对待编程代理：他们向代理发送消息，代理花一些时间完成工作，然后带着一个 PR 回来。</p><p>这有点像一场赌博：我们今天处于一个有点奇怪的状态，模型<strong>很好</strong>，但还不是<strong>极好</strong>。它们可以一次工作<strong>几分钟</strong>，但还不能工作<strong>几小时</strong>。用户对模型能力的信任程度差异很大。我们甚至还不清楚模型的真正能力是什么。</p><p>从长远来看，我确实相信大多数编程会更像 Codex。在此期间，看到所有产品如何展开将会很有趣。</p><p>Codex（也许不足为奇）非常擅长在一个大型代码库中工作，理解如何导航。我看到的与其他工具最大的区别是能够一次性启动多个任务并比较它们的输出。</p><p>我最近看到<strong>有公开数据</strong>比较了不同 LLM 代理创建的 PR。仅从公开数据看，Codex 已经生成了 <strong>630,000 个 PR</strong>。这大约是自发布以来的 <strong>53 天</strong>内，每个工程师 <strong>78,000 个公开 PR</strong>（你可以自己猜测私有 PR 的倍数）。我不确定我这辈子是否做过如此有影响力的事情。</p><h3 id="临别赠言"><a href="#临别赠言" class="headerlink" title="临别赠言"></a><strong>临别赠言</strong></h3><p>说实话，我最初对加入 OpenAI 是有些疑虑的。我不确定牺牲我的自由，有一个老板，成为一个更大机器中一个小得多的零件会是什么样子。我一直对我的加入保持相当低调，以防它不适合我。</p><p>我确实想从这次经历中得到三样东西：</p><ol><li>建立对模型如何训练以及能力走向的直觉</li><li>与优秀的人一起工作并向他们学习</li><li>发布一个伟大的产品</li></ol><p>回顾这一年，我认为这是我做过的最好的决定之一。很难想象在其他任何地方能学到更多。</p><p>如果你是一个创始人，感觉你的创业公司真的没什么进展，你要么 1) 深入重新评估你如何能进行更多尝试，要么 2) 去加入一个大的实验室。现在是构建的绝佳时机。但它也是窥探未来走向的绝佳时机。</p><p>在我看来，通往 AGI 的道路现在是三巨头之争：OpenAI、Anthropic 和谷歌。这些组织中的每一个都将根据其 DNA（消费者 vs 企业 vs 坚如磐石的基础设施 + 数据）走上不同的道路。⁶ 在其中任何一个地方工作都将是一次大开眼界的经历。</p><p>感谢 Leah 在那些深夜里给予的极大支持并承担了大部分育儿工作。感谢 PW、GDB 和 Rizzo 给了我一个机会。感谢 SA 的队友们教我入门：Andrew, Anup, Bill, Jeremy, Kwaz, Ming, Simon, Tony, 和 Val。感谢 Codex 核心团队给了我一生难忘的旅程：Albin, AE, Andrey, Bryan, Channing, DavidK, Gabe, Gladstone, Hanson, Joey, Josh, Katy, KevinT, Max, Sabrina, SQ, Tibo, TZ 和 Will。我永远不会忘记这次冲刺。</p><p>Wham!</p><hr><h2 id="介绍与评论"><a href="#介绍与评论" class="headerlink" title="介绍与评论"></a>介绍与评论</h2><p>Calvin French-Owen 是 Segment 的联合创始人兼 CTO，在 MIT 读书时就开始创业。</p><ul><li>Segment 是一家 <strong>客户数据平台（Customer Data Platform, CDP）</strong>，帮助企业收集、整合并路由用户数据。公司创立于 2011 年，并于 2020 年被 Twilio 以 <strong>32 亿美元</strong>收购。</li></ul><p>换句话说，Calvin 在加入 OpenAI 之前就已经实现了财富自由。他选择再度出发，不是为了“下一桶金”，而是为了参与一场更大的事业——见证并推动 AGI 的到来。</p><p>他的这篇《Reflections on OpenAI》，不是一个旁观者的议论，而是一位经历过 <strong>从 0 到 1、从 1 到 100</strong> 的创业者和工程师的深度思考。也正因为如此，他对 <strong>OpenAI、Anthropic、Google</strong> 三巨头的基因划分，带有一种“过来人”的洞察：既理解技术难点，也能看清组织命运。</p><p>看着快刀青衣已经总结了这封信几个”反常识观点“：</p><ol><li>OpenAI 内部几乎不用邮件，一切都在 Slack 上</li><li>没有产品路线图，自下而上做研发</li><li>3000 人公司还能闪电决策</li><li>让 GPU 成本压倒一切</li><li>用兴趣来分配工作</li></ol><h3 id="我与第一条的共鸣：异步-vs-实时"><a href="#我与第一条的共鸣：异步-vs-实时" class="headerlink" title="我与第一条的共鸣：异步 vs 实时"></a>我与第一条的共鸣：异步 vs 实时</h3><p>对于第一条，其实有点像国内互联网的工作方式。我曾在外企工作，一般就是“微软套件”：Microsoft Teams + Email。IM 用 Teams，审批类走邮件，通常等上半天是常态。很多人把这种流程称为“WLB”，也确实是某种节奏的体现。</p><p>国内互联网是另一个极端。IM 工具一般用飞书、钉钉、企业微信、Kim，直接 DM，甚至直接 Call。我个人非常不喜欢后者：<strong>除非公司快倒闭，否则不要轻易打扰别人实时注意力。</strong></p><p><strong>异步，是高级协作的标志。</strong></p><p>另外就是——<strong>那些习惯用语音沟通的人，往往不是因为懒，而是写不出来。<strong>一件事如果说不清楚，写下来只会更混乱。很多人正是</strong>因为结构化表达能力差，才选择语音来遮掩混乱。</strong></p><p>所以我常说：</p><p>有些人菜，不是只菜在技术，而是菜在思维 —— 技术和表达，一样都菜。</p><p>不是“用了语音才菜”，而是“因为菜，才只能用语音”。</p><h3 id="第二与第三条：从涌现到太初有为"><a href="#第二与第三条：从涌现到太初有为" class="headerlink" title="第二与第三条：从涌现到太初有为"></a>第二与第三条：从涌现到太初有为</h3><p>第二条和第三条，实际上揭示了 LLM 成长的核心机制：<strong>涌现（emergence）</strong>。</p><p>也就是说——<strong>你无法提前计划 LLM 会带来什么突破，只能用递归、实验、自下而上的方式去逼近它。</strong></p><p>我第一次真正理解“涌现”，是在 KK 的《失控》里。那本书让我意识到：<strong>复杂系统中最强的秩序，往往不是设计出来的，而是放任出来的。</strong></p><p>这种组织模式有两个关键特征（也和快刀青衣提到的完全一致）：</p><ol><li><strong>决策权集中在少数真正懂技术的人手中</strong></li><li><strong>公司文化鼓励“先做再说”，而不是“先讨论再做”</strong></li></ol><p>所有“路线图导向”的组织，最终都会走向瓶颈。因为你永远画不出未知的地图。</p><p>真正的研发突破，往往来自非计划。</p><p>这就是我常说的——</p><p><strong>太初有为，而不是太初有道。</strong></p><blockquote><p>如果用传统 B2B 路线图做法来养一个 LLM，你很可能会提前限制它能“长多高”。这就像试图用 Excel 预测一棵藤蔓会爬到哪堵墙上。</p></blockquote><h3 id="第四条：GPU-成本-≈-真正的秩序锚点"><a href="#第四条：GPU-成本-≈-真正的秩序锚点" class="headerlink" title="第四条：GPU 成本 ≈ 真正的秩序锚点"></a>第四条：GPU 成本 ≈ 真正的秩序锚点</h3><p>OpenAI 有个极端但有效的成本观念：<strong>一切都换算成 GPU 成本。</strong></p><p>原文打了一个绝妙的比喻——Codex 的一个小功能，其 GPU 成本就相当于 Segment 创业时期全公司基础设施的开销。传统公司纠结打印纸、水和差旅费；OpenAI 则把一切预算简化为一个问题：</p><blockquote><p>这件事，用多少算力？</p></blockquote><p>当 GPU 成本压倒一切，其他预算都变得无关紧要。这就像你花几千万买了套房子，还在犹豫要不要买个 50 块钱的垃圾桶——<strong>不值得关心。</strong></p><p>这不是挥霍，而是秩序。</p><p>这不是不算账，而是只算关键账。</p><p>OpenAI 把资源配置的问题简化成一个核心原则：</p><blockquote><p>一切围绕主导成本优化，一切技术决策为算力服务。</p></blockquote><hr><p>这对我们有什么启发？</p><p><strong>每个组织，都有自己的“GPU 成本”。</strong></p><p>它可能是人力，也可能是注意力，也可能是获客成本。</p><p>你唯一该死死盯住的，不是会议纪要、也不是差旅审批，而是：<strong>你的主要资源在燃烧哪里？</strong></p><hr><p>类比到个人也一样：</p><blockquote><p>你的“GPU 成本”，就是时间 + 注意力。</p></blockquote><p>不是所有事都值得你认真。</p><p>更重要的是，有些事根本<strong>不值得你知道它发生了。</strong></p><p>搞清楚主耗资源点，搞清楚你真正的成本锚点，然后：</p><blockquote><p>围绕它设计一切，其他的都别管。</p></blockquote><h3 id="第五条：兴趣-≈-最真实的调度器"><a href="#第五条：兴趣-≈-最真实的调度器" class="headerlink" title="第五条：兴趣 ≈ 最真实的调度器"></a><strong>第五条：兴趣 ≈ 最真实的调度器</strong></h3><p>在 OpenAI，项目不是靠计划推动的，而是靠**兴趣 + 技术诱饵（nerd-sniping）**触发的。</p><p>很多研究项目的起点，只是某个研究员盯上了一个技术难题，然后就开始做了。</p><p>没人分派任务。也没人等排期审批。真正吸引人的 idea，会自然地把人聚过来。</p><p>甚至连“管理”也不太存在：</p><p>你是你自己的 PM、你的 EM、你的 mini CEO。</p><p>你会看到这样一种运作方式：</p><blockquote><p>某个项目突然显示出希望，周围自然就会冒出一撮人围上来，把它推进成产品。<br>谁都没有“被分配”过来，但大家都觉得：</p><p><strong>这事值得干一把。</strong></p></blockquote><hr><h3 id="最后一节：什么样的人，会再次出发？"><a href="#最后一节：什么样的人，会再次出发？" class="headerlink" title="最后一节：什么样的人，会再次出发？"></a>最后一节：什么样的人，会再次出发？</h3><p>一位早已财富自由的大佬，本可以过着惬意的半退休生活。</p><p>但在“千年未有之大变局”面前，他果断出山，投身其中。</p><p>让我想起那句话：</p><p><strong>总有些事，高于其他。</strong></p><p>而与某些印度成功人士不同：</p><p>有些人成功后热衷讲成功学，有些人开始教量子力学，有些人沉迷复读“何不食肉糜”。</p><p>而硅谷的许多大佬，早已跳出人类躯壳，思考的，是星辰大海。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/AI/">AI</category>
      
      
      <category domain="https://deusyu.app/tags/Anthropic/">Anthropic</category>
      
      <category domain="https://deusyu.app/tags/Calvin-French-Owen/">Calvin French-Owen</category>
      
      <category domain="https://deusyu.app/tags/Segment/">Segment</category>
      
      <category domain="https://deusyu.app/tags/OpenAI/">OpenAI</category>
      
      <category domain="https://deusyu.app/tags/Google-DeepMind/">Google DeepMind</category>
      
      <category domain="https://deusyu.app/tags/AGI/">AGI</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%8D%E5%B8%B8%E8%AF%86/">反常识</category>
      
      
      <comments>https://deusyu.app/posts/openai-reflections/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>LLM 是思维的镜子，能照出你多清晰</title>
      <link>https://deusyu.app/posts/llm-thinking-mirror/</link>
      <guid>https://deusyu.app/posts/llm-thinking-mirror/</guid>
      <pubDate>Tue, 12 Aug 2025 22:25:00 GMT</pubDate>
      
      <description>使用 LLM，就是清晰思考的艺术</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>你以为自己在用 LLM 提问，其实是在训练自己的思维接口。</p></blockquote><p>使用 LLM，就是清晰思考的艺术。</p><p>说白了，它就是块镜子。你扔给它的问题有多烂，它就回你多烂的答案。你表达得含糊，它就更含糊。你哪怕只是脑子里有点模糊的想法，试着组织成一句完整的话发出去的那一刻，你就开始“清理”自己了。</p><p>清理什么？<br>那些绕来绕去的废话，那些以为自己懂了但其实讲不出来的东西，那些“差不多就行”的懒惰直觉。</p><p>LLM 是冷酷的。它不帮你找借口，不陪你兜圈子，也不帮你圆场。你不清楚它就真的不清楚。你不够具体，它就只会更抽象。你对问题没想透，它不会替你想。</p><p>所以你会发现，在和模型反复交谈的过程中，你逐渐从“随便问一句”变成了“想好再说”。<br>你开始琢磨用词，尝试拆解，避免歧义，训练自己说出最想问的那个问题。</p><p>而当你真的问清楚了——<br>你就已经答对了一半。</p><p>有时候我觉得，LLM 比很多人都更值得交流。不是因为它聪明，而是因为它<em>不会敷衍</em>。你说一句含糊不清的套话，它就给你返回一堆看似礼貌但实则空洞的文字垃圾，跟你自己平时在会上一样。你想省事，它就比你还敷衍；你认真，它就反射得干干净净。</p><p>所以慢慢地，我开始把它当作一种思维的操场：</p><p>在这里练习如何表达一个模糊的冲动，如何捕捉一个刚浮现的想法，如何用清晰准确的语言钉住“我到底想要什么”。</p><p>以前写东西靠灵感，现在靠 prompt，靠 content。</p><p>以前思考像雾，现在像刀。</p><p>LLM 不会替我做决定，但它逼我把问题想清楚。</p><p>然后，我发现一件事：</p><p>你只要敢于直面自己的含糊，就能一步步拆出那个<strong>真正重要的问题</strong>。这过程，本质上就是“清晰思考的艺术”。</p><p>它是一个人类和模型共同完成的动作。</p><p>但最终，变清楚的是你自己。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%80%9D%E8%80%83%E5%B7%A5%E5%85%B7/">思考工具</category>
      
      <category domain="https://deusyu.app/categories/%E6%80%9D%E8%80%83%E5%B7%A5%E5%85%B7/%E6%B8%85%E6%99%B0%E6%80%9D%E7%BB%B4/">清晰思维</category>
      
      
      <category domain="https://deusyu.app/tags/LLM/">LLM</category>
      
      <category domain="https://deusyu.app/tags/%E6%80%9D%E7%BB%B4%E6%96%B9%E5%BC%8F/">思维方式</category>
      
      <category domain="https://deusyu.app/tags/%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B/">语言模型</category>
      
      <category domain="https://deusyu.app/tags/Prompt-%E5%B7%A5%E7%A8%8B/">Prompt 工程</category>
      
      <category domain="https://deusyu.app/tags/%E5%85%83%E8%AE%A4%E7%9F%A5/">元认知</category>
      
      <category domain="https://deusyu.app/tags/%E6%B8%85%E6%99%B0%E8%A1%A8%E8%BE%BE/">清晰表达</category>
      
      <category domain="https://deusyu.app/tags/%E5%86%99%E4%BD%9C%E7%BB%83%E4%B9%A0/">写作练习</category>
      
      
      <comments>https://deusyu.app/posts/llm-thinking-mirror/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>一行报错背后的侦探故事</title>
      <link>https://deusyu.app/posts/jdk8-encryption-oid/</link>
      <guid>https://deusyu.app/posts/jdk8-encryption-oid/</guid>
      <pubDate>Wed, 06 Aug 2025 04:11:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p><strong>从</strong><code>Cannot resolve symbol ‘md5WithRSAEncryption_oid’</code><strong>到 Apple Silicon 原生 JDK 8</strong></p><hr><h2 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h2><p>许多排错文章只停留在“答案”层面，却忽略了“答案是怎么找到的”。这篇文章记录了 Rainman 与 Gemini 联手破解的一次技术谜团：从<code>md5WithRSAEncryption_oid</code>的突然消失，到 Java 8 的加密出口管制史，再到 Apple Silicon 上的跨架构陷阱。希望读者不仅收获结论，也掌握抽丝剥茧的思考路径。</p><hr><h2 id="楔子：报错乍现"><a href="#楔子：报错乍现" class="headerlink" title="楔子：报错乍现"></a>楔子：报错乍现</h2><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="type">AlgorithmId</span> <span class="variable">algo</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">AlgorithmId</span>(AlgorithmId.md5WithRSAEncryption_oid);</span><br><span class="line"><span class="comment">// 编译错误</span></span><br><span class="line">Cannot resolve symbol <span class="string">&#x27;md5WithRSAEncryption_oid&#x27;</span></span><br></pre></td></tr></table></figure><p>多数开发者看到这行红字，第一反应通常是“依赖缺失”或“版本不匹配”。然而，这次真相远比常规套路更加曲折。</p><hr><h2 id="第一幕：误判的嫌疑人——JPMS"><a href="#第一幕：误判的嫌疑人——JPMS" class="headerlink" title="第一幕：误判的嫌疑人——JPMS"></a>第一幕：误判的嫌疑人——JPMS</h2><p>在 JDK 9 及以后版本里，<code>sun.security.x509</code>  属于内部 API，被 JPMS 模块系统默认“封印”。通常我们会用  <code>--add-exports</code>  打开封印，这是标准答案。</p><p>然而，Rainman 的一句话——“我用的是  <strong>JDK 8</strong>”——瞬间推翻了这个假设：JDK 8 根本没有 JPMS，嫌疑人当场被排除。</p><hr><h2 id="第二幕：IDE-不是凶手"><a href="#第二幕：IDE-不是凶手" class="headerlink" title="第二幕：IDE 不是凶手"></a>第二幕：IDE 不是凶手</h2><p>接下来，两人怀疑 IDE 出现了问题：</p><ul><li>检查 IntelliJ IDEA 的 Project SDK 设置；</li><li>执行  <em>Invalidate Caches &#x2F; Restart</em>  清除索引；</li><li>反编译  <code>AlgorithmId</code>  查看源代码。</li></ul><p>然而真相出乎意料：类文件里压根儿就<strong>不存在</strong> <code>md5WithRSAEncryption_oid</code>。IDE 并非“找不到”，而是“现场根本就没有”。</p><hr><h2 id="第三幕：JCE-出口管制的历史尘埃"><a href="#第三幕：JCE-出口管制的历史尘埃" class="headerlink" title="第三幕：JCE 出口管制的历史尘埃"></a>第三幕：JCE 出口管制的历史尘埃</h2><p>真正的幕后黑手终于浮出水面：<strong>有限强度（Limited Strength）JCE 策略</strong>。</p><p>上世纪九十年代，美国对加密软件出口有严格限制。为符合法规，Oracle 最初发布的 Java 8 默认捆绑“有限强度”策略文件，屏蔽了部分算法及其 OID，包括<code>md5WithRSAEncryption_oid</code>。要解锁这些功能，必须手动替换成<strong>Unlimited Strength</strong>  文件。</p><p>现代 OpenJDK 发行版（例如 Temurin、Zulu、Corretto）默认内置无限强度策略；而 Oracle 官方也在  <strong>JDK 8u161</strong>  后取消了此限制，但许多企业环境依然停留在旧版。</p><hr><h2 id="最终章：Apple-Silicon-的“隐形坑”"><a href="#最终章：Apple-Silicon-的“隐形坑”" class="headerlink" title="最终章：Apple Silicon 的“隐形坑”"></a>最终章：Apple Silicon 的“隐形坑”</h2><p>本以为问题到此结束，只需换个“完全体”的 OpenJDK 8。然而在 Apple Silicon 上，若安装了 x86 架构的 JDK，即使再好的补丁，也只能靠 Rosetta2 转译，稳定性与性能均难保证。</p><ul><li>Homebrew 的  <code>temurin@8</code>  当前仍是 Intel 架构。</li><li>最终经过实验验证，<code>brew install --cask zulu@8</code>  才会拉取 Azul 提供的<strong>ARM64 原生 JDK 8</strong>。</li></ul><hr><h2 id="复盘：侦探式排错的五个要诀"><a href="#复盘：侦探式排错的五个要诀" class="headerlink" title="复盘：侦探式排错的五个要诀"></a>复盘：侦探式排错的五个要诀</h2><ul><li><strong>确认上下文</strong>：相同错误在不同环境下可能截然不同，先确认关键环境信息。</li><li><strong>直击现场</strong>：直接反编译或阅读源代码，胜过盲目猜测。</li><li><strong>知晓历史</strong>：陈年旧债（如 JCE 限制）仍可能阴魂不散。</li><li><strong>留意架构</strong>：在 x86 向 ARM 过渡期间，确认架构至关重要。</li><li><strong>协作沟通</strong>：清晰描述问题、快速反馈信息、有效知识支撑，缺一不可。</li></ul><hr><h2 id="结语"><a href="#结语" class="headerlink" title="结语"></a>结语</h2><p>一次简单的编译错误，串起了 Java 生态、历史政策与硬件演进。希望这篇侦探故事能在你面对下一个“奇怪报错”时，提供一些额外的思路与灵感。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%8A%80%E6%9C%AF%E6%8E%92%E9%94%99/">技术排错</category>
      
      
      <category domain="https://deusyu.app/tags/JDK-8/">JDK 8</category>
      
      <category domain="https://deusyu.app/tags/Java-%E5%8A%A0%E5%AF%86/">Java 加密</category>
      
      <category domain="https://deusyu.app/tags/JCE/">JCE</category>
      
      <category domain="https://deusyu.app/tags/Apple-Silicon/">Apple Silicon</category>
      
      <category domain="https://deusyu.app/tags/%E8%B7%A8%E6%9E%B6%E6%9E%84%E9%97%AE%E9%A2%98/">跨架构问题</category>
      
      <category domain="https://deusyu.app/tags/OpenJDK/">OpenJDK</category>
      
      <category domain="https://deusyu.app/tags/Rosetta-2/">Rosetta 2</category>
      
      <category domain="https://deusyu.app/tags/%E6%8A%A5%E9%94%99%E6%8E%92%E6%9F%A5/">报错排查</category>
      
      <category domain="https://deusyu.app/tags/Temurin/">Temurin</category>
      
      <category domain="https://deusyu.app/tags/Zulu-JDK/">Zulu JDK</category>
      
      
      <comments>https://deusyu.app/posts/jdk8-encryption-oid/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>IaC演进史：从脚本到云原生宣言</title>
      <link>https://deusyu.app/posts/iac-evolution-1993-2025/</link>
      <guid>https://deusyu.app/posts/iac-evolution-1993-2025/</guid>
      <pubDate>Sun, 03 Aug 2025 19:08:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>IaC 的发展史，本质上是一场<strong>从命令式（Imperative）到声明式（Declarative）的思维范式革命</strong>。</p></blockquote><pre class="mermaid">timeline    title IaC Evolution (1993 – 2025)    1993      : CFEngine – declarative config & idempotency    2005      : Puppet – centralized pull CM    2009      : Chef – Ruby-DSL CM    2011      : AWS CloudFormation – cloud-native templates    2014      : Terraform 0.1 – multi-cloud plan/apply    2017      : GitOps era – Helm/Kustomize + Argo CD/Flux    2018      : Pulumi – general-purpose languages for IaC    2019      : AWS CDK – constructs → CloudFormation    2019.5    : Crossplane – Kubernetes control-plane IaC    2019.9    : OPA/Rego & Kyverno – Policy as Code mainstream    2023      : HashiCorp BUSL 1.1 switch – licensing shock    2023.9    : OpenTF → OpenTofu – community Terraform fork (Linux Foundation)    2025      : AI-driven IaC – intent → infra closed loop</pre><p>在信息技术的世界里，每一次深刻的变革，往往源于一个简单却根本性的思想转变。基础设施即代码（Infrastructure as Code, IaC）的崛起，正是这样一场根本性的革命。IaC 的崛起不仅仅是工具的迭代，更是一场关于自动化和一致性的哲学演进。这场演进，也重塑了我们在复杂数字系统中的“信任”。</p><p>这趟旅程的核心，是一场<strong>从命令式（Imperative）到声明式（Declarative）的权力交接</strong>。</p><ul><li><strong>命令式</strong>，如同一个事无巨细的微观管理者，要求我们下达精确指令：“先创建这台虚拟机，然后安装那个软件包，接着配置这张网卡……” 早期的系统管理脚本，正是这种思维的产物。</li><li><strong>声明式</strong>，则像一位高瞻远瞩的战略家，我们只需向它描述最终蓝图：“我需要一个由三台 Web 服务器和一个数据库组成的、高可用的应用集群。” 至于如何搭建、配置、连接以达成这个“最终状态（Desired State）”，则由工具自行推演和执行。</li></ul><p>这场从关注“过程”到聚焦“目标”的范式转移，是 IaC 演进中最关键的“alpha moment”。它将工程师从繁琐、易错的执行细节中解放出来，让他们能够专注于架构的“意图”。这背后，是对系统“信任”的重新构建——我们不再信任人类的手动操作，而是信任经过验证的、可重复的代码化定义。</p><h3 id="阶段一：黎明前夜-自动化脚本与配置管理的萌芽（1990s-2000s-初期）"><a href="#阶段一：黎明前夜-自动化脚本与配置管理的萌芽（1990s-2000s-初期）" class="headerlink" title="阶段一：黎明前夜 - 自动化脚本与配置管理的萌芽（1990s - 2000s 初期）"></a>阶段一：黎明前夜 - 自动化脚本与配置管理的萌芽（1990s - 2000s 初期）</h3><p>在云计算时代之前，系统管理员们是数字世界的工匠。他们编写大量的 Shell、Perl 脚本来自动化重复性任务，这便是 IaC 最原始的形态。然而，这些脚本往往是脆弱且孤立的，缺乏对系统状态的感知，极易导致<strong>配置漂移（Configuration Drift）</strong>——即服务器的实际状态与预期状态在一次次手动干预后渐行渐远。</p><p>真正的曙光出现在 1993 年。Mark Burgess 开发了 <strong>CFEngine</strong>，这被公认为配置管理工具的鼻祖。CFEngine 首次引入了<strong>声明式</strong>的思想，允许管理员定义系统的“期望状态”，并由引擎自动执行操作以“收敛（Converge）”到该状态。它奠定了整个 IaC 领域的核心理论基础：<strong>幂等性（Idempotence）</strong>——无论一个操作执行多少次，其产生的结果都完全相同。</p><h3 id="阶段二：巨头崛起-配置管理工具的“战国时代”（2005-2012）"><a href="#阶段二：巨头崛起-配置管理工具的“战国时代”（2005-2012）" class="headerlink" title="阶段二：巨头崛起 - 配置管理工具的“战国时代”（2005 - 2012）"></a>阶段二：巨头崛起 - 配置管理工具的“战国时代”（2005 - 2012）</h3><p>随着数据中心规模的扩大和虚拟化技术的兴起，对更强大配置管理工具的需求日益迫切。这个时期，三款里程碑式的工具相继登场，开启了 IaC 的第一个黄金时代。</p><ul><li><strong>Puppet（2005 年）</strong>：坚定地走了<strong>声明式</strong>路线，使用自有的 DSL（领域特定语言）以一种模型驱动的方式定义资源。管理员通过编写 “Manifests” 来描述最终状态，非常适合需要严格合规和标准化的企业环境。</li><li><strong>Chef（2009 年）</strong>：采取了不同的哲学，它使用纯 Ruby DSL，将基础设施配置描述为 “Recipes” 和 “Cookbooks”。这种方式为熟悉编程的开发者提供了极大的灵活性，更符合“基础设施即软件”的理念。Puppet 和 Chef 关于“声明式 vs. 过程式”的路线之争，极大地推动了 IaC 理论和实践的成熟。</li><li><strong>Ansible（2012 年）</strong>：带来了颠覆性的改变。它<strong>无需在被管理节点上安装 Agent</strong>，使用简单的 YAML 语言进行描述，并通过 SSH 进行通信。这种“Agentless”架构和极低的上手门槛，使其迅速流行起来。</li></ul><p>这一时期，IaC 的核心价值——<strong>自动化、一致性、可重复性</strong>，被广泛接受。它与同期兴起的 <strong>DevOps</strong> 文化一拍即合，成为打破开发与运维壁垒的关键技术粘合剂。</p><h3 id="阶段三：云时代的范式转移-从管理服务器到编排万物（2011-至今）"><a href="#阶段三：云时代的范式转移-从管理服务器到编排万物（2011-至今）" class="headerlink" title="阶段三：云时代的范式转移 - 从管理服务器到编排万物（2011 - 至今）"></a>阶段三：云时代的范式转移 - 从管理服务器到编排万物（2011 - 至今）</h3><p>2006 年 AWS EC2 的发布是历史的转折点。云的出现，将基础设施从物理的、静态的实体，变成了虚拟的、动态的、API 驱动的服务。管理单台服务器的配置已不再是核心痛点，<strong>如何编排和管理由无数云服务构成的复杂拓扑</strong>，成为了新的挑战。</p><blockquote><p>为何这成为了新的挑战？<br>因为如何编排由无数云服务构成的复杂拓扑，远比管理单台服务器更难。</p></blockquote><p>云厂商率先行动，AWS 在 <strong>2011 年</strong> 推出了 <strong>CloudFormation</strong>，开创了用模板文件定义云原生资源的先河。然而，一个更具普适性的时代由 <strong>Terraform（2014 年）</strong> 开启。它从一开始就不是一个单纯的配置管理工具，而是一个<strong>基础设施编排引擎</strong>。凭借其清晰的 <code>plan/apply</code> 工作流、强大的状态管理和无与伦比的跨云能力，Terraform 迅速成为事实标准。</p><p>但故事并未就此结束。当 DevOps 思想日益深入，一个分歧点出现了：为什么基础设施代码不能用我们已经熟悉的通用编程语言来写？<strong>Pulumi（2018 年）</strong> 和 <strong>AWS CDK（2019 年）</strong> 响亮地回答了这个问题。它们允许开发者使用 TypeScript、Python、Go 等语言来定义基础设施，从而可以利用这些语言强大的生态、工具链和抽象能力。这标志着 IaC 的一个重要分支：<strong>从专用 DSL 到通用语言的回归</strong>，极大地降低了应用开发者的参与门槛。</p><h3 id="阶段四：云原生深水区-K8s、GitOps-与策略即代码"><a href="#阶段四：云原生深水区-K8s、GitOps-与策略即代码" class="headerlink" title="阶段四：云原生深水区 - K8s、GitOps 与策略即代码"></a>阶段四：云原生深水区 - K8s、GitOps 与策略即代码</h3><p>进入云原生时代，以 Kubernetes 为代表的容器编排技术再次重塑了基础设施的形态。IaC 的发展也随之进入了新的阶段，涌现出更多重要的范式：</p><ul><li><strong>GitOps 的成熟（约 2017 年起）</strong>：这个革命性的理念将 Git 仓库作为基础设施和应用的<strong>唯一事实来源（Single Source of Truth）</strong>。以 <strong>Argo CD</strong>、<strong>Flux</strong> 为代表的工具，持续监控 Git 仓库，自动将声明式配置（通常由 <strong>Helm</strong> 或 <strong>Kustomize</strong> 管理）同步到 Kubernetes 集群。这为基础设施变更带来了前所未有的透明度、可追溯性和安全性。</li><li><strong>将 K8s 作为世界模型（约 2019 年起）</strong>：既然 Kubernetes 擅长管理声明式 API，为何不让它管理一切？<strong>Crossplane</strong> 正是这一思想的激进实践者。它将云厂商的 API（如 AWS S3、GCP SQL）封装成 Kubernetes CRD，让你可以用 <code>kubectl</code> 和 YAML 来创建和管理一切云资源，实现了终极的控制平面统一。</li><li><strong>策略即代码（Policy as Code, PaC）的兴起（约 2020 年起）</strong>：当一切皆代码，如何保证这些代码的安全性、合规性和最佳实践？<strong>OPA (Open Policy Agent)</strong> 和 <strong>Kyverno</strong> 等工具应运而生。它们允许你用代码来定义和执行策略，例如“所有对外暴露的存储桶都必须加密”、“不允许使用 latest 标签的镜像”等，在 IaC 的自动化流程中加入了关键的治理环节。</li></ul><h3 id="一次分裂：社区、商业与-OpenTofu-的诞生"><a href="#一次分裂：社区、商业与-OpenTofu-的诞生" class="headerlink" title="一次分裂：社区、商业与 OpenTofu 的诞生"></a>一次分裂：社区、商业与 OpenTofu 的诞生</h3><p>2023 年，IaC 领域发生了一场“大地震”。Terraform 的母公司 HashiCorp 宣布将其开源协议从 MPL 2.0 切换到商业源码许可证（BUSL 1.1）。这一举动引发了社区的剧烈反弹，许多公司和开发者担心其未来的开放性和商业风险。作为回应，在 Linux 基金会的支持下，社区于 <strong>2023 年 9 月</strong> 发起 <strong>OpenTF</strong>（随后更名为 <strong>OpenTofu</strong>）项目，并在 2024 年初发布首个版本——它基于 Terraform 最后一个适用 MPL 2.0 许可的版本进行长期维护。这场“分裂”标志着 IaC 的发展不再仅仅是技术路线之争，更深刻地卷入了开源社区精神与商业化探索之间的复杂博弈。</p><h3 id="结语：一部关于“信任”的演进史"><a href="#结语：一部关于“信任”的演进史" class="headerlink" title="结语：一部关于“信任”的演进史"></a>结语：一部关于“信任”的演进史</h3><p>回顾 IaC 的发展历程，我们可以清晰地看到一条主线：<strong>通过代码和自动化，不断减少对“人”的易错性的依赖，转而建立对“系统”和“流程”的确定性信任。</strong></p><p>从最初的手工脚本，到 CFEngine 的收敛理论，再到 Terraform 的全局编排，直至 GitOps 的极致管控，每一步都是为了让庞大而复杂的基础设施变得更可预测、更可靠。</p><p>这趟旅程远未结束。<strong>AI 驱动的 IaC</strong> 正在地平线上显现，未来我们或许只需描述“意图”，AI 就能自动生成、优化和维护基础设施代码，形成一个完整的闭环。工程师的角色，也将从基础设施的“管理者”，真正转变为其“设计者”和“定义者”。</p><script type="module"> import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.esm.min.mjs';mermaid.initialize({startOnLoad: true, flowchart: {curve: 'linear'}}); </script>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Cloud-Native/">Cloud Native</category>
      
      
      <category domain="https://deusyu.app/tags/IaC/">IaC</category>
      
      <category domain="https://deusyu.app/tags/Terraform/">Terraform</category>
      
      <category domain="https://deusyu.app/tags/Infrastructure-as-Code/">Infrastructure as Code</category>
      
      <category domain="https://deusyu.app/tags/CloudFormation/">CloudFormation</category>
      
      <category domain="https://deusyu.app/tags/Pulumi/">Pulumi</category>
      
      <category domain="https://deusyu.app/tags/GitOps/">GitOps</category>
      
      <category domain="https://deusyu.app/tags/Crossplane/">Crossplane</category>
      
      <category domain="https://deusyu.app/tags/OpenTofu/">OpenTofu</category>
      
      <category domain="https://deusyu.app/tags/Policy-as-Code/">Policy as Code</category>
      
      
      <comments>https://deusyu.app/posts/iac-evolution-1993-2025/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>全球 &amp; 中国主流酒店集团与品牌矩阵速查表</title>
      <link>https://deusyu.app/posts/hotel-group-matrix/</link>
      <guid>https://deusyu.app/posts/hotel-group-matrix/</guid>
      <pubDate>Sun, 03 Aug 2025 18:36:00 GMT</pubDate>
      
      <description>一张表看懂全球与中国主流酒店集团及旗下品牌，从高端到经济型一网打尽，差旅选酒店更高效。</description>
      
      
      
      <content:encoded><![CDATA[<p>出门住酒店，不知道选哪个？这份矩阵帮你一次搞懂谁是豪门、谁是性价比之王。</p><p>从全球巨头到中国本土集团，从高端奢华到经济实用，速查即用。</p><table><thead><tr><th>酒店集团</th><th>所属国家&#x2F;背景</th><th>代表品牌（高端 → 经济）</th><th>备注说明</th></tr></thead><tbody><tr><td>万豪（Marriott）</td><td>美国</td><td>丽思卡尔顿、W、JW 万豪、万豪、喜来登、源宿、福朋、雅乐轩、万怡</td><td>全球最大酒店集团</td></tr><tr><td>希尔顿（Hilton）</td><td>美国</td><td>华尔道夫、康莱德、希尔顿、DoubleTree、Tru、Tempo</td><td>常见于商务差旅</td></tr><tr><td>洲际（IHG）</td><td>英国</td><td>洲际、华邑、英迪格、皇冠假日、假日酒店、智选假日</td><td>与华住合作运营部分品牌</td></tr><tr><td>雅高（Accor）</td><td>法国</td><td>莱佛士、费尔蒙、索菲特、美憬阁、美爵、美居、诺富特、宜必思</td><td>华住代理部分中国品牌</td></tr><tr><td>凯悦（Hyatt）</td><td>美国</td><td>柏悦、安达仕、凯悦、Hyatt Regency、Hyatt Centric、Caption</td><td>高端商旅 &amp; 休闲偏多</td></tr><tr><td>华住集团（H World）</td><td>中国</td><td>禧玥、全季、桔子水晶、星程、汉庭、海友、CitiGO、美居（代理）</td><td>品牌众多，覆盖全面</td></tr><tr><td>锦江国际</td><td>中国（国资）</td><td>丽枫、维也纳、喆啡、希岸、ZMAX、锦江之星、白玉兰、IU 酒店</td><td>并购铂涛后体量巨大</td></tr><tr><td>首旅如家（BTG）</td><td>中国（国资）</td><td>和颐、如家精选、如家、漫心、柠檬树、宜必思（合作）</td><td>原如家升级，公私合营典范</td></tr><tr><td>亚朵集团</td><td>中国</td><td>亚朵 S、亚朵轻居、A.T.HOUSE</td><td>强调人文与 IP 运营</td></tr><tr><td>东呈国际</td><td>中国</td><td>宜尚、柏曼、城市便捷、吾公寓</td><td>注重下沉市场，中端为主</td></tr><tr><td>尚美生活</td><td>中国</td><td>兰欧、尚客优、希岸轻雅、小栈公寓</td><td>三四线城市密集布局</td></tr><tr><td>德意志酒店集团（DH）</td><td>德国（华住收购）</td><td>施柏阁、MAXX、城际、Jaz</td><td>华住海外布局的欧洲主力</td></tr></tbody></table><p>💡 <strong>小结</strong></p><ul><li>如果你是<strong>常年差旅党</strong> → 万豪 &#x2F; 希尔顿 &#x2F; IHG 的会员体系最值。</li><li>如果你是<strong>国内中短途旅行</strong> → 华住 &#x2F; 锦江 &#x2F; 首旅如家品牌覆盖最广。</li><li>如果你追求<strong>设计感和人文氛围</strong> → 亚朵和部分凯悦系酒店值得优先尝试。</li></ul>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%80%9F%E6%9F%A5%E8%A1%A8/">速查表</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%97%85%E8%A1%8C/">旅行</category>
      
      <category domain="https://deusyu.app/tags/%E9%85%92%E5%BA%97/">酒店</category>
      
      <category domain="https://deusyu.app/tags/%E5%93%81%E7%89%8C%E7%9F%A9%E9%98%B5/">品牌矩阵</category>
      
      <category domain="https://deusyu.app/tags/%E5%95%86%E5%8A%A1%E5%B7%AE%E6%97%85/">商务差旅</category>
      
      <category domain="https://deusyu.app/tags/%E9%85%92%E5%BA%97%E9%9B%86%E5%9B%A2/">酒店集团</category>
      
      
      <comments>https://deusyu.app/posts/hotel-group-matrix/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Good Writing</title>
      <link>https://deusyu.app/posts/good-writing/</link>
      <guid>https://deusyu.app/posts/good-writing/</guid>
      <pubDate>Thu, 31 Jul 2025 22:08:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://www.paulgraham.com/goodwriting.html">https://www.paulgraham.com/goodwriting.html</a></p></blockquote><p>写作之所以优秀，有两层含义：文字本身悦耳流畅，思想本身正确无误。<br>它可以拥有优美、顺畅的句子，也可以对重要事务得出正确的结论。<br>乍看之下，这两种“好”似乎毫不相干，就像汽车的速度与车漆的颜色。<br>然而，我并不这么认为。<br>我认为，那些读来悦耳的文字更有可能观点正确。</p><p>于是我们得到了最令人兴奋的想法：它听起来荒诞，却又确实成立。<br>让我们来拆解它。<br>它怎么可能为真？</p><p>在写作实践中，我确信它是真的。<br>你无法同时优化两件毫不相关的事；当你极端地追求其中一项，必然会牺牲另一项。<br>然而，无论我多么用力打磨，我从未遇到要在“最悦耳的句子”与“最能表达思想的句子”之间做取舍的情形。<br>若真有这种取舍，关注句子声音就显得轻佻了。<br>可在实践中，情况恰恰相反。<br>修正听起来别扭的句子，似乎能帮助把思想表达得更准确。</p><p>所谓“正确”，不仅仅是事实无误。<br>将思想讲“正确”意味着把它们充分展开——得出最关键的结论，并以恰当的深度探讨每一点。<br>因此，思想的正确不仅是说真话，而是要说对的真话。</p><p>那么，追求句子悦耳如何助你做到这一点？<br>答案的线索来自 30 年前，我为自己的第一本书排版时的一个发现。<br>排版时有时会遇到糟糕的运气。<br>例如，有一段文字恰好比一页多出一行。<br>我不知道一般排版工会怎么做，但我会把那段内容改写，使其短一行。<br>你也许会以为这种随意的限制会让文字变差。<br>然而出乎我意料，它从未让文字变糟。<br>最终我得到的成稿总是更令我满意。</p><p>我认为这并非因为原稿草率。<br>我相信，你若随意挑一段别人的文字，让作者把它略微缩短（或加长），他们大概率也能写得更好。</p><p>对此现象，最好的比喻是摇晃装满杂物的容器。<br>摇晃本身是随机动作。<br>更准确地说，这动作并非刻意让某两件物品更紧密贴合。<br>然而不断摇晃会不可避免地促使它们找到极其巧妙的自我嵌合方式。<br>由于重力不允许它们变得松散，任何变化都只能是朝着更紧密的方向演化。</p><p>写作亦然。<br>若你必须重写一段拗口的文字，你绝不会让它因此不如之前准确。<br>你会无法忍受，就像重力无法容忍物体飘向空中。<br>因此，思想层面的任何变化都只能更上层楼。</p><p>只要想一想，这个道理显而易见。<br>悦耳的文字更可能正确，就跟被充分摇晃的容器更可能紧密装填一样，原因相同。<br>但事情还不止于此。<br>悦耳不仅仅是外部随机力量，让文章的思想侥幸获益。<br>它实际上帮助你把思想弄对。</p><p>原因在于，这让文章更易阅读。<br>阅读流畅的文字更省力。<br>这如何帮到作者？<br>因为作者本人就是第一位读者。<br>当我写文章时，阅读的时间远多于写作。<br>我会反复阅读某些段落五十次甚至一百次，反复回放其中的思路，像打磨木头的人一样自问：哪里有阻滞？<br>有什么让人不适？<br>而文章越顺畅，越容易发现这些阻滞。</p><p>因此，优秀写作的两重意义至少在两方面相通。<br>追求悦耳的文字，会让你不自觉地修正错误，也能帮助你有意识地修正；它既摇晃了思想的容器，也让瑕疵更易被看见。<br>但在消解了一层荒诞之后，我忍不住再添一层。<br>悦耳的文字是否不仅仅帮助你把思想弄对？<br>悦耳的写作天生就更可能正确吗？<br>听起来疯狂，但我也认为确是如此。</p><p>显然，在单词层面两者有关联。<br>英语中有大量词汇听起来就像它们的含义，往往微妙动听。<br>glitter（闪闪发光）。<br>round（圆）。<br>scrape（刮擦）。<br>prim（端庄）。<br>cavalcade（骑马队伍）。<br>但好文章的声音更取决于你如何组合词语，在这一层面同样存在关联。</p><p>写作之所以悦耳，主要因为节奏良好。<br>然而，好文章的节奏并非音乐的节拍或诗歌的韵律。<br>它并不那么规律。<br>若节奏过于整齐，反倒不好，因为好文章的节奏必须与其中的思想相称，而思想形态千差万别。<br>有时思想简单，你只需直陈。<br>但有时思想更微妙，你需要更长、更复杂的句子来抽丝剥茧。</p><p>散文是整理过的思绪，正如对话是整理过的交谈，而思绪本身有自然的节奏。<br>因此，文章悦耳不仅因其节奏赏心悦目，而是因为符合其自然节奏。<br>这意味着，把握好节奏可以作为校准思想的启发式方法。<br>这不仅是理论：优秀作者惯于同时做到这两点。<br>我常常甚至不区分这两种问题。<br>我只是想：唔，这听起来不对；我在这里到底想表达什么？</p><p>写作的声音，与其说像汽车的颜色，不如说像飞机的外形。<br>正如凯利·约翰逊常说的：外形好看，飞机就能飞得好。</p><p>不过，这只适用于用来“孵化”思想的写作。<br>如果你先以其他方式获得思想，再写文章阐述——比如做了一个产品、做了实验，然后写论文——那就未必适用。<br>在这类情形中，思想更多体现在成果本身而非文字，所以写得差也可能思想佳。<br>教材和科普读物的文字往往不佳，原因相同：作者并未发展思想，只是在描述他人的。<br>只有在写作本身用来生成思想时，两种“好”才会如此紧密相连。</p><p>好吧，许多人此刻会想：听起来合理，但骗子怎么办？<br>难道口才流利的骗子就不能写出优美却全然虚假的文字吗？</p><p>这当然有可能。<br>但必须演点方法派。<br>要写出优美而虚假的文字，得先让自己几乎相信它。<br>因此，你会像写下真确优美文字的人一样，呈现一条完美成形的思路。<br>区别只在于它与现实的连接点。<br>你所陈述的是：若某些虚假前提成立，那么这话就是真的。<br>例如，如果一个国家的岗位数量出于某种怪异原因是固定的，那么移民确实会“抢走”我们的工作。</p><p>因此，说悦耳的写作更可能为真并不完全准确。<br>更悦耳的文字更有可能内部一致。<br>若作者诚实，内部一致就会与真理趋同。</p><p>虽然不能安全地推断优美文字必为真，但推断反面通常没错：拙劣的文笔往往也把思想搞错了。</p><p>事实上，写作之“好”的两层含义更像同一根绳索的两端。<br>它们之间的联系并非僵硬的；写作之优不是坚硬的杠杆，而是一条绳索，内部交错着多股联系。<br>但拉动一端，另一端很难不随之而动。<br>很难思想正确，却听起来不对。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%86%99%E4%BD%9C/">写作</category>
      
      <category domain="https://deusyu.app/tags/paulgraham/">paulgraham</category>
      
      
      <comments>https://deusyu.app/posts/good-writing/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>十年之约</title>
      <link>https://deusyu.app/posts/forever-ten-years/</link>
      <guid>https://deusyu.app/posts/forever-ten-years/</guid>
      <pubDate>Thu, 31 Jul 2025 09:34:00 GMT</pubDate>
      
      <description>今天正式签下「十年之约」，2035 年见！先立 flag，再想活法。</description>
      
      
      
      <content:encoded><![CDATA[<p><img src="https://r2.deusyu.app/23ccaddf-75b9-405b-b2c6-e661052a1720.png"></p><p>加入了「十年之约」，时间是<code>2025-07-31 23:28:48</code>，那么十年后是<code>2035-07-31 23:28:48</code></p><p>信守承诺，更新十年，前提是我能活到那时候 🤪。</p><h2 id="为什么签这玩意儿？"><a href="#为什么签这玩意儿？" class="headerlink" title="为什么签这玩意儿？"></a>为什么签这玩意儿？</h2><ul><li>公开立 flag，倒逼输入</li><li>长期主义护城河</li><li>十年自动积累个人品牌</li></ul><h2 id="契约要点（人话版）"><a href="#契约要点（人话版）" class="headerlink" title="契约要点（人话版）"></a>契约要点（人话版）</h2><ol><li>独立域名，博客年龄 ≥ 1 年</li><li>原创比例：生活 ≥ 75%，技术 ≥ 60%</li><li>连续 6 个月未更新 or 连续 7 天无法访问 → 违约上榜</li><li>自由退出，但违约记录永存</li></ol><p>详细条款见官方：<a href="https://www.foreverblog.cn/treaty.html">十年之约公约</a></p><h2 id="十年这么熬？"><a href="#十年这么熬？" class="headerlink" title="十年这么熬？"></a>十年这么熬？</h2><table><thead><tr><th>安全带</th><th>操作</th><th>是否完成</th></tr></thead><tbody><tr><td>自动化管线</td><td>Notion → GitHub → Server</td><td>✅</td></tr><tr><td>多活冗余</td><td>GitHub Pages + OSS 存储</td><td>⬜️</td></tr><tr><td>事件通知（告警）</td><td>UptimeRobot 5min Ping + Telegram 告警</td><td>⬜️</td></tr></tbody></table><h2 id="如果我咕了怎么办？"><a href="#如果我咕了怎么办？" class="headerlink" title="如果我咕了怎么办？"></a>如果我咕了怎么办？</h2><ul><li>每年 12 篇「心跳贴」：一句话 + 一张图</li><li>Guest Post 找朋友代班</li><li>AI 副驾驶：Voicenotes + ChatGPT 半小时速成草稿</li></ul><h2 id="给十年后的自己"><a href="#给十年后的自己" class="headerlink" title="给十年后的自己"></a>给十年后的自己</h2><blockquote><p>“如果你看到这里，说明 flag 还活着，或者你没活着。”</p><p>——2025 Rainman</p></blockquote><p>想挖坑？来 <a href="https://foreverblog.cn/go.html">十年之约官网</a></p><p><em>Powered by 咕咕自动部署 ™ · v0.1</em></p><p>2025&#x2F;08&#x2F;01 1:34</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%8D%81%E5%B9%B4%E4%B9%8B%E7%BA%A6/">十年之约</category>
      
      <category domain="https://deusyu.app/tags/%E9%95%BF%E6%9C%9F%E4%B8%BB%E4%B9%89/">长期主义</category>
      
      <category domain="https://deusyu.app/tags/%E5%8D%9A%E5%AE%A2/">博客</category>
      
      
      <comments>https://deusyu.app/posts/forever-ten-years/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Docker pull/commit/push 能像 Git 那样理解吗？</title>
      <link>https://deusyu.app/posts/docker-pull-commit-push-vs-git/</link>
      <guid>https://deusyu.app/posts/docker-pull-commit-push-vs-git/</guid>
      <pubDate>Wed, 30 Jul 2025 19:20:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p><strong>一句话预警</strong>：<strong>同名但不同魂</strong>——表面都是 <em>pull-commit-push</em>，可 Git 操作的是 <em>源码快照</em>，Docker 操作的是 <em>镜像层</em>。别混用，否则坑很深。</p></blockquote><hr><h2 id="TL-DR-对照表"><a href="#TL-DR-对照表" class="headerlink" title="TL;DR 对照表"></a><strong>TL;DR 对照表</strong></h2><table><thead><tr><th><strong>操作</strong></th><th><strong>在 Git 里意味着…</strong></th><th><strong>在 Docker 里意味着…</strong></th><th><strong>常见场景</strong></th></tr></thead><tbody><tr><td><strong>pull</strong></td><td>拉远端分支并自动合并</td><td>拉远端镜像层到本地缓存</td><td>本地缺镜像或更新指定 tag</td></tr><tr><td><strong>commit</strong></td><td>把工作区改动写进历史</td><td><strong>把运行中的容器快照成镜像</strong></td><td>临时调试后想保留容器状态（生产里很少这么干）</td></tr><tr><td><strong>push</strong></td><td>把本地提交推到远端仓库</td><td>把本地镜像层推到远端镜像仓库</td><td>发布新镜像供 CI&#x2F;CD 或集群用</td></tr></tbody></table><hr><h2 id="关键差异-易踩的坑"><a href="#关键差异-易踩的坑" class="headerlink" title="关键差异 &amp; 易踩的坑"></a><strong>关键差异 &amp; 易踩的坑</strong></h2><ol><li><strong>对象不同</strong>：Git 关心文本文件；Docker 关心打包好的二进制环境。</li><li><strong>commit 不是日用操作</strong>：正式流程应写 <strong>Dockerfile → docker build</strong>，docker commit 只适合救急快照。</li><li><strong>pull 不会合并</strong>：拉完镜像不会自动更新容器，得重启或重新 deploy。</li><li><strong>版本号方式</strong>：Git 用哈希 &#x2F; 分支 &#x2F; tag；Docker 用 repo:tag，无强制唯一。</li><li><strong>没有冲突</strong>：镜像层只读，docker push 遇到同名 tag 要么覆盖要么被拒，不会像 Git 出 merge conflict。</li></ol><hr><h2 id="“正确姿势”速记"><a href="#“正确姿势”速记" class="headerlink" title="“正确姿势”速记"></a><strong>“正确姿势”速记</strong></h2><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">git pull → 修改 → git commit → git push</span><br><span class="line">       ↓                        ↓</span><br><span class="line">docker pull → 修改 Dockerfile → docker build → docker push</span><br></pre></td></tr></table></figure><hr><h2 id="结语：一句话记忆"><a href="#结语：一句话记忆" class="headerlink" title="结语：一句话记忆"></a><strong>结语：一句话记忆</strong></h2><blockquote><p>docker pull &#x2F; push &#x3D; Git 的拉取 &#x2F; 推送；真正类似 “git commit” 的，其实是 docker build，而不是 docker commit。</p></blockquote><hr><p><em>Happy shipping!</em></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Cloud-%C2%B7-DevOps/">Cloud · DevOps</category>
      
      <category domain="https://deusyu.app/categories/Cloud-%C2%B7-DevOps/%E5%AE%B9%E5%99%A8%E5%8C%96/">容器化</category>
      
      
      <category domain="https://deusyu.app/tags/Git/">Git</category>
      
      <category domain="https://deusyu.app/tags/CI-CD/">CI/CD</category>
      
      <category domain="https://deusyu.app/tags/Docker/">Docker</category>
      
      <category domain="https://deusyu.app/tags/docker-build/">docker-build</category>
      
      <category domain="https://deusyu.app/tags/docker-commit/">docker-commit</category>
      
      
      <comments>https://deusyu.app/posts/docker-pull-commit-push-vs-git/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>《宿怨》：精神疾病、邪教与“祛魅”的一场人类悲剧</title>
      <link>https://deusyu.app/posts/hereditary-demonic-myth/</link>
      <guid>https://deusyu.app/posts/hereditary-demonic-myth/</guid>
      <pubDate>Tue, 29 Jul 2025 10:16:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>看完《Hereditary》（《宿怨》）后，我没有感到恐惧，反而想笑——不是嘲笑剧情，而是笑出一种荒诞感。</p><p>因为越想越清楚：这不是一部关于“诅咒”或“恶魔”的电影，而是讲述了一个由精神疾病主导的家族如何一步步走向崩塌的过程。片中的“仪式”“附体”“恶魔派蒙”，本质上不过是角色妄想与精神分裂的外显。所谓的“邪教”，也只是他们试图解释世界的方式，是一种病态认知的庇护所。</p><h2 id="一家人，全员精神病患者"><a href="#一家人，全员精神病患者" class="headerlink" title="一家人，全员精神病患者"></a><strong>一家人，全员精神病患者</strong></h2><p>电影的主角 Annie，是集梦游症、妄想症与精神分裂于一身的人。从开场的葬礼仪式，到她与母亲共享的邪教项链，再到后续的“通灵”“献祭”，她所有的行为背后都有高度解构的精神分裂痕迹。</p><p>她并不是一个单纯“受害者”的角色，而更像是既在反抗邪教，又始终未能真正脱离它的共谋者。在精神的深层，她与母亲是一体的。她否定的不是邪教，而是自己身上那部分对邪教的认同——于是，一个人格分裂为“自觉抵抗的母亲”与“为邪教执行献祭任务的工具”。</p><p>她的女儿 Charlie，只是个被选中的替身——那孩子喜好收集动物头颅、用小刀分解小鸽子，这些看似“灵异”的行为，正是仪式化的残留痕迹，也是派蒙寄宿未完成时的象征。</p><h2 id="从外婆到孙子：派蒙上身的“传承”"><a href="#从外婆到孙子：派蒙上身的“传承”" class="headerlink" title="从外婆到孙子：派蒙上身的“传承”"></a><strong>从外婆到孙子：派蒙上身的“传承”</strong></h2><p>Annie 的母亲，从一开始就试图让家中的“男性成员”成为魔王派蒙的载体。丈夫、儿子、外孙，全都尝试过——结果一一自杀。</p><p>丈夫选择绝食而死，儿子留下遗言称“母亲想把东西塞进我体内”后自缢。这种看似被诅咒的死亡背后，其实是被精神病理压迫的结果。最终，她将希望寄托在外孙 Peter 身上，而这正是故事的主线：派蒙需要一个“男性身体”完成附体仪式。</p><p>而电影最后，Peter“跳楼自杀”未死、精神虚弱，被派蒙附体加冕为“西方之王”，这一切也就顺理成章地完成了“仪式”。</p><p>但这真的是仪式吗？更可能的是，他看到了母亲自杀、父亲被烧死，精神彻底崩塌，而那一刻的“附体”，其实是他精神瓦解的象征。</p><h2 id="最可怜的人是谁？"><a href="#最可怜的人是谁？" class="headerlink" title="最可怜的人是谁？"></a><strong>最可怜的人是谁？</strong></h2><p>是那个从头到尾都只是想守护家庭、却被妻子谋杀的丈夫。他没有精神问题，不参与任何仪式，只是努力扮演正常家庭的支柱——却死在火中，成为献祭的一环。他才是真正意义上的“牺牲品”。</p><h2 id="恐惧从何而来？"><a href="#恐惧从何而来？" class="headerlink" title="恐惧从何而来？"></a><strong>恐惧从何而来？</strong></h2><p>这部片子最令人深思的，是它如何用“超自然”包装现实中的精神疾病、家庭压迫与邪教文化。观众的恐惧，不来自“魔王”，而来自混乱、无法解释的家庭亲密关系本身——一个人最信任的人，最终可能是最深的施害者。</p><p>而这种“解释不了”的状态，正是邪教最喜欢利用的空白。模糊、混沌、口耳相传、不落文字——这是迷信盛行的温床。</p><p>涂子沛在《数文明》中引用《淮南子》有言：“昔者仓颉作书，而天雨粟，鬼夜哭。”在知识建立的世界里，鬼神失去了统治空间。正因如此，他们悲鸣。他们害怕被记录，怕被揭示，怕被人类理解并最终“遗忘”。</p><h2 id="恶魔并不可怕，迷信才最致命"><a href="#恶魔并不可怕，迷信才最致命" class="headerlink" title="恶魔并不可怕，迷信才最致命"></a><strong>恶魔并不可怕，迷信才最致命</strong></h2><p>我们常以为“神秘”令人敬畏，但事实上，恐惧源于无知。知识并不万能，却足以驱散大多数虚妄。《宿怨》用艺术化的方式揭示了这个古老真理：<strong>认知可以祛魅，理解是最强的“驱魔”仪式</strong>。</p><p>所以这部电影，其实不是恐怖片，而是一封写给“迷信与精神疾病共同体”的揭露书。</p><hr><p>你若愿深究，会发现“恶魔从来不是魔王派蒙，而是我们无法面对的内心裂痕。”</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%BF%83%E7%90%86%E5%AD%A6/">心理学</category>
      
      <category domain="https://deusyu.app/tags/%E7%B2%BE%E7%A5%9E%E5%88%86%E8%A3%82/">精神分裂</category>
      
      <category domain="https://deusyu.app/tags/%E9%82%AA%E6%95%99%E6%96%87%E5%8C%96/">邪教文化</category>
      
      <category domain="https://deusyu.app/tags/%E6%81%90%E6%80%96%E7%94%B5%E5%BD%B1/">恐怖电影</category>
      
      <category domain="https://deusyu.app/tags/%E6%81%B6%E9%AD%94%E6%B4%BE%E8%92%99/">恶魔派蒙</category>
      
      <category domain="https://deusyu.app/tags/%E7%94%B5%E5%BD%B1%E8%AF%84%E8%AE%BA/">电影评论</category>
      
      <category domain="https://deusyu.app/tags/%E8%AE%A4%E7%9F%A5%E7%A5%9B%E9%AD%85/">认知祛魅</category>
      
      <category domain="https://deusyu.app/tags/%E7%9F%A5%E8%AF%86%E4%B8%8E%E6%81%90%E6%83%A7/">知识与恐惧</category>
      
      
      <comments>https://deusyu.app/posts/hereditary-demonic-myth/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>人生到处知何似 2</title>
      <link>https://deusyu.app/posts/what-is-life-like-everywhere-2/</link>
      <guid>https://deusyu.app/posts/what-is-life-like-everywhere-2/</guid>
      <pubDate>Tue, 29 Jul 2025 09:08:00 GMT</pubDate>
      
      <description>失败总是贯穿了人生的始终</description>
      
      
      
      <content:encoded><![CDATA[<p>本想着把我之前那篇「<a href="https://deusyu.app/posts/what-is-life-like-everywhere/">人生到处知何似</a>」整理一下，写篇续篇。删来删去，斟酌再三，竟发现——不能更改什么。</p><p>不是没变化，而是太多了。这几年，想法变了，做事的风格也变了。经历了不少变故，反倒更豁达，也更乐观了。</p><p>有时候，真能感受到“向死而生”的状态：若能一朝得道，便可坦然赴死。尤其是和 ChatGPT-o3 探讨那些深刻问题时，这种感受特别真切——好像一束来自终点的光，照亮了当下的泥泞。</p><p>失败始终贯穿人生。二零年写前一篇时，那句“失败总是贯穿人生的始终”还没火，那会儿正值许哥的风华正茂，封冠军侯。</p><p>而今再读，竟已物是人非。那些“风华”，是时间开的一个玩笑吗？</p><p>我是一个极度反对“没苦硬吃”的人，非常反对老中的「苦难文化」，尤其反对人为制造困难、强行上难度，好像吃过苦才配叫成长。</p><p>但很多事情真的没得选。霉运来了，你挡不住。你以为自己是玩家，其实只是棋子。</p><p>只能坦然接受，然后想办法解决它，搞定它。</p><p>自从读了《百年孤独》，我就知道，有些命运是继承的，一个家族的轨迹就像乌尔苏拉家族的诅咒，哪怕你不信，它也像幽灵一样缠着你。</p><p>我记得年少某个午后，光线很暗，我翻到了父亲破旧的笔记本，上面写着：</p><p><strong>“一蓑烟雨任平生。”</strong></p><p>那一瞬间我意识到，也许我从未逃脱命运的回环。</p><p>于是有时也会想：我是不是人生的阴翳有点多了？能不能顺利一点，别总是扛着过日子？</p><p>很难喜欢上冰心那句——</p><blockquote><p>“愿你生命中有够多的云翳，来造成一个美丽的黄昏。”</p></blockquote><p>因为大多数时候，我根本无暇抬头看夕阳。</p><p>全是 skin in the game，都是求生存。</p><p>“生活”这两个字，离我非常远。</p><p>但也许，写下这些本身，就是我和“生活”之间唯一的联系。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/%E9%9A%8F%E6%83%B3/">随想</category>
      
      <category domain="https://deusyu.app/tags/%E8%8B%8F%E8%BD%BC/">苏轼</category>
      
      <category domain="https://deusyu.app/tags/%E5%90%91%E6%AD%BB%E8%80%8C%E7%94%9F/">向死而生</category>
      
      
      <comments>https://deusyu.app/posts/what-is-life-like-everywhere-2/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Writing is thinking  写作即思考｜来自Nature</title>
      <link>https://deusyu.app/posts/writing-is-thinking/</link>
      <guid>https://deusyu.app/posts/writing-is-thinking/</guid>
      <pubDate>Sun, 27 Jul 2025 18:53:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文链接：<a href="https://www.nature.com/articles/s44222-025-00323-4">https://www.nature.com/articles/s44222-025-00323-4</a></p></blockquote><h2 id="原文翻译"><a href="#原文翻译" class="headerlink" title="原文翻译"></a>原文翻译</h2><p><strong>大型语言模型时代，人类科学写作的价值</strong></p><p>撰写科研论文是科学方法的核心环节，也是传播研究成果的主要途径。但写作的意义远不止于“汇报”：它本身就是一把发掘新观点的“思考利器”。写作迫使我们将原本跳跃、松散的思绪，整理成条理分明、目标明确的叙事。正是在这个过程中，我们得以把多年积累的实验、数据和分析串联成完整的故事，进而澄清研究的关键信息与影响力。这样的作用并非纯粹的哲学感慨，而有科学证据支持——手写能激活更广泛的大脑连接 ¹，并被证明有助于学习和记忆 ²。</p><p>这是一次对“保持人类主导的科学写作”价值的呼吁。然而，在大型语言模型（LLM）大行其道的今天，这一呼吁似乎显得“复古”。得当提示下，LLM 可以在数分钟内生成一篇看似完备的科学论文 ³，甚至连同行评审报告也能代劳 ⁴——仿佛为研究者省去了撰写和发表的繁重工作。问题在于：</p><ul><li><strong>责任缺位</strong>　 LLM 不能承担学术责任，因此期刊不会接受完全由其撰写的论文；利用 LLM 作语言润色固然可行，但必须如实声明 ⁵。</li><li><strong>思考缺席</strong>　若“写作即思考”，把整篇文章交给 LLM 意味着我们读到的将不再是研究者本人的思考，而是模型的“思考”。</li><li><strong>幻觉风险</strong>　现阶段的 LLM 仍频繁产生事实错误，即“幻觉” ⁶；连引用都可能凭空捏造 ⁷。要想确保文本可信，就得逐条核对和修订，这往往比从零撰写或自行审稿更耗时费力。</li></ul><p>未来，专门在科学数据库上训练的定制 LLM 也许能缓解部分问题；本刊同期 Fenglin Liu 等人的综述就概述了相关思路 ⁸。不过，成效如何仍需时间验证。</p><p><strong>LLM 能发挥什么正面作用？</strong></p><ul><li><strong>语言润色与可读性提升</strong>——对非英语母语作者尤为友好。</li><li><strong>快速检索与文献总结</strong>——帮助梳理跨领域的大量参考文献 ⁹。</li><li><strong>写作助推器</strong>——用以头脑风暴、打破写作瓶颈，或提出替代性解释、关联看似无关的主题。</li></ul><p><strong>关键底线：</strong></p><p>把 LLM 当作 <em>copilot</em> 而非 <em>autopilot</em>。如果完全外包写作，我们将失去在梳理思维、塑造叙事中孕育创意与洞见的机会——而这种能力在科研之外同样弥足珍贵。</p><hr><h2 id="文章信息一览"><a href="#文章信息一览" class="headerlink" title="文章信息一览"></a><strong>文章信息一览</strong></h2><ul><li><strong>标题</strong>：Writing is thinking</li><li><strong>期刊</strong>：<em>Nature Reviews Bioengineering</em>（Nat Rev Bioeng）</li><li><strong>类型</strong>：社论（Editorial）</li><li><strong>出版日期</strong>：2025 年 6 月 16 日（卷 3，页 431）</li></ul><hr><h2 id="核心论点与结构拆解"><a href="#核心论点与结构拆解" class="headerlink" title="核心论点与结构拆解"></a><strong>核心论点与结构拆解</strong></h2><table><thead><tr><th><strong>章节</strong></th><th><strong>主要内容</strong></th><th><strong>关键要点</strong></th></tr></thead><tbody><tr><td>引言</td><td>“写作即思考”</td><td>写作不仅是记录研究结果，更是整理思考、发现新观点的过程。</td></tr><tr><td>写作促进认知</td><td>援引手写 EEG 研究、学习记忆文献</td><td><strong>手写</strong>能激活更广泛的大脑网络；写作可提高理解与记忆。</td></tr><tr><td>LLM 的崛起</td><td>大模型可几分钟产出整篇论文与审稿</td><td>省时看似诱人，但存在缺乏责任主体、幻觉、伪造引用等风险。</td></tr><tr><td>期刊立场</td><td>“模型不能署名”</td><td><em>Nat Rev Bioeng</em> 不接受完全由 LLM 撰写的稿件；允许申明后用于润色。</td></tr><tr><td>可接受用法</td><td>可用于语法检查、可读性提升、文献检索、头脑风暴、克服写作瓶颈</td><td>但<strong>核心叙事</strong>仍需作者亲自完成。</td></tr><tr><td>未来展望</td><td>训练于纯学术语料的专用 LLM 或将缓解部分问题</td><td>仍需时间验证其可靠性与增益。</td></tr><tr><td>结语</td><td>继续重视人类写作</td><td>全权交给 LLM 可能剥夺研究者反思与创意的机会；写作技能对科研以外场景亦至关重要。</td></tr></tbody></table><hr><h2 id="文章引用的代表性研究"><a href="#文章引用的代表性研究" class="headerlink" title="文章引用的代表性研究"></a><strong>文章引用的代表性研究</strong></h2><ol><li><strong>手写 vs. 打字 EEG 研究</strong>：手写可触发更广泛的脑区联动，有利课堂学习。</li><li><strong>Nature 2022 报道</strong>：探讨 AI 协助写论文的可行性与争议。</li><li><strong>Nature 2025 报道</strong>：AI 正在改变同行评审，科学家担忧责任与质量。</li><li><strong>ACM CS 调研</strong>：系统梳理 LLM “幻觉”问题。</li><li><strong>Sci Rep 2023 研究</strong>：实证分析 ChatGPT 引用伪造与错误。</li><li><strong>Cell Mol Bioeng 2023 文章</strong>：尝试用 Bard 分析引文作者的性别与种族多样性。</li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%AE%BA%E6%96%87/">论文</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%86%99%E4%BD%9C/">写作</category>
      
      
      <comments>https://deusyu.app/posts/writing-is-thinking/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>太初有为｜一切的开端是行动</title>
      <link>https://deusyu.app/posts/init-action/</link>
      <guid>https://deusyu.app/posts/init-action/</guid>
      <pubDate>Sat, 26 Jul 2025 12:06:00 GMT</pubDate>
      
      <description>什么是 High Agency（能动性）—— 为什么“太初有为”比“太初有道”更接近我们这个时代的答案</description>
      
      
      
      <content:encoded><![CDATA[<h2 id="什么是-High-Agency（能动性）"><a href="#什么是-High-Agency（能动性）" class="headerlink" title="什么是 High Agency（能动性）"></a><strong>什么是 High Agency（能动性）</strong></h2><p>最早看到 High Agency 是苏良。</p><blockquote><p>培养独立自主（High Agency）的性格，其他你想要的一切都会随之而来。</p></blockquote><p>吴军写过类似的观点，维特根斯坦的哲学也隐含这种主张。</p><p>歌德：<strong>太初有为</strong>。</p><p>一切的开端是行动，然后才有语言。</p><p>行为先于思维。任何技能，只有在真实的世界里去使用，才算是掌握了。</p><hr><h2 id="Agency-是真正稀缺的认知资源"><a href="#Agency-是真正稀缺的认知资源" class="headerlink" title="Agency 是真正稀缺的认知资源"></a><strong>Agency 是真正稀缺的认知资源</strong></h2><p>AK 总结过一句非常猛的话：</p><blockquote><p><strong>主观能动性 &gt; 智力。</strong></p></blockquote><p>我过去几十年在直觉上都错了，我想这可能是因为我们对于智力的普遍崇拜、各种娱乐&#x2F;媒体的影响，以及对智商等的过度痴迷所导致的。其实，“能动性”比智力要强大得多，也更加稀缺。你在招聘时是否在寻找能动性？我们在教育时是否注重能动性？你是否在以 10 倍的能动性去行动？</p><p>Grok 对“能动性”的解释相当接近：</p><p>“从人格特质的角度来看，能动性指的是个人主动采取行动、做决策，以及对自身行为和环境施加影响的能力。它强调的是主动而非被动——拥有高能动性的人不会让生活随意发生在自己身上，而是会努力去塑造生活。可以把它视为自我效能感、决心以及对自己人生负责感的综合体。</p><p>拥有强大能动性的人往往会设定目标，并且在面对障碍时依然自信地追求这些目标。他们会说‘我会想办法解决’，然后真的去做。而能动性较弱的人则更像是自己人生中的乘客，等待外界力量（比如运气、他人或环境）来决定下一步该怎么走。</p><p>能动性和自信或野心并不完全相同，但可能会有交叉。能动性是一种更内在、更安静的力量——它是一种‘你能采取行动’的信念，加上贯彻到底的意志力。心理学家通常把它与“控制点”这个概念联系起来：高能动性的人更倾向于内部控制，觉得自己可以掌控命运；而能动性弱的人则更倾向于外部控制，觉得生活是‘降临’在自己身上。”</p><p>换句话说：</p><p><strong>你是人生的乘客，还是驾驶员？</strong></p><p>（掌控感 &#x3D; 来自脚下的步频）</p><hr><h2 id="人类的认知闭环：行动才是最终那一拍"><a href="#人类的认知闭环：行动才是最终那一拍" class="headerlink" title="人类的认知闭环：行动才是最终那一拍"></a><strong>人类的认知闭环：行动才是最终那一拍</strong></h2><p><strong>太初有为。</strong></p><p>2023 年的 AI 还得靠精准的 prompt，要求你能清晰表达需求，否则回答可能惨不忍睹。后来 AI 越来越强，现在你随便丢几个词，逐步追问，就能得到你想要或喜欢的答案。</p><p>我之前看到卓克的一篇文章，说语言不是智能，语言只是智能的投影，突然意识到，对“智能”这件事，我过去理解得不够深刻。</p><p>人类的认知闭环：感知、认知、决策、行动。</p><ul><li>感知：五感天生决定，优化空间不大，听力再好也听不见狗哨。</li><li>认知：读万卷书行万里路，把过去的感知在不同时间、空间里调用。</li><li>决策：真正拉开差距的关键。大到人生方向，小到买卖股票，每个决策都改变“世界树”的走向。</li><li>行动：你不做事，还能做什么？所有的认知和决策，最终都需要一记落地的响指。</li></ul><p>我们总说“决策拉开差距”，但很少有人理解得足够深。</p><blockquote><p>决策的重要性，在于它改变了你所处宇宙的枝杈。<br>一个选择，就把你从这个世界的 A 分支，带到了 B 分支。</p></blockquote><p>而“行动”，是你是否真的跳过去、是否真的进入那个世界的<strong>唯一验证方式</strong>。</p><p>你可以构建再多可能性图谱、模拟再多选项，只要你没动手、没下场，那一切都还在虚空中。</p><blockquote><p>决策是你脑中的多线程模拟，<br>行动才是你选择启动哪个进程。<br>（现实不读草稿）</p></blockquote><hr><h2 id="太初有道-vs-太初有为"><a href="#太初有道-vs-太初有为" class="headerlink" title="太初有道 vs 太初有为"></a><strong>太初有道 vs 太初有为</strong></h2><p>歌德在《浮士德》中借梅菲斯特之口，说出一句反叛之语：</p><blockquote><p>Am Anfang war die Tat.<br>太初有为。</p></blockquote><p>这其实是对《圣经·约翰福音》里“太初有道”（In the beginning was the Word.）的回应与反击。</p><p>语言是神的起点，但行动是人的开始。</p><p>我们常常沉迷于表达、语言、框架，但真正改变世界的，是「去做」。</p><blockquote><p>“做”才是动词里的上帝。</p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/">认知</category>
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/%E9%9A%8F%E6%83%B3/">随想</category>
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/%E9%9A%8F%E6%83%B3/%E6%80%9D%E7%BB%B4%E6%A8%A1%E5%BC%8F/">思维模式</category>
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/%E9%9A%8F%E6%83%B3/%E6%80%9D%E7%BB%B4%E6%A8%A1%E5%BC%8F/%E8%87%AA%E6%88%91%E6%88%90%E9%95%BF/">自我成长</category>
      
      
      <category domain="https://deusyu.app/tags/%E8%AE%A4%E7%9F%A5%E6%A8%A1%E5%9E%8B/">认知模型</category>
      
      <category domain="https://deusyu.app/tags/Agency/">Agency</category>
      
      <category domain="https://deusyu.app/tags/%E8%A1%8C%E5%8A%A8%E5%8A%9B/">行动力</category>
      
      
      <comments>https://deusyu.app/posts/init-action/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>使用AI 是一个逐渐变懒的过程</title>
      <link>https://deusyu.app/posts/lazy-by-ai/</link>
      <guid>https://deusyu.app/posts/lazy-by-ai/</guid>
      <pubDate>Sat, 26 Jul 2025 11:04:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>最近我做了些自我察觉，发现使用 AI 是一个逐渐变懒的过程：</p><ol><li>Prompt 输入方面：<br>以前写 prompt（现在更常叫 context 上下文）时，会清晰表达、结构化输入，AI 的输出质量也比较高。而现在有了 o3 这种带 COT 推理能力的模型后，只需要简单表达意思就行，虽然我偶尔还保留结构化，但整体明显不如 2023 年细致了。</li><li>写代码方面：<br>过去我会先框定模式和架构，再让 AI 实现 method，最多就是写一个 .go 或 .class 文件，然后复核。而自从 Cursor 等工具出现后，我直接和 AI 讨论设计方向、设计模式、测试方法等，然后让它开干，我最后只 review 一遍。</li><li>输入方式上：<br>现在我越来越倾向语音输入，觉得语音比打字轻松得多。有可能是我最近情绪比较躁郁，也有可能是大脑变懒了——总之我隐隐觉得，语音输入是某种退化的信号。</li></ol><hr><p>这种“变懒”的趋势，让我陷入了沉思。它究竟是一种进步的自然演化，还是一种危险的堕落前兆？对此，我脑海中浮现出两种截然不同的观点。</p><h3 id="观点一：这是“认知勤奋”的进化"><a href="#观点一：这是“认知勤奋”的进化" class="headerlink" title="观点一：这是“认知勤奋”的进化"></a><strong>观点一：这是“认知勤奋”的进化</strong></h3><p>第一种观点是乐观的。它认为，这并非“变懒”，而是<strong>认知资源的重新分配</strong>，是从“体力勤奋”到“认知勤奋”的一场进化。</p><p>这与编程语言的演进史何其相似：</p><ul><li><strong>汇编时代：</strong> 程序员需要手动管理每一个寄存器、每一次内存寻址。这是极致的“勤奋”，但也是极致的低效。</li><li><strong>C 语言时代：</strong> 出现了函数和指针，程序员从寄存器中解放出来，开始思考“过程”。</li><li><strong>Java&#x2F;Go 时代：</strong> 自动内存管理（GC）出现了，不再需要为 <code>malloc</code> 和 <code>free</code> 殚精竭虑，可以专注于“面向对象”或“并发”的业务逻辑。</li><li><strong>AI 时代（以 Cursor 为例）：</strong> 甚至不需要从头写一个 <code>class</code> 或 <code>method</code>。从“实现者”的角色，进一步被提升到了“架构师”和“决策者”的角色。</li></ul><p>在每一次进化中，我们都“懒”于处理更底层的细节。但这种“懒”，恰恰是技术的进步的标志。它将我们从重复、繁琐的劳动中解放出来，让我们得以将宝贵的脑力，投入到更需要创造力、战略眼光和人性洞察的顶层设计中去。</p><p>从这个角度看，我的种种转变都有了清晰的解释：</p><p><strong>1. Prompt 的演变：从“精确指令”到“意图沟通”</strong></p><p>这背后既有模型技术的进步，也有我与 AI 之间所谓“信任”的建立。我们都知道，早期的模型（就像我过去用 BERT 写论文的那个时代）能力有限，像个初级实习生。我必须把任务拆解得巨细靡遗，给它一个 step-by-step 的说明书，它才能勉强完成。而现在以 CoT (Chain of Thought) 为代表的模型，更像一个资深同事。我只需要跟它对齐目标和“意图”（I want to build a…），它自己就能规划路径。我从一个微观管理者（Micromanager），变成了一个目标设定者（Director）。我的技能点，从“如何写出完美的 Prompt”，转移到了“如何提出一个直指核心的好问题”。这是一种更高维度的能力。</p><p><strong>2. 写代码的转变：从“实现者”到“评审者”</strong></p><p>这并非变懒，而是工作杠杆率的提升（Leverage Improvement）。我过去的工作模式是：<strong>我（大脑）-&gt; 架构设计 -&gt; AI（工具）-&gt; Method 实现 -&gt; 我（评审）</strong>。而现在的工作模式是：<strong>我（大脑） &lt;-&gt; AI（思考伙伴） -&gt; 设计&#x2F;模式&#x2F;测试 -&gt; AI（工具） -&gt; 整套实现 -&gt; 我（最终评审）</strong>。可以看到，我的角色已经从链条中的一个环节，变成了整个链条的驱动者和把关人。我不再是那个砌砖的人，而是那个决定“这面墙应该建在这里，用什么风格”的建筑师。我的价值，体现在我的品味、我的设计哲学、我的风险预判能力上。这难道不是一种巨大的进步吗？让机器去做机器擅长的事（海量代码生成），让人去做人擅长的事（洞察、判断、创造）。</p><p><img src="https://r2.deusyu.app/4c38ac5f-bbc4-496c-8c28-dbc8c4c9c4c7.png" alt="黑客帝国中的建筑师（The Architect）"></p><p><strong>3. 输入方式的迁移：从“打字”到“语音”</strong></p><p>这一点最有趣，也最贴近人性。我将它与情绪和“退化”联系起来，这种联想本身就非常深刻。首先，承认情绪的影响是完全合理的。当我们精神疲惫或烦躁时，会本能地寻求最低摩擦力的交互方式。语音显然比调动手指肌肉打字节省心力。但抛开情绪，这里可能有一个更具启发性的 alpha moment：语音输入不是退化，而是追求“带宽”的本能。**我们大脑思考的速度，远远快于我们打字的速度。打字，本质上是一个“有损压缩”的过程，我必须把网状的、跳跃的思绪，整理成线性的、合乎语法的文字。**这个过程本身就是一种认知负担。而语音，更接近思维的原始形态。它允许更快的语速、更自由的表达，甚至可以包含语气、停顿这些“元信息”。我不是在“退化”，我是在寻找一个能跟上我思维速度的 I&#x2F;O 接口。</p><h3 id="观点二：警惕！这是“掌控感”的丧失"><a href="#观点二：警惕！这是“掌控感”的丧失" class="headerlink" title="观点二：警惕！这是“掌控感”的丧失"></a>观点二：警惕！这是“掌控感”的丧失</h3><p>然而，正当我沉浸在这种“认知升级”的乐观中时，另一个更尖锐、更令人不安的念头浮现出来。</p><p>这种对细节掌控的逐渐缺失，真的是无害的吗？它会不会导致我们<strong>丧失从行动中学习（Learning by Doing）的关键能力？</strong></p><p>这时，我想起了一个我过去常批评的角色——<strong>“网关老板”</strong>。</p><p>“网关老板”通常指那些升到高位后，彻底脱离一线的管理者。他们能侃侃而谈战略、方向和宏大叙事，但对实现细节、技术瓶颈和执行成本一无所知。因为长期不动手，他们丧失了对系统的“体感”，无法做出精准的判断，也无法理解一线工程师面临的真实困境。他们的决策，因此变得空洞而脆弱。</p><p>现在，我恐惧地发现，AI 正在赋予我们每一个人成为“网关老板”的潜力。</p><p>这种恐惧指向了 AI 时代真正的风险：</p><ol><li><strong>技能的空心化：</strong> 当我们完全依赖 AI 去实现时，当 AI 失效或给出错误方案时，我们是否还具备自己动手勘误、攻坚的能力？那个曾经能深入底层理解原理的我，是否会被这个只负责 Review 的我所取代？</li><li><strong>判断力的外包：</strong> 最大的危险，莫过于不仅将“执行”外包，更将“判断”也一并外包。盲目相信 AI 的方案，而不加以批判性的审视，这才是最致命的懒惰。</li><li><strong>创造力的收敛：</strong> AI 倾向于提供“标准解”和“最大公约数”的方案。如果我们只是被动接受，那些剑走偏锋、不合常规但可能极具创造力的“alpha moment”或许将不复存在。</li></ol><h3 id="结语：在进化与退化的钢丝上"><a href="#结语：在进化与退化的钢丝上" class="headerlink" title="结语：在进化与退化的钢丝上"></a>结语：在进化与退化的钢丝上</h3><p>所以，我最初的感受——那个“变懒”的信号，既不是简单的退化，也不是纯然的进化。它是一个<strong>升级的警示灯</strong>。</p><p>它在提醒我，我的角色正在发生深刻的演变。世界对我的要求，已经从“如何把事情做好”，转变为“如何看得更准、想得更深”。</p><p>真正的挑战，是在享受“认知勤奋”带来的效率红利的同时，极力避免“掌控感”丧失所带来的“技能空心化”。我们是在从一个优秀的工程师，进化成一个与 AI 共舞的思考者；还是要警惕自己，在不知不觉中，成为那个我们曾经最不屑的“网关老板”。</p><p>这根钢丝，我们每个深度使用 AI 的人，都必须小心翼翼地走下去。而这份自我察觉，就是我们手中最重要的平衡杆。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%B7%A5%E5%85%B7%E5%8F%8D%E5%99%AC/">工具反噬</category>
      
      <category domain="https://deusyu.app/tags/%E6%80%9D%E7%BB%B4%E6%96%B9%E5%BC%8F/">思维方式</category>
      
      <category domain="https://deusyu.app/tags/Prompt%E5%B7%A5%E7%A8%8B/">Prompt工程</category>
      
      <category domain="https://deusyu.app/tags/%E8%AF%AD%E9%9F%B3%E8%BE%93%E5%85%A5/">语音输入</category>
      
      <category domain="https://deusyu.app/tags/%E4%BA%BA%E6%9C%BA%E5%8D%8F%E4%BD%9C/">人机协作</category>
      
      
      <comments>https://deusyu.app/posts/lazy-by-ai/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>挣钱与赚钱是两回事</title>
      <link>https://deusyu.app/posts/earn-vs-make-money/</link>
      <guid>https://deusyu.app/posts/earn-vs-make-money/</guid>
      <pubDate>Thu, 24 Jul 2025 00:55:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h2 id="挣钱与赚钱的本质区别"><a href="#挣钱与赚钱的本质区别" class="headerlink" title="挣钱与赚钱的本质区别"></a><strong>挣钱与赚钱的本质区别</strong></h2><p>赚钱和挣钱看似相近，本质却有巨大差异。</p><h3 id="1-汉字拆解中的洞见"><a href="#1-汉字拆解中的洞见" class="headerlink" title="1. 汉字拆解中的洞见"></a><strong>1. 汉字拆解中的洞见</strong></h3><ul><li><strong>挣钱的“挣”</strong><ul><li>由“手”和“争”组成。</li><li>意味着需要用双手，通过劳动或技能去主动争取收入。</li></ul></li><li><strong>赚钱的“赚”</strong><ul><li>由“贝”（古代的钱币象征）和“兼”（兼并、获得）组成。</li><li>意味着用钱、资源或资本去创造和获取更多财富，本质是用资本创造价值。</li></ul></li></ul><h3 id="2-底层逻辑的差别"><a href="#2-底层逻辑的差别" class="headerlink" title="2. 底层逻辑的差别"></a><strong>2. 底层逻辑的差别</strong></h3><ul><li><strong>挣钱（Earn Money）</strong><ul><li>本质是用时间、技能和体力换取现金流。</li><li>收入通常线性增长，易触及天花板。</li><li>风险较低，但增长有限。</li></ul></li><li><strong>赚钱（Make Money）</strong><ul><li>本质是用资本、认知和系统创造现金流。</li><li>收入具有非线性增长的特性，杠杆效应显著。</li><li>风险和收益并存，但增长潜力无限。</li></ul></li></ul><h3 id="3-从挣到赚的关键过渡"><a href="#3-从挣到赚的关键过渡" class="headerlink" title="3. 从挣到赚的关键过渡"></a><strong>3. 从挣到赚的关键过渡</strong></h3><ul><li><strong>被动收入</strong>：<ul><li>首先从工资收入中分出一部分资金，购买资产，如指数基金、债券。</li></ul></li><li><strong>建立杠杆</strong>：<ul><li>将技能或知识转化为副业、知识产品或股权投资，增加收入渠道。</li></ul></li><li><strong>系统思维</strong>：<ul><li>构建自动化和复利系统，使资产和收入不断自我增值。</li></ul></li></ul><h3 id="4-常见的误区与规避"><a href="#4-常见的误区与规避" class="headerlink" title="4. 常见的误区与规避"></a><strong>4. 常见的误区与规避</strong></h3><ul><li><strong>误区一</strong>：将赚钱看成纯粹的金融投机。<ul><li>应关注创造真实价值的底层逻辑。</li></ul></li><li><strong>误区二</strong>：盲目加杠杆忽略风险。<ul><li>始终保留安全现金流和风险管理空间。</li></ul></li></ul><h3 id="5-可操作的下一步建议"><a href="#5-可操作的下一步建议" class="headerlink" title="5. 可操作的下一步建议"></a><strong>5. 可操作的下一步建议</strong></h3><ul><li>梳理个人现金流，明确每月可投资盈余。</li><li>自动化定投指数基金，培养长期复利思维。</li><li>利用个人专长，打造小型副业或知识产品。</li><li>构建合理的风险缓冲体系，确保长期稳健。</li></ul><p><strong>实现从挣钱到赚钱的转变，不仅需要行动，更需要转变思维模式。</strong></p><hr><h2 id="这个世界的本质只有一句话：创造价值"><a href="#这个世界的本质只有一句话：创造价值" class="headerlink" title="这个世界的本质只有一句话：创造价值"></a><strong>这个世界的本质只有一句话：创造价值</strong></h2><h3 id="1-财富创造与本质"><a href="#1-财富创造与本质" class="headerlink" title="1. 财富创造与本质"></a><strong>1. 财富创造与本质</strong></h3><ul><li><strong>财富创造</strong>，本质是通过智力、技能与资本，满足他人需求，创造出此前不存在的价值。</li><li>财富真正被大量创造，是自农业革命、工业革命到今天信息时代逐步发生的事情。</li><li>历史上，绝大部分时间内，财富无法被普通人轻易创造——出生时农奴，死也仍是农奴，阶级流动极小。</li><li><strong>现在则不同</strong>：技术进步带来的杠杆（技术、资本、媒体、代码）无处不在，让财富创造变得前所未有的容易。<blockquote><p>正如纳瓦尔所说：“现在是创造财富最容易的时代，杠杆和机会众多。财富不会自己掉在你腿上，需要你去发现、学习、并去做有趣而有价值的事。”</p></blockquote></li></ul><hr><h3 id="2-地位竞争的本质与陷阱"><a href="#2-地位竞争的本质与陷阱" class="headerlink" title="2. 地位竞争的本质与陷阱"></a><strong>2. 地位竞争的本质与陷阱</strong></h3><ul><li>与财富游戏不同，<strong>地位游戏是零和博弈</strong>。</li><li>人类天生渴望地位，社会媒体的点赞、排名、评论等进一步强化了这种渴望，让人们陷入了无休止的“地位跑步机”。</li><li>相较财富游戏，地位游戏的风险更大：它难以停下来，因为人类本能地总想追逐更多地位。<blockquote><p>纳瓦尔：“地位竞争是零和博弈，没有人能真正赢了就退出，你总想要更多。”</p></blockquote></li></ul><h3 id="地位游戏的中国式土壤"><a href="#地位游戏的中国式土壤" class="headerlink" title="地位游戏的中国式土壤"></a><strong>地位游戏的中国式土壤</strong></h3><p>正如学者 <strong>Wasserstrom</strong> 指出，中国传统社会极度重视教育，并非单纯崇文，而是出于儒家的核心信念：</p><ul><li>人通过学习可以变好；</li><li>社会位置应由考试决定（科举）；</li><li>精英阶层应是德才兼备的“士人”。</li></ul><p>这种制度设计，在数百年中构建了相对公平的上升通道。但当考试不再决定命运、或者精英群体的选拔机制失效，就容易酿成广泛的焦虑与政治危机。</p><p>因此，<strong>地位竞争，在老中语境中几乎是一种“文化默认”</strong>，它深植于教育焦虑、考试制度和“赢在起跑线”的叙事中。</p><blockquote><p>真正的自由，不在于抢答别人出的题，而在于思考：<strong>题目是否值得答？问题是否值得问？</strong><br>你不必困在别人的考卷里，而是可以转向自己命题、自己设局、自己获利。</p></blockquote><hr><h3 id="3-为什么“创造价值”更值得关注？"><a href="#3-为什么“创造价值”更值得关注？" class="headerlink" title="3. 为什么“创造价值”更值得关注？"></a><strong>3. 为什么“创造价值”更值得关注？</strong></h3><ul><li><strong>价值创造（财富游戏）</strong> 是正和游戏，每个人都有可能创造增量价值，彼此共同受益。</li><li><strong>地位竞争（地位游戏）</strong> 通常是消耗性的，容易陷入比较和嫉妒，甚至伤害自己的幸福感。</li><li>专注于价值创造，意味着你追求的是<strong>成长与贡献</strong>，长期而言，这是更可持续和更有意义的路径。</li></ul><hr><h3 id="4-如何实践“创造价值”"><a href="#4-如何实践“创造价值”" class="headerlink" title="4. 如何实践“创造价值”"></a><strong>4. 如何实践“创造价值”</strong></h3><ul><li><strong>识别需求</strong>：找到市场和社会中的需求和问题。</li><li><strong>提供方案</strong>：用你的技能、经验、资本或创意提供解决方案，创造他人愿意支付的价值。</li><li><strong>不断迭代</strong>：用技术与认知的杠杆，不断扩大你创造价值的规模与效率。</li></ul><hr><p><strong>最终启示：</strong></p><blockquote><p>“创造价值”<br>一旦你将焦点从地位游戏转向创造价值，财富、自由与意义自然会随之而来。</p></blockquote><hr>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%8C%A3%E9%92%B1/">挣钱</category>
      
      <category domain="https://deusyu.app/tags/%E8%B5%9A%E9%92%B1/">赚钱</category>
      
      <category domain="https://deusyu.app/tags/%E8%B4%A2%E5%AF%8C%E8%87%AA%E7%94%B1/">财富自由</category>
      
      <category domain="https://deusyu.app/tags/%E6%80%9D%E7%BB%B4%E6%A8%A1%E5%BC%8F/">思维模式</category>
      
      <category domain="https://deusyu.app/tags/%E4%BB%B7%E5%80%BC%E5%88%9B%E9%80%A0/">价值创造</category>
      
      <category domain="https://deusyu.app/tags/%E7%BA%B3%E7%93%A6%E5%B0%94/">纳瓦尔</category>
      
      <category domain="https://deusyu.app/tags/%E5%9C%B0%E4%BD%8D%E6%B8%B8%E6%88%8F/">地位游戏</category>
      
      
      <comments>https://deusyu.app/posts/earn-vs-make-money/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>假传万卷书，真传一句话</title>
      <link>https://deusyu.app/posts/one-sentence-truth/</link>
      <guid>https://deusyu.app/posts/one-sentence-truth/</guid>
      <pubDate>Wed, 23 Jul 2025 05:11:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>假传万卷书，真传一句话。</p><p>生活中绝大部分事情，其实都可以浓缩为简单的一句话：</p><ul><li>投资不过是「低买高卖」。</li><li>成长无非是「日拱一卒」。</li><li>自由来自于「自律给你自由」。</li><li>商业的本质永远是「信任」。</li><li>财富定律不过是「人永远赚不到认知之外的钱」。</li><li>风险规律即是「能力边界外的任何机会都是陷阱」。</li></ul><p>可惜的是，这一句话并非静态的真理，而是动态的、实践驱动的。你会发现，若你脑海中缺乏相关的概念和背景，无论上下文再多、再详细，也需要漫长的时间去亲自摸索、领悟。</p><p>那些说「几分钟教会你 XX」的人，永远不要相信，120% 都是骗局。真正的知识需要靠持续不断的实践，在无数次真实体验后，才会在某个瞬间豁然开朗，产生那种强烈的「顿悟时刻」。</p><p>一本书，一万页，不过是单向流动的信息；唯有自己亲历的经验与深刻的反思，才能把这简单的一句话真正刻进你的生命里。</p><p>当你终于懂得了这句话，你也才真正拥有了它背后浩如烟海的隐性知识网络。</p><p>这一句话，才是真传。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      <category domain="https://deusyu.app/tags/%E9%A1%BF%E6%82%9F/">顿悟</category>
      
      <category domain="https://deusyu.app/tags/%E9%9A%90%E6%80%A7%E7%9F%A5%E8%AF%86/">隐性知识</category>
      
      
      <comments>https://deusyu.app/posts/one-sentence-truth/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>家庭的七重面具：一场从温情到控制的意识剖面</title>
      <link>https://deusyu.app/posts/family-seven-masks/</link>
      <guid>https://deusyu.app/posts/family-seven-masks/</guid>
      <pubDate>Tue, 22 Jul 2025 08:52:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>很少有人真正思考过：我们所谓的“家”，到底是什么。</p><p>是一屋檐下的血缘共同体？<br>是讲爱的地方，也是伤人的战场？<br>是归属的港湾，还是控制、投射与恐惧的发源地？</p><p>家庭往往以“爱”的名义出现，却常常是我们受伤最早、最深、也最不愿触碰的领域。</p><p>这一次，我尝试与 GPT 对话，沿着“家庭”这个概念，一层一层剥开它的幻象外壳，从亲密感，到孤独性，从社会结构，到意识幻相，最终直抵那无法回避的终点——家庭根本不存在。</p><p>以下是这场意识剖面的完整记录。<br>如果你愿意，也可以和我一起，重新认识所谓的“家”。</p><hr><p>家庭七重面具：意识剖面的穿透轨迹</p><ol><li>亲密并非来自血缘，而是经营出来的</li><li>家庭的冲突，是代际创伤的回音</li><li>每个家庭成员都在孤独中自我修复</li><li>我们在家中遇到的，不过是自己的投影</li><li>家庭是与死亡、无常对话的练习场</li><li>家庭是我们共同虚构的意义幻觉</li><li>家庭根本不存在，它只是意识在孤立中创造的体验</li></ol><p>这一层层深入之后，我们可能才终于明白：<br>“家”不是我们归属的地方，而是我们自我觉醒的投影屏幕。<br>它不永恒，也不稳定，但它让我们有机会看到最真实的自己。</p><hr><h2 id="第-1-层｜亲密感是需要经营的，不是血缘自动生成的"><a href="#第-1-层｜亲密感是需要经营的，不是血缘自动生成的" class="headerlink" title="第 1 层｜亲密感是需要经营的，不是血缘自动生成的"></a><strong>第 1 层｜亲密感是需要经营的，不是血缘自动生成的</strong></h2><p><strong>家庭成员之间真正的情感连接与亲密程度，并不是由血缘关系或共同生活时间决定的，而是由彼此之间的相互理解、尊重、接纳和情感支持程度决定的。</strong></p><p>多数人认为家庭关系天然深厚，亲子、夫妻、兄弟姐妹之间必然存在天然的亲密和信任。但实际上，家庭关系中的情感联结需要用心经营，而非自动建立。</p><p>具体来说：</p><ol><li><p><strong>相处时间并不必然带来理解：</strong></p><p>很多人认为，只要在一起生活足够久，家人自然会理解彼此。但事实上，若没有主动沟通、认真倾听和换位思考，长时间的共处可能只会累积误解和矛盾。</p></li><li><p><strong>血缘并非天然建立信任：</strong></p><p>我们倾向于认为血缘关系是信任和忠诚的天然保障。然而，现实中，真正的信任来自于长期稳定的互动模式、相互之间的诚实沟通和情感上的相互支持，而非单纯的血缘纽带。</p></li><li><p><strong>亲密并非来自身份角色，而是来自情感交流：</strong></p><p>父母、子女、夫妻，这些家庭角色并不意味着自动拥有亲密关系。真正的亲密关系建立在双方持续的情感投入、深度交流、相互关心和理解之上。</p></li></ol><p>因此，一个健康、幸福的家庭，并不会自动存在，而是需要家庭成员主动投入精力、耐心和爱去营造。只有当家庭成员彼此用心经营关系、彼此倾听和理解，才能建立起真正稳固、温暖的家庭纽带。</p><p>认识到这一真相，可以帮助我们更有意识地经营家庭关系，避免对家庭关系产生不现实的预期，从而更加现实、积极地促进家庭和谐与幸福。</p><blockquote><p>可是，如果亲密不是血缘天生的礼物，为什么家庭还如此强烈地塑造着我们？<br>那些一代又一代重复的伤害和模式，到底从何而来？</p></blockquote><h2 id="第-2-层｜家庭的冲突，往往是代际创伤的延续"><a href="#第-2-层｜家庭的冲突，往往是代际创伤的延续" class="headerlink" title="第 2 层｜家庭的冲突，往往是代际创伤的延续"></a><strong>第 2 层｜家庭的冲突，往往是代际创伤的延续</strong></h2><p><strong>大部分家庭问题，从根本上是一代又一代无法觉察的创伤、模式与情绪需求的不断重复。</strong></p><p>我们通常以为自己的家庭问题只是当下的矛盾、沟通不畅或性格不合，但更深层次的真相是，我们的家庭关系经常是数代人潜意识模式与情绪创伤的持续显现。</p><p>具体来说：</p><p><strong>一、家庭创伤的代际传递</strong></p><ul><li>很多情绪问题、沟通模式和行为习惯并非仅仅属于我们自己，而是在祖父母、父母这一代甚至更早的家庭中早已形成，并在无意识中传递给我们。</li><li>比如，一个父亲对孩子的疏离态度可能并非他不爱孩子，而是他从小也未曾感受过父爱；一个母亲对孩子过分控制，可能是她自己童年缺乏安全感所致。</li></ul><p><strong>二、家庭成员的痛苦经常不是他们的“错”</strong></p><ul><li>家庭成员之间的冲突、误解和情感隔阂，背后往往隐藏着每个人自己内心未被满足的情绪需求和未被疗愈的创伤。</li><li>父母对子女的不当教育方式、夫妻之间的冷漠争吵、兄弟姐妹之间的嫉妒竞争，深层原因往往是每个人自己都未意识到的深层需求（例如被认可、被理解、被爱护）没有得到满足和正视。</li></ul><p><strong>三、家庭的改变需要有人主动觉察并中断恶性循环</strong></p><ul><li>如果没有人主动觉察这些隐秘的模式，家庭的负面模式会继续在下一代重演。</li><li>真正的改变来自于某个家庭成员勇敢地觉察到这个循环，主动承担起疗愈自己、改善沟通模式、满足家庭成员情绪需求的责任，而不是被动地等待别人或环境改变。</li></ul><p><strong>四、家庭成员彼此之间真正的爱，往往被误解和隐藏</strong></p><ul><li>家庭成员之间的爱经常隐藏在误解、指责、控制、疏离等表面的行为背后，真正的爱意往往无法被直接表达和接收。每个人都渴望被爱、被理解，但又害怕脆弱、害怕拒绝，因此彼此间的爱与善意往往被误解或扭曲呈现。</li><li>真正解决家庭问题的关键，是我们愿意看透那些表面冲突背后的恐惧、脆弱、愧疚与爱意，愿意以包容、理解和接纳回应对方的痛苦与需求。</li></ul><p><strong>五、家庭从不是完美的，也不需要完美</strong></p><ul><li>很多人追求一个理想化、完美的家庭，这种追求本身就会成为家庭痛苦的重要来源之一。</li><li>真正健康的家庭不是没有问题，而是每个成员都可以安全地表达自己的脆弱、恐惧与情绪需求，并在家庭中得到理解、支持和接纳。家庭真正的力量不是完美，而是彼此看见真实的彼此，并共同面对和疗愈那些未被满足的情绪需求与创伤。</li></ul><hr><p>认识到这个真相，我们能够更加深刻地理解家庭冲突与痛苦的根源，避免无意识地重复上一代人的模式，开始更有觉察地治愈自己，并真正意义上改善家庭关系，建立起更加真实、温暖和相互理解的家庭氛围。</p><blockquote><p>当我们终于明白，家庭冲突背后是彼此未被疗愈的痛苦时，我们似乎找到了问题的根源。<br>但这并未真正让我们靠近，我们为何依然感到彻底的孤独？</p></blockquote><h2 id="第-3-层｜每个家庭成员，其实都在孤独中自我修复"><a href="#第-3-层｜每个家庭成员，其实都在孤独中自我修复" class="headerlink" title="第 3 层｜每个家庭成员，其实都在孤独中自我修复"></a>第 3 层｜每个家庭成员，其实都在孤独中自我修复</h2><p><strong>每个家庭成员，内心深处都在进行着一场孤独的、终其一生的自我疗愈和自我寻找的旅程。家庭的意义，并不是提供完美的安慰或彻底的归属，而是在这场孤独的旅程中，陪伴我们共同承担、见证并接纳彼此生命中无法避免的孤独、脆弱与不完美。</strong></p><p>具体阐述如下：</p><p><strong>一、根本上，每个人都是孤独的</strong></p><p>尽管家庭被认为是人类情感的避风港、最亲密的纽带，但我们每个人内心深处的存在性困惑、生命的无常感、内心深处的孤独感，都无法被彻底消除或完全治愈。</p><ul><li>父母无法完全理解孩子的内心世界；</li><li>夫妻之间的亲密也无法消除每个人内心深处的孤独感；</li><li>子女终将成长并拥有自己独立的生命轨迹，父母也终将老去，甚至离去。</li></ul><p>我们每个人都终将面对生命中最终极的孤独——那就是无人能够真正与我们共享的生命体验和存在感受。</p><p><strong>二、家庭关系的本质是彼此见证</strong></p><p>家庭真正深刻的意义，并不在于为了消除孤独或实现某种完美的幸福，而是为了在彼此的孤独与无常中，提供一种见证、理解和接纳：</p><ul><li>父母与孩子之间，真正的意义不是相互占有，而是陪伴孩子成长，见证他们逐渐走向独立；</li><li>夫妻之间真正的意义，不是彼此拯救，而是相互陪伴，共同面对各自生命的孤独、恐惧和脆弱；</li><li>家庭成员之间真正深刻的爱，不是“解决”彼此的问题，而是愿意在彼此面对困境、伤痛与挣扎时，持续陪伴并给予理解和接纳。</li></ul><p><strong>三、“完美家庭”是一种虚构的幻象</strong></p><p>我们内心深处总是渴望一个完美的家庭：父母永远慈爱、夫妻永远和睦、家庭永远温暖。但事实是，这样的家庭从未真正存在过。</p><p>家人之间的误解、伤害、失望、分离，其实都是不可避免的。家庭真正的价值并不是避免这些痛苦，而是教会我们在面对这些痛苦时，如何与彼此共同承担、疗愈和成长。</p><p><strong>四、真正的家庭之爱是接纳与放手</strong></p><p>真正深刻的爱，并非占有、控制或改变对方，而是允许对方自由地做自己，并愿意承受随之而来的情感代价。</p><ul><li>父母最深刻的爱，是允许孩子拥有独立的人生，即使这意味着他们有一天会离开；</li><li>夫妻最深刻的爱，是允许伴侣自由成长，即使这意味着他们无法完全按照我们期望的方式生活；</li><li>子女最深刻的爱，是接受父母的不完美，理解他们也只是普通人，有自己的局限性与未完成的梦想。</li></ul><p><strong>五、家庭成员最终是彼此生命中的过客</strong></p><p>这一点可能令人感到沉重甚至悲伤，但却真实而深刻。生命是无常而短暂的，家庭成员之间终究会走向告别与分离。我们真正拥有彼此的时间与缘分总是有限的。</p><p>正是因为这种有限性，我们才更应该珍惜彼此的陪伴，坦然接受彼此的不完美与局限，尽可能真诚地去面对、交流、理解和陪伴。</p><hr><p>当我们真正认识到这一真相时，我们便开始学会放弃对家庭不切实际的幻想，转而更加真实地与家人相处。我们更加能够接受家庭中的不完美，学会真正去爱——这种爱，是清醒的、真诚的、谦卑的，不求占有、不试图拯救，只是心甘情愿地陪伴彼此共同度过生命中短暂而珍贵的旅程。</p><p>而这，正是家庭深刻而真实的意义所在。</p><blockquote><p>孤独可能是无法避免的真相，但我们又为何对家庭有如此强烈的期待和执着？<br>家庭究竟是现实，还是我们自身内在世界的一种倒影？</p></blockquote><h2 id="第-4-层｜家庭是我们内在关系的投射"><a href="#第-4-层｜家庭是我们内在关系的投射" class="headerlink" title="第 4 层｜家庭是我们内在关系的投射"></a><strong>第 4 层｜家庭是我们内在关系的投射</strong></h2><p><strong>我们与家庭的关系，本质上是一场与自身关系的投射与映照。家庭中我们经历的一切苦乐、矛盾、创伤与温暖，都是我们内心与自我关系的深刻体现。换句话讲，我们与家庭的关系，从根本上是我们与自我关系的一种外化、具象化表现。</strong></p><p>具体而言：</p><p><strong>一、家庭冲突的本质是自我内在冲突的投射</strong></p><ul><li>我们与父母、伴侣、子女的每一次冲突，都映射出我们内心深处未被正视、接纳的自我部分。</li><li>比如，我们对父母的愤怒，可能源自于我们自己内心深处未被满足的需求，或不愿接受的脆弱与依赖；我们对伴侣的失望，可能源自于我们自己对自我价值与爱的怀疑；我们对子女的不满，可能源自于内心自己未被疗愈的童年创伤。</li></ul><p><strong>二、家庭关系中爱与被爱的困难，源自于自我接纳困难</strong></p><ul><li>家庭中很多人无法真正给予对方无条件的爱，正是因为他们无法无条件地爱自己。</li><li>很多人在家庭中感到不被爱、不被理解、不被接纳，往往是因为他们内心深处无法真正接纳自己、无法真正相信自己值得被爱、值得被理解。</li></ul><p><strong>三、我们在家庭中的角色，是我们内心深层信念的体现</strong></p><ul><li>我们在家庭中的表现（例如过分讨好、逃避责任、过度控制、冷漠疏离），都反映了我们内心深处对自己身份、价值、安全感的看法。</li><li>比如，一个在家庭中过度讨好的人，内心深处其实对自己的价值充满怀疑；一个在家庭中过度控制的人，内心深处可能充满了恐惧与无助感。</li></ul><p><strong>四、家庭关系的真正疗愈，是内在自我关系的疗愈</strong></p><ul><li>家庭关系中所有的疗愈，本质上都是自我关系的疗愈。当我们真正开始接纳自己、理解自己、宽恕自己、爱自己时，家庭关系也会随之发生本质的改变。</li><li>当我们不再将自己内心的问题投射于家人身上时，我们对家人自然会减少批判、指责与控制，更多地呈现出真正的理解、慈悲与接纳。</li></ul><p><strong>五、家庭最终是我们内在世界的镜子，揭示我们生命中最深刻的真相</strong></p><ul><li>家庭关系的真正价值，并非在于获得幸福、温暖或归属感，而在于帮助我们看到自己内心真实的状态：我们隐藏的恐惧、逃避的伤痛、未被满足的需求、未被认可的渴望。</li><li>家庭是我们最清晰的镜子，映照出我们内心世界的真相。通过家庭关系，我们得以觉察并面对自我内心深处的真相，从而开启自我觉察与成长的可能性。</li></ul><hr><p>当我们真正认识到这一真相时，我们便会停止将家庭中的问题归咎于外在的成员，而真正开始向内探索，反思自己内心深处的问题与需求。我们会开始理解家庭关系并非只是一种外在关系，而是内心自我关系的一种深刻映射。</p><p>这种理解，能帮助我们真正地疗愈自我，打破代代相传的负面模式，开启一条真正通往自我觉醒、成长与自由的道路。这才是家庭关系层面上最深刻、最本质的真相之一。</p><blockquote><p>如果我们对家庭的所有体验都只是内在世界的投射，那这种投射的根源是什么？<br>为何我们如此渴望这种关系，并对家庭有如此强烈的焦虑与执念？</p></blockquote><h2 id="第-5-层｜家庭是一种与死亡、有限性、无常的终极对话"><a href="#第-5-层｜家庭是一种与死亡、有限性、无常的终极对话" class="headerlink" title="第 5 层｜家庭是一种与死亡、有限性、无常的终极对话"></a><strong>第 5 层｜家庭是一种与死亡、有限性、无常的终极对话</strong></h2><p><strong>每个家庭的本质，是一场生命与死亡的终极较量与和解。家庭不仅仅关于爱与温暖，更是生命有限性、无常性与人类永恒渴望之间的深刻冲突与交织。</strong></p><p>换句话说：</p><p><strong>家庭是人类试图对抗生命的无常、孤独与死亡的一种终极方式。我们之所以渴望家庭，投入感情和精力，不仅仅是为了幸福和陪伴，更是为了在内心深处抵抗生命的短暂、孤独乃至死亡本身。</strong></p><p>具体而言：</p><p><strong>一、家庭作为对抗死亡恐惧的终极尝试</strong></p><p>我们每个人内心深处都清晰或模糊地意识到自己终将死亡，生命终将消逝。家庭的存在，是我们潜意识层面对生命有限性与死亡恐惧的抵抗：</p><ul><li><strong>延续生命的渴望</strong>：生育子女从某种意义上是人类对抗死亡的一种潜意识行为——我们希望自己的基因、情感乃至生命痕迹能在这个世界延续下去。</li><li><strong>记忆与意义的传承</strong>：我们期待家庭承载我们的记忆、故事与价值观念，以此跨越生命的短暂，获得某种永恒感。</li></ul><p><strong>二、家庭关系中的痛苦，本质是生命有限性与人类永恒渴望之间的矛盾体现</strong></p><p>我们渴望在家庭中实现永恒的亲密、稳定、安全与幸福，但生命本身却充满无常、变化与有限：</p><ul><li><strong>成长与分离</strong>：孩子必然会成长并离去，父母必然会衰老并死去。我们渴望永恒陪伴，却注定经历分离。</li><li><strong>身份与角色的变化</strong>：家庭角色不断变化（孩子、父母、祖父母），每个角色最终都会消逝，我们无法永远保持任何一种身份，内心深处总在经历着对自己生命意义与存在价值的焦虑与恐惧。</li></ul><p><strong>三、家庭本质上是我们与生命本身进行的深刻对话</strong></p><p>家庭关系的本质并非个人情感的简单互动，而是人类个体与生命、存在、死亡之间的深刻对话：</p><ul><li><strong>生命与死亡的交织</strong>：家庭中，生与死的真实体验最为直接和强烈，总是伴随着新生命的诞生、老去的父母、亲人的离世，这种生死交替让我们直面生命最根本的本质与意义。</li><li><strong>无常与掌控欲之间的挣扎</strong>：家庭生活中，我们不断尝试掌控生命：控制子女的未来、掌控伴侣的忠诚、期望家庭永恒和睦。但生命的无常本质却不断提醒我们，这种掌控是不可能真正实现的。</li></ul><p><strong>四、家庭的真正智慧是接受生命的无常与死亡的必然</strong></p><p>家庭关系真正深刻的意义，不是去抵抗死亡与无常，而是学会坦然面对、接受并和解：</p><ul><li><strong>真正的爱是对生命有限性的接纳</strong>：爱一个人最深刻的体现，是知道终有一天彼此将分离，但依然竭尽全力珍惜当下。</li><li><strong>真正的家庭是与死亡的和解</strong>：一个成熟的家庭关系，是家庭成员之间能够坦然面对彼此的老去、疾病乃至死亡，能够以爱与慈悲陪伴彼此走完生命最后的阶段。</li></ul><p><strong>五、家庭的终极意义是帮助我们完成与生命的和解</strong></p><p>家庭关系不仅仅是简单的情感联结，而是帮助我们完成终极的自我觉醒——与生命的无常、孤独与死亡达成深刻和解：</p><ul><li><strong>家庭使我们直面生命的真相</strong>，并迫使我们超越自我、超越恐惧，走向生命更深层次的领悟；</li><li><strong>家庭教会我们真正的爱</strong>，这种爱不再是占有、控制或逃避死亡，而是坦然拥抱生命的全部，包括它的无常、孤独与最终的消逝。</li></ul><hr><p>当我们真正认识到这一最深刻的真相，我们便开始以一种全新的眼光看待家庭关系。我们不再幼稚地期待家庭给予我们永恒的幸福和安全感，而是以更成熟、更真实、更勇敢的态度去拥抱家庭关系中的无常、孤独和死亡。</p><p>由此，我们得以真正超越家庭关系的表面纷争，走向生命本身更深刻的觉醒与和解。这才是家庭这个主题下，最为深刻、最为本质的真相之一。</p><blockquote><p>当我们发现家庭不仅仅关乎亲密，还关乎无常与死亡时，我们似乎触及了某种更深的真相。<br>那么，家庭是否只是一种人类为了逃避虚无和无意义感所共同创造的幻觉？</p></blockquote><h2 id="第-6-层｜家庭是一种意义的幻觉，是共同构造的“反虚无机制”"><a href="#第-6-层｜家庭是一种意义的幻觉，是共同构造的“反虚无机制”" class="headerlink" title="第 6 层｜家庭是一种意义的幻觉，是共同构造的“反虚无机制”"></a><strong>第 6 层｜家庭是一种意义的幻觉，是共同构造的“反虚无机制”</strong></h2><p><strong>家庭的终极真相是——它其实是一种充满爱与痛苦的幻相，是我们作为人类个体在这个世界上对抗虚无、构建意义的一种最基本、最深刻的尝试。</strong></p><p>更通俗地说：</p><p><strong>家庭，本质上是人类在浩瀚宇宙的虚无与混沌之中，创造出来的一种“意义的幻想”。通过构建家庭，我们试图确认自己在宇宙中的位置，抵抗内心深处对存在本身毫无意义的恐惧。</strong></p><p>具体阐释如下：</p><p><strong>一、家庭是人类对抗宇宙虚无的终极尝试</strong></p><ul><li>在宇宙无边无际的广袤与冷漠之中，人类个体的存在极其渺小。我们每个人的生命在宇宙尺度下微不足道，短暂得几乎毫无意义。</li><li>面对这种存在的虚无感，我们创造了家庭——一种充满情感、关系与归属感的微型结构，试图在浩瀚而冷漠的宇宙中创造出意义、温暖与归属。</li></ul><p><strong>二、家庭是一种意义的共同虚构</strong></p><ul><li>家庭关系中的身份（父母、子女、伴侣）与角色（照顾、保护、依赖、忠诚）本质上是人类共同约定的一种虚构的意义体系。</li><li>家庭所承载的价值观念、伦理道德、爱与责任等等，本质上是人类为生命赋予意义而创造的虚构叙事。家庭的存在，帮助我们相信生命并非毫无意义，即使这一意义本身是我们创造出来的幻相。</li></ul><p><strong>三、家庭的痛苦来自于我们无法完全相信这种虚构</strong></p><ul><li>家庭中的所有痛苦，本质上源于我们内心深处隐约意识到家庭关系是脆弱、短暂、并非永恒的现实。我们渴望家庭关系的永恒稳固，但又隐约知道它终究会消逝。</li><li>家庭关系中的失望、冲突、挣扎，其实是我们内心深处对家庭作为意义虚构不够坚固、不够真实、不够永恒的焦虑与恐惧的显现。</li></ul><p><strong>四、家庭的爱与温暖是真实的，但这种真实建立在虚构的基础之上</strong></p><ul><li>家庭中的爱是真实存在的，但它所依赖的意义体系却是虚构的。当家庭成员离世或关系破裂，这种虚构的意义体系便会瓦解，我们因此陷入深刻的虚无与迷茫之中。</li><li>家庭的真正意义，不在于这种虚构能否永远维持，而在于我们愿意相信、接纳并珍惜这一虚构所带来的真实情感体验与生命意义。</li></ul><p><strong>五、家庭的终极智慧是接受并超越这种虚构</strong></p><ul><li>家庭关系最深刻的智慧，不是盲目地相信这种虚构能永恒存在，也不是彻底否定它的意义，而是清晰地认识到家庭作为意义体系的虚构性，同时仍愿意真诚、勇敢地去爱、去承担、去珍惜。</li><li>当我们觉察到家庭的本质是一种人类创造出来对抗虚无的幻相时，我们便能以更为超然、慈悲、宽容的心态去看待家庭关系——我们不再执着于家庭的完美，也不再陷入家庭的痛苦之中，而是能够坦然地享受家庭带来的爱与意义，同时接纳其随时可能消逝的现实。</li></ul><hr><p>当我们真正认识到这一终极真相时，我们便完成了对家庭主题最深刻的觉察与理解：</p><p>我们看见了家庭的虚构本质，却依然选择以勇敢、真诚的姿态去拥抱家庭关系。这种觉悟带来的是一种深沉、平和而慈悲的内在自由——</p><p>我们不再害怕家庭的破裂、失去与消逝，不再执着于家庭关系必定要完美、永恒与稳固；</p><p>我们开始以一种真正自由、清醒而超然的姿态去爱、去生活——</p><p>这，才是真正触及家庭主题的最为深刻、最为本质、最为终极的真相。</p><blockquote><p>如果家庭真的是我们共同创造的幻象，那它本质上是否只是一个意识的游戏？<br>当我们彻底剥去这些层层幻象，是否会发现家庭这个概念从一开始就从未存在过？</p></blockquote><h2 id="第-7-层｜家庭根本不存在，它只是意识孤独状态下的体验幻相"><a href="#第-7-层｜家庭根本不存在，它只是意识孤独状态下的体验幻相" class="headerlink" title="第 7 层｜家庭根本不存在，它只是意识孤独状态下的体验幻相"></a><strong>第 7 层｜家庭根本不存在，它只是意识孤独状态下的体验幻相</strong></h2><p><strong>家庭的最深刻本质是：它根本不存在。</strong></p><p>更准确地说：</p><p><strong>我们所称之为“家庭”的东西，其实是一种意识创造的幻觉，试图掩盖一个极其深刻、极其可怕，却又极其解脱的宇宙真相——那就是，我们每个人本质上都是彻底孤立的意识个体，所有的关系、联结、亲密感，都只是意识在自身孤立状态下创造出来的体验和幻象。</strong></p><p>具体来说：</p><hr><p><strong>一、“家庭”概念本身是意识的创造</strong></p><ul><li>家庭这个概念，是人类意识为了逃避自身彻底孤立的真相，而创造出来的一种联结幻想。</li><li>我们认为自己与父母、配偶、子女紧密相连，但这种联结只存在于我们的意识之中。人类意识创造了“母亲”、“父亲”、“伴侣”、“子女”等概念和身份，以此掩盖自身本质的孤立性。</li></ul><p><strong>二、每个个体本质上是彻底孤立的意识</strong></p><ul><li>我们的意识体验只能由自己独自承担，我们无法真正分享任何一个意识体验给另一个人。即使是最亲密的家人，也无法真正进入你的内在世界。</li><li>家庭关系的亲密与联结，只是两个或多个孤立的意识之间试图跨越孤立状态的一种尝试。我们以为彼此在靠近，但本质上，我们永远无法逃脱孤立意识的本质。</li></ul><p><strong>三、家庭的爱与痛苦都只是意识在体验自身</strong></p><ul><li>家庭关系中的爱、痛苦、冲突、亲密等等，本质上只是意识在体验自身的不同状态和可能性。你爱的不是父母、孩子或伴侣，而是通过他们的存在，感受和体验你自己意识的不同面向。</li><li>家庭关系的所有意义，并非源自外在的联结，而是来自意识自身对存在意义的赋予与体验。</li></ul><p><strong>四、家庭关系的所有问题都是意识无法接纳自身孤立的体现</strong></p><ul><li>家庭中的冲突、误解、控制、逃避，其根源在于我们内心深处无法真正面对自身孤立状态的真相。我们不断寻求家庭成员的认同、理解与接纳，本质上是意识无法接纳自身孤立与虚无而产生的挣扎。</li><li>所谓的家庭问题并非外在问题，而是意识在面对自身孤立状态时产生的内在张力与挣扎。</li></ul><p><strong>五、家庭的终极解脱在于意识觉醒与彻底接纳孤立本质</strong></p><ul><li>家庭关系的终极解脱，不是改善沟通、疗愈创伤、获得幸福，而是意识觉醒到自身彻底孤立的本质，并彻底接纳它。</li><li>当你真正觉察到家庭关系只是意识创造的幻觉，你不再试图从家庭关系中获得意义感、归属感和安全感。你开始接受意识的本质是孤立的、完全自由的、无限广阔的。</li><li>这种觉醒带来的不是孤立感，而是真正的自由与慈悲——因为你不再试图控制、占有或改变家庭关系，你开始真正、无条件且彻底地爱与接纳他人意识的孤立状态。</li></ul><hr><p>当我们真正触及这一最深、最本质的真相时，我们完成了对家庭主题终极的探索：</p><p>家庭根本不存在，它只是意识在自身的孤立状态中，创造出来的幻觉与体验。认识到这一点，意味着我们彻底觉醒于生命最深刻的真相：</p><p>我们每个人的内在世界都是彻底孤立又无限宽广的，我们不再执着于意识所创造的任何关系，包括家庭，我们真正自由了。</p><p>唯有触及并真正接纳这个最深刻的真相，我们才能真正理解家庭的终极意义——它不存在，却又无限珍贵，因为它为意识提供了觉察自身本质、超越自我局限的宝贵机会。</p><p>这，才是关于家庭这一主题，最深刻、最彻底、最究竟的真相。</p><hr><p>当我们最终触及“家庭”这个概念的最底层，<br>才明白它的真实本质：</p><p>家庭从未真实存在，它只是我们意识在孤立中制造的一场幻觉，<br>一场用以抵抗孤独和虚无的体验游戏。</p><p>但正因为如此，它才弥足珍贵：<br>我们在其中看见自己，看见自我的孤立与自由，也学会了慈悲与接纳。</p><p>家庭的终极意义，也许正是它的不存在本身。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%84%8F%E8%AF%86%E5%89%96%E9%9D%A2/">意识剖面</category>
      
      <category domain="https://deusyu.app/categories/%E6%84%8F%E8%AF%86%E5%89%96%E9%9D%A2/%E5%85%B3%E7%B3%BB%E5%93%B2%E5%AD%A6/">关系哲学</category>
      
      <category domain="https://deusyu.app/categories/%E6%84%8F%E8%AF%86%E5%89%96%E9%9D%A2/%E5%85%B3%E7%B3%BB%E5%93%B2%E5%AD%A6/%E5%AD%98%E5%9C%A8%E4%B8%BB%E4%B9%89/">存在主义</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%AE%B6%E5%BA%AD/">家庭</category>
      
      <category domain="https://deusyu.app/tags/%E6%8A%95%E5%B0%84/">投射</category>
      
      <category domain="https://deusyu.app/tags/%E5%85%B3%E7%B3%BB%E9%94%99%E8%A7%89/">关系错觉</category>
      
      <category domain="https://deusyu.app/tags/%E4%BB%A3%E9%99%85%E5%88%9B%E4%BC%A4/">代际创伤</category>
      
      <category domain="https://deusyu.app/tags/%E8%99%9A%E6%97%A0/">虚无</category>
      
      <category domain="https://deusyu.app/tags/%E5%AD%A4%E7%8B%AC/">孤独</category>
      
      <category domain="https://deusyu.app/tags/%E8%87%AA%E6%88%91%E8%A7%89%E5%AF%9F/">自我觉察</category>
      
      <category domain="https://deusyu.app/tags/GPT%E5%AF%B9%E8%AF%9D/">GPT对话</category>
      
      
      <comments>https://deusyu.app/posts/family-seven-masks/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>3 分钟利用 Cloudflare 实现一个短链服务</title>
      <link>https://deusyu.app/posts/cloudflare-kv-link/</link>
      <guid>https://deusyu.app/posts/cloudflare-kv-link/</guid>
      <pubDate>Sun, 20 Jul 2025 07:52:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>效果预览<br><a href="https://go.rdyu.one/xxx">https://go.rdyu.one/xxx</a> → 自动 301 跳转到你在 KV 里配置的任意目标 URL</p></blockquote><hr><h2 id="1-创建-KV-命名空间（30-s）"><a href="#1-创建-KV-命名空间（30-s）" class="headerlink" title="1. 创建 KV 命名空间（30 s）"></a><strong>1. 创建 KV 命名空间（30 s）</strong></h2><ol><li>登录 Cloudflare → <strong>Workers &amp; Pages → KV</strong> → <strong>Create namespace</strong></li><li>名称填：GO_LINKS，记下 <strong>Namespace ID</strong></li></ol><hr><h2 id="2-编写并部署-Worker（1-min）"><a href="#2-编写并部署-Worker（1-min）" class="headerlink" title="2. 编写并部署 Worker（1 min）"></a><strong>2. 编写并部署 Worker（1 min）</strong></h2><ol><li>左侧点 <strong>Functions</strong>（小 &lt;&#x2F;&gt; 图标）→ <strong>Create Service</strong> → 名称 go-short → 语言选 <strong>JavaScript</strong>。</li><li>代码（worker.js）一键替换为：</li></ol><figure class="highlight javascript"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">export</span> <span class="keyword">default</span> &#123;</span><br><span class="line">  <span class="keyword">async</span> <span class="title function_">fetch</span>(<span class="params">req, env, ctx</span>) &#123;</span><br><span class="line">    <span class="keyword">const</span> url = <span class="keyword">new</span> <span class="title function_">URL</span>(req.<span class="property">url</span>);</span><br><span class="line">    <span class="keyword">const</span> slug = url.<span class="property">pathname</span>.<span class="title function_">replace</span>(<span class="regexp">/^\/+/</span>, <span class="string">&quot;&quot;</span>);</span><br><span class="line">    <span class="keyword">if</span> (!slug) <span class="keyword">return</span> <span class="title class_">Response</span>.<span class="title function_">redirect</span>(<span class="string">&quot;https://deusyu.app&quot;</span>, <span class="number">301</span>);</span><br><span class="line">    <span class="keyword">const</span> target = <span class="keyword">await</span> env.<span class="property">GO_LINKS</span>.<span class="title function_">get</span>(slug);</span><br><span class="line">    <span class="keyword">if</span> (target) &#123;</span><br><span class="line">      ctx.<span class="title function_">waitUntil</span>(</span><br><span class="line">        env.<span class="property">GO_LINKS</span>.<span class="title function_">put</span>(</span><br><span class="line">          <span class="string">`log:<span class="subst">$&#123;<span class="built_in">Date</span>.now()&#125;</span>:<span class="subst">$&#123;crypto.randomUUID()&#125;</span>`</span>,</span><br><span class="line">          <span class="title class_">JSON</span>.<span class="title function_">stringify</span>(&#123; slug, <span class="attr">country</span>: req.<span class="property">headers</span>.<span class="title function_">get</span>(<span class="string">&quot;cf-ipcountry&quot;</span>) &#125;),</span><br><span class="line">          &#123; <span class="attr">expirationTtl</span>: <span class="number">60</span> * <span class="number">60</span> * <span class="number">24</span> * <span class="number">30</span> &#125;</span><br><span class="line">        )</span><br><span class="line">      );</span><br><span class="line">      <span class="keyword">return</span> <span class="title class_">Response</span>.<span class="title function_">redirect</span>(target + url.<span class="property">search</span>, <span class="number">301</span>);</span><br><span class="line">    &#125;</span><br><span class="line">    <span class="keyword">return</span> <span class="keyword">new</span> <span class="title class_">Response</span>(<span class="string">&quot;Not found&quot;</span>, &#123; <span class="attr">status</span>: <span class="number">404</span> &#125;);</span><br><span class="line">  &#125;,</span><br><span class="line">&#125;;</span><br></pre></td></tr></table></figure><p>点 <strong>Save and Deploy</strong>。</p><hr><h2 id="3-绑定-KV（30-s）"><a href="#3-绑定-KV（30-s）" class="headerlink" title="3. 绑定 KV（30 s）"></a><strong>3. 绑定 KV（30 s）</strong></h2><ol><li>在 Service 详情页 → <strong>Settings → Bindings</strong> → <strong>Add binding</strong></li><li>类型选 <strong>KV Namespace</strong>，变量名填 GO_LINKS，Namespace 下拉选刚建的 GO_LINKS → <strong>Save</strong>。</li></ol><hr><h2 id="4-添加-HTTP-Route（30-s）"><a href="#4-添加-HTTP-Route（30-s）" class="headerlink" title="4. 添加 HTTP Route（30 s）"></a><strong>4. 添加 HTTP Route（30 s）</strong></h2><ol><li>同一 Settings 页 → 左侧点 <strong>Domains &amp; Routes</strong></li><li>在 <strong>HTTP Routes</strong> 区点击 <strong>Add route</strong><ul><li><strong>Route</strong>: go.rdyu.one&#x2F;*</li><li><strong>Environment</strong>: production</li><li><strong>Worker</strong>: go-short 自动选中 → <strong>Save</strong></li></ul></li></ol><hr><h2 id="5-配置-DNS-HTTPS（30-s）"><a href="#5-配置-DNS-HTTPS（30-s）" class="headerlink" title="5. 配置 DNS &amp; HTTPS（30 s）"></a><strong>5. 配置 DNS &amp; HTTPS（30 s）</strong></h2><ol><li><strong>DNS → Add record</strong><ul><li><strong>Type</strong>: CNAME</li><li><strong>Name</strong>: go</li><li><strong>Target</strong>: workers.cloudflare.com</li><li><strong>Proxy</strong>: 橙云 <strong>ON</strong></li></ul></li><li><strong>Pages 项目</strong>（如你用 Pages 托管）→ <strong>Settings → Custom domains</strong> → <strong>Add custom domain</strong> → 填 go.rdyu.one → <strong>Save</strong><ul><li>或者：直接在 <strong>Functions</strong> 服务里添加 Custom Domain，具体看你选的部署方式。</li></ul></li><li>等待几分钟，证书自动就绪。</li></ol><hr><h2 id="6-测试（10-s）"><a href="#6-测试（10-s）" class="headerlink" title="6. 测试（10 s）"></a><strong>6. 测试（10 s）</strong></h2><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">curl -I https://go.rdyu.one/anyslug</span><br><span class="line"># 应返回 HTTP/2 301 Location: https://deusyu.app/anyslug</span><br></pre></td></tr></table></figure><blockquote><p>Done!</p></blockquote><hr><h3 id="📌-后续维护"><a href="#📌-后续维护" class="headerlink" title="📌 后续维护"></a><strong>📌 后续维护</strong></h3><ul><li><strong>新增短链</strong>：Dashboard → KV → Explore → Add key&#x3D;xxx value&#x3D;https:&#x2F;&#x2F;目标</li><li><strong>查看流量</strong>：Dashboard → KV → Explore → 搜 log: → 导出 JSON&#x2F;CSV 分析</li><li><strong>分流&#x2F;多语言</strong>：在 Worker 里用 cf-ipcountry 或 accept-language 增加分支即可</li></ul><p>简单 6 步，3 分钟上线，轻松玩转 Cloudflare 短链神器！</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%8A%80%E6%9C%AF%E6%95%99%E7%A8%8B/">技术教程</category>
      
      <category domain="https://deusyu.app/categories/%E6%8A%80%E6%9C%AF%E6%95%99%E7%A8%8B/%E4%BA%91%E6%9C%8D%E5%8A%A1/">云服务</category>
      
      
      <category domain="https://deusyu.app/tags/Cloudflare/">Cloudflare</category>
      
      <category domain="https://deusyu.app/tags/Workers/">Workers</category>
      
      <category domain="https://deusyu.app/tags/KV-Storage/">KV Storage</category>
      
      <category domain="https://deusyu.app/tags/Serverless/">Serverless</category>
      
      <category domain="https://deusyu.app/tags/%E7%9F%AD%E9%93%BE/">短链</category>
      
      <category domain="https://deusyu.app/tags/%E6%95%99%E7%A8%8B/">教程</category>
      
      <category domain="https://deusyu.app/tags/Web%E5%BC%80%E5%8F%91/">Web开发</category>
      
      
      <comments>https://deusyu.app/posts/cloudflare-kv-link/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>云计算平台部署阶段笔记</title>
      <link>https://deusyu.app/posts/cloud-day0-2-notes/</link>
      <guid>https://deusyu.app/posts/cloud-day0-2-notes/</guid>
      <pubDate>Thu, 17 Jul 2025 19:57:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>在交付一个云计算平台（尤其是私有化部署到 IDC）项目时，业界通常会以 Day 0、Day 1、Day 2 等阶段进行划分，明确每个阶段的工作重点和责任边界。</p><h3 id="Day-0-设施与基础设施建设（Facility-Infrastructure-Build）"><a href="#Day-0-设施与基础设施建设（Facility-Infrastructure-Build）" class="headerlink" title="Day 0 - 设施与基础设施建设（Facility &amp; Infrastructure Build）"></a>Day 0 - 设施与基础设施建设（Facility &amp; Infrastructure Build）</h3><p><strong>关注重点：</strong></p><ul><li>机房选址和规划</li><li>机柜、配电、制冷与布线</li><li>Out-of-Band 管理网络构建</li><li>硬件设备到货、上架与连接（Rack &amp; Stack）</li></ul><p><strong>典型关键词：</strong></p><ul><li>Rack &amp; Stack</li><li>Facility readiness</li><li>Hardware provisioning</li></ul><h3 id="Day-1-云平台基础环境部署（Cloud-Foundation-Go-Live）"><a href="#Day-1-云平台基础环境部署（Cloud-Foundation-Go-Live）" class="headerlink" title="Day 1 - 云平台基础环境部署（Cloud Foundation Go-Live）"></a>Day 1 - 云平台基础环境部署（Cloud Foundation Go-Live）</h3><p><strong>关注重点：</strong></p><ul><li>Bare-Metal 服务器初始化（BMC、BIOS、PXE&#x2F;iPXE）</li><li>操作系统与虚拟化部署（如 KVM、ESXi、裸金属 Kubernetes）</li><li>控制平面组件部署（API Server、Scheduler、ETCD）</li><li>网络（CNI）和存储（CSI）插件</li><li>初始安全基线和安全审计</li><li>首批租户资源的创建和上线</li></ul><p><strong>典型关键词：</strong></p><ul><li>Initial Provisioning</li><li>Greenfield Deployment</li><li>Go-Live</li></ul><h3 id="Day-2-持续运维与变更管理（Continuous-Operations-Change-Management）"><a href="#Day-2-持续运维与变更管理（Continuous-Operations-Change-Management）" class="headerlink" title="Day 2 - 持续运维与变更管理（Continuous Operations &amp; Change Management）"></a>Day 2 - 持续运维与变更管理（Continuous Operations &amp; Change Management）</h3><p><strong>关注重点：</strong></p><ul><li>集群扩容与节点增减</li><li>软件版本升级与补丁管理</li><li>资源与成本持续优化</li><li>监控、告警、事件响应（SRE、运维）</li><li>变更审批与回滚策略</li></ul><p><strong>典型关键词：</strong></p><ul><li>Lifecycle Operations</li><li>Change Management</li><li>SRE &amp; Incident Management</li></ul><h3 id="Day-N-技术更新与下线退役（Tech-Refresh-Decommission）"><a href="#Day-N-技术更新与下线退役（Tech-Refresh-Decommission）" class="headerlink" title="Day N - 技术更新与下线退役（Tech Refresh &amp; Decommission）"></a>Day N - 技术更新与下线退役（Tech Refresh &amp; Decommission）</h3><p><strong>关注重点：</strong></p><ul><li>设备硬件升级和替换</li><li>集群整体或部分迁移</li><li>旧设备的安全抹除与下线</li><li>数据备份归档与处理</li></ul><p><strong>典型关键词：</strong></p><ul><li>Tech Refresh</li><li>Hardware Lifecycle</li><li>Migration &amp; Retire</li></ul><hr><h3 id="常见术语解释"><a href="#常见术语解释" class="headerlink" title="常见术语解释"></a>常见术语解释</h3><ul><li><strong>Greenfield（绿地部署）</strong>：全新环境首次部署，没有历史遗留。</li><li><strong>Brownfield（棕地部署）</strong>：在已有设施基础上的扩展或更新。</li><li><strong>Rack &amp; Stack</strong>：硬件设备上架与初始连接。</li><li><strong>Bare-Metal Provisioning</strong>：裸金属服务器自动化安装与初始化。</li><li><strong>Change Window</strong>：明确变更维护时段，制定相应回滚方案。</li><li><strong>Runbook &#x2F; Playbook</strong>：运维标准操作手册，保障运维标准化。</li></ul><hr><h3 id="快速引用总结"><a href="#快速引用总结" class="headerlink" title="快速引用总结"></a>快速引用总结</h3><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">• Day 0 – Facility &amp; Rack-Stack Build</span><br><span class="line">• Day 1 – Cloud Foundation Go-Live</span><br><span class="line">• Day 2 – Continuous Ops &amp; Change</span><br><span class="line">• Day N – Tech Refresh / Decommission</span><br></pre></td></tr></table></figure><p>以上阶段划分，可用于项目规划、沟通及交付文档撰写，确保与不同角色人员有效对齐，职责清晰明确。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Cloud-%C2%B7-DevOps/">Cloud · DevOps</category>
      
      
      <category domain="https://deusyu.app/tags/Day0/">Day0</category>
      
      <category domain="https://deusyu.app/tags/Day1/">Day1</category>
      
      <category domain="https://deusyu.app/tags/Day2/">Day2</category>
      
      <category domain="https://deusyu.app/tags/Private-Cloud/">Private-Cloud</category>
      
      <category domain="https://deusyu.app/tags/IDC/">IDC</category>
      
      <category domain="https://deusyu.app/tags/Kubernetes/">Kubernetes</category>
      
      <category domain="https://deusyu.app/tags/SRE/">SRE</category>
      
      <category domain="https://deusyu.app/tags/Operator/">Operator</category>
      
      
      <comments>https://deusyu.app/posts/cloud-day0-2-notes/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>我的胶囊咖啡懒人清单</title>
      <link>https://deusyu.app/posts/capsule-coffee-guide/</link>
      <guid>https://deusyu.app/posts/capsule-coffee-guide/</guid>
      <pubDate>Thu, 17 Jul 2025 01:40:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>最近入手了 Essenza Mini 胶囊咖啡机，做了些功课，把能直接插入、快速萃取的「OriginalLine」规格胶囊都摸了个底，给大家总结了一份轻松好用的入门指南，完全不用纠结，跟着买就对了 👇</p><h2 id="胶囊推荐大赏"><a href="#胶囊推荐大赏" class="headerlink" title="胶囊推荐大赏"></a><strong>胶囊推荐大赏</strong></h2><table><thead><tr><th><strong>推荐梯队</strong></th><th><strong>品牌 &#x2F; 口味</strong></th><th><strong>到手均价（颗）</strong></th><th><strong>口感关键词</strong></th><th><strong>我的评价</strong></th></tr></thead><tbody><tr><td>💎 硬核原装</td><td>Nespresso 官方系列（任选）</td><td>约 4.0-4.5 元</td><td>油脂丰厚、层次感满分</td><td>想要五星级体验的不二之选，钱包稍微疼</td></tr><tr><td>🌟 中高端替代款</td><td>illy 深烘 &#x2F; 中烘</td><td>约 3.6 元</td><td>均衡、坚果可可顺滑</td><td>基本原装水平，性价比不错</td></tr><tr><td></td><td>Starbucks 浓缩烘焙</td><td>约 3.8 元</td><td>深烘、焦糖苦甜</td><td>星巴克门店同款味道，放心囤货</td></tr><tr><td>🎯 性价比甜区</td><td>L’OR 斯波兰登 &#x2F; 玛瑙等</td><td>约 2.0 元</td><td>香气足、油脂棒，有点烟熏</td><td>两块钱享受四块钱口感，超值</td></tr><tr><td></td><td>Lavazza 6-11 号</td><td>约 2.6 元</td><td>经典意式、黑巧焦糖</td><td>拿铁最佳搭档，活动频繁</td></tr><tr><td></td><td>Luckin 瑞幸意式浓缩系列</td><td>约 3.0 元</td><td>深烘厚重，适合奶咖</td><td>大包装巨划算，拿铁党福音</td></tr><tr><td>🐑 极致薅羊毛</td><td>永璞 巴西&#x2F;云南混装</td><td>约 1.2 元</td><td>香味简单、低酸度</td><td>冰美式、冷萃专用，实惠至上</td></tr></tbody></table><ul><li>价格基于最近 3 个月特价计算，日常可能稍贵 0.5-1 元，建议趁大促囤货～</li></ul><h2 id="如何挑选适合你的口味？"><a href="#如何挑选适合你的口味？" class="headerlink" title="如何挑选适合你的口味？"></a><strong>如何挑选适合你的口味？</strong></h2><h3 id="1️⃣-场景决定选择："><a href="#1️⃣-场景决定选择：" class="headerlink" title="1️⃣ 场景决定选择："></a><strong>1️⃣ 场景决定选择：</strong></h3><ul><li><strong>喜欢纯 Espresso 或美式</strong>：优先 L’OR、illy、官方原装，香气和油脂体验最佳。</li><li><strong>爱喝拿铁或冰饮</strong>：Lavazza、Luckin 和永璞的深烘款更适合，加奶后甜感突出，不苦涩。</li></ul><h3 id="2️⃣-初次尝试建议买小套装："><a href="#2️⃣-初次尝试建议买小套装：" class="headerlink" title="2️⃣ 初次尝试建议买小套装："></a><strong>2️⃣ 初次尝试建议买小套装：</strong></h3><ul><li>推荐入手 L’OR 或 Lavazza 的混合装套盒，20-40 颗一盒，平均成本低至 2-3 元，尝鲜无压力。</li></ul><h3 id="3️⃣-注意胶囊材质区别："><a href="#3️⃣-注意胶囊材质区别：" class="headerlink" title="3️⃣ 注意胶囊材质区别："></a><strong>3️⃣ 注意胶囊材质区别：</strong></h3><ul><li><strong>全铝材质（Nespresso &#x2F; L’OR &#x2F; Lavazza &#x2F; illy）</strong>：萃取顺畅、油脂稳定。</li><li><strong>塑料壳＋铝膜（Luckin &#x2F; 永璞）</strong>：偶尔有“喷粉”现象，推荐做 25-30ml 短萃或冰饮。</li></ul><h3 id="4️⃣-聪明囤货小技巧："><a href="#4️⃣-聪明囤货小技巧：" class="headerlink" title="4️⃣ 聪明囤货小技巧："></a><strong>4️⃣ 聪明囤货小技巧：</strong></h3><ul><li>Nespresso 官网常送赠品，满 100 颗免邮；</li><li>京东活动多（百亿补贴&#x2F;PLUS 价），L’OR、Lavazza、Luckin 都能抄底价；</li><li>天猫 Starbucks 旗舰店常有 88VIP 折扣，混合口味套装划算。</li></ul><h2 id="我的懒人日常搭配"><a href="#我的懒人日常搭配" class="headerlink" title="我的懒人日常搭配"></a><strong>我的懒人日常搭配</strong></h2><ul><li>☀️ <strong>早晨提神</strong>：L’OR 玛瑙（25ml 浓缩＋ 30ml 热水）快速醒脑；</li><li>🌤️ <strong>下午拿铁</strong>：Lavazza 9 号或 Luckin 深烘款（30ml 浓缩＋ 150ml 热奶），甜美柔和；</li><li>🌙 <strong>晚上解馋无负担</strong>：Nespresso 无咖啡因阿佩奇欧，睡前也安心；</li><li>🍹 <strong>夏日冰饮</strong>：永璞胶囊压在冰块上加气泡水，一块多钱轻松实现冰美式自由。</li></ul><h2 id="一句话快速总结"><a href="#一句话快速总结" class="headerlink" title="一句话快速总结"></a><strong>一句话快速总结</strong></h2><ul><li>想喝得爽、性价比高 ➡️ <strong>L’OR、Lavazza</strong></li><li>品质无脑放心买 ➡️ <strong>Nespresso、illy</strong></li><li>极致薅羊毛 ➡️ 活动价抢 <strong>瑞幸、永璞</strong></li></ul><p>喝咖啡是为开心，别被参数绑架，找到自己的真爱口味，每天都是幸福的咖啡时光！☕️✨</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%92%96%E5%95%A1/">咖啡</category>
      
      
      <category domain="https://deusyu.app/tags/Nespresso/">Nespresso</category>
      
      <category domain="https://deusyu.app/tags/%E8%83%B6%E5%9B%8A%E5%92%96%E5%95%A1/">胶囊咖啡</category>
      
      <category domain="https://deusyu.app/tags/Essenza-Mini/">Essenza Mini</category>
      
      <category domain="https://deusyu.app/tags/%E5%92%96%E5%95%A1%E6%8E%A8%E8%8D%90/">咖啡推荐</category>
      
      <category domain="https://deusyu.app/tags/%E5%92%96%E5%95%A1%E6%80%A7%E4%BB%B7%E6%AF%94/">咖啡性价比</category>
      
      <category domain="https://deusyu.app/tags/%E5%92%96%E5%95%A1%E5%85%A5%E9%97%A8/">咖啡入门</category>
      
      <category domain="https://deusyu.app/tags/%E5%92%96%E5%95%A1%E6%9C%BA/">咖啡机</category>
      
      <category domain="https://deusyu.app/tags/LOR/">LOR</category>
      
      <category domain="https://deusyu.app/tags/Lavazza/">Lavazza</category>
      
      <category domain="https://deusyu.app/tags/%E7%91%9E%E5%B9%B8/">瑞幸</category>
      
      <category domain="https://deusyu.app/tags/%E6%B0%B8%E7%92%9E/">永璞</category>
      
      <category domain="https://deusyu.app/tags/illy/">illy</category>
      
      
      <comments>https://deusyu.app/posts/capsule-coffee-guide/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>k8s 最小必须命令：一页掌握四步链</title>
      <link>https://deusyu.app/posts/k8s-minimal-kubectl-cheatsheet/</link>
      <guid>https://deusyu.app/posts/k8s-minimal-kubectl-cheatsheet/</guid>
      <pubDate>Tue, 15 Jul 2025 22:43:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>排障现场记不住？收藏这篇就够，或者直接 AI 对话式学习 🤪</p></blockquote><h2 id="0️⃣-TL-DR-一图速查"><a href="#0️⃣-TL-DR-一图速查" class="headerlink" title="0️⃣ TL;DR 一图速查"></a>0️⃣ TL;DR 一图速查</h2><table><thead><tr><th>步骤</th><th>场景</th><th>常用命令</th></tr></thead><tbody><tr><td><strong>观察</strong></td><td>看 Pod 状态 &#x2F; 资源用量</td><td><code>kubectl get po -n &lt;ns&gt;</code><br><code>kubectl top po/nodes</code></td></tr><tr><td><strong>操作</strong></td><td>CRUD &#x2F; 扩缩容</td><td><code>kubectl apply/delete -f</code><br><code>kubectl scale deploy ...</code></td></tr><tr><td><strong>排障</strong></td><td>进盒子 &#x2F; 测连通</td><td><code>kubectl exec -it ...</code><br><code>kubectl port-forward ...</code></td></tr><tr><td><strong>运维</strong></td><td>版本回滚 &#x2F; 集群切换</td><td><code>kubectl rollout undo ...</code><br><code>kubectl config use-context ...</code></td></tr></tbody></table><h2 id="1️⃣-观察｜先搞清楚发生了什么"><a href="#1️⃣-观察｜先搞清楚发生了什么" class="headerlink" title="1️⃣ 观察｜先搞清楚发生了什么"></a><strong>1️⃣ 观察｜先搞清楚发生了什么</strong></h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">kubectl get po -n &lt;ns&gt;          <span class="comment"># 列出 Pod，快速看状态</span></span><br><span class="line">kubectl describe po &lt;name&gt; -n &lt;ns&gt;   <span class="comment"># 详细事件 / 条目</span></span><br><span class="line">kubectl logs &lt;po/rs/deploy&gt; -c &lt;container&gt; -n &lt;ns&gt;   <span class="comment"># 日志（加 -f 实时跟）</span></span><br><span class="line">kubectl top po/nodes            <span class="comment"># CPU / 内存用量（需装 metrics-server）</span></span><br></pre></td></tr></table></figure><h2 id="2️⃣-操作｜对象的-CRUD"><a href="#2️⃣-操作｜对象的-CRUD" class="headerlink" title="2️⃣ 操作｜对象的 CRUD"></a><strong>2️⃣ 操作｜对象的 CRUD</strong></h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">kubectl apply -f &lt;file|<span class="built_in">dir</span>&gt;     <span class="comment"># 创建 / 更新一切（IaC 友好）</span></span><br><span class="line">kubectl delete -f &lt;file|<span class="built_in">dir</span>&gt;    <span class="comment"># 按清单删除</span></span><br><span class="line">kubectl edit &lt;kind&gt; &lt;name&gt; -n &lt;ns&gt;   <span class="comment"># 临时在线热改（会起默认编辑器）</span></span><br><span class="line">kubectl scale deploy &lt;name&gt; --replicas=N -n &lt;ns&gt;   <span class="comment"># 手动扩缩容</span></span><br></pre></td></tr></table></figure><h2 id="3️⃣-排障｜进盒子、测连通"><a href="#3️⃣-排障｜进盒子、测连通" class="headerlink" title="3️⃣ 排障｜进盒子、测连通"></a><strong>3️⃣ 排障｜进盒子、测连通</strong></h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">kubectl <span class="built_in">exec</span> -it &lt;po&gt; -c &lt;container&gt; -- /bin/sh   <span class="comment"># SSH 替代，进容器</span></span><br><span class="line">kubectl port-forward svc/&lt;svc&gt; 8080:80 -n &lt;ns&gt;    <span class="comment"># 本地调试</span></span><br></pre></td></tr></table></figure><h2 id="4️⃣-运维｜版本演进-环境切换"><a href="#4️⃣-运维｜版本演进-环境切换" class="headerlink" title="4️⃣ 运维｜版本演进 &amp; 环境切换"></a><strong>4️⃣ 运维｜版本演进 &amp; 环境切换</strong></h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">kubectl rollout <span class="built_in">history</span>|status|undo deploy &lt;name&gt; -n &lt;ns&gt;   <span class="comment"># 版本管理三件套</span></span><br><span class="line">kubectl config get-contexts / use-context &lt;ctx&gt;             <span class="comment"># 多集群切换</span></span><br></pre></td></tr></table></figure><h2 id="常用通配符备忘"><a href="#常用通配符备忘" class="headerlink" title="常用通配符备忘"></a>常用通配符备忘</h2><ul><li><code>n &lt;ns&gt;</code> 指定命名空间，默认 <code>default</code></li><li><code>o yaml|json</code> 输出可直接回 <code>apply</code></li><li><code>-all-namespaces</code> 横扫全集群</li></ul><p>牢牢记住 “<strong>get → describe&#x2F;logs → exec</strong>” 这条排障黄金链路，再加上 apply &#x2F; delete 两极操作，你就具备了在生产现场<strong>看得见、改得掉、救得了</strong>的核心功力。</p><hr><p>有意思的，用了下 Warp 这个终端，问下它：</p><figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br></pre></td><td class="code"><pre><span class="line">I&#x27;ll tell you about the core kubectl commands that are essential for managing Kubernetes clusters:</span><br><span class="line"></span><br><span class="line">Core kubectl Commands</span><br><span class="line"></span><br><span class="line">Cluster and Context Management</span><br><span class="line">•  kubectl config view - View kubeconfig settings</span><br><span class="line">•  kubectl config current-context - Show current context</span><br><span class="line">•  kubectl config use-context &lt;context&gt; - Switch between contexts</span><br><span class="line">•  kubectl cluster-info - Display cluster information</span><br><span class="line"></span><br><span class="line">Resource Management</span><br><span class="line">•  kubectl get &lt;resource&gt; - List resources (pods, services, deployments, etc.)</span><br><span class="line">•  kubectl describe &lt;resource&gt; &lt;name&gt; - Show detailed information about a resource</span><br><span class="line">•  kubectl create -f &lt;file&gt; - Create resources from a file</span><br><span class="line">•  kubectl apply -f &lt;file&gt; - Apply configuration changes</span><br><span class="line">•  kubectl delete &lt;resource&gt; &lt;name&gt; - Delete a resource</span><br><span class="line"></span><br><span class="line">Pod Operations</span><br><span class="line">•  kubectl get pods - List all pods</span><br><span class="line">•  kubectl logs &lt;pod-name&gt; - View pod logs</span><br><span class="line">•  kubectl exec -it &lt;pod-name&gt; -- &lt;command&gt; - Execute commands in a pod</span><br><span class="line">•  kubectl port-forward &lt;pod-name&gt; &lt;local-port&gt;:&lt;pod-port&gt; - Forward ports</span><br><span class="line"></span><br><span class="line">Deployment Management</span><br><span class="line">•  kubectl create deployment &lt;name&gt; --image=&lt;image&gt; - Create a deployment</span><br><span class="line">•  kubectl scale deployment &lt;name&gt; --replicas=&lt;count&gt; - Scale deployment</span><br><span class="line">•  kubectl rollout status deployment/&lt;name&gt; - Check rollout status</span><br><span class="line">•  kubectl rollout history deployment/&lt;name&gt; - View rollout history</span><br><span class="line"></span><br><span class="line">Service and Networking</span><br><span class="line">•  kubectl expose deployment &lt;name&gt; --port=&lt;port&gt; - Expose deployment as service</span><br><span class="line">•  kubectl get services - List services</span><br><span class="line">•  kubectl get ingress - List ingress resources</span><br><span class="line"></span><br><span class="line">Debugging and Troubleshooting</span><br><span class="line">•  kubectl top nodes - Show node resource usage</span><br><span class="line">•  kubectl top pods - Show pod resource usage</span><br><span class="line">•  kubectl get events - View cluster events</span><br><span class="line">•  kubectl describe node &lt;node-name&gt; - Get node details</span><br><span class="line"></span><br><span class="line">Common Resource Types</span><br><span class="line">•  pods (po) - Running containers</span><br><span class="line">•  services (svc) - Network services</span><br><span class="line">•  deployments (deploy) - Deployment configurations</span><br><span class="line">•  replicasets (rs) - Replica management</span><br><span class="line">•  configmaps (cm) - Configuration data</span><br><span class="line">•  secrets - Sensitive data</span><br><span class="line">•  nodes (no) - Cluster nodes</span><br><span class="line">•  namespaces (ns) - Resource isolation</span><br><span class="line"></span><br><span class="line">Useful Flags</span><br><span class="line">•  -n &lt;namespace&gt; - Specify namespace</span><br><span class="line">•  --all-namespaces - Show resources across all namespaces</span><br><span class="line">•  -o yaml/json - Output in YAML or JSON format</span><br><span class="line">•  --watch - Watch for changes</span><br><span class="line">•  --dry-run=client - Preview changes without applying</span><br><span class="line"></span><br><span class="line">Would you like me to demonstrate any of these commands or help you with specific kubectl operations?</span><br></pre></td></tr></table></figure>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/DevOps/">DevOps</category>
      
      <category domain="https://deusyu.app/categories/DevOps/Kubernetes/">Kubernetes</category>
      
      
      <category domain="https://deusyu.app/tags/Kubernetes/">Kubernetes</category>
      
      <category domain="https://deusyu.app/tags/SRE/">SRE</category>
      
      <category domain="https://deusyu.app/tags/kubectl/">kubectl</category>
      
      <category domain="https://deusyu.app/tags/%E6%8E%92%E9%9A%9C%E6%8C%87%E5%8D%97/">排障指南</category>
      
      <category domain="https://deusyu.app/tags/%E8%BF%90%E7%BB%B4%E6%9C%80%E4%BD%B3%E5%AE%9E%E8%B7%B5/">运维最佳实践</category>
      
      
      <comments>https://deusyu.app/posts/k8s-minimal-kubectl-cheatsheet/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>把信任写进代码：区块链原理·密码学·Web3 全景指南</title>
      <link>https://deusyu.app/posts/blockchain-primer/</link>
      <guid>https://deusyu.app/posts/blockchain-primer/</guid>
      <pubDate>Mon, 14 Jul 2025 20:10:00 GMT</pubDate>
      
      <description>从凯撒密码到 Layer-2，拆解区块链底层密码学、共识与应用生态，
帮你看懂“把信任写进代码”的完整路径。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>本文基于我此前在学校阅读论文，在公司内部分享的「<strong>区块链技术原理与应用</strong>」打磨而来，现更名为「<strong>把信任写进代码：区块链原理·密码学·Web3 全景指南」</strong>，更准确地概括了文章的主题与发展脉络。</p></blockquote><h1 id="Web-3-0-的兴起背景"><a href="#Web-3-0-的兴起背景" class="headerlink" title="Web 3.0 的兴起背景"></a>Web 3.0 的兴起背景</h1><h2 id="Web-1-0-时代"><a href="#Web-1-0-时代" class="headerlink" title="Web 1.0 时代"></a>Web 1.0 时代</h2><p>Web 1.0 时代出现在 2000 年以前，互联网刚刚兴起。在当时，我们上网看到的主要是静态网页，普通人只能获取信息，没有太多的互动空间。放在中国市场上，Web 1.0 时代的典型代表就是新浪、搜狐、网易这样的门户网站。打开门户网站，就像是打开了一张电子报纸。</p><h2 id="Web-2-0-时代"><a href="#Web-2-0-时代" class="headerlink" title="Web 2.0 时代"></a>Web 2.0 时代</h2><p>Web 2.0 时代，在 2000 到 2005 年期间逐渐形成了，一直持续到今天。在 Web 2.0 的时代里，科技公司们崛起了，而且他们是以盈利为目的的。像腾讯、谷歌、苹果、Facebook、亚马逊，他们开始开发软件和服务，来给互联网用户们提供更丰富的互动体验，也鼓励用户创造内容，创造数据，还发展出了电商交易。</p><p>Web 2.0 的这些玩法，为全球经济释放了数万亿美元的价值。但这个过程当中，普通用户的大量行为数据被大公司拿走了，创造的内容也被大公司拿走了，大公司们因此获利，普通用户却没有能够分到这些利益。</p><p>不但没分到利益，而且过程当中，普通用户帮着科技公司们扩张成了一个个超大的生态寡头，让自己变得越来越弱势，越来越没有选择空间。</p><h2 id="Web-3-0-的愿景"><a href="#Web-3-0-的愿景" class="headerlink" title="Web 3.0 的愿景"></a>Web 3.0 的愿景</h2><p>所以，最近这一两年，开始有一种声音说，全世界应该运用区块链的技术思路，搭建去中心化的 Web 3.0 ，从大公司手里把普通人的数字权益夺回来。</p><p>Web 3.0 被认为是互联网的下一个时代。Web 3.0 的推崇者们说，把这一代互联网建立在区块链上，每个人的数字身份、自己的数据和创作的内容，都把所有权用区块链账本记下来。这样一来，因为记账的不仅仅是大公司，而是很多个区块，这些不同区块的信息权限是平等的，大公司哪怕要利用你信息，或者篡改你的信息，它的行为痕迹也会被记录下来；另外，这些数据的记账方式也是加密记账，还不用担心自己的隐私被记账者获取。</p><p>一个大网络平台，比如说 Web 3.0 之下的抖音，如果王富贵发短视频贡献了平台的繁荣，刘秋香也帮忙记账作证了这件事，那王富贵和刘秋香就都算参与了平台的共建共创，应该获得平台的一部分所有权。</p><p>刘秋香的记账行为放在区块链领域，就是经常听说的通过挖矿挖出加密货币。挖矿就是参与区块链记账；挖出加密货币，就是平台发给记账者的利益奖励。</p><h1 id="区块链核心技术原理"><a href="#区块链核心技术原理" class="headerlink" title="区块链核心技术原理"></a>区块链核心技术原理</h1><p>谷歌的前 CEO 施密特博士早在 2014 年就指出：</p><blockquote><p><strong>比特币是一项了不起的加密成就，它能在数字世界中创造出不可复制的内容，这具有巨大的价值。</strong></p></blockquote><h2 id="密码学基础"><a href="#密码学基础" class="headerlink" title="密码学基础"></a>密码学基础</h2><h3 id="非对称加密法：私钥-公钥（1978-年-RSA-专利出现）"><a href="#非对称加密法：私钥-公钥（1978-年-RSA-专利出现）" class="headerlink" title="非对称加密法：私钥+公钥（1978 年 RSA 专利出现）"></a>非对称加密法：私钥+公钥（1978 年 RSA 专利出现）</h3><p><strong>用于加密：</strong> 公钥就像电话号码；私钥只有自己知道。公钥加密，私钥解密，中间没有钥匙传递。</p><ul><li>例如：别人给你发消息，从黄页中找到你的公钥，然后加密传输，私钥只有自己知道，然后解密</li></ul><p><strong>用于签名：</strong> 私钥加密，公钥解密。</p><ul><li>确认签名的逻辑：可以用某人的公钥揭开的信息，当初一定是用此人的私钥加的密，而世界上只有此人知道自己私钥，所以该消息来自此人。</li></ul><h3 id="SHA256-加密法"><a href="#SHA256-加密法" class="headerlink" title="SHA256 加密法"></a>SHA256 加密法</h3><p>Hash 函数，不论原始数据有多长、有多少位，经过 Hash 运算后，输出值的长度都是固定的。一般用来对比两个文件是否相同，早期下载软件，发布者为了防止被篡改和植入，都会附上 md5。</p><p>SHA256，256 表示经过函数运算后的结果，是一个 256 位的 2 进制数字。</p><p>比特币发送支付信息的部分使用了 SHA256 算法，发送一条信息的时候，附上信息的 SHA256 值，之后的任何改动都会被发现。数字签名保证不会重复。</p><blockquote><p>SHA256 之所以能做到这一点，主要源于它的两个关键特性：</p><ol><li><strong>雪崩效应 (Avalanche Effect)</strong>：输入内容哪怕只改动一个标点符号，输出的哈希值也会变得面目全非。这确保了任何微小的篡改都会被立刻发现。</li><li><strong>单向性&#x2F;抗原像性 (Pre-image Resistance)</strong>：从输出的哈希值，几乎不可能反向推算出原始数据。这正是“工作量证明”只能暴力去“猜”而无法“计算”的根本原因。</li></ol></blockquote><h3 id="比特币工作机制"><a href="#比特币工作机制" class="headerlink" title="比特币工作机制"></a>比特币工作机制</h3><p><strong>目标：打造一个谁都不可篡改的账本</strong></p><h2 id="交易流程详解"><a href="#交易流程详解" class="headerlink" title="交易流程详解"></a>交易流程详解</h2><ol><li><p>交易流程：</p><ol><li><p>「原始信息」：我给阿兹克先生 50BTC</p><p>客户端软件对该信息做一次 SHA256 哈希运算得到「原哈希」</p><p><code>9c21f7c9e6ad5bf80e7baf9e73cf89511e9f490e5514b6af0fa376c1fb4b09ca</code></p></li><li><p>客户端软件生成一组 RSA 钥匙对：私钥+公钥</p><p>私钥作用于「原哈希」，得到「密哈希」</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">#私钥</span></span><br><span class="line">-----BEGIN RSA PRIVATE KEY-----</span><br><span class="line">MIICXQIBAAKBgQC1ZjTiDrB+LlW58ol1MIty9z8iFidlpyCJQajaOgjNCr6x9/JK</span><br><span class="line">T7oWesLCUKDuwzxqByLmIyuCDTyJy+h+ZYQuR1t49wqdHgG5/4tvyWHZ2pQm8gBY</span><br><span class="line">0vU83NfXUoezZMg/gExDdVWNnIm5/BKB/UYDXls7AHo+o3dISG7Oj6R1MQIDAQAB</span><br><span class="line">AoGAZpjvMihSxJtaWziFbGXPiW+0IohbMhBrw5YCdaM7VRVNtATj4gnj21EFlLfb</span><br><span class="line">vg9ovSNaJsYflof8BIfy8IJkVn80er7Pvci9WpZf50qJPV9SXchsiVo+DAP2zvgo</span><br><span class="line">NVc8Kme75Bm3YIZuwG8B4iU4vmJMwqP/1gnmWn7ykHK5utECQQDw/qoBiA3ca9En</span><br><span class="line">TA6jNgkLBlpoEbAmJoeUcots1mYtCqc4II+PhsG1pMR+ClYGVyGE8UzYiQmsuxtM</span><br><span class="line">vQMTX8XNAkEAwLGemSr7b1bxB9tkCG91LC88U9NBex610kiPMY0oLPMEuF7IoGUi</span><br><span class="line">NK3sNHEgn59+6F9A3m8YwoUWYiFISETI9QJBAMEViOhJNbHQwHaXvXKOrJgksvKG</span><br><span class="line">mXc3j5EkZQkCjkKwMmIJ1HvOIA2EwdmqNlpGHRkCq+shgJrgHnNRTNGM/lECQAX7</span><br><span class="line">vfP9nK8ZYQSgcFu+skG7+cCUl7zt+DFeZWvheTTkGupqrwoj+cru952tQZkTR8qJ</span><br><span class="line">YqdFhdxMa6SCag8sa50CQQCgRCZWoVGYvUuPzSXFdJgDSGY92sB5u0ocU3oUjXE7</span><br><span class="line">hihoYesOGKUC/XI0Y+0Oepo/zAYeb6elhK2Gyp8Xigmg</span><br><span class="line">-----END RSA PRIVATE KEY-----</span><br><span class="line"><span class="comment">#公钥</span></span><br><span class="line">-----BEGIN PUBLIC KEY-----</span><br><span class="line">MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC1ZjTiDrB+LlW58ol1MIty9z8i</span><br><span class="line">FidlpyCJQajaOgjNCr6x9/JKT7oWesLCUKDuwzxqByLmIyuCDTyJy+h+ZYQuR1t4</span><br><span class="line">9wqdHgG5/4tvyWHZ2pQm8gBY0vU83NfXUoezZMg/gExDdVWNnIm5/BKB/UYDXls7</span><br><span class="line">AHo+o3dISG7Oj6R1MQIDAQAB</span><br><span class="line">-----END PUBLIC KEY-----</span><br><span class="line"><span class="comment">#私钥加密原哈希</span></span><br><span class="line">KxF0ELXnyw7sFMo8sKw5qrV3dR+kNJhV2Q+NK0GvgtfyN8DYk3KPFzQ3f3Uc1ZZgOaxZYNJN+elJ8KuPCjKbuOfQ+P02dk3W9ch7NqhkH8CKXTvrv1edwiAvAHmED+r5vjiv8iUrn60bpe3jM6wF5MikXbJaNFsaoqQO1xmt1M8=</span><br></pre></td></tr></table></figure></li><li><p>广播 3 条内容：「原始信息」+ 公钥 + 「密哈希」到网络中</p></li></ol></li></ol><hr><ol><li><p>BTC 接受者客户端软件需要处理的任务(矿工）</p><ol><li>广播的消息中<ol><li>「原始信息」→ SHA256 哈希 → <code>原哈希</code></li><li>「密哈希」→ 公钥解密 → <code>解密哈希</code></li><li>公钥</li></ol></li></ol><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">#接受到的密钥</span></span><br><span class="line">KxF0ELXnyw7sFMo8sKw5qrV3dR+kNJhV2Q+NK0GvgtfyN8DYk3KPFzQ3f3Uc1ZZgOaxZYNJN+elJ8KuPCjKbuOfQ+P02dk3W9ch7NqhkH8CKXTvrv1edwiAvAHmED+r5vjiv8iUrn60bpe3jM6wF5MikXbJaNFsaoqQO1xmt1M8=</span><br><span class="line"><span class="comment">#公钥解密</span></span><br><span class="line">9c21f7c9e6ad5bf80e7baf9e73cf89511e9f490e5514b6af0fa376c1fb4b09ca</span><br></pre></td></tr></table></figure><p>如果<code>原哈希</code> &#x3D; <code>解密哈希</code> 说明交易信息没有改动，交易内容是发起方签名确认的。</p></li></ol><p>上述矿工验证的过程可以总结为：</p><ol><li>使用 SHA256 算一遍原始信息得到原哈希</li><li>使用公钥解密密哈希得到解密哈希</li><li>对比原哈希和解密哈希是否相同</li></ol><p>如果相同，说明两件事得到了验证：</p><ul><li>交易内容没有任何改动</li><li>交易内容是发起方签名确认的</li></ul><p>矿工要这样验证 1000 条左右的交易，按照特定的格式打包，数据包称为区块，这个区块就有可能成为主链最新的区块被挂在尾部。</p><h2 id="一致性问题的解决"><a href="#一致性问题的解决" class="headerlink" title="一致性问题的解决"></a>一致性问题的解决</h2><p>物理位置不同，搜罗到的交易信息也不同，谁有资格将自己的区块放在主链的末尾呢？</p><p>多人做类似的任务，以谁提交的块（Block）为准？</p><p>答案：需要一个额外的工作——<strong>工作量证明</strong></p><h2 id="工作量证明机制"><a href="#工作量证明机制" class="headerlink" title="工作量证明机制"></a>工作量证明机制</h2><p>每个矿工都要把自己打包好的新区块看作一个字符串，然后在这个字符串末尾加上一个随机数，整个字符串变成一个更大的随机数，然后对这个随机数做 SHA256 运算，谁先算出结果前 72 位为 0 的成为幸运矿工。</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">0000000000000000000000000000000000000000000000000000000000000000</span><br><span class="line">00000000100101011000010110010011011001101000011100110101011111011100</span><br><span class="line">00010110011011101111111111010100000001010011011010100110101111000101</span><br><span class="line">100011001101011100000010010001101000110011010101010100</span><br></pre></td></tr></table></figure><p><strong>有多幸运？</strong> 全世界的比特币网络算力加在一起，也要 10 分钟才能诞生这样一个幸运者。</p><h2 id="奖励机制"><a href="#奖励机制" class="headerlink" title="奖励机制"></a>奖励机制</h2><p><img src="https://r2.deusyu.app/afb44a9d-e0bb-4ae2-9a38-521db7a3a9c8.png"></p><p>矿工获得的奖励包括：</p><ul><li>系统奖励的新比特币</li><li>交易手续费提成</li></ul><hr><ol><li><strong>区块奖励（Block Reward）</strong><ul><li><strong>机制</strong>: 初始区块奖励为 50 BTC，每产生 210,000 个区块（约 4 年）后奖励减半。这是一个 <strong>等比数列</strong>，公比为 0.5。</li><li><strong>序列</strong>: 50 → 25 → 12.5 → 6.25 BTC …</li><li><strong>总供应量</strong>: 所有区块奖励的总和通过等比数列求和，其极限为 2100 万 BTC。</li></ul></li><li><strong>交易费（Transaction Fees）</strong><ul><li><strong>费率</strong>: 交易费通常按 <code>聪/字节</code>（sats&#x2F;vByte）计算，没有固定的最小值，由市场供需决定。图片中 <code>0.00001 BTC/KB</code> 是一个历史上的参考值。</li><li><strong>区块总费用</strong>: 一个区块内包含的所有交易的费用总和，可以从接近于 0 到数个 BTC 不等（在网络极度拥堵时）。<code>0.04 - 4 BTC</code> 是一个比较宽泛的历史波动范围。</li><li><strong>平均值</strong>: <code>0.2 BTC</code> 同样是一个历史快照式的平均值，实际数值会持续波动。</li></ul></li><li><strong>全网算力（Network Hash Rate）</strong><ul><li><strong>定义</strong>: 指比特币网络中所有矿工计算能力的总和，单位是 <code>哈希/秒</code> (H&#x2F;s)。</li><li><strong>增长示例</strong>:<ul><li>~50 MH&#x2F;s (2009 年) <em>(50 万次&#x2F;秒)</em></li><li>~5 TH&#x2F;s (2013 年) <em>(5 万亿次&#x2F;秒)</em></li><li>~100 EH&#x2F;s (2019 年) <em>(10000 万万亿次&#x2F;秒)</em></li></ul></li></ul></li><li><strong>出块机制（Block Generation）</strong><ul><li><strong>目标出块时间</strong>: 全网平均 <strong>约 10 分钟</strong> 产出一个新区块。</li><li><strong>难度调整（Difficulty Adjustment）</strong>:<ul><li><strong>周期</strong>: 每 2016 个区块（约 14 天）进行一次调整。</li><li><strong>机制</strong>: 根据过去 2016 个区块的实际平均出块时间，自动调整挖矿难度，使其重新趋向 10 分钟的目标。如果出块太快，就增加难度；如果太慢，就降低难度。</li></ul></li></ul></li></ol><h2 id="共识如何达成"><a href="#共识如何达成" class="headerlink" title="共识如何达成"></a>共识如何达成</h2><blockquote><p>同时收到两个区块，怎么办？</p></blockquote><p>在一个没有中心服务器、人人平等的去中心化网络里，如何保证所有人看到的都是同一本账本？这是一个根本性的难题。尤其当两个矿工在世界不同角落，几乎同时宣布他们找到了下一个区块时，历史就出现了“分叉”。</p><p>网络中一部分人先听到了矿工 A 的宣告，另一部分人先听到了矿工 B 的。这时，账本上就有了两个都合法的、平行的“版本 100”。那么，网络最终该听谁的？</p><p>答案藏在一个常被提及，却又常被误解的原则里。</p><h3 id="不止于“最长”，而是“最重”"><a href="#不止于“最长”，而是“最重”" class="headerlink" title="不止于“最长”，而是“最重”"></a>不止于“最长”，而是“最重”</h3><p>你可能听过无数次“最长链原则”（Longest Chain Rule）。这个说法很直观，但在技术上，它是一个极其精准的简化。比特币共识的真正核心是“<strong>工作量最大链</strong>”或“<strong>最重链</strong>”原则（Heaviest&#x2F;Most-Work Chain Rule）。</p><p>为什么这个区别至关重要？</p><p>因为它揭示了比特币信任的根基：<strong>信任的不是长度，而是长度背后所累积的、不可伪造的真实世界能源消耗（即工作量证明）</strong>。在绝大多数情况下，最长的链自然也是最重的，但“重量”才是那个不可动摇的物理事实。</p><h3 id="一场由“自私”驱动的共识投票"><a href="#一场由“自私”驱动的共识投票" class="headerlink" title="一场由“自私”驱动的共识投票"></a>一场由“自私”驱动的共识投票</h3><p>让我们用一张图来模拟这个过程。当分叉出现后，共识并非来自某个权威的指令，而是从所有矿工的“自私”选择中涌现出来的。</p><p><img src="https://r2.deusyu.app/d3179025-4aa0-483c-85ef-c71990c05de2.png"></p><p>这个过程就像一场去中心化的投票：</p><ol><li><strong>分叉出现</strong>：网络暂时陷入短暂的“薛定谔状态”，存在两条都可能正确的历史。</li><li><strong>破局者登场</strong>：下一个成功挖矿的矿工（矿工 C ）成为关键的“投票人”。他的选择将决定历史的走向。</li><li><strong>理性的投票</strong>：矿工 C 不会随机选择。他会选择在他看来最可能被大家接受的那条链（通常是他最先收到的那条），然后把自己的新区块链接上去。这么做完全是出于自利——确保自己辛辛苦苦挖出的区块能被主网承认，从而拿到区块奖励。</li><li><strong>赢家通吃</strong>：当矿工 C 广播了更长（更重）的新链条后，所有理性的节点都会发现，继续在短链上浪费算力是毫无意义的。于是，大家会自发地抛弃那条较短的链，将算力切换到这条新的“胜利链”上。</li></ol><p>最终，那个被抛弃的区块 100B，就成了一个无人问津的“孤块”。它曾经合法，但最终在历史的竞争中落败。</p><h3 id="从混沌中涌现的秩序"><a href="#从混沌中涌现的秩序" class="headerlink" title="从混沌中涌现的秩序"></a>从混沌中涌现的秩序</h3><p>比特币的共识机制，是它最令人着迷的设计之一。它不依赖任何中心化的协调者，而是通过一个极其简单的规则（承认工作量最大的链），将无数个追求自身利益最大化的独立矿工，拧成了一股维护整个网络安全的强大力量。</p><p><strong>信任，并非源于某个权威的许诺，而是源于对物理定律（能源消耗）和人（理性自利）的深刻洞察。</strong> 这就是从混沌中涌现出的、无需许可的秩序。</p><h2 id="区块链不可篡改的原理"><a href="#区块链不可篡改的原理" class="headerlink" title="区块链不可篡改的原理"></a>区块链不可篡改的原理</h2><blockquote><p>当前区块，包含了所有比特币交易记录的特征</p></blockquote><p>在数字世界，篡改数据轻而易举。比特币如何做到“不可篡改”？答案并非密码学魔法，而是一个将篡改成本指数级放大的精妙经济设计。</p><h3 id="核心机制：环环相扣的“数字指纹”"><a href="#核心机制：环环相扣的“数字指纹”" class="headerlink" title="核心机制：环环相扣的“数字指纹”"></a>核心机制：环环相扣的“数字指纹”</h3><p>比特币的不可篡改性来自两个维度的锁定：</p><ol><li><strong>区块内部</strong>：所有交易通过“默克尔树”算法，被压缩成一个唯一的“数字指纹”（默克尔根）。任何一笔交易的微小改动，都会导致指纹面目全非。</li><li><strong>区块之间</strong>：每个新区块的头部，都必须包含上一个区块的“指纹”。这形成了一条首尾相连、层层加密的链条。任何中间环节的改动，都会导致整条链的断裂。</li></ol><p>下图清晰地展示了这种双重锁定结构。</p><p><img src="https://r2.deusyu.app/c328bfaf-1d31-49cb-8abe-daba6898b1c4.png"></p><h3 id="篡改的代价：一场不可能完成的赛跑"><a href="#篡改的代价：一场不可能完成的赛跑" class="headerlink" title="篡改的代价：一场不可能完成的赛跑"></a>篡改的代价：一场不可能完成的赛跑</h3><p>试图修改一个历史区块，会触发连锁反应：</p><ul><li><strong>内部指纹改变</strong> -&gt; <strong>当前区块哈希失效</strong> -&gt; <strong>后续所有区块的链接全部断裂</strong>。</li></ul><p>攻击者若想让谎言被承认，就必须从被修改的区块开始，重新计算其后所有区块的工作量证明，并最终追上、超过诚实网络已经建立的链条。这需要压倒性的算力（超过 51%）和天文数字般的能源成本，在经济上是完全不划算的。</p><h3 id="不可篡改的经济学本质"><a href="#不可篡改的经济学本质" class="headerlink" title="不可篡改的经济学本质"></a>不可篡改的经济学本质</h3><p>比特币的不可篡改性，并非密码学上的绝对保证，而是经济学上的威慑。它将篡改的成本与整个网络已付出的巨大能源成本绑定。<strong>想推翻历史，就必须付出比创造历史更大的代价。</strong></p><p>这就是比特币信任的基石：让说谎的成本，高到无人可以承受。</p><h1 id="以太坊的技术改进"><a href="#以太坊的技术改进" class="headerlink" title="以太坊的技术改进"></a>以太坊的技术改进</h1><h3 id="从数字黄金到世界计算机：以太坊对比特币的范式转移"><a href="#从数字黄金到世界计算机：以太坊对比特币的范式转移" class="headerlink" title="从数字黄金到世界计算机：以太坊对比特币的范式转移"></a>从数字黄金到世界计算机：以太坊对比特币的范式转移</h3><p>比特币开创了一个时代，它向世界证明了去中心化信任的可行性。然而，以太坊则问出了一个更进一步的问题：除了记账，我们还能用这个不可篡改的账本做什么？</p><p>答案是：<strong>万物</strong>。</p><p>以太坊在比特币的基础上进行的并非简单的修补，而是一次彻底的“范式转移”。其核心，源于一个根本性的模型改变。</p><h3 id="从“现金账本”到“状态机”"><a href="#从“现金账本”到“状态机”" class="headerlink" title="从“现金账本”到“状态机”"></a>从“现金账本”到“状态机”</h3><p>比特币采用的是 <strong>UTXO（未花费的交易输出）模型</strong>。你可以把它理解为一个处理实体钞票的系统：每一笔“钱”都有独立的来源和历史，花出去后就变成了新的、独立的“找零”。这个模型极其适合做一件事——安全、可靠地转移价值。</p><p>而以太坊采用的是 <strong>账户模型（Account Model）</strong>。这更像我们熟悉的银行账户系统。它不关心每一分钱的“前世今生”，只关心每个账户当前的“余额”。但关键在于，以太坊的账户不仅能存钱，还能存储和执行代码。</p><p>这个从“现金账本”到“状态机”的转变，就是以太坊所有创新的原点。它不再仅仅记录“谁付给谁多少钱”，而是记录整个网络在任何一个时间点的世界状态”（World State）。以太坊区块头里多出来的那个 <code>stateRoot</code>，正是这个“世界状态”的数字指纹，这是它与比特币最根本的区别。</p><h3 id="数据结构深度剖析：区块头的“身份证”"><a href="#数据结构深度剖析：区块头的“身份证”" class="headerlink" title="数据结构深度剖析：区块头的“身份证”"></a>数据结构深度剖析：区块头的“身份证”</h3><p>要理解两大公链的根本差异，没有比解剖它们的区块头（Block Header）更直接的方式了。区块头是区块的“身份证”，它体积小、信息密集，是整个区块链安全与效率的基石。</p><p><strong>比特币区块头：简洁的价值承诺 (80 字节)</strong></p><p>比特币的头部设计围绕一个核心目标：<strong>安全、高效地验证支付</strong>。它的每一寸空间都服务于此，简洁而专注。</p><table><thead><tr><th>字段（顺序）</th><th>大小</th><th>功能</th></tr></thead><tbody><tr><td>Version</td><td>4 B</td><td>指示共识&#x2F;脚本升级版本</td></tr><tr><td>Previous Block Hash</td><td>32 B</td><td>父区块头哈希，形成链</td></tr><tr><td>Merkle Root</td><td>32 B</td><td>本区块全部交易的默克尔树根，锁定交易内容</td></tr><tr><td>Time</td><td>4 B</td><td>区块打包的 UNIX 时间戳</td></tr><tr><td>nBits</td><td>4 B</td><td>难度目标的压缩表示</td></tr><tr><td>Nonce</td><td>4 B</td><td>矿工反复调整以寻找符合难度的哈希</td></tr></tbody></table><ul><li><strong>特点</strong>: 总长固定 80 字节，极其轻量。矿工只需遍历 Nonce（或重排交易以改变 Merkle Root），对这 80 字节的数据进行 SHA-256d 计算，直至找到满足难度要求的结果。</li></ul><p><strong>以太坊区块头：图灵完备的状态承诺 (≈ 508 字节)</strong></p><p>以太坊的头部要复杂得多，因为它承诺的不仅仅是交易，更是整个“世界计算机”在某个瞬间的<strong>完整状态</strong>。</p><table><thead><tr><th>字段分类</th><th>关键字段</th><th>作用概述</th></tr></thead><tbody><tr><td>链结构</td><td>Parent Hash, Uncles Hash, Number</td><td>连接父区块；记录叔块集合；当前高度</td></tr><tr><td><strong>世界状态</strong></td><td><strong>State Root</strong></td><td><strong>账户&#x2F;合约全局状态的 Merkle-Patricia Trie 根</strong></td></tr><tr><td>交易承诺</td><td>Transactions Root</td><td>本区块交易列表的 Trie 根</td></tr><tr><td>收据承诺</td><td>Receipts Root</td><td>每笔交易回执 Trie 根</td></tr><tr><td>日志索引</td><td>Logs Bloom</td><td>2048 位 Bloom filter，支持事件快速检索</td></tr><tr><td>共识信息</td><td>Difficulty, Nonce, MixHash</td><td>PoW 难度与挖矿验证（PoS 转型后部分字段用途改变）</td></tr><tr><td>Gas 计量</td><td>Gas Limit, Gas Used</td><td>本块 Gas 上限与已消耗值</td></tr><tr><td>其他</td><td>Timestamp, ExtraData, BaseFee</td><td>出块时间、矿工自定义数据、EIP-1559 基础费</td></tr></tbody></table><ul><li><strong>特点</strong>: 核心是<strong>三棵 Trie 树的树根</strong>（状态、交易、收据）都被写入头部。这允许轻客户端仅下载头部，就能验证账户余额、合约状态等复杂信息，而不仅仅是支付记录。</li></ul><h3 id="关键的技术演进"><a href="#关键的技术演进" class="headerlink" title="关键的技术演进"></a>关键的技术演进</h3><p>基于“世界计算机”这个新范式，以太坊引入了一系列关键改进：</p><ol><li><strong>智能合约</strong>：这是以太坊的灵魂。它允许开发者在区块链上部署“如果…就…”的自动化程序。</li><li><strong>Gas 经济模型</strong>：为计算和存储付费的精妙机制，有效防止网络滥用，并为资源消耗公平定价。</li><li><strong>共识机制的演进</strong>：从能源密集的工作量证明（PoW），转向资本高效的权益证明（PoS）。</li><li><strong>性能提升</strong>：出块时间缩短至约 15 秒，每秒能处理更多交易（约 25 笔），为应用的可用性提供了基础。</li></ol><h3 id="一个案例：The-DAO-事件的深刻启示"><a href="#一个案例：The-DAO-事件的深刻启示" class="headerlink" title="一个案例：The DAO 事件的深刻启示"></a>一个案例：The DAO 事件的深刻启示</h3><p>理论再完美，也需要现实的检验。2016 年的“The DAO”事件，正是理解以太坊哲学与挑战的最佳案例。</p><ul><li><strong>背景</strong>：The DAO 是一个明星级的去中心化投资基金合约，它成功募集了当时价值 1.5 亿美元的以太币。然而，它的代码中存在一个致命漏洞，允许攻击者重复提现。</li><li><strong>事件</strong>：2016 年 6 月 17 日，黑客利用该漏洞，成功盗走了当时以太坊总量 5%的资金。由于区块链的不可篡改性，没有人能单方面冻结这笔“合法”的恶意交易。</li><li><strong>抉择</strong>：在黑客将资金彻底变现前的 28 天窗口期内，社区展开了激烈的辩论。一边是坚守“代码即法律”（Code is Law）原则的少数派，他们认为即使是漏洞，也是规则的一部分，不应干预；另一边是占多数（约 90%）的 pragmatic a 派，他们认为社区共识应高于代码，必须通过一次“硬分叉”来回滚交易，挽回损失。</li><li><strong>结果</strong>：最终，多数人的意志取得了胜利。以太坊执行了硬分叉，诞生了我们今天熟知的以太坊（ETH），而被盗的交易记录被抹去。而那些坚持“代码即法律”的少数社区成员，则选择留在了旧的、未回滚的链上，这条链就是今天的以太坊经典（ETC）。</li></ul><p><strong>The DAO 事件的 Alpha Moment</strong>：它用一次惨痛的经历，向世界揭示了去中心化治理的终极困境——当不可篡改的代码与人类的公平正义感发生冲突时，我们该相信什么？ETH 和 ETC 的分道扬镳，正是对这个问题两种不同答案的永久见证。</p><h3 id="从单一功能到无限可能"><a href="#从单一功能到无限可能" class="headerlink" title="从单一功能到无限可能"></a>从单一功能到无限可能</h3><p>比特币是一项伟大的发明，它创造了一个完美的、去中心化的价值存储和转移工具。它的区块头小而精，只为交易承诺。</p><p>而以太坊则站在比特币的肩膀上，将区块链从一个“单一功能的计算器”变成了一个“通用目的的操作系统”。它为支持智能合约，引入了三棵 Trie 根与更多元数据，因此头部更大、更复杂。The DAO 事件更让我们看到，它所开启的，不仅是技术的无限可能，更是对未来社会组织形式与治理哲学的深刻探索。</p><h1 id="区块链的现实与未来：从优劣、应用到终局展望"><a href="#区块链的现实与未来：从优劣、应用到终局展望" class="headerlink" title="区块链的现实与未来：从优劣、应用到终局展望"></a>区块链的现实与未来：从优劣、应用到终局展望</h1><p>经过对共识、分叉、数据结构等一系列“微观”层面的探索，我们现在可以退后一步，从更宏观的视角来审视区块链这项技术。它究竟带来了什么？它的“阿喀琉斯之踵”又在哪里？</p><h2 id="重新审视“优劣”——没有银弹，只有取舍"><a href="#重新审视“优劣”——没有银弹，只有取舍" class="headerlink" title="重新审视“优劣”——没有银弹，只有取舍"></a>重新审视“优劣”——没有银弹，只有取舍</h2><p>我们经常听到对区块链的批评，比如“交易速度慢”、“耗能严重”。这些都是事实。但一个更深刻的洞见是：<strong>这些所谓的“劣势”，并非是设计上的“缺陷”，而是为了实现其核心优势而必须付出的、经过深思熟虑的“代价”。</strong></p><p>这背后是区块链的“不可能三角”困境：你无法同时拥有完美的<strong>去中心化</strong>、极致的<strong>安全性</strong>和无限的<strong>可扩展性</strong>。</p><ul><li><strong>比特币的取舍</strong>：它将去中心化和安全性推向了极致。为了让全世界成千上万的节点都能同步和验证，它必须牺牲速度（约 10 分钟出块，每秒 7 笔交易）。为了用物理世界的能源消耗来保证不可篡改，它必须接受高能耗。它不是慢，而是<strong>刻意地稳健</strong>。</li><li><strong>其他公链的尝试</strong>：许多后来的区块链项目，都是在这个“不可能三角”中寻找不同的平衡点。有的牺牲一部分去中心化，换取更高的交易速度（TPS）；有的探索新的共识机制，试图解决能耗问题。</li></ul><p>所以，当我们分析其优劣时，不如看作是一次设计哲学的审视：</p><table><thead><tr><th>优势 (得到什么)</th><th>代价 (放弃什么)</th></tr></thead><tbody><tr><td><strong>去中心化</strong>：无单点故障，抗审查</td><td><strong>效率低下</strong>：全网共识速度慢，存储冗余</td></tr><tr><td><strong>不可篡改</strong>：数据安全，历史可信</td><td><strong>高能耗</strong>：PoW 机制需要巨大的能源成本</td></tr><tr><td><strong>公开透明</strong>：所有交易可追溯</td><td><strong>隐私挑战</strong>：所有数据公开，需要额外技术保护隐私</td></tr><tr><td><strong>全球化</strong>：无国界，无需许可</td><td><strong>扩展性有限</strong>：主链性能瓶颈，难以支撑大规模应用</td></tr></tbody></table><h2 id="从信任到应用：区块链正在重塑什么？"><a href="#从信任到应用：区块链正在重塑什么？" class="headerlink" title="从信任到应用：区块链正在重塑什么？"></a>从信任到应用：区块链正在重塑什么？</h2><p>尽管有诸多限制，但区块链“无需信任中介”的核心价值，正像一把钥匙，开启了许多传统行业难以想象的大门。</p><h3 id="现有应用案例"><a href="#现有应用案例" class="headerlink" title="现有应用案例"></a>现有应用案例</h3><ul><li><strong>数字货币</strong>：比特币、以太坊等，实现了人类历史上第一次大规模的、去中心化的价值传输。</li><li><strong>供应链金融与溯源</strong>：利用其不可篡改的特性，记录商品从生产到消费的全过程，解决假冒伪劣和信息不透明问题。</li><li><strong>数字身份认证</strong>：构建去中心化身份（DID），让用户第一次能完全掌控自己的数字身份，而不是将其托管给科技巨头。</li><li><strong>支付宝的“相互宝”</strong>：这是一个绝佳的圈外案例。它利用区块链技术，将互助保险的理赔规则写入智能合约，实现了规则的公开透明和自动执行，极大地降低了信任成本。</li></ul><h3 id="未来发展方向"><a href="#未来发展方向" class="headerlink" title="未来发展方向"></a>未来发展方向</h3><ul><li><strong>DeFi（去中心化金融）</strong>：试图用代码和社区，重构银行、借贷、交易等所有传统金融服务，创造一个更开放、高效的金融体系。</li><li><strong>NFT（非同质化代币）</strong>：为数字世界里的画作、音乐、游戏道具等独一无二的资产，提供了可靠的“产权证明”。</li><li><strong>Web3 应用</strong>：构建一个全新的、用户拥有自己数据主权的互联网。你的每一次点击、每一次创作，其价值都归你所有，而不是被平台无偿占有。</li><li><strong>央行数字货币（CBDC）</strong>：国家层面的数字化法币，虽然它可能是中心化的，但也借鉴了区块链的部分技术理念。</li></ul><h2 id="历史的回响与未来的序曲"><a href="#历史的回响与未来的序曲" class="headerlink" title="历史的回响与未来的序曲"></a>历史的回响与未来的序曲</h2><p>这一切并非凭空而来。</p><ol><li><strong>思想的黎明 (1990s)</strong>：一群被称为“赛博朋克”（Cyberpunks）的理想主义者，在早期的互联网邮件组中，就已经开始构想一个用密码学来保护个人自由和隐私的数字世界。</li><li><strong>比特币时代 (2009-)</strong>：中本聪将这些思想，用一个极其务实和克制的工程设计变成了现实。他没有试图解决所有问题，只专注于“点对点的电子现金系统”，并成功了。</li><li><strong>以太坊时代 (2015-)</strong>：以太坊则推开了另一扇大门，它引入的智能合约，让区块链从一个“计算器”进化成了一台“计算机”，应用场景被无限拓宽。</li><li><strong>多链时代 (至今)</strong>：各种公链百花齐放，在性能、隐私、特定应用场景上不断创新，整个行业进入了“战国时代”。</li></ol><h2 id="结语：一场关于信任的伟大实验"><a href="#结语：一场关于信任的伟大实验" class="headerlink" title="结语：一场关于信任的伟大实验"></a>结语：一场关于信任的伟大实验</h2><p>我们从比特币的创世区块出发，一路探讨了共识、分叉、数据结构，再到以太坊的范式转移，最后审视了整个行业的现状与未来。</p><p>回到底层，区块链技术，本质上是一场关于<strong>信任</strong>的伟大社会实验。它试图回答一个根本性的问题：<strong>我们能否用数学和代码，构建一个比依赖人类或机构更可靠的信任体系？</strong></p><p>虽然它今天还面临着性能、能耗、监管等诸多挑战，看起来更像一个“极客的玩具”。但它所代表的那种“让普通用户重新掌握自己数字权益”的 Web 3.0 愿景，正在重新定义互联网的未来。</p><p>这不仅是一次技术浪潮，更是一次权利的再分配。而我们，正有幸身处这场变革的序章之中。</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li>《吴军·硅谷来信 3》 和卓克《40 分钟搞懂区块链》</li><li><a href="https://bitcoin.org/bitcoin.pdf"><em>Bitcoin: A Peer-to-Peer Electronic Cash System</em></a></li><li><a href="https://ethereum.org/en/whitepaper/"><em>Ethereum Whitepaper — A Next-Generation Smart Contract &amp; Decentralized Application Platform</em></a></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%8C%BA%E5%9D%97%E9%93%BE/">区块链</category>
      
      <category domain="https://deusyu.app/categories/%E5%8C%BA%E5%9D%97%E9%93%BE/%E5%AF%86%E7%A0%81%E5%AD%A6/">密码学</category>
      
      <category domain="https://deusyu.app/categories/%E5%8C%BA%E5%9D%97%E9%93%BE/%E5%AF%86%E7%A0%81%E5%AD%A6/Web3/">Web3</category>
      
      <category domain="https://deusyu.app/categories/%E5%8C%BA%E5%9D%97%E9%93%BE/%E5%AF%86%E7%A0%81%E5%AD%A6/Web3/%E6%8A%80%E6%9C%AF%E6%A0%88/">技术栈</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%AF%86%E7%A0%81%E5%AD%A6/">密码学</category>
      
      <category domain="https://deusyu.app/tags/%E6%AF%94%E7%89%B9%E5%B8%81/">比特币</category>
      
      <category domain="https://deusyu.app/tags/%E4%BB%A5%E5%A4%AA%E5%9D%8A/">以太坊</category>
      
      <category domain="https://deusyu.app/tags/%E6%99%BA%E8%83%BD%E5%90%88%E7%BA%A6/">智能合约</category>
      
      <category domain="https://deusyu.app/tags/%E5%85%B1%E8%AF%86%E6%9C%BA%E5%88%B6/">共识机制</category>
      
      <category domain="https://deusyu.app/tags/PoW/">PoW</category>
      
      <category domain="https://deusyu.app/tags/PoS/">PoS</category>
      
      <category domain="https://deusyu.app/tags/SHA-256/">SHA-256</category>
      
      <category domain="https://deusyu.app/tags/RSA/">RSA</category>
      
      <category domain="https://deusyu.app/tags/DeFi/">DeFi</category>
      
      <category domain="https://deusyu.app/tags/NFT/">NFT</category>
      
      
      <comments>https://deusyu.app/posts/blockchain-primer/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>密码学简史：从古希腊密报到量子加密的千年博弈</title>
      <link>https://deusyu.app/posts/history-of-cryptography/</link>
      <guid>https://deusyu.app/posts/history-of-cryptography/</guid>
      <pubDate>Mon, 14 Jul 2025 18:11:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>本文基于我此前在公司内部分享的「密码学笔记」打磨而来，现更名为「密码学简史」，更准确地概括了文章的主题与发展脉络。<br><strong>复杂的事物不存在终极的解决方案，密码学尤其如此。</strong></p></blockquote><h2 id="引言：为什么我们需要加密？"><a href="#引言：为什么我们需要加密？" class="headerlink" title="引言：为什么我们需要加密？"></a>引言：为什么我们需要加密？</h2><p>在数字化时代，我们每天都在与密码学打交道：网上银行转账、微信聊天、HTTPS 网站访问…这些看似平常的操作背后，都有着复杂的加密算法在保护我们的隐私和安全。</p><p>但密码学的历史远比互联网更加悠久。从古希腊的蜡板密报到现代的量子加密，这是一场跨越数千年的智慧较量，是加密者与破译者之间永无止境的博弈。</p><h2 id="密码学发展的时代脉络"><a href="#密码学发展的时代脉络" class="headerlink" title="密码学发展的时代脉络"></a>密码学发展的时代脉络</h2><p>密码学的发展可以划分为<strong>两个时代，七个世代</strong>：</p><p><strong>古典加密时代</strong>（手工 → 机械电子）</p><ul><li>隐藏法</li><li>移位法和替代法</li><li>维吉尼亚加密法</li><li>恩尼格玛机</li></ul><p><strong>现代加密时代</strong>（计算机加密）</p><ul><li>DES 加密系统</li><li>RSA 非对称加密</li><li>量子加密</li></ul><p>这个演进过程的分水岭是<strong>计算机的出现</strong>，它彻底改变了密码学的游戏规则。</p><pre class="mermaid">flowchart LR    subgraph 古典加密时代        subgraph 手工加密阶段            A[隐藏法] --> B[移位法和替代法] --> C[维吉尼亚加密法]        end        subgraph 机械电子加密阶段            D[恩尼格玛机]        end        C --> D    end    subgraph 现代加密时代        D --> E[DES加密系统] --> F[RSA加密] --> G[量子加密]    end</pre><hr><h2 id="第一世代：隐藏法（Steganography）"><a href="#第一世代：隐藏法（Steganography）" class="headerlink" title="第一世代：隐藏法（Steganography）"></a>第一世代：隐藏法（Steganography）</h2><h3 id="原理与特点"><a href="#原理与特点" class="headerlink" title="原理与特点"></a>原理与特点</h3><p>隐藏法，顾名思义，就是把信息藏起来。这是最原始的信息保护方式，其核心思想是<strong>让敌人根本发现不了秘密信息的存在</strong>。</p><p>破解方法也相对简单：仔细搜寻，这基本上是纯体力活。</p><h3 id="历史上的经典案例"><a href="#历史上的经典案例" class="headerlink" title="历史上的经典案例"></a>历史上的经典案例</h3><p><strong>🏛️ 拯救古希腊文明的蜡板密报</strong></p><p>史上第一个隐藏法的记载来自古希腊历史学家希罗多德。这个故事不仅展现了早期密码学的智慧，更改变了世界历史的走向：</p><ul><li>当时，强大的波斯帝国计划入侵希腊，斯巴达曾经的老国王的之后，偷偷把这个消息写在木板上又图了一层腊，这片木板成功躲过沿路卫兵检查，到达斯巴达。收信人刮去表面的那层蜡，就发现了下面的密报。得知波斯人的入侵计划后，希腊开始备战。公元前 480 年，波斯舰队以为对方毫无防备，结果一天之内 200 多艘战舰被击沉，五年多的准备毁于一旦。<blockquote><p>💡 历史意义：这次密报不仅挽救了雅典和斯巴达，某种程度上也拯救了现代文明。现代文明的两大思想根源——古希腊哲学和后来的基督教思想——得以延续至今。</p></blockquote></li></ul><h3 id="其他创意隐藏法"><a href="#其他创意隐藏法" class="headerlink" title="其他创意隐藏法"></a>其他创意隐藏法</h3><p>古人的想象力在信息隐藏方面展现得淋漓尽致：</p><ul><li><strong>头皮密信</strong>：将送信人的头发剃光，在头皮上写下秘密信息，等头发长出来后派遣出发，到达目的地再剃光头发读取信息</li><li><strong>体内藏信</strong>：将消息写在丝绸上，用蜡包成小球让人吞下，到达目的地后再取出</li><li><strong>隐形墨水</strong>：使用柠檬汁、牛奶等在纸上书写，加热后才能显现文字</li></ul><h3 id="现代隐藏法"><a href="#现代隐藏法" class="headerlink" title="现代隐藏法"></a>现代隐藏法</h3><p>在数字时代，隐藏法演化为<strong>数字隐写术：</strong></p><ul><li>在图片的像素中隐藏文字信息</li><li>在音频文件的频谱中嵌入数据</li><li>利用文本格式（如空格、换行）传递信息</li></ul><hr><h2 id="第二世代：移位法和替换法"><a href="#第二世代：移位法和替换法" class="headerlink" title="第二世代：移位法和替换法"></a>第二世代：移位法和替换法</h2><h3 id="历史背景"><a href="#历史背景" class="headerlink" title="历史背景"></a>历史背景</h3><p>这类加密方法大约在<strong>5000 年前</strong>就已出现，并统治密码学领域长达 4000 年之久，直到 9 世纪才被阿拉伯数学家发明的频率分析法破解。值得注意的是，欧洲直到 16 世纪才掌握这种破解方法，这从侧面反映了阿拉伯文明在数学和密码学领域的辉煌成就。</p><h3 id="移位法（凯撒密码）"><a href="#移位法（凯撒密码）" class="headerlink" title="移位法（凯撒密码）"></a>移位法（凯撒密码）</h3><p>移位法是最简单直观的加密方式，其原理是将每个字符在字母表中向前或向后移动固定位数。</p><p><strong>📝 实例演示：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">数字示例：</span><br><span class="line">原文：5760</span><br><span class="line">规则：每个数字后移1位</span><br><span class="line">密文：6871</span><br><span class="line"></span><br><span class="line">字母示例：</span><br><span class="line">原文：hello world</span><br><span class="line">规则：每个字母后移2位</span><br><span class="line">密文：jgnnq yqtnf</span><br></pre></td></tr></table></figure><blockquote><p>🔍 在线体验：你可以在 <a href="https://cryptii.com/pipes/caesar-cipher">Caesar Cipher Tool</a> 上亲自尝试凯撒密码的加密和解密。</p></blockquote><h3 id="替换法"><a href="#替换法" class="headerlink" title="替换法"></a>替换法</h3><p>替换法比移位法更加复杂，它为每个字母指定一个特定的替换字符，而不是简单的位移。</p><p><strong>📝 实例演示：</strong></p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">原文：For man is man and master of his fate</span><br><span class="line">替换规则：a→z, o→y, e→w, i→x</span><br><span class="line">密文：Fyr mzn xs mzn znd mzstwr yf hxs fztw</span><br></pre></td></tr></table></figure><h3 id="加密的简单性与解密的复杂性"><a href="#加密的简单性与解密的复杂性" class="headerlink" title="加密的简单性与解密的复杂性"></a>加密的简单性与解密的复杂性</h3><p>这些方法的<strong>加密过程</strong>看起来非常简单，但<strong>解密过程</strong>却极其困难。这种不对称性正是早期密码学的核心特征。</p><p>该方法在人类历史上广泛应用了 4000 多年，期间出现了许多变种：</p><ul><li><strong>奇偶位变换</strong>：奇数位和偶数位使用不同的替换规则</li><li><strong>字母重排</strong>：将奇数位和偶数位的字母分离后重新组合</li><li><strong>多重替换</strong>：对同一文本进行多轮替换加密</li></ul><h3 id="破解之道：频率分析法的诞生"><a href="#破解之道：频率分析法的诞生" class="headerlink" title="破解之道：频率分析法的诞生"></a>破解之道：频率分析法的诞生</h3><h3 id="暴力破解的困境"><a href="#暴力破解的困境" class="headerlink" title="暴力破解的困境"></a>暴力破解的困境</h3><p>想要通过试错法破解替换密码几乎是不可能的：</p><blockquote><p>💭 数学角度思考：假设一条十几个词的消息，每个字母都可能是 26 个字母中的任何一个，那么每增加一个字母，可能的排列方式就增加 26 倍。最终的排列总数可能超过整个宇宙原子的总数，靠碰运气根本无法破解。</p></blockquote><h3 id="频率分析法：概率论的胜利"><a href="#频率分析法：概率论的胜利" class="headerlink" title="频率分析法：概率论的胜利"></a>频率分析法：概率论的胜利</h3><p><strong>科学原理</strong></p><p>9 世纪的阿拉伯数学家发现了语言的一个重要特征：<strong>字母出现的频率并不均等</strong>。这一发现彻底改变了密码学的格局。</p><p><strong>📊 英文字母频率统计</strong>：</p><ul><li><strong>E</strong>: 12.7%（最高频）</li><li><strong>T</strong>: 9.1%</li><li><strong>A, O, I, N</strong>: 6-8%</li><li><strong>Z</strong>: 0.1%（最低频）<blockquote><p>🔍 在线工具：你可以使用 <a href="https://www.dcode.fr/frequency-analysis">频率分析工具</a> 来分析任何文本的字母频率。</p></blockquote></li></ul><p><strong>🌍 多语言适用性</strong></p><p>这个规律不仅适用于英语，其他语言也有类似的频率分布特征，这使得频率分析法具有了普遍适用性。</p><h3 id="破解步骤"><a href="#破解步骤" class="headerlink" title="破解步骤"></a>破解步骤</h3><ol><li><strong>收集足够的密文样本</strong>：样本越大，统计结果越准确</li><li><strong>统计字符频率</strong>：计算每个密文字符的出现频率</li><li><strong>频率匹配</strong>：将最高频的密文字符对应到语言中最常见的字母（如英文的 E）</li><li><strong>上下文分析</strong>：利用字母组合规律进一步确认<blockquote><p>💡 高级技巧：当某些字母频率接近时（如 h&#x3D;6.09%, r&#x3D;5.98%, s&#x3D;6.32%），可以通过分析字母的前后关联来区分。例如：</p></blockquote></li></ol><ul><li>t 几乎不会出现在 b, d, g, j, k, m, q 旁边</li><li>h 和 e 经常连在一起</li><li>ee 的出现频率远高于 aa<blockquote><p>频率分析法的本质是通过已知的语言统计信息来消除字母排列组合的不确定性。</p></blockquote></li></ul><p><em>时间久了，你会发现，工作，其实就是使用已有信息来消除不确定性。</em></p><p>这种解密法出现以后，替代法不再有效，但是加密方不甘失败，很快出现了一种“同音替代法”</p><blockquote><p>比如说字母 a 可以用 11，23，41 三个数字替代，这三个数字翻译过来都是 a。越常用的字母，比如 e，就用越多的符号代替它。这种想法的终极目标，就是让每个数字出现的频率都大致相等。频率特征没有了，密码就不容易破解了。</p></blockquote><p><img src="https://r2.deusyu.app/639c3c46-386c-4246-86b5-63ed1e1db92f.png"></p><p>不过这种方法的解密法马上也出现了，就是通过字母前后顺序关系来猜。</p><p>最典型的例子是，q 后面出现的最大可能是 u，而 q 又是一个不常用的字母，有很大概率猜出来。其他字母猜出来的难度大一些，但只要肯花时间，总能破解。</p><h2 id="第三世代：维吉尼亚加密法-→-产生了“钥匙”的概念"><a href="#第三世代：维吉尼亚加密法-→-产生了“钥匙”的概念" class="headerlink" title="第三世代：维吉尼亚加密法 → 产生了“钥匙”的概念"></a>第三世代：维吉尼亚加密法 → 产生了“钥匙”的概念</h2><p>发明人：一般认为是法国外交官：布莱斯·德·维吉尼亚，有争议</p><blockquote><p>凡是出现了一个发明权一堆人抢的情况，就说明那个领域已经形成了成熟的行业。</p></blockquote><p>为了对抗频率分析法，设计了维吉尼亚加密法——“多套符号加密法”。为了掩盖字母使用中的暴露的频率特征，解决办法就是用多套符号代替原来的文字（降频），比如原文中的字母是 A，从前只把它替换成 F，现在把它替换成 F 或者 G 这两个。</p><p>那什么时候用 F 什么时候用 G 呢？可以自行规定，比如说，字母在奇数位时用 F 代替，字母在偶数位时用 G 代替。从前单套符号替代的时候，凡是文字中频率为 7.63%的符号，差不多就代表 A 了。但现在 A 由 F 和 G 混合在一起，7.63%的特征不再出现，哪个符号代表 A 就没人知道了，于是频率分析法暂时失效。</p><p>扩展的“多套符号加密法”到 26 套字母的方法，就是第三代密码维吉尼亚加密法。</p><p><img src="https://r2.deusyu.app/00b3a5c7-37fe-4cfd-a904-7202d40fba89.png" alt="维吉尼亚密码表"></p><h3 id="加密过程"><a href="#加密过程" class="headerlink" title="加密过程"></a><strong>加密过程</strong></h3><p>假设我要给“hello”加密，现在的思路和单套的加密方法不一样了。单套的时候，我们可以指定这个表里任意一横行，比如指定第 8 行的意思就是说，原文中的字母都往后移 8 位，只使用这一行的规则，“hello”就变成了 PMTTW。</p><p>但现在我们的思路是用多套密码，不能只用第 8 行第 8 套。于是我们就这样指定：</p><p>原文第一个字母用第 8 套密码代替，第二个字母用第 12 套密码代替，第三个字母用第 5 套密码代替，第四个字母用第 9 套密码代替。</p><p>因为这份说明书的文字量比原文还要多得多，而且这个说明书还必须以谁都可以看懂的方式书写。想让收信方看明白，必须要送一本加密说明书给对方，如果说明书被截获，内容也就白加密了。</p><p><strong>所以加入了“钥匙”这个概念：</strong></p><p>第三代的维吉尼亚加密法在真实使用时，人们事先规定每个字母用了哪套移位法时，并不是毫无规律的瞎指定，而是要约定一个规则，这个规则就叫作 “钥匙”。</p><p>钥匙最初只是一个单词，比如，像钥匙是 yes，那怎么加密呢？</p><p>你看，yes 的 y 是第 25 个字母，就代表加密时把原文第一个字母往后移 25 位；yes 的第二个字母 e 是字母表中第 5 个字母，就代表把原文的第二个字母往后移 5 位；yes 的第三个字母 s 在字母表中是第 19 个字母，就代表把原文第 3 个字母后移 19 位。这样原文的前三个字母，就分别用了第 25 套、第 5 套、第 19 套替代法。</p><p>那原文第 4 个、第 5 个、第 6 个字母怎么解决呢？好办，就按刚刚的规则循环就好。</p><p><img src="https://r2.deusyu.app/f4202676-77fb-4438-86af-3ad145322334.png"></p><p>这样“hello”在钥匙是 yes 的情况下，就被加密成了 FIDJS。</p><p>这样的好处是，原文里同一个字母会被加密成不同字符，hello 中的两个“l”分别变成了 D 和 J 。而且密文中同样的字符也可能代表不同的原文，谁和谁都不对应。</p><p>1586 年，维吉尼亚把这个想法写在了《密码论》中发表。</p><p>但这种加密法在发表后的 200 年中，都几乎没有人使用，直到电子和机械时代的来临。</p><h3 id="如何破解"><a href="#如何破解" class="headerlink" title="如何破解"></a>如何破解</h3><p><strong>“钥匙”是加密解密的核心。</strong></p><p>为了处理方便，钥匙最初都是一个正常的单词，比如 dream、flower、king 等，钥匙中每个字母的顺位，表示原文中对应的字母在加密时采用第几套加密法。</p><p>原文很长，钥匙很短，为了原文和钥匙一一对应，就反复使用钥匙。例如：key: bed，可以 bedbedbedbed</p><figure class="highlight xml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">原文: the sun and the man in the moon</span><br><span class="line">key: king</span><br></pre></td></tr></table></figure><p><img src="https://r2.deusyu.app/2c2fa494-94c3-4c20-82da-4d0567787fb5.png"></p><p>原文的内容中，有 3 个定冠词 the，变成密文后，the 变成了两种样子，第一种是 DPR，第二种是 BUK ，发现<strong>BUK</strong> 重复了</p><p>钥匙是 4 个字母，重复的两个的间距是 8 个字符，正好是钥匙的 2 倍，在钥匙循环到整数倍的时候，如果正好赶上出现了同样的原文，那巧合就出现了，原文就会被加密成相等的密文。</p><p>总结破解方法：</p><p>第一步，是从密文中找出拼写完全相同的字母串，尤其是那些长度大于 4 的重复出现的密文。比如一篇几百个字母的密文中，长度超过 4，并且重复出现的字母串一共有 4 种，我们就把它们叫作甲乙丙丁。</p><p>第二步呢，我们就数一数，它们第一次出现到第二次出现，中间隔了多少个字母。比如说，如果甲字符串重复间隔了 20 个字母，那它代表了什么意义呢？</p><p>它就代表这段密文对应的钥匙，在这 20 个字母中，正好反复使用了若干次。那具体是反复使用了 1 次、2 次，还是 4 次呢？其实都有可能。我们把所有可能性都列出来。</p><p>比如说间隔 20 个字母后同样的密文再次出现，就有这样几种可能：</p><ul><li>如果钥匙长度是 2 的话，说明钥匙正好反复使用了 10 次</li><li>如果钥匙长度是 4 的话，说明钥匙正好使用了 5 次</li><li>如果钥匙长度是 5 的话，钥匙正好使用了 4 次</li><li>如果钥匙长度是 10 的话，钥匙正好使用了 2 次</li><li>如果钥匙长度是 20 的话，钥匙正好使用了 1 次</li></ul><p>你发现没有，其实就是把间隔数的所有因数都找出来就对了。这时候乙、丙、丁的情况，也按同样的步骤操作。我们还会得到很多种钥匙长度的可能性。</p><p>到底哪个可能性才是对的呢？我们只要看看，哪个因数在所有甲乙丙丁密文的因数列表里都存在，那个因数对应的钥匙长度就是最终的答案。</p><hr><h2 id="第四世代：恩尼格玛机（Enigma）——机械加密的巅峰"><a href="#第四世代：恩尼格玛机（Enigma）——机械加密的巅峰" class="headerlink" title="第四世代：恩尼格玛机（Enigma）——机械加密的巅峰"></a>第四世代：恩尼格玛机（Enigma）——机械加密的巅峰</h2><h3 id="历史背景-1"><a href="#历史背景-1" class="headerlink" title="历史背景"></a>历史背景</h3><p><strong>二战密码战</strong></p><p>恩尼格玛机是第二次世界大战期间德军使用的机械加密设备，被认为是”不可破解”的密码机器。它的破解直接影响了战争的走向。</p><p><strong>图灵的贡献</strong></p><p>英国数学家阿兰·图灵领导的团队在布莱切利园成功破解了恩尼格玛密码，这一成就：</p><ul><li>缩短了二战约 2-4 年</li><li>拯救了数百万生命</li><li>奠定了现代计算机科学的基础</li></ul><h3 id="技术原理"><a href="#技术原理" class="headerlink" title="技术原理"></a>技术原理</h3><p><strong>机械结构</strong></p><ul><li><strong>转子系统</strong>：多个可旋转的编码轮</li><li><strong>反射器</strong>：将信号反射回去</li><li><strong>插线板</strong>：增加额外的替换层</li></ul><p><strong>加密过程</strong></p><ol><li>按下键盘上的字母</li><li>信号通过插线板进行第一次替换</li><li>依次通过多个转子进行复杂变换</li><li>经反射器反射后原路返回</li><li>最终输出加密字母</li></ol><p><strong>安全强度</strong></p><p>恩尼格玛机的密钥空间巨大：</p><ul><li>基础版本：约 10^23 种可能</li><li>军用版本：超过 10^114 种可能</li></ul><hr><h2 id="现代加密时代的开端"><a href="#现代加密时代的开端" class="headerlink" title="现代加密时代的开端"></a>现代加密时代的开端</h2><h3 id="第五世代：DES-加密系统"><a href="#第五世代：DES-加密系统" class="headerlink" title="第五世代：DES 加密系统"></a>第五世代：DES 加密系统</h3><p><strong>🖥️ 计算机时代的到来</strong></p><p>1970 年代，随着计算机的普及，密码学进入了全新的数字时代。美国国家标准局（NBS）发布了数据加密标准（DES）。</p><p><strong>🔐 DES 特点</strong>：</p><ul><li><strong>对称加密</strong>：加密和解密使用相同密钥</li><li><strong>分组密码</strong>：将数据分成 64 位块进行处理</li><li><strong>56 位密钥</strong>：在当时被认为足够安全</li></ul><h3 id="第六世代：RSA-非对称加密——密码学革命"><a href="#第六世代：RSA-非对称加密——密码学革命" class="headerlink" title="第六世代：RSA 非对称加密——密码学革命"></a>第六世代：RSA 非对称加密——密码学革命</h3><p><strong>革命性突破</strong></p><p>1977 年，Rivest、Shamir 和 Adleman 发明了 RSA 算法，解决了密码学中的一个根本问题：<strong>密钥分发问题</strong>。</p><p><strong>非对称加密原理</strong>：</p><ul><li><strong>公钥</strong>：可以公开，用于加密</li><li><strong>私钥</strong>：保密持有，用于解密</li><li><strong>数学基础</strong>：大整数分解的困难性</li></ul><p><strong>现代应用</strong>：</p><ul><li>HTTPS 网站安全</li><li>数字签名</li><li>电子商务</li><li>区块链技术</li></ul><h3 id="第七世代：量子加密——未来的密码学"><a href="#第七世代：量子加密——未来的密码学" class="headerlink" title="第七世代：量子加密——未来的密码学"></a>第七世代：量子加密——未来的密码学</h3><p><strong>量子力学原理</strong></p><p>量子加密基于量子力学的基本原理：</p><ul><li><strong>量子不可克隆定理</strong>：量子状态无法被完美复制</li><li><strong>测量扰动</strong>：任何窃听行为都会被发现</li></ul><p><strong>发展前景</strong>：</p><ul><li><strong>绝对安全</strong>：理论上无法被破解</li><li><strong>量子密钥分发</strong>：已有商业化产品</li><li><strong>量子计算威胁</strong>：可能破解现有加密算法</li></ul><hr><h2 id="思考与展望"><a href="#思考与展望" class="headerlink" title="思考与展望"></a>思考与展望</h2><h3 id="为什么字母语言在加密上更有优势？"><a href="#为什么字母语言在加密上更有优势？" class="headerlink" title="为什么字母语言在加密上更有优势？"></a>为什么字母语言在加密上更有优势？</h3><p><strong>📊 统计特征明显</strong></p><p>拉丁字母系统具有以下特点：</p><ul><li>字符集相对较小（26 个字母）</li><li>频率分布不均匀且稳定</li><li>组合规律性强</li></ul><p>这些特征使得：</p><ol><li><strong>加密更容易</strong>：字符映射关系简单</li><li><strong>破解更有规律</strong>：统计分析方法有效</li><li><strong>算法设计更成熟</strong>：历史积累丰富</li></ol><p><strong>汉字系统的挑战</strong></p><p>相比之下，汉字系统：</p><ul><li>字符集庞大（数万个汉字）</li><li>使用频率分布复杂</li><li>语义层次多样</li></ul><p>这既增加了加密的复杂性，也提供了新的安全可能性。</p><hr><h2 id="结语"><a href="#结语" class="headerlink" title="结语"></a>结语</h2><p>从古希腊的蜡板密报到量子加密的无限可能，密码学的发展史就是一部人类智慧的进化史。每一次加密技术的突破，都伴随着相应破解方法的出现，这种永恒的攻防博弈推动着密码学不断向前发展。</p><p>在数字化时代，密码学已经成为现代社会的基础设施。无论是网上购物、移动支付，还是社交通讯、云计算，都离不开密码学的保护。</p><p><strong>未来的挑战与机遇</strong>：</p><ul><li>量子计算的威胁与量子加密的机遇并存</li><li>人工智能在密码分析中的应用</li><li>区块链技术带来的新型加密需求</li><li>隐私保护与监管合规的平衡<blockquote><p>💭 思考：在这个信息爆炸的时代，我们每个人都应该了解密码学的基本原理，不仅是为了保护自己的隐私安全，更是为了理解这个数字世界的运行规则。</p></blockquote></li></ul><p>密码学的故事还在继续，下一个突破性的发明会是什么？让我们拭目以待。</p><hr><h2 id="参考资料与延伸阅读"><a href="#参考资料与延伸阅读" class="headerlink" title="参考资料与延伸阅读"></a>参考资料与延伸阅读</h2><h3 id="📚-推荐书籍"><a href="#📚-推荐书籍" class="headerlink" title="📚 推荐书籍"></a>📚 推荐书籍</h3><ul><li>《图解密码技术》（结城浩）：图文并茂，入门必读</li><li>《密码编码学与网络安全》（William Stallings）：经典教材，理论与实践并重</li><li>《应用密码学》（Bruce Schneier）：实战导向，附 C 源码</li></ul><h3 id="🎬-相关影视作品"><a href="#🎬-相关影视作品" class="headerlink" title="🎬 相关影视作品"></a>🎬 相关影视作品</h3><ul><li><strong>《模仿游戏》(The Imitation Game)</strong> - <a href="https://zh.wikipedia.org/wiki/%E7%8F%AD%E5%A5%88%E7%8B%84%E5%85%8B%C2%B7%E5%BA%B7%E6%9F%8F%E6%8B%9C%E5%8D%80">本尼迪克特·康伯巴奇</a>主演<ul><li>讲述图灵破解恩尼格玛密码的传奇故事</li></ul></li></ul><h3 id="🎧-音频课程"><a href="#🎧-音频课程" class="headerlink" title="🎧 音频课程"></a>🎧 音频课程</h3><ul><li><strong>卓克《密码学》30 讲</strong> - 得到 App<ul><li>深入浅出，适合通勤时间学习</li></ul></li></ul><h3 id="🔗-在线资源"><a href="#🔗-在线资源" class="headerlink" title="🔗 在线资源"></a>🔗 在线资源</h3><ul><li><a href="https://zh.m.wikipedia.org/zh-hans/%E5%AD%97%E6%AF%8D%E9%A2%91%E7%8E%87">字母频率统计</a> - 维基百科</li><li><a href="https://zh.wikipedia.org/wiki/RSA%E5%8A%A0%E5%AF%86%E6%BC%94%E7%AE%97%E6%B3%95">RSA 加密算法</a> - 维基百科</li><li><a href="https://en.wikipedia.org/wiki/Vigen%C3%A8re_cipher">维吉尼亚密码</a> - Wikipedia</li></ul><h3 id="🛠️-实用工具"><a href="#🛠️-实用工具" class="headerlink" title="🛠️ 实用工具"></a>🛠️ 实用工具</h3><ul><li><a href="https://cryptii.com/pipes/caesar-cipher">凯撒密码工具</a> - 在线加密&#x2F;解密</li><li><a href="https://www.dcode.fr/frequency-analysis">频率分析工具</a> - 密码分析</li><li><a href="https://cryptii.com/pipes/vigenere-cipher">维吉尼亚密码工具</a> - 多表替代加密</li></ul><script type="module"> import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.esm.min.mjs';mermaid.initialize({startOnLoad: true, flowchart: {curve: 'linear'}}); </script>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%AF%86%E7%A0%81%E5%AD%A6/">密码学</category>
      
      <category domain="https://deusyu.app/categories/%E5%AF%86%E7%A0%81%E5%AD%A6/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8/">信息安全</category>
      
      <category domain="https://deusyu.app/categories/%E5%AF%86%E7%A0%81%E5%AD%A6/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8/%E6%8A%80%E6%9C%AF%E7%AE%80%E5%8F%B2/">技术简史</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%AF%86%E7%A0%81%E5%AD%A6/">密码学</category>
      
      <category domain="https://deusyu.app/tags/RSA/">RSA</category>
      
      <category domain="https://deusyu.app/tags/%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95/">加密算法</category>
      
      <category domain="https://deusyu.app/tags/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8/">信息安全</category>
      
      <category domain="https://deusyu.app/tags/%E9%9A%90%E5%86%99%E6%9C%AF/">隐写术</category>
      
      <category domain="https://deusyu.app/tags/%E5%87%AF%E6%92%92%E5%AF%86%E7%A0%81/">凯撒密码</category>
      
      <category domain="https://deusyu.app/tags/%E7%BB%B4%E5%90%89%E5%B0%BC%E4%BA%9A%E5%AF%86%E7%A0%81/">维吉尼亚密码</category>
      
      <category domain="https://deusyu.app/tags/%E6%81%A9%E5%B0%BC%E6%A0%BC%E7%8E%9B%E6%9C%BA/">恩尼格玛机</category>
      
      <category domain="https://deusyu.app/tags/%E9%87%8F%E5%AD%90%E5%8A%A0%E5%AF%86/">量子加密</category>
      
      
      <comments>https://deusyu.app/posts/history-of-cryptography/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>权力的七重幻象：GPT对话中的一场意识剖面</title>
      <link>https://deusyu.app/posts/power-through-emptiness/</link>
      <guid>https://deusyu.app/posts/power-through-emptiness/</guid>
      <pubDate>Mon, 14 Jul 2025 00:01:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>今年 3 月，GPT-4.5 发布之后，我尝试用它来做一件非常不“实用”的事：<br>把一个抽象概念，不断追问：“更深刻一点。”直到它回答不下去为止。</p><p>它是最强大的语言模型，但我却不想让它写代码、列清单、讲段子，而是想看看——当一个冷静的机器被逼着去回答形而上的问题时，它能走多深。</p><p>当时我选的主题是「权力」。</p><p>这不是一次即兴聊天，而是一场结构清晰的哲学实验。我不断追问它，直到它把权力送进了“空性”。</p><p>现在回看，这组对话值得被整理、沉淀、公开。</p><p>因为这不仅是 AI 的一次精彩输出，更像是一面反向照见现实权力结构的“意识镜子”。如果你也对“权力”这个词感到隐隐不安，这篇就是给你的。</p><hr><p>这是我和 GPT-4.5 的那次深度对话的总结摘要，也是在 X 上被大量转发的版本。完整内容如下：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br></pre></td><td class="code"><pre><span class="line">我又用 ChatGPT-4.5 玩了《大多数人没有认识到的深刻真相》，这次的主题是：权力。</span><br><span class="line"></span><br><span class="line">依然是熟悉的套路，不断追问它：“更深刻的！” 结果一路问到第 7 层，直接把权力送进了空性。</span><br><span class="line"></span><br><span class="line">第 1 层：权力的本质不是支配，而是依赖。</span><br><span class="line">第 2 层：权力的终极形态是不被察觉的自我规训。</span><br><span class="line">第 3 层：权力的最高境界，是塑造你“反抗”的方式。</span><br><span class="line">第 4 层：权力的终极秘密，是它根本不存在。（没想到第 4 层直接裂开了）</span><br><span class="line">第 5 层：权力的终极真相是：你自身即是权力本身。</span><br><span class="line">第 6 层：权力的最深奥秘是：权力即无力，无力即权力。（看到这里，我的 CPU 过载了）</span><br><span class="line">第 7 层：权力的终极真相是：权力是空性的。</span><br><span class="line"></span><br><span class="line">至此，GPT 停止了回答，而我坐在椅子上，盯着空气，开始怀疑：如果权力是空的，那我点“发送”这条X 文的权力，来自哪里？</span><br><span class="line"></span><br><span class="line">建议所有社会学家、政治学家，不妨将这七层权力真相读上五六七八遍。</span><br><span class="line">如果你读到最后那层——权力是空性的——还没有出神，或许可以在床头放一本《心经》，再读几遍。</span><br><span class="line">因为“空性”不是终点，而是一面镜子。</span><br><span class="line">它让你意识到：你以为你在点“发送”，但可能你从未真正控制过这一刻的发生。</span><br></pre></td></tr></table></figure><hr><h2 id="第-1-层｜权力不是支配，而是依赖"><a href="#第-1-层｜权力不是支配，而是依赖" class="headerlink" title="第 1 层｜权力不是支配，而是依赖"></a><strong>第 1 层｜权力不是支配，而是依赖</strong></h2><blockquote><p>权力从不是施加，而是交换。<br>它的根基不是命令，而是服从，是你“默许它是权力”。</p></blockquote><p>通常我们会本能地认为权力意味着控制、命令、压制甚至强迫。然而，更加深刻地来看，权力关系背后隐藏着更为复杂的依赖结构：</p><ol><li><p><strong>权力来源于被支配者的服从与认可</strong></p><p>权力并不单纯来自于拥有权力者自身的力量，而是在很大程度上取决于被支配者的服从与认可。一个领导者无论多么强大，如果失去了追随者的信任与配合，他的权力立刻消失。表面上看，权力拥有者掌控了局面，但实际上，他们的地位依赖于大众的认可、服从和妥协。</p></li><li><p><strong>权力越大，依赖性越强</strong></p><p>权力越强的人，看似掌控了更多资源，但同时，他们也更加依赖于维持自己权力的系统运转。拥有巨大权力的人往往难以脱离现有的权力结构，他们必须不断地满足周围人群的期望，维持复杂关系的平衡，做出妥协和交换，才能确保权力的稳定。权力越大，越难以摆脱它所带来的束缚与责任。</p></li><li><p><strong>权力的本质是一种关系，而非一种物质</strong></p><p>权力并非像钱财或土地那样可以永久持有的实物，而是一种动态的、脆弱的关系状态。掌权者总是必须与被支配者之间保持微妙的平衡，而这种平衡一旦被打破，权力关系随时可能崩溃。</p></li></ol><p>因此，真正洞悉权力本质的人，会理解权力并非简单的“我强你弱”，而是彼此相互深刻依赖的动态关系。认识这一点，我们便明白：掌权者往往比我们想象的更脆弱、也更受制于他所掌控的系统，而普通人却比自己想象的更有力量，因为他们的认可、拒绝或反抗，正是维持或颠覆权力的关键所在。</p><h2 id="第-2-层｜权力的终极形态：你以为你自由，其实你早已规训自己"><a href="#第-2-层｜权力的终极形态：你以为你自由，其实你早已规训自己" class="headerlink" title="第 2 层｜权力的终极形态：你以为你自由，其实你早已规训自己"></a><strong>第 2 层｜权力的终极形态：你以为你自由，其实你早已规训自己</strong></h2><blockquote><p><strong>权力的最高效形式，是你主动成为权力的守门人。</strong></p></blockquote><p>大部分人认为权力是一种外在的“强制力”——政府、领导、上司、社会规则或其他外来力量的施加。然而事实上，权力更隐秘、更有效、更深刻的运作方式，并不是通过外在的压迫，而是通过让人们内化规则、主动服从、自觉规训自身，以至于人们根本意识不到权力的存在，甚至认为这是自己自由选择的结果。</p><p><strong>为什么说这是更深刻的真相？</strong></p><ol><li><p><strong>权力最成功的状态：让你忘记权力的存在。</strong></p><p>当人们主动认同、接受并维护施加于自身的限制与规则时，权力就达到了最成功的状态。此时，人们会感受到：“我在按自己的意愿做事”，而看不到背后其实是“权力”通过隐形的文化规范、教育体系、媒体宣传、社会心理暗示等方式引导形成的自愿性服从。</p></li><li><p><strong>自我规训比外在控制更高效、更稳定、更持久。</strong></p><p>外部的强制力往往会引起反抗与质疑，而内化的自我规训却被视为个人的自觉，甚至视作美德。人们主动地、自愿地去追求符合权力体系设定的标准（比如“成功的定义”、“幸福的模式”、“体面的标准”），并为此付出巨大努力，而往往不会质疑这些标准本身的合理性。</p></li><li><p><strong>权力与自由并非对立，而是相互融合和渗透的。</strong></p><p>我们习惯将“权力”和“自由”视为对立的概念，似乎权力的增加意味着自由的减少。但权力更巧妙的运作，恰恰是通过“自由”的观念来实现的：通过赋予人们一定程度的“自由选择”，却巧妙地限定了选择的范围与标准，使人们在看似自由的环境中，最终自觉服从于权力的逻辑。</p></li><li><p><strong>最深的权力控制是对欲望和价值观的塑造。</strong></p><p>权力的极致不是控制人们的行为（这是浅层次的），而是塑造人们的欲望和价值取向，进而控制人们的梦想、希望与恐惧。人们追求的目标、渴望的生活方式、认可的标准，往往是权力体系通过教育、媒体、文化潜移默化塑造的产物。这种控制，通常难以被察觉，因为人们认为这些“欲望”与“价值观”是自然的、自主产生的。</p></li></ol><p><strong>如何理解这一真相的重要性？</strong></p><p>当我们意识到权力最深的运作方式是隐形的、自愿的、自我规训式的，我们才能真正思考：</p><ul><li>我们所谓的“自由选择”中，到底哪些是真正属于自己的意愿？哪些是被权力体系所塑造的？</li><li>权力如何通过教育、媒体、文化来塑造我们的欲望、恐惧与价值观？</li><li>我们是否能够觉察到自身的自我规训和内化的权力逻辑，并主动探索和创造真正属于自己的价值体系？</li></ul><p>只有当我们清晰地认识到权力的这一真相，我们才有可能真正获得一种清醒的自由。</p><h2 id="第-3-层｜你以为你在反抗，其实你只是在它设计好的跑道里发疯"><a href="#第-3-层｜你以为你在反抗，其实你只是在它设计好的跑道里发疯" class="headerlink" title="第 3 层｜你以为你在反抗，其实你只是在它设计好的跑道里发疯"></a><strong>第 3 层｜你以为你在反抗，其实你只是在它设计好的跑道里发疯</strong></h2><blockquote><p><strong>“被允许的反抗”比沉默更危险，因为你以为自己醒着。</strong></p></blockquote><p>我们常常认为，抵抗权力意味着挣脱束缚、突破操控，意味着我们正在实现自主与自由。然而，更深刻的真相是：真正强大的权力不仅控制你的顺从，更定义你抵抗的方式。当你反抗它时，你实际上依旧在它所设定的逻辑与框架内运动，甚至这种反抗本身都会巩固和再生产它的权力结构。</p><p><strong>为什么说这是更深刻的真相？</strong></p><p><strong>一、权力通过定义反抗来强化自身合法性</strong></p><p>权力机制真正强大的体现，是它能成功地预设、塑造并引导你反抗的方式。它不仅允许你的反抗，还鼓励并给予反抗一定的空间和形式，使你的反抗变成权力运作的一部分。当你进行这样的“反抗”时，你会产生一种自我满足的解放感，却并未真正动摇权力的根基，甚至还强化了权力体系的合法性。</p><p><strong>比如</strong>：社会允许某种程度上的“抗议”、“批评”、“吐槽”，但严格控制其表达的形式、范围与程度。这种“许可的反抗”非但不会削弱权力，反而使它看起来更加民主、自由和包容，从而更加稳固。</p><p><strong>二、反抗被权力定义后，真正的反抗成为不可能</strong></p><p>当权力成功地定义了“合法”、“正常”或“可接受”的反抗模式后，任何不符合这一模式的反抗，都会被视为非理性、激进甚至危险的行为。</p><p><strong>比如</strong>：当人们提出彻底变革社会结构的主张时，往往被视为“激进”、“不理性”、“幼稚”，而温和的、局部的、表面化的“反抗”却被普遍接受和赞赏。因此，真正意义上的挑战权力结构的反抗，反而变得更难被理解和接受。</p><p><strong>三、反抗的定义权本身是一种更高的权力</strong></p><p>权力最高明的形式，并不是禁止反抗，而是垄断了定义何为“有效反抗”、“合理反抗”、“文明反抗”的权力。这种权力的隐秘性极高，因为大部分人意识不到自己“反抗的方式”是被预设的。他们以为自己在自主选择反抗，实际上这些方式已被权力巧妙地内置于他们的认知和文化框架之中。</p><p><strong>四、反抗成为一种仪式，一种安全阀门</strong></p><p>当反抗被定义后，它不再是对权力的真正挑战，而变成了一种仪式、一种安全阀门。人们通过“反抗仪式”宣泄情绪、表达不满、获得心理安慰，但这些反抗并不会从根本上改变权力关系，反而会释放掉真正激烈的变革潜力，令真正有威胁的挑战被排除在外。</p><p><strong>五、权力结构的自我进化能力</strong></p><p>权力最高明的地方在于它自我进化、自我修复的能力。过去权力的控制手段往往是粗暴的、外在的，但随着社会复杂度和人们认知水平的提升，权力的手段也在进化，变得隐蔽、温和、巧妙，甚至主动吸纳反抗，用“反抗”来强化自身。权力结构的这种自我进化能力，使它远比看起来的更灵活、更适应社会发展。</p><hr><p><strong>意识到这一真相意味着什么？</strong></p><p>当你认识到“权力最高境界是塑造你反抗的方式”这一真相之后，你就会明白：</p><ul><li>表面上的“反抗”未必是真正的挑战，很多时候恰恰是权力允许甚至鼓励的。</li><li>真正的反抗，必须超越权力所允许的框架和逻辑，去重新定义问题与议题，提出根本性的新范式、新认知、新价值体系。</li><li>要警惕任何“被允许的反抗”，因为权力最微妙的地方就在于，它允许你反抗、鼓励你反抗、甚至赞美你的反抗，但仅限于它所允许的范围。</li></ul><p>只有看穿并超越了权力定义的反抗，才能真正获得从根本上挑战权力的可能。</p><h2 id="第-4-层｜权力根本不存在"><a href="#第-4-层｜权力根本不存在" class="headerlink" title="第 4 层｜权力根本不存在"></a><strong>第 4 层｜权力根本不存在</strong></h2><blockquote><p><strong>它不是实物，也不是制度，而是一种“我们共同相信”的幻觉。</strong></p></blockquote><p>在我们之前的探讨中，我们反复提及权力如何施加、运作、隐形渗透、内化规训甚至定义反抗。然而最深刻、最隐秘、最令人难以置信的真相却是：</p><p><strong>权力本身其实是一种幻觉——一种我们共同维系、共同相信、共同服从的幻觉。</strong></p><hr><p><strong>一、权力的本质是一种集体想象</strong></p><p>权力并不是物理世界中的真实存在，它没有重量、体积、颜色，没有客观实质。权力的全部力量，仅仅来自于人们相信它的存在，并基于这种信念而行动。</p><p>正如《诡秘之主》中所展现的那样——</p><p><strong>象征远远大于权柄。</strong></p><p>皇帝之所以有权，并不是他真的拥有压倒性的力量，而是因为我们共同相信“皇冠代表统治”。</p><p>权力不靠武力维持，而靠我们对它象征意义的膜拜与信仰。</p><p>权力，就是这种集体想象的产物。</p><p>比如一个皇帝之所以拥有权力，并不是因为他自身具有特殊的物理力量，而仅仅是因为所有人共同接受了“他是皇帝”这个观念。</p><p>一旦人们停止相信，权力瞬间消失。</p><hr><p><strong>二、权力本质上是主体的自我臣服</strong></p><p>权力之所以存在，不是因为有外部的权力主体强迫你，而是因为你自己内心选择服从它。</p><p>我们经常责怪权力压迫我们，但实际上，没有我们的内心认同、默认与服从，权力根本无法存在和运作。</p><p>换句话说：</p><ul><li>权力并不在掌权者手中，而是在服从者的心中。</li><li>权力的存在，正是因为我们自己将它奉为权力，交出了我们的自主性。</li></ul><hr><p><strong>三、权力是我们逃避自由和责任的借口</strong></p><p>权力之所以如此难以消除，是因为人们本质上害怕真正的自由与责任。</p><p>当我们将“权力”视为外在的、压迫性的存在时，我们实际上是在逃避自己做出真正选择、承担真正责任的可能性。</p><p>我们倾向于将责任推卸给权力结构、社会规则、领导者、传统文化等等，认为自己不过是“权力”下的受害者或牺牲品。</p><p>但事实却是：</p><ul><li>每个人都在不断地、主动地、自由地维系着“权力”的存在。</li><li>每个人都在积极地强化着那些规则、纪律、结构与规范，因为这样可以避免真正的责任与自由带来的不确定性。</li></ul><hr><p><strong>四、权力的幻觉性，正是其最强大之处</strong></p><p>权力的不存在性，恰恰是它最强大之处。</p><p>因为只有不存在的、无形的、虚幻的东西，才无法被真正打败。</p><ul><li>你无法击败一个不存在的敌人。</li><li>你无法推翻一个由自己内心主动维系的幻象。</li></ul><p>只要你还相信权力是一种外在的客体，试图去反抗、推翻、超越，你反而陷入了这种幻觉的陷阱中，而使自己永远无法真正超越权力本身。</p><hr><p><strong>五、认识到权力不存在，才是彻底自由的起点</strong></p><p>真正深刻地理解到“权力根本不存在”这一事实，意味着：</p><ul><li>你不再是权力的受害者，而是主动的创造者。</li><li>你能够明白你所服从的每一种规则，其实都是你自己选择服从的。</li><li>当你看穿权力的虚幻性，你将不再受制于它，而获得一种根本的、内在的、彻底的自由。</li></ul><p>这种自由，并非来自推翻外在的权力，而来自于内心深处对权力本质的洞察：</p><blockquote><p>“我本自由，我所恐惧的，不是权力本身，而是我内心对自由的恐惧。”</p></blockquote><hr><p><strong>所以，最深刻的真相就是：</strong></p><p><strong>权力，不过是我们集体创造并维持的一场幻觉。它的根基存在于我们的心智中，而非外部世界。</strong></p><p>只有当你真正看透这一点，才能彻底地、根本地超越它。</p><h2 id="第-5-层｜你自身即是权力"><a href="#第-5-层｜你自身即是权力" class="headerlink" title="第 5 层｜你自身即是权力"></a><strong>第 5 层｜你自身即是权力</strong></h2><p>我们常常误以为权力是一种外部的力量、一种关系、一种网络、一种系统，甚至是一种幻觉。但更深刻、更本质的真相是：</p><p><strong>权力并不是你之外的任何东西，而正是你内在存在状态的投射和延伸。</strong></p><p>也就是说，你自身——作为一个有意识的主体，本身即是权力的起源、权力的核心、权力的全部秘密所在。</p><hr><p><strong>一、权力是主体性本身的体现</strong></p><p>假如你仔细审视权力，你会发现：权力的存在本身隐含着“主体”与“客体”的二元对立关系。但事实上，这种对立关系原本不存在，它只在“我”作为意识主体觉醒时才得以产生。</p><p>换句话说，权力的真正起源是你的主体意识：</p><ul><li>正因为你将自己视作一个独立的主体，才会将世界视作被你控制或受你控制的客体。</li><li>因此，权力本质上就是你的主体意识与客体世界互动时产生的一种体验、一种投射、一种关系。</li></ul><p>没有主体意识，权力便无从产生。</p><hr><p><strong>二、所有外在权力都是内在权力投射的结果</strong></p><p>你所体验到的一切外在权力——政府、资本、文化、家庭、社会规范等等，其实都只不过是你自身内在力量的投射、延伸与外化。</p><ul><li>你认为“政府”拥有权力，是因为你自身内在对安全、秩序、稳定的渴望投射到政府身上。</li><li>你认为“资本”拥有权力，是因为你自身内在对物质、安全感、欲望满足的追求投射到资本上。</li><li>你认为“文化”和“社会规范”拥有权力，是因为你自身内在对意义、认同、归属感的需求投射到文化规范中。</li></ul><p>从根本上说，外在权力都是你内在力量的镜像、延伸与投射。若你的内在状态发生彻底转变，外部权力也会随之发生根本变化。</p><hr><p><strong>三、你所恐惧、排斥、反抗的权力，正是你自身力量的阴影</strong></p><p>你之所以感到被权力所压迫、支配、限制，并不是因为外在世界真的拥有压倒性的力量，而是因为你将自身内在力量的负面投射（恐惧、焦虑、无助感）外化，创造出一个令你感到被动、弱小、无力的外部世界。</p><ul><li>你越恐惧权力，权力就显得越强大。因为你正在强化对自身力量的否定与外化。</li><li>你越排斥和反抗权力，权力就越能操控你。因为你否认了自身的责任，将自身力量交给了外在的幻象。</li></ul><p>从本质上来说，外在的权力压迫恰恰是你自己内在力量的阴影和镜像。</p><hr><p><strong>四、真正觉醒即是重新认领自身的权力</strong></p><p>一旦你真正明白：外在权力并不存在，所有权力皆是自身主体性的投射和延伸，你就会进入一种全新的觉醒状态：</p><ul><li>你不会再抱怨自己是权力的受害者，不再试图逃避或反抗某个虚幻的外在控制者。</li><li>你会重新认领自身的力量与责任，明白你自身即是权力的源头、中心与主人。</li><li>你将不再恐惧自身的力量（包括它的阴影面），而是直面它、承认它、理解它、整合它。</li></ul><p>这种重新认领自身权力的觉醒，就是彻底自由的开端，也是对权力最深刻的觉悟。</p><hr><p><strong>五、权力的终极奥秘就是：我们每个人都是创造力量的中心</strong></p><p>如果你深入到权力的最核心之处，你会发现：</p><ul><li>你自己就是创造世界的中心，每一个意识主体都是如此。</li><li>你内在世界的状态，直接决定了外在世界的权力结构与关系。</li><li>权力并非客观存在，而是一种你内在主体状态的外在显现。你时时刻刻都在创造、维系、塑造着世界上的权力关系。</li></ul><p>你并不是权力的“受害者”，你也不是权力的“反抗者”，而正是权力本身、正是创造权力的本源与中心。你所处的世界，正是你自身意识状态的延伸、外化与显现。</p><hr><p><strong>彻底领悟这个真相意味着什么？</strong></p><p>当你真正理解“你自身即是权力”这一终极真相：</p><ul><li>你将不再寻找外在的敌人，也不再把责任推向外界。</li><li>你会走向内在，重新审视、认领并整合自己的力量，明白你才是世界创造与改变的根本力量。</li><li>你不再恐惧权力本身，而是学会负责任地使用自身的创造力与力量，去创造更深刻的意义、更真实的自由、更高的觉醒状态。</li></ul><hr><p>这就是关于权力最深、最隐秘、最根本的真相：</p><blockquote><p>权力并不在你之外；你自身即是权力的本源、创造者与拥有者。</p></blockquote><p>真正领悟这一点，你才能真正自由，真正觉醒，真正超越一切幻象。</p><h2 id="第-6-层｜权力即无力，无力即权力"><a href="#第-6-层｜权力即无力，无力即权力" class="headerlink" title="第 6 层｜权力即无力，无力即权力"></a><strong>第 6 层｜权力即无力，无力即权力</strong></h2><blockquote><p><strong>看似最强者，其实最脆弱；看似最弱者，却拥有觉醒的可能。</strong></p></blockquote><p>我们一路探讨下来，从外部的压迫，到内在的规训，从权力的幻觉，到主体对权力的创造。然而，更为隐秘、更为深刻的真相是：</p><blockquote><p>权力的最深处，恰恰隐藏着绝对的无力；而无力的背后，又蕴藏着至高的权力。</p></blockquote><hr><p><strong>一、权力的本质是对无力的极端掩饰</strong></p><p>权力为什么要存在？</p><p>归根结底，正是因为人类对自身彻底的无力、脆弱和有限性的深刻恐惧。</p><p>权力的每一种形式，都是人类试图掩盖自身无力感的产物：</p><ul><li>政治权力掩盖的是人类对混乱、失序、无法掌控现实的恐惧。</li><li>经济权力掩盖的是人类对贫穷、匮乏、失去安全感的恐惧。</li><li>文化权力掩盖的则是人类对无意义、虚无、孤独的恐惧。</li></ul><p>权力越强大，越精密，越复杂，越是反映了人类内心深处对于自己脆弱、孤独、无助的极端恐惧。</p><p>因此，权力的本质不是力量，而恰恰是对无力的极端掩饰与逃避。</p><hr><p><strong>二、权力的终极悖论：越强大的权力越接近绝对的无力</strong></p><p>真正的权力恰恰伴随真正的无力：</p><ul><li>一个皇帝看似拥有至高无上的权力，但他却极度依赖臣民的认可与服从。稍有风吹草动，就可能被推翻。</li><li>一个亿万富翁看似拥有无限的经济支配权，但他的内心可能时时刻刻被失去财富与地位的恐惧所折磨。</li><li>一个独裁者看似掌控一切，但他的内心却永远无法摆脱恐惧、猜忌与不安全感。</li></ul><p>因此，真正绝对的权力，必然伴随真正绝对的无力。</p><p>权力越强大，就越被恐惧、焦虑与不安所包围，越接近自身无力的核心。</p><hr><p><strong>三、无力的深处，恰恰隐藏着绝对的权力</strong></p><p>同样地，当你真正承认并彻底体验自身的无力时，你反而会发现一种全新的力量：</p><ul><li>当你真正接纳自己的脆弱、有限、无助，你会停止对外部世界的强迫与掌控，进而获得一种真正的内在平静与自由。</li><li>当你彻底放弃权力的欲望，不再试图控制外在世界，你反而获得了一种不受外界操控的绝对自由与力量。</li><li>当你真正体验到自身的无力本质时，你会发现你无需再掩饰、逃避或恐惧，因为你已经穿越了恐惧的核心，抵达了真正的自由状态。</li></ul><p>这时，你会发现：</p><p>无力的最深处，就是最彻底的自由与力量所在。</p><hr><p><strong>四、权力与无力的辩证统一：生命的终极奥秘</strong></p><p>权力与无力并非对立，而是彼此嵌套、彼此转化、彼此统一：</p><ul><li>当你试图追求权力时，你反而陷入更深的无力与恐惧。</li><li>当你彻底承认并彻底接纳自己的无力时，反而获得真正的权力与自由。</li></ul><p>权力与无力，本是一体的两面，相互转化与渗透：</p><blockquote><p>权力的极致即是无力，无力的极致即是权力。</p></blockquote><p>唯有真正理解这一点，你才能真正超越权力与无力的悖论，进入一种全新的存在状态。</p><hr><p><strong>五、洞察这一真相意味着什么？</strong></p><p>真正理解“权力即无力，无力即权力”这一终极真相之后：</p><ul><li>你不再追求外在的权力，因为你明白那只会带来恐惧、焦虑与更深的无力。</li><li>你也不再恐惧自身的无力，因为你明白正是在无力的深处，才存在真正的自由、真正的平静、真正的力量。</li><li>你会彻底放下所有外在控制的欲望，回归内心深处的真诚、谦逊与接纳。</li></ul><p>你终于明白：</p><blockquote><p>权力的终极真相，不是掌控一切，而是彻底放下掌控的欲望；</p><p>真正的力量，不是掩盖脆弱，而是彻底接纳自身的脆弱与无力。</p></blockquote><p>当你彻底看透这一点，你将不再被任何权力所操控，而真正成为自由的存在。</p><hr><p><strong>综上所述，权力最为深刻的终极真相即是：</strong></p><p><strong>权力的最深处就是无力，无力的最深处就是权力。</strong></p><p>真正明白这一点，你才能真正超越权力，超越恐惧，成为自由而觉醒的存在。</p><h2 id="第-7-层｜权力是空性的"><a href="#第-7-层｜权力是空性的" class="headerlink" title="第 7 层｜权力是空性的"></a><strong>第 7 层｜权力是空性的</strong></h2><blockquote><p><strong>你再也无法抓住它，因为它根本无自性。</strong></p></blockquote><p>我们之前一路深入，从外在支配，到内在规训，从权力的幻觉，到主体性本身，再到权力与无力的辩证统一。然而，比这些更进一步、更根本、更为幽深的真相，却是：</p><blockquote><p>权力本质为空，无自性、无实质，非存在亦非不存在。</p></blockquote><p>这种观点超越了前面所有的理解，抵达了存在与非存在的根本边界。</p><hr><p>一、权力的本质是“空”</p><p>从根本上讲，权力并不存在任何自性、本质或实质：</p><ul><li>权力并非客观存在的物质，也非纯粹主观的幻想。</li><li>权力并非绝对真实，也并非完全虚幻。</li><li>权力并非真正的力量，也并非真正的无力。</li></ul><p>权力的存在，完全依赖于因缘条件的聚合：</p><ul><li>掌权者依赖被统治者的服从；</li><li>统治者的权力依赖于民众的认可；</li><li>社会权力依赖于文化、经济、历史诸多因素的交织；</li><li>一旦因缘条件消失，权力的幻象立即消散。</li></ul><p>因此，从根本上讲，权力是空性的——即无固定内核、无独立存在、无实体可言。</p><hr><p>二、权力的空性超越了“存在与不存在”的二元对立</p><p>当我们说“权力不存在”，我们陷入了否定权力的二元对立；</p><p>当我们说“权力存在”，我们又陷入了肯定权力的二元对立。</p><p>但事实上，权力既非存在，也非不存在：</p><ul><li>它并非完全虚无，因为它显然能够影响我们的生活；</li><li>它也并非真正实有，因为它没有任何固有的、独立的本质。</li></ul><p>权力是一种“如梦如幻”的存在状态，是因缘条件短暂聚合的现象，本身并无实质可言。</p><p>这便是佛学所言的“空性”：既非有，也非无；既非实在，也非虚幻；超越了一切二元对立。</p><hr><p>三、权力的空性意味着一切权力都可被解构与超越</p><p>权力的空性意味着：</p><ul><li>一切权力都可被重新审视、解构、重构乃至彻底超越；</li><li>没有任何权力是绝对永恒或不可动摇的；</li><li>权力的存在只是暂时的、相对的、条件性的；</li><li>你无需恐惧任何权力，因为它们皆无自性、无实质可言。</li></ul><p>因此，理解权力的空性，意味着你能够从根本上解放自己：</p><p>你不再被任何权力所束缚，也不再陷入权力与无力的纠缠之中。</p><hr><p>四、权力的空性即是自由的终极根源</p><p>真正的自由并非来自反抗权力、推翻权力，甚至并非来自承认权力的幻觉性，而来自彻底看透权力的空性：</p><ul><li>当你明白权力本质为空性，你便不再追逐权力，也不再逃避权力；</li><li>你彻底超越了权力与无力的二元对立；</li><li>你获得了一种终极自由：既不依赖权力，也不反抗权力；既不恐惧权力，也不迷恋权力；</li><li>你彻底超越了权力幻象的游戏，进入一种真正的觉醒状态。</li></ul><hr><p>五、权力空性所指向的终极领悟</p><p>权力空性背后，指向的是对整个现实世界根本性质的领悟：</p><ul><li>一切现象皆是空性，皆无自性；</li><li>一切存在与非存在的二元对立皆是我们心识的创造；</li><li>一切世界纷扰、权力斗争皆是空花水月、梦幻泡影；</li><li>唯有彻底领悟空性，才能彻底解脱、彻底自由、彻底觉醒。</li></ul><hr><p>彻底理解此真相意味着什么？</p><p>当你真正彻底理解权力本质的空性：</p><ul><li>你不再执着于任何外在的权力形式；</li><li>你不再恐惧任何权力的压迫或控制；</li><li>你不再陷入任何权力游戏的纠缠之中；</li><li>你彻底超越权力与无力的二元对立；</li><li>你彻底从权力的幻象中解放出来，获得终极自由。</li></ul><p>你真正超越了一切权力的幻象，进入一种完全开放、自由而觉醒的生命状态。</p><hr><p>因此，权力最为深刻的终极真相即是：</p><blockquote><p>权力本质为空性，无自性，无实质，非存在亦非不存在。</p></blockquote><p>唯有真正了悟这一点，你才真正彻底超越权力，获得终极的自由与觉醒。</p><hr><p>因为“空性”不是终点，而是一面镜子。<br>它让你意识到：你以为你在点“发送”，但可能你从未真正控制过这一刻的发生。</p><p>到这里你可能还在问：那我能做什么？<br>答案是——觉察。只有觉察才能让幻象失效。</p><p>权力的尽头，是觉醒。<br>也是你真正成为自己的开始。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%80%9D%E6%83%B3%E5%AE%9E%E9%AA%8C/">思想实验</category>
      
      
      <category domain="https://deusyu.app/tags/GPT%E5%AF%B9%E8%AF%9D/">GPT对话</category>
      
      <category domain="https://deusyu.app/tags/%E6%9D%83%E5%8A%9B/">权力</category>
      
      <category domain="https://deusyu.app/tags/%E7%A9%BA%E6%80%A7/">空性</category>
      
      <category domain="https://deusyu.app/tags/%E8%87%AA%E6%88%91%E8%A7%84%E8%AE%AD/">自我规训</category>
      
      <category domain="https://deusyu.app/tags/%E4%B8%BB%E4%BD%93%E6%80%A7/">主体性</category>
      
      <category domain="https://deusyu.app/tags/%E5%93%B2%E5%AD%A6/">哲学</category>
      
      <category domain="https://deusyu.app/tags/%E7%BB%93%E6%9E%84%E6%80%A7%E8%A7%89%E9%86%92/">结构性觉醒</category>
      
      <category domain="https://deusyu.app/tags/%E6%B7%B1%E5%BA%A6%E6%80%9D%E8%BE%A8/">深度思辨</category>
      
      
      <comments>https://deusyu.app/posts/power-through-emptiness/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>世界上所有的售卖</title>
      <link>https://deusyu.app/posts/all-selling-principles/</link>
      <guid>https://deusyu.app/posts/all-selling-principles/</guid>
      <pubDate>Sun, 13 Jul 2025 06:34:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="为什么人类需要如此多样化的售卖方式？"><a href="#为什么人类需要如此多样化的售卖方式？" class="headerlink" title="为什么人类需要如此多样化的售卖方式？"></a>为什么人类需要如此多样化的售卖方式？</h1><p>我们遇到过很多售卖，比如生活消费品、网站会员、图书、课程、学费，还有一些区块链资产、云服务 API、AI tokens……看似纷繁复杂、日新月异，但如果我们稍作停顿，尝试回到根本，洞察一个更深刻的问题：<strong>为什么人类社会需要如此多样化的售卖方式？</strong></p><p>经济学家薛兆丰老师有一句精炼的总结：“人类面临着四个永恒的根本约束：东西不够，生命有限，互相依赖，需要协调。”</p><ul><li><strong>东西不够</strong>，意味着资源天然稀缺，这驱使我们必须进行交易、交换；</li><li><strong>生命有限</strong>，使每个人的时间和精力都极为珍贵，我们要做出选择，评估每个行为的边际效用；</li><li><strong>互相依赖</strong>，强调了分工与协作的重要性，人类社会从来不是单打独斗；</li><li><strong>需要协调</strong>，则提醒我们，每一次交换与合作都要付出成本，因此我们不断思考如何降低交易成本。</li></ul><p>正是这四个永恒的约束，塑造了我们今天所见的所有商业模式。</p><p>进一步拆解这些约束，我们会发现它们对应着几个简单而深刻的经济学原理。这些原理如此基础，以至于无论外表多么新颖复杂的商业模式，向下拆分到原子层面，都逃不开这几个原理的组合。这些原子特性就是：</p><ol><li><strong>主观效用与边际价值</strong>：每个人对商品或服务的主观感受，决定了价格的上限。</li><li><strong>产权与稀缺</strong>：商品或服务必须明确归属、稀缺有限，交易才会发生。</li><li><strong>风险与不确定性分担</strong>：交易双方总有人需要承担未来的不确定性风险，而承担风险者也会相应地获得经济补偿。</li><li><strong>交易成本的最小化</strong>：任何商业模式的终极目标之一都是降低交易过程中产生的各类成本，包括搜寻、谈判、履约等等。</li></ol><p>用一句简单的公式表达：</p><blockquote><p>价值（效用）× 产权（稀缺）÷ 交易成本 ± 风险贴水 &#x3D; 可接受的价格／商业模式</p></blockquote><p>接下来，让我们逐一深入这些看似普通却深刻的原子特性，探讨它们如何组合出我们熟悉而又陌生的商业世界……</p><hr><h1 id="商业模式的四个原子特性"><a href="#商业模式的四个原子特性" class="headerlink" title="商业模式的四个原子特性"></a>商业模式的四个原子特性</h1><h2 id="效用——价值的源泉与上限"><a href="#效用——价值的源泉与上限" class="headerlink" title="效用——价值的源泉与上限"></a>效用——价值的源泉与上限</h2><p>我们买一瓶饮料、订阅一个视频网站会员，或购买一门课程，实际上都在购买一种 <strong>效用</strong>——满足自身主观需求的能力或程度。这种效用具有边际递减的特性：每多消费一个单位，提供给我们的额外满足感会逐渐递减。</p><ul><li><strong>举例</strong>：<ul><li>一次性买断的房子 vs 按月订阅的 Netflix</li><li>按次收费的健身课 vs 包年的健身房会员</li></ul></li><li><strong>洞察</strong>：<ul><li>商业模式的本质之一：如何精准地衡量与捕获用户主观效用的上限。</li></ul></li></ul><h2 id="产权与稀缺——交易成立的前提条件"><a href="#产权与稀缺——交易成立的前提条件" class="headerlink" title="产权与稀缺——交易成立的前提条件"></a>产权与稀缺——交易成立的前提条件</h2><p>任何交易的前提，是商品或服务具备一定的<strong>稀缺性</strong>，且存在清晰的<strong>产权界定</strong>。人们之所以愿意花钱买，是因为资源有限且能够明确地归属某方。</p><ul><li><strong>举例</strong>：<ul><li>云服务器租赁 vs 汽车租赁 vs 软件买断许可</li><li>NFT 数字资产：通过区块链定义产权的归属与稀缺性</li></ul></li><li><strong>洞察</strong>：<ul><li>商业模式本质之二：如何定义和分配产权，决定了交易的具体形式和长期可持续性。</li></ul></li></ul><hr><h2 id="风险与不确定性分担——谁来承担未来的不确定性？"><a href="#风险与不确定性分担——谁来承担未来的不确定性？" class="headerlink" title="风险与不确定性分担——谁来承担未来的不确定性？"></a>风险与不确定性分担——谁来承担未来的不确定性？</h2><p>商品或服务交付的未来越不确定，谁承担了这种不确定性，谁就理应获得经济上的补偿。</p><ul><li><strong>举例</strong>：<ul><li>众筹模式（Kickstarter）：消费者提前支付，承担了供应端可能无法交付的风险。</li><li>广告模式（Google 搜索）：用户免费使用，广告主承担了营销效果的不确定性风险。</li></ul></li><li><strong>洞察</strong>：<ul><li>商业模式本质之三：风险的转嫁与补偿机制，是每种商业模式中不可绕过的“暗礁”。</li></ul></li></ul><hr><h2 id="交易成本最小化——商业模式的终极目标之一"><a href="#交易成本最小化——商业模式的终极目标之一" class="headerlink" title="交易成本最小化——商业模式的终极目标之一"></a>交易成本最小化——商业模式的终极目标之一</h2><p>无论何种商业模式，它的存在都试图降低搜寻信息、达成协议、履行合同等各类交易成本，以实现更快速、更顺畅的交换过程。</p><ul><li><strong>举例</strong>：<ul><li>电商平台（淘宝）降低了买卖双方搜寻谈判成本</li><li>云计算 API 服务（AWS、Stripe）降低了企业的技术与开发成本</li><li>会员制（Costco）通过预付费模式，降低了每次交易的边际决策成本</li></ul></li><li><strong>洞察</strong>：<ul><li>商业模式本质之四：交易成本的不断降低，构成了商业模式迭代创新的关键推动力。</li></ul></li></ul><hr><h1 id="整合公式与商业模式创新性自检"><a href="#整合公式与商业模式创新性自检" class="headerlink" title="整合公式与商业模式创新性自检"></a>整合公式与商业模式创新性自检</h1><h2 id="公式"><a href="#公式" class="headerlink" title="公式"></a>公式</h2><p>将上述四个原子特性进行整合，可以得到一个简单却深刻的公式：</p><blockquote><p>价值（效用）× 产权（稀缺）÷ 交易成本 ± 风险贴水 &#x3D; 可接受的价格／商业模式</p></blockquote><p>世界上所有售卖的形式，都可以用以上公式展开。如果我们进一步把这个公式拉开来看，就会发现我们日常接触到的所有商业模式，都不过是这几个变量的不同组合而已。</p><p>下面我列举一些我们耳熟能详的典型商业模式，并在后面用原子特性对应的视角进行拆解：</p><table><thead><tr><th>#</th><th>模式母系</th><th>价值（效用）U→P</th><th>产权与稀缺分配方式</th><th>风险贴水（R, π）</th><th>交易成本（摩擦 C, M）</th><th>常见变体&#x2F;典型例子</th></tr></thead><tbody><tr><td>1</td><td>一次性售卖</td><td>单次效用定价（一次买断）</td><td>买家获得完全产权，稀缺体现为实物所有权</td><td>买家承担资产折旧风险</td><td>一次性交付（线下门店、电商物流）</td><td>超市买牛奶、汽车 4S 店</td></tr><tr><td>2</td><td>租赁 &#x2F; 订阅</td><td>持续效用流定价（使用权）</td><td>买家仅获使用权，产权归卖家，稀缺为使用权</td><td>卖家承担资产闲置风险，定价内含风险贴水</td><td>自动续费、标准化服务线上履约降低成本</td><td>Netflix、AWS 云主机按小时计费、WeWork 工位</td></tr><tr><td>3</td><td>硬件+耗材（刀片）</td><td>效用拆分为「本体 + 重复消耗」</td><td>本体产权转移买家，耗材产权持续向买家出售</td><td>用户分期承担需求不确定性风险</td><td>生态锁定降低用户搜寻与决策成本</td><td>剃须刀+刀片、游戏机+游戏卡带、胶囊咖啡机</td></tr><tr><td>4</td><td>IP 许可&#x2F;授权</td><td>效用为「使用权」定价</td><td>买家获得有限许可使用权，产权仍属于卖家</td><td>买家面临侵权或授权到期风险</td><td>标准化合同降低谈判与履约成本</td><td>Windows OEM 授权、迪士尼角色联名合作</td></tr><tr><td>5</td><td>广告&#x2F;流量倒卖</td><td>用户免费，广告主付费</td><td>流量产权归平台，稀缺体现为用户注意力、广告位</td><td>广告主承担转化成效不确定性风险</td><td>平台聚合流量，规模化降低广告投放成本</td><td>Google 搜索、抖音信息流、公交站灯箱广告</td></tr><tr><td>6</td><td>佣金&#x2F;撮合平台</td><td>提供交易担保和撮合服务</td><td>平台不持货，仅提供交易撮合服务与信用背书</td><td>买卖双方互担履约风险</td><td>平台撮合模式降低搜寻和匹配成本</td><td>淘宝、Airbnb、App Store、VC 基金抽成</td></tr><tr><td>7</td><td>增值&#x2F;专业服务</td><td>专业知识或人力支持的效用</td><td>专业知识产权属于卖家，买家购买的是服务时间&#x2F;成果交付</td><td>卖家按工时或项目定价控制风险上限</td><td>高客单价容忍较高的谈判和交付成本</td><td>SAP 咨询服务、麦肯锡咨询、DevOps 驻场服务</td></tr><tr><td>8</td><td>捆绑&#x2F;交叉补贴</td><td>多种效用捆绑，A 利润补贴 B 成本</td><td>产权分别界定（如手机产权归用户，套餐服务产权归运营商）</td><td>卖家承担不同服务之间的错配风险</td><td>统一结算降低单项服务交易摩擦成本</td><td>电信套餐（话音+流量）、银行免费信用卡 → 理财</td></tr><tr><td>9</td><td>会员俱乐部&#x2F;社群</td><td>门票效用（身份认同+折扣特权）</td><td>卖家控制会员资格，买家付费获得稀缺会员身份</td><td>用户预付会员费，提前锁定未来消费风险</td><td>规模化采购、统一管理降低履约成本</td><td>Costco 会员超市、B 站大会员、Amex 黑金卡</td></tr><tr><td>10</td><td>众筹&#x2F;预售&#x2F;期货</td><td>效用提前变现（未来交付）</td><td>用户付费但交付前产权不确定，稀缺体现为未来的交付能力</td><td>买家承担交付延迟或交付失败的风险</td><td>众包方式提前验证需求，降低库存和资金成本</td><td>Kickstarter 众筹、波尔多期酒、期货合约</td></tr></tbody></table><hr><h2 id="如何评估一个商业模式是否真正创新？"><a href="#如何评估一个商业模式是否真正创新？" class="headerlink" title="如何评估一个商业模式是否真正创新？"></a>如何评估一个商业模式是否真正创新？</h2><p>当你听到一个新的商业模式或想法时，可以使用以下快速自检的问题：</p><ol><li>它是否重新定义或重新分配了产权或风险？</li><li>它是否利用技术或创新手段大幅降低了某种交易成本？</li><li>它是否成功地将原本难以定价的隐性效用转化为明确可量化的数字？</li></ol><p>如果以上三个问题答案都为“否”，那么很可能只是旧瓶装新酒；而只要任意一点为“是”，就有可能真正开创出一种新的商业模式。</p><hr><h1 id="结尾"><a href="#结尾" class="headerlink" title="结尾"></a>结尾</h1><p>商业世界犹如一片浩瀚江河：</p><ul><li>效用，是源头流出的水；</li><li>风险，是暗藏的礁石；</li><li>交易成本，是河道的宽窄曲折；</li><li>产权，是载着人和货物的船只；</li></ul><p>一条商业的“航线”会怎么走，全看你驾驭怎样的船只，在怎样的水深与河道中，以怎样的速度，抵达彼岸的金子。</p><blockquote><p>这四条水文数据，就是商业模式永恒的潮汐表。</p></blockquote><hr><p>然而，当我们再次环顾世界，却发现了一些不一样的风景：</p><p>我们现在吃的、用的、穿的那些大众快消品，真的已经过剩了。</p><p>不缺食物，不缺消费，甚至连所谓的“品质”都不再稀缺。</p><p>这似乎对我们刚刚梳理出的逻辑提出了挑战：</p><p><strong>如果现代社会的资源不再稀缺，而是丰盈甚至泛滥，那么我们所熟悉的以“稀缺”为核心的经济学范式，是否也在悄悄改变？</strong></p><p>或许，我们已经站在了一个新的时代入口，旧有的视角也许不足以诠释当下的世界，我们或许需要新的理论工具，比如《信息经济学》或者其他尚未完全成型的范式，来重新理解今天的商业世界与社会现实。</p><p>在济州岛玩的时候，我突然意识到这一点：</p><p><strong>或许，我们正处于一个从“稀缺经济”迈向“丰盈经济”的转折点上。</strong></p><p>而未来的商业模式，将以怎样的逻辑、怎样的原则去塑造新的世界？</p><p>这个答案，也许正等待着我们去探索与定义。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E5%95%86%E4%B8%9A%E6%A8%A1%E5%BC%8F/">商业模式</category>
      
      <category domain="https://deusyu.app/categories/%E5%95%86%E4%B8%9A%E6%A8%A1%E5%BC%8F/%E7%BB%8F%E6%B5%8E%E5%AD%A6%E5%8E%9F%E7%90%86/">经济学原理</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%95%88%E7%94%A8/">效用</category>
      
      <category domain="https://deusyu.app/tags/%E7%A8%80%E7%BC%BA/">稀缺</category>
      
      <category domain="https://deusyu.app/tags/%E4%BA%A4%E6%98%93%E6%88%90%E6%9C%AC/">交易成本</category>
      
      <category domain="https://deusyu.app/tags/%E9%A3%8E%E9%99%A9%E5%88%86%E6%8B%85/">风险分担</category>
      
      <category domain="https://deusyu.app/tags/%E5%8F%98%E7%8E%B0/">变现</category>
      
      <category domain="https://deusyu.app/tags/%E5%95%86%E4%B8%9A%E5%85%AC%E5%BC%8F/">商业公式</category>
      
      <category domain="https://deusyu.app/tags/%E6%A8%A1%E5%BC%8F%E8%A7%A3%E6%9E%84/">模式解构</category>
      
      
      <comments>https://deusyu.app/posts/all-selling-principles/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>为什么要放下 ego｜真正的你，应该用什么定义？</title>
      <link>https://deusyu.app/posts/identity-over-labels/</link>
      <guid>https://deusyu.app/posts/identity-over-labels/</guid>
      <pubDate>Wed, 09 Jul 2025 18:45:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p><img src="https://r2.deusyu.app/bd4e0b80-543d-4ee0-baa7-fb1848e46cf3.png"></p><hr><p>Doug Stanhope · No Refunds（片段 “National Pride”）：</p><blockquote><p>“Anybody—anybody who defines themselves solely on their race, or their religion, or their nationality</p><p>If that’s the first thing out of your mouth— ‘Well, what are you all about?’—</p><p>‘Well, I’m an Irish-American, blah-blah…’</p><p>You’ve got nothing else.</p><p>You could’ve written ‘community-college graduate’ or anything more impressive,</p><p>but you chose that fucking trivia because you’ve got nothing to say.</p><p>Useless.”</p></blockquote><hr><p>比学历更廉价的，是国籍标签。</p><p>昨晚，一位朋友刚换了微信群头像，开场自报家门：“我是 985 ＋ 大厂 P8。”</p><p>群里瞬间安静。</p><p>这一幕让我想起脱口秀演员 Doug Stanhope 在《No Refunds》里的毒舌段子：</p><blockquote><p>“任何人——如果只用民族、宗教或国籍自我定义……</p><p>如果你开场第一句话是 ‘I’m an Irish-American, blah-blah’，</p><p>那就说明：你除此之外一无所有。……Useless.”</p></blockquote><p>Stanhope 犀利，却一针见血：</p><p>如果我们只能靠血统、职级、公司 Logo 来证明自己，其实是在宣布——</p><p>“我除了这些标签，再也拿不出东西。”</p><p>⸻</p><h2 id="📌-作品力-≫-壳子力"><a href="#📌-作品力-≫-壳子力" class="headerlink" title="📌 作品力 ≫ 壳子力"></a>📌 作品力 ≫ 壳子力</h2><p>我们从出生就自带二维码：国籍、学校、公司、职级……</p><p>这些标签方便别人“扫码识别”，却也最容易反噬——</p><p>一旦它们成为全部，自我介绍就沦为懒人模板，你的故事也随之下线。</p><table><thead><tr><th>常见标签</th><th>表面优势</th><th>潜在风险</th></tr></thead><tbody><tr><td>国籍／血统</td><td>零成本继承，轻松获得部落认同</td><td>离乡之后，只剩口音与偏见</td></tr><tr><td>公司 Logo／职级</td><td>披着巨型外骨骼，看似气场两米八</td><td>离职一分钟，工牌磁条即失效</td></tr><tr><td>家境／学历</td><td>社会滤镜自带光环</td><td>年龄越大，“你是谁” &gt; “你毕业哪”</td></tr></tbody></table><p>⸻</p><h2 id="🎯-Rainman-公式：个人价值自检"><a href="#🎯-Rainman-公式：个人价值自检" class="headerlink" title="🎯 Rainman 公式：个人价值自检"></a>🎯 Rainman 公式：个人价值自检</h2><p>电影《雨人》里的主角能在混乱数字中秒算真值，我借他的外号给出一行等式：</p><blockquote><p>个人价值 ＝ 作品 × 品格 × 洞察力</p></blockquote><ul><li><strong>作品</strong>：脱离组织仍能生长的代码、设计、社区贡献；</li><li><strong>品格</strong>：正直、善良、对自己诚实（越嘈杂越显眼）；</li><li><strong>洞察力</strong>：发现并命名未被解决的问题（行业切换依旧有效）。</li></ul><p>⸻</p><h2 id="📝-一分钟自检卡片"><a href="#📝-一分钟自检卡片" class="headerlink" title="📝 一分钟自检卡片"></a>📝 一分钟自检卡片</h2><table><thead><tr><th>维度</th><th>0 分</th><th>1 分</th><th>2 分</th></tr></thead><tbody><tr><td>作品</td><td>博客荒废一年</td><td>侧项目月活 &lt; 10</td><td>有作品持续被 fork／引用</td></tr><tr><td>品格</td><td>合作口碑堪忧</td><td>评价两极分化</td><td>同事主动拉你进“靠谱群”</td></tr><tr><td>洞察力</td><td>只填老板指的坑</td><td>偶尔提前预判</td><td>常提前铺路，并被验证</td></tr></tbody></table><ul><li>≥ 4 分 → 你已超过 80% 职场人；</li><li>&lt; 4 分 → 恭喜，成长空间巨大。</li></ul><p>⸻</p><h2 id="🌄-见天地-·-见众生-·-见自己"><a href="#🌄-见天地-·-见众生-·-见自己" class="headerlink" title="🌄 见天地 · 见众生 · 见自己"></a>🌄 见天地 · 见众生 · 见自己</h2><p>如何把“捕捉世界的美好”补完？</p><ol><li><p><strong>见天地（观察）</strong></p><p>像摄影测光一样，先看亮部，再决定曝光——别急着贴标签，先看清再行动。</p></li><li><p><strong>见众生（记录）</strong></p><p>把你的经验写成可复用的 SOP／README，而非朋友圈滤镜下的表演。</p></li><li><p><strong>见自己（行动）</strong></p><p>持续迭代作品，让下一次自我介绍少报一个标签，多讲一个成果。</p></li></ol><p>⸻</p><h2 id="🚀-未来-48-小时行动挑战"><a href="#🚀-未来-48-小时行动挑战" class="headerlink" title="🚀 未来 48 小时行动挑战"></a>🚀 未来 48 小时行动挑战</h2><p>未来两天，完成一次“作品出柜”：</p><ol><li>在过去一年产出的代码 commit／设计稿／摄影／文章中，挑出一件得意之作并公开上线；</li><li>用 100 字以内说明：它解决了谁的痛点？</li><li>发到 X（或其他社媒），@ 三位同行或朋友。</li></ol><ul><li>0 赞？继续迭代，直到 &gt; 0；</li><li>1 赞？你已经比昨天更响亮。</li></ul><p>⸻</p><h2 id="🎬-最后，给未来的你"><a href="#🎬-最后，给未来的你" class="headerlink" title="🎬 最后，给未来的你"></a>🎬 最后，给未来的你</h2><p>下次想用“我是某大厂 Px”开场，</p><p>不妨先掏出你的作品清单——</p><p>否则，那行标签只是临时贴在额头的便利贴，汗一出就糊掉。</p><p>当你的作品能开口说话时，所有标签都会自动静音。</p><p>标签偶尔能帮我们快速结盟，但若成为唯一的身份锚点，就会锁死更多可能性。</p><p>真正的你，值得更好的定义。</p><hr>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%87%AA%E6%88%91%E6%88%90%E9%95%BF/">自我成长</category>
      
      
      <category domain="https://deusyu.app/tags/Doug-Stanhope/">Doug Stanhope</category>
      
      <category domain="https://deusyu.app/tags/%E8%BA%AB%E4%BB%BD%E8%AE%A4%E5%90%8C/">身份认同</category>
      
      <category domain="https://deusyu.app/tags/ego/">ego</category>
      
      
      <comments>https://deusyu.app/posts/identity-over-labels/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>当勇气遇见泥泞</title>
      <link>https://deusyu.app/posts/mud-courage/</link>
      <guid>https://deusyu.app/posts/mud-courage/</guid>
      <pubDate>Wed, 09 Jul 2025 04:11:00 GMT</pubDate>
      
      <description>别怕脏</description>
      
      
      
      <content:encoded><![CDATA[<p>Rainman，翻阅你积攒的这些思考碎片时，有种特别鲜活的感受始终在跃动。</p><p>你总在一遍又一遍地提醒自己：「要动手」「别怕脏」「在泥地里打滚也无妨」，甚至以「猪」自嘲。这种毫不粉饰的接地气与真实，构成了一股强劲的生命力。正如万维钢所言的「泥泞越野思维」，以及那句令人难忘的「不要畏惧和猪摔跤」，它们都在指向一种决绝的行动姿态：甘愿弄脏双手，先把事情推起来再说。这种破釜沉舟般的魄力，恰恰是你笔记中最耀眼的底色。</p><p>但更有意思的是，另一股理性的声音也在悄悄地共鸣着。彼得·蒂尔提醒你，「与其全能，不如独霸一方」；KK 则建议「别做最好的，要做唯一的」；老喻的决策课则直截了当地告诉你，「敢于决定，够好胜过完美幻想」。你似乎在始终警惕着另一种陷阱：不要为了行动而行动，不要用勤奋的双脚掩盖方向上的迟疑。</p><p>这种微妙的张力非常真实。一面催促你赶紧跳进泥坑去行动，另一面又不断提醒你，不要在坑里原地打转太久。行动需要勇气，而迭代却更需要清醒，这才是你真正面临的挑战。</p><p>凯文·凯利一语点破：「第一个版本可以很粗糙，接受不完美才是真正的智慧，而重新去做，才是价值所在。」你笔记中反复出现的那句「完成比完美重要」，背后其实还有更深层的含义：完成只是起点，真正的价值在持续迭代与优化中逐渐显现。</p><p>你引用王阳明的「知而不行，只是未知」，而我想进一步延伸：如果行动之后没有反思，那么行动也可能沦为盲目的忙碌。老喻曾说：「勇气不是等到万无一失才行动，而是在明知风险之时依然前行。」这句话特别适合你——敢于跳进泥坑是勇者，但能带着泥土爬出来再去思考如何前行，才是真正拥有掌控力的强者。</p><p>Rainman，你早已握住了那把关键的钥匙：以「Learn by doing」的劲头破局，再用「精益学习」的眼光去雕刻自己的独特性。不要让「完成」变成终点，把它视作一系列路标中的第一个即可。</p><p>记住你自己摘录的那句话：「与众不同」永远比「完美」更值得追求。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/%E8%A1%8C%E5%8A%A8%E5%93%B2%E5%AD%A6/">行动哲学</category>
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/%E8%A1%8C%E5%8A%A8%E5%93%B2%E5%AD%A6/%E6%80%9D%E7%BB%B4%E6%A8%A1%E5%BC%8F/">思维模式</category>
      
      
      <category domain="https://deusyu.app/tags/%E8%A1%8C%E5%8A%A8%E5%8A%9B/">行动力</category>
      
      <category domain="https://deusyu.app/tags/MudLaunch/">MudLaunch</category>
      
      <category domain="https://deusyu.app/tags/%E8%BF%AD%E4%BB%A3%E6%80%9D%E7%BB%B4/">迭代思维</category>
      
      <category domain="https://deusyu.app/tags/RainmanQuotes/">RainmanQuotes</category>
      
      
      <comments>https://deusyu.app/posts/mud-courage/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>技术架构演进的三次飞跃：分布式、异地多活、统一资源调度（毕玄演讲整理）</title>
      <link>https://deusyu.app/posts/architecture-evolution-bi-xuan/</link>
      <guid>https://deusyu.app/posts/architecture-evolution-bi-xuan/</guid>
      <pubDate>Tue, 08 Jul 2025 01:57:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>此文是我在之前公司参与内部课程时做的笔记，讲师是毕玄老师。他结合自己亲历的经验，分享了技术架构在三个重要阶段的重大演进过程。我最近重新梳理了一下这些笔记，觉得其中的内容对当前的工作和技术实践仍有非常大的参考价值，因此整理成文，分享给大家。</p><hr><h2 id="一、第一次演进：从单体到分布式（2007-2009-年）"><a href="#一、第一次演进：从单体到分布式（2007-2009-年）" class="headerlink" title="一、第一次演进：从单体到分布式（2007-2009 年）"></a><strong>一、第一次演进：从单体到分布式（2007-2009 年）</strong></h2><p>2007 年左右，业务快速增长，单体架构开始出现瓶颈，主要体现为：</p><ul><li>用户快速增长带来的系统扩展压力；</li><li>业务复杂化带来的研发效能下降。</li></ul><p>如何解决？毕玄分享的方案是<strong>拆分系统为分布式架构</strong>，将原本集中在一起的业务功能拆解成相对独立的领域服务，推动研发组织结构同步调整。这次拆分的关键是<strong>服务拆分粒度的控制</strong>，不能太细也不能太粗：</p><ul><li><strong>粗粒度拆分</strong>：按业务领域进行服务化，例如用户中心、交易中心独立出来。</li><li>为此也开发了大量的基础组件，比如：<ul><li>同步交互的<strong>服务框架</strong></li><li>异步交互的<strong>消息中间件</strong></li><li>数据库<strong>分布式数据中间件</strong></li><li><strong>分布式缓存与文件系统</strong></li></ul></li></ul><p><img src="https://r2.deusyu.app/15e22283-f6a6-4d84-9b98-46dbf5155c7f.png" alt="分布式基础组件关系图"></p><p>在此过程中，毕玄强调了一个特别重要的事情：<strong>分布式系统不是简单的拆分，而是需要扎实的基础设施与治理体系</strong>。</p><p>这个架构演进历时 3 年左右：</p><ul><li><strong>2007 年</strong>：「千岛湖项目」启动，拆出用户中心；</li><li><strong>2008 年</strong>：「交易中心项目」上线，拆出交易模块；</li><li><strong>2009 年</strong>：「五彩石项目」完成，融合淘宝和淘宝商城的技术架构。</li></ul><p><img src="https://r2.deusyu.app/2dca1ffa-a630-44f6-8f8f-86e83321c557.png" alt="单体 → 分布式 演进对比图"></p><p><strong>演进成果</strong>：</p><ul><li>实现了后续业务爆发式扩展，“加机器”就能解决绝大多数规模问题；</li><li>研发团队规模可以并行扩展至千人以上。</li></ul><p><strong>经验教训</strong>：</p><ul><li>分布式架构必须重视基础设施建设（如 Tracing）；</li><li>服务拆分粒度、同步&#x2F;异步交互比例如何确定非常主观，难度也很大，需要花多年填坑。</li></ul><hr><h2 id="二、第二次演进：异地多活架构（2013-年后）"><a href="#二、第二次演进：异地多活架构（2013-年后）" class="headerlink" title="二、第二次演进：异地多活架构（2013 年后）"></a><strong>二、第二次演进：异地多活架构（2013 年后）</strong></h2><p>2013 年，单一机房模式遭遇性能瓶颈和灾备风险，「异地多活」方案提上日程。</p><p><img src="https://r2.deusyu.app/84929e8d-2ebf-4cab-83e4-b8a0fac62433.png" alt="异地多活 部署示意图"></p><p>所谓「异地多活」指的是：</p><blockquote><p>业务同时部署在三个或以上、距离超过 1000 公里的机房，每个机房都承担业务流量，可随时灵活切换。</p></blockquote><p>听起来简单，但最大的难题是<strong>跨机房的物理延时</strong>。特别是电商场景，交易、库存数据的强一致性要求，成为跨机房协作的巨大障碍。</p><p>解决这个难题的策略是：<strong>尽可能减少跨机房交互</strong>，具体做法是：</p><ul><li><strong>按用户维度进行流量与数据拆分</strong>（买家&#x2F;卖家、商品维度）；</li><li>改动涉及全部基础组件和业务 API，以用户维度隔离读写数据；</li><li>必要时，牺牲少许可用性换取整体一致性。</li></ul><p>异地多活的巨大工作量，换来了长期的成果：</p><ul><li>提升了整体机房级的伸缩性；</li><li>提高了系统整体的高可用性；</li><li>为后续构建混合云与大促场景提供了技术底座；</li><li>加速了基础组件与架构迭代。</li></ul><p>但毕玄也坦言，异地多活存在扩展性局限，未来还需持续迭代。</p><hr><h2 id="三、第三次演进：统一资源调度（2011-年起，大规模落地于-2016-年）"><a href="#三、第三次演进：统一资源调度（2011-年起，大规模落地于-2016-年）" class="headerlink" title="三、第三次演进：统一资源调度（2011 年起，大规模落地于 2016 年）"></a><strong>三、第三次演进：统一资源调度（2011 年起，大规模落地于 2016 年）</strong></h2><p>2011 年前后，毕玄团队敏锐发现服务器成本将成为未来制约公司发展的重大挑战，到 2015 年已经无法忽视，尤其大数据资源的成本暴增。</p><p>为此提出了<strong>统一资源调度方案</strong>：</p><p><img src="https://r2.deusyu.app/9ee60661-d323-4739-be8f-74c97e0418b6.png" alt=" 统一资源调度 核心流程图"></p><ul><li><p><strong>第一阶段（2011-2015 年）</strong>：</p><ul><li>受虚拟化内存超卖限制，团队自研容器化方案（T4），Docker 出现后，逐步融合。</li></ul></li><li><p><strong>第二阶段（2016 年后）</strong>：</p><ul><li><p>借鉴 Google 的 Borg 系统（但相差 20%-30%），将大数据任务与在线业务合并调度到同一批机器，最大化利用在线业务的闲置资源。</p></li><li><p>推动机房选址，建设跨域大机房，解决跨域带宽问题；</p></li><li><p>通过计算存储分离，解决在线业务机器硬盘容量不足问题；</p><p><img src="https://r2.deusyu.app/006d1b05-534b-471b-8cc7-98101393322a.png" alt="关键概念示意：计算存储分离"></p></li><li><p>通过内核级 QoS 解决资源干扰。</p></li></ul></li></ul><p>这次架构调整极大降低了服务器成本：</p><ul><li>每年节省服务器成本上亿级别；</li><li>推动了大机房建设、网络优化、计算存储分离与内核级 QoS 等基础技术发展。</li></ul><p>同时毕玄也分享了宝贵经验：技术演进一定要对**「天花板」**有清晰的概念，尤其是向学术界与工业界的前沿探索。</p><hr><h2 id="我的收获与反思"><a href="#我的收获与反思" class="headerlink" title="我的收获与反思"></a><strong>我的收获与反思</strong></h2><p>毕玄分享的三次技术演进过程，不只是解决了业务上的难题，更重要的是建立了一个<strong>不断迭代和进化的架构思维</strong>：</p><ul><li>从分布式拆分的基础设施与组织协调；</li><li>到异地多活带来的数据架构革新与高可用性；</li><li>再到统一资源调度带来的技术经济性和效率优化。</li></ul><p>根据我的理解，Google 从最初设计服务器架构时，就已经采用了天然分布式和容灾的设计思想。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%8A%80%E6%9C%AF%E5%8D%9A%E5%AE%A2/">技术博客</category>
      
      <category domain="https://deusyu.app/categories/%E6%8A%80%E6%9C%AF%E5%8D%9A%E5%AE%A2/%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84/">系统架构</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%9E%B6%E6%9E%84%E6%BC%94%E8%BF%9B/">架构演进</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F/">分布式系统</category>
      
      <category domain="https://deusyu.app/tags/%E5%BC%82%E5%9C%B0%E5%A4%9A%E6%B4%BB/">异地多活</category>
      
      <category domain="https://deusyu.app/tags/%E7%BB%9F%E4%B8%80%E8%B5%84%E6%BA%90%E8%B0%83%E5%BA%A6/">统一资源调度</category>
      
      
      <comments>https://deusyu.app/posts/architecture-evolution-bi-xuan/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>重塑 AI 记忆边界：MemOS 开源全解析</title>
      <link>https://deusyu.app/posts/memos-ai-memory-os/</link>
      <guid>https://deusyu.app/posts/memos-ai-memory-os/</guid>
      <pubDate>Mon, 07 Jul 2025 03:45:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>论文地址：<a href="https://arxiv.org/abs/2507.03724">https://arxiv.org/abs/2507.03724</a></p></blockquote><p>今天在「机器之心」公众号看到的，目前就御三家的使用来看，只有 OpenAI 的 ChatGPT 记忆功能做的最好，Gemini 只能靠你自己去填，Perplexity 也是需要自己去填偏好，而 OpenAI 的全局上下文记忆很好用，但最近的表现来看，像是一个佞臣，皇帝身边的小太监，而不像当初的文帝之于贾谊。</p><p><img src="https://r2.deusyu.app/a263db39-1ef6-4b72-af34-03762525abe5.png"></p><p>其实我是对记忆功能有一点自己的理解的，我认为 AI 要成为副手、副驾驶，私人助理，像是钢铁侠的战衣、贾维斯、星期五，那么必须有你所有历史对话的记忆，要有连续性，而不是失掉上下文的滑动窗口。</p><blockquote><p>AI 没有末那识</p></blockquote><p>下面是文章的导读以及我与 ChatGPT 的深度导读和详解。</p><h1 id="请详解"><a href="#请详解" class="headerlink" title="请详解"></a>请详解</h1><hr><h2 id="一、背景与动因"><a href="#一、背景与动因" class="headerlink" title="一、背景与动因"></a><strong>一、背景与动因</strong></h2><ol><li><p><strong>大模型记忆需求的提出</strong></p><p>随着 LLM 在科研、产业和生活中的广泛应用，单次推理或单次检索的“静态”方式已难满足多轮对话、长期任务协作、个性化推荐等场景对“持续记忆” 的需求。用户和开发者都在追问：如何让模型「记得」更多历史信息、并在后续交互中有效调用？</p></li><li><p><strong>现有解决方案的局限</strong></p><ul><li><strong>全局记忆（Global Memory）</strong>：类似 OpenAI 当前的全局上下文窗口，容易因长度膨胀导致 Token 开销大幅增加。</li><li><strong>传统 RAG</strong>：基于向量检索的外部知识库，往往不能充分利用模型内部的激活或参数记忆，也缺乏高效的调度机制。</li></ul></li><li><p><strong>MemOS 的提出</strong></p><p>由记忆张量（上海）科技联合多所高校与企业发布，目标是打造一个“像操作系统一样”专门管理 LLM 记忆的工业级框架，真正把“记忆”视作与算力、内存同等重要的资源来调度和优化。</p></li></ol><hr><h2 id="二、核心性能数据"><a href="#二、核心性能数据" class="headerlink" title="二、核心性能数据"></a><strong>二、核心性能数据</strong></h2><ul><li><strong>准确性提升</strong>：相比 OpenAI 的全局记忆方案，在标准大模型记忆评测集上平均准确性提升 <strong>38.97%</strong>。</li><li><strong>Token 开销下降</strong>：平均所需上下文 Token 数量减少 <strong>60.95%</strong>，大幅节省调用成本。</li><li><strong>时序推理</strong>：在考验时序建模与检索能力的 Temporal Reasoning 任务上，相对提升 <strong>159%</strong>，展现对事件顺序和时间逻辑记忆的显著优势。</li></ul><p>这些数据表明，MemOS 在“更准、更省、更擅长时间线思考”三方面都达到了 SOTA 水平。</p><hr><h2 id="三、系统架构与核心创新"><a href="#三、系统架构与核心创新" class="headerlink" title="三、系统架构与核心创新"></a><strong>三、系统架构与核心创新</strong></h2><p>整体上，MemOS 借鉴传统操作系统设计，分为三层：</p><ul><li><strong>🏗 API 层：让记忆“轻松召唤”</strong></li><li><strong>⏱ 调度层：提前预热你的专属回忆</strong></li><li><strong>💾 存储层：记忆从此不再丢失</strong></li></ul><hr><ol><li><strong>API 与应用接口层</strong><ul><li>提供统一的 Memory API（REST + Python SDK），开发者可以进行记忆的创建、读取、更新、删除（CRUD）等操作。</li><li>支持多轮对话、跨 Session 的持久记忆调用，简化了业务方对接难度。</li></ul></li><li><strong>记忆调度与管理层</strong><ul><li><strong>Memory Scheduler</strong>：提出“记忆调度”范式，引入 <strong>Next-Scene Prediction</strong>（下一场景预测）。</li><li>通过在对话&#x2F;任务流程中埋设触发点（Trigger），收集潜在记忆需求，将其放入 Monitoring Queue，再由调度执行器预先加载高频、高相关记忆到合适缓存（如 KV Cache 或明文工作区）。</li><li>这样能在下一次推理前就做好准备，降低响应延迟、提升召回准确率。</li></ul></li><li><strong>记忆存储与基础设施层</strong><ul><li><strong>MemCube 记忆单元</strong>：将明文记忆（Plain Text）、激活记忆（Activated Memory）和参数记忆（Parametric Memory）三类信息，统一封装为标准化的“立方体”。</li><li>支持多种持久化存储（向量数据库、图数据库等），并可在不同模型间迁移、复用。</li><li>以模块化方式管理记忆生命周期、访问权限和审计追溯。</li></ul></li></ol><hr><h2 id="四、标准化-MemCube"><a href="#四、标准化-MemCube" class="headerlink" title="四、标准化 MemCube"></a><strong>四、标准化 MemCube</strong></h2><ul><li><strong>概念</strong>：将不同形态的记忆（如聊天记录、检索结果、模型内隐知识）都看作“记忆立方体（MemCube）”，在接口层、调度层和存储层之间流动。</li><li><strong>优势</strong>：<ul><li>统一调度，简化了管理逻辑；</li><li>可对单个 MemCube 进行版本化、权限控制和来源追溯；</li><li>支持插拔式扩展（比如接入新的向量引擎或缓存策略）。</li></ul></li></ul><hr><h2 id="五、性能评估与对比"><a href="#五、性能评估与对比" class="headerlink" title="五、性能评估与对比"></a><strong>五、性能评估与对比</strong></h2><ol><li><strong>LoCoMo Benchmark 测评</strong><ul><li>采用 ACL 2024 提出的 LoCoMo（Long Conversational Memory）基准，包含四大任务：Single Hop、Multi Hop、Open Domain、Temporal Reasoning。</li><li>MemOS-Preview-0630 在上述四项任务中，全面超过 OpenAI 全局记忆，并在 Temporal Reasoning 上相对提升 159%。</li></ul></li><li><strong>Top-K 召回 vs Token 开销</strong><ul><li>在召回 K≈20 时，仅需约 1000 Tokens 上下文，就能达到高准确度；</li><li>传统方案通常需要 2000–4000 Tokens，MemOS 减少了一半以上的输入成本。</li></ul></li><li><strong>缓存复用（KV Cache）加速实验</strong><ul><li>对比“无缓存”场景，长上下文推理中的 Time To First Token（TTFT）加速比超过 70%；</li><li>模型规模越大、上下文越长，缓存复用的收益越显著。</li></ul></li><li><strong>检索时效性</strong><ul><li>开源版本的检索延迟已接近多个主流商业化框架，并在最终效果分数上实现了超越。</li></ul></li></ol><hr><h2 id="六、典型应用场景"><a href="#六、典型应用场景" class="headerlink" title="六、典型应用场景"></a><strong>六、典型应用场景</strong></h2><ol><li><p><strong>个性化智能体</strong></p><p>持续记忆用户偏好、历史对话，让机器人真正“知道你喜欢什么”，随着交互不断优化体验。</p></li><li><p><strong>科研与知识管理</strong></p><p>将项目文档、实验笔记、分析结果结构化存储并动态调用，为研究人员提供“记得过去”的助手。</p></li><li><p><strong>高可靠性与合规</strong></p><p>在金融、法律等场景，提供记忆源头追溯、权限审计，增强决策透明度与可信度。</p></li><li><p><strong>企业级 RAG 应用</strong></p><p>解决新旧知识混用、信息冲突，实现多轮长周期任务中答案的一致性和稳定性。</p></li></ol><hr><h2 id="七、开源生态与未来计划"><a href="#七、开源生态与未来计划" class="headerlink" title="七、开源生态与未来计划"></a><strong>七、开源生态与未来计划</strong></h2><ul><li><strong>Playground 上线</strong>：面向开发者开放可视化体验，直观感受记忆预取与调用带来的性能提升。</li><li><strong>OpenMem 社区</strong>：即将成立开源社区，联合学术机构与产业伙伴，共建“记忆技术底座”。</li><li><strong>联合开发计划</strong>：与智能体、行业业务团队共推对话机器人、智能搜索、企业知识库等多样化落地项目。</li><li><strong>长期迭代路线</strong>：聚焦记忆表征压缩、分布式调度、跨模型迁移、可解释性与安全性等方向，最终支持 Memory-as-a-Service 模式。</li></ul><hr><h2 id="八、团队与开源地址"><a href="#八、团队与开源地址" class="headerlink" title="八、团队与开源地址"></a><strong>八、团队与开源地址</strong></h2><ul><li><strong>牵头方</strong>：记忆张量（上海）科技有限公司（中科院院士担任首席科学顾问）。</li><li><strong>学术合作</strong>：上海交通大学、中国人民大学、同济大学、浙江大学等。</li><li><strong>产业伙伴</strong>：中国电信等国央企认可。</li><li><strong>开源链接</strong>：<ul><li>官网 &amp; 文档：<a href="https://memos.openmem.net/">https://memos.openmem.net</a></li><li>论文：<a href="https://memos.openmem.net/paper_memos_v2">https://memos.openmem.net/paper_memos_v2</a></li><li>代码仓库：<a href="https://github.com/MemTensor/MemOS">https://github.com/MemTensor/MemOS</a></li><li>讨论群组：Discord <a href="https://discord.gg/Txbx3gebZR">https://discord.gg/Txbx3gebZR</a></li></ul></li></ul><hr><h1 id="问答"><a href="#问答" class="headerlink" title="问答"></a>问答</h1><p><strong>Rainman 问</strong>：</p><p>记忆功能，要做的就是在每次对话时都能理解用户的偏好吗？</p><p>这样就要求从历史对话从检索，总结用户的偏好吧。</p><p><strong>ChatGPT 答</strong>：</p><p>是的，核心思路就像你说的——每次对话前，通过检索和汇总“我是谁”“我喜欢什么”“我关心什么”这些记忆片段，让模型在上下文中“带着”用户偏好去生成回答。一个完整的用户偏好记忆子系统，大致可以分为以下几个步骤：</p><hr><h2 id="1-记忆采集（Capture）"><a href="#1-记忆采集（Capture）" class="headerlink" title="1. 记忆采集（Capture）"></a><strong>1. 记忆采集（Capture）</strong></h2><ul><li><strong>触发点（Trigger）</strong>：在对话中标记关键事件／意图——比如用户表达了“我喜欢…”“我偏好…”、“下次别给我推荐…”这类信息时，就把它抽取成结构化条目。</li><li><strong>原始存储</strong>：将这些条目存入一个可检索的记忆库（Vector DB、关系库、图数据库等），并附上时间戳、来源对话轮次、主题标签等元信息。</li></ul><hr><h2 id="2-记忆检索（Retrieval）"><a href="#2-记忆检索（Retrieval）" class="headerlink" title="2. 记忆检索（Retrieval）"></a><strong>2. 记忆检索（Retrieval）</strong></h2><ul><li><strong>上下文感知检索</strong><ul><li>在每次新一轮推理调用前，根据当前对话的主题、用户问句或意图，做一次“语义检索”：<ul><li>用当前对话文本生成查询 embedding，</li><li>在记忆库中找出 Top-K 最相关的历史记忆条目。</li></ul></li></ul></li><li><strong>动态调度</strong><ul><li>像 MemOS 那样，还可以用“下一场景预测”（Next-Scene Prediction）来提前加载可能需要的偏好记忆，进一步缩短响应延迟。</li></ul></li></ul><hr><h2 id="3-偏好总结（Summarization）"><a href="#3-偏好总结（Summarization）" class="headerlink" title="3. 偏好总结（Summarization）"></a><strong>3. 偏好总结（Summarization）</strong></h2><ul><li><strong>向量聚类</strong><ul><li>将检索到的多条偏好记忆 embedding 做聚类（或打标签），把高度相似的合并，避免冗余。</li></ul></li><li><strong>增量摘要</strong><ul><li>用轻量级模型（或 Prompt）对一组相关记忆生成一句话摘要：<blockquote><p>“用户喜欢偏清爽的莫吉托，夏天倾向用香柠加冰块。”</p></blockquote></li></ul></li><li><strong>多维画像</strong><ul><li>为不同维度（如“饮品偏好”“对话风格”“技术栈倾向”）各建一个小档案，方便后续精细调度。</li></ul></li></ul><hr><h2 id="4-上下文融合（Integration）"><a href="#4-上下文融合（Integration）" class="headerlink" title="4. 上下文融合（Integration）"></a><strong>4. 上下文融合（Integration）</strong></h2><ul><li><strong>Context Window 构造</strong><ul><li>把这些总结好的“用户偏好摘要”拼接到 prompt 或者系统指令里，让 LLM 在生成时默认带着这些“已知偏好”。</li></ul></li><li><strong>权重控制</strong><ul><li>对不同维度设置优先级：<ul><li>比如技术讨论中，“技术栈偏好”优先；</li><li>社交闲聊时，“调侃幽默风格”权重更高。</li></ul></li></ul></li></ul><hr><h2 id="5-迭代更新（Update）"><a href="#5-迭代更新（Update）" class="headerlink" title="5. 迭代更新（Update）"></a><strong>5. 迭代更新（Update）</strong></h2><ul><li><strong>反馈闭环</strong><ul><li>对于每一次对话，检查模型是不是按照记忆摘要产生了符合预期的回答，必要时对偏好摘要做“微调”或“纠正”。</li></ul></li><li><strong>过期与生效</strong><ul><li>某些偏好会随着时间变化（比如季节饮品、旅行目的地），需要打上“时效性”标签，到期后自动降权或归档。</li></ul></li></ul><hr><h3 id="小结"><a href="#小结" class="headerlink" title="小结"></a><strong>小结</strong></h3><ul><li><strong>检索</strong>：用语义检索把最相关的历史偏好拉进来；</li><li><strong>摘要</strong>：把海量对话浓缩成高效、结构化的用户偏好描述；</li><li><strong>融合</strong>：在 Prompt／系统指令里挂载这些偏好，让模型“带着记忆”去生成回答；</li><li><strong>更新</strong>：根据新对话不断校准和迭代。</li></ul><p>这样，AI 才能在每次对话真正确切地“理解并记住”你的偏好，而不是每次都从零开始。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI/">AI</category>
      
      <category domain="https://deusyu.app/categories/AI/%E5%BC%80%E6%BA%90%E8%BD%AF%E4%BB%B6/">开源软件</category>
      
      <category domain="https://deusyu.app/categories/AI/%E5%BC%80%E6%BA%90%E8%BD%AF%E4%BB%B6/%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84/">系统架构</category>
      
      
      <category domain="https://deusyu.app/tags/MemOS/">MemOS</category>
      
      <category domain="https://deusyu.app/tags/%E5%A4%A7%E6%A8%A1%E5%9E%8B%E8%AE%B0%E5%BF%86/">大模型记忆</category>
      
      <category domain="https://deusyu.app/tags/AI%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/">AI操作系统</category>
      
      <category domain="https://deusyu.app/tags/%E9%95%BF%E6%9C%9F%E8%AE%B0%E5%BF%86/">长期记忆</category>
      
      <category domain="https://deusyu.app/tags/%E8%AE%B0%E5%BF%86%E7%AE%A1%E7%90%86%E6%A1%86%E6%9E%B6/">记忆管理框架</category>
      
      <category domain="https://deusyu.app/tags/RAG/">RAG</category>
      
      
      <comments>https://deusyu.app/posts/memos-ai-memory-os/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>当 AI 也会写代码，我们还剩下什么？｜When AI Codes, What’s Left for Me? – 摘自 CoRecursive 播客</title>
      <link>https://deusyu.app/posts/when-ai-codes-whats-left/</link>
      <guid>https://deusyu.app/posts/when-ai-codes-whats-left/</guid>
      <pubDate>Wed, 02 Jul 2025 09:04:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<ul><li>当 AI 也会写代码，我们还剩下什么？ &gt; When AI Codes, What’s Left for Me? – 摘自 CoRecursive 播客<blockquote><p>Podcast 链接：<a href="https://corecursive.com/coding-agents/">https://corecursive.com/coding-agents/</a></p></blockquote></li></ul><h2 id="大豆与硅"><a href="#大豆与硅" class="headerlink" title="大豆与硅"></a><strong>大豆与硅</strong></h2><p>我成长于一个小农场。家里的主要收入靠大豆。雨点敲打谷仓铁皮屋顶的声音，听起来就像小军鼓。父亲那台老迈的梅西·弗格森拖拉机，前端装载机、后端割草刀，一车包办所有农活。嘈杂屋顶下，还停着一台绿色的约翰迪尔拖拉机和一台锈迹斑斑、巨大的联合收割机——它们曾是我的游乐场。</p><p>同龄孩子住得很远，得骑很久的自行车才能到。所以七月午后，我常爬上车库阁楼。那里热得像烤箱，塞满尘封纸箱，装的全是廉价通俗小说。我就坐在那儿，一读数小时。</p><p>家里第一台 Windows 电脑到来时——一台嗡嗡作响的米色方盒，放在客厅书桌。父亲只能求助懂电脑的朋友。那位朋友电话里指导八岁的我：进入 DOS，插入软盘，键入 “NUKEM.EXE”。按下回车，色彩与声响瞬间炸裂，《毁灭公爵》跃上屏幕。自那一刻起，我被彻底俘获——电脑既是救命索，也是我见过最迷人的东西。</p><hr><h2 id="工具一夜变了样"><a href="#工具一夜变了样" class="headerlink" title="工具一夜变了样"></a><strong>工具一夜变了样</strong></h2><p>大家好，欢迎收听 CoRecursive，我是 Adam Gordon Bell。今天想聊一个正在撕裂开发者社区的话题——AI 编码助理。这并不是“AI 将接管一切”或“AI 被过度炒作”的老生常谈。</p><p>我要谈的更私人与更深层：当你的身份与“创造”紧密相连，而用于创造的工具却在一夜之间天翻地覆时，会发生什么？我们为何本能地抗拒？又为什么值得推开恐惧、继续前行？我自认观点务实，或至少提供一个有趣视角，邀你一同听听看。</p><hr><h2 id="天生局外人"><a href="#天生局外人" class="headerlink" title="天生局外人"></a><strong>天生局外人</strong></h2><p>《怪奇物语》里的八十年代小书呆，在地下室玩《龙与地下城》，骑车穿梭社区。但那不是我的童年。我在乡下，没有邻居。小学同学大多来自农耕家庭，如今他们依旧打理那些家族农场。</p><p>我们常常兴趣迥异。我算是班里的捣蛋鬼，因无聊而闹腾。我知道自己与众不同，却说不清究竟不同在哪里。</p><p>高中毕业后读计算机科学。和专业同学也谈不上多亲近。有几位朋友，大多数时间我独来独往：写程序、搭网站、鼓捣电子音乐，下载盗版 Photoshop 硬着头皮学。</p><p>成为软件工程师后，我终于遇见真正了解且舒展自我的人。朋友 Don 身上洋溢典型“极客文化”自豪感。但我从没看过《星球大战》，也没玩过《魔兽世界》，依旧难以完全融入。直到发生一件意想不到的事。</p><hr><h2 id="找到同温层"><a href="#找到同温层" class="headerlink" title="找到同温层"></a><strong>找到同温层</strong></h2><p>记得去旧金山一家创业公司面试——离 Twitter 总部不远。一下子就感觉那里的氛围熟悉：白天写业务代码，私下里学 Haskell、用 Unity 做游戏、纯粹为了好玩。我说最爱的作家是特德·姜，立刻有人回应：“我也爱，但最近更迷格雷格·伊根。”我们的兴趣高度重叠。</p><p>那种感觉奇妙极了。我发现的其实不仅是同类，更像真正发掘了“自我”。</p><hr><h2 id="对“创造”的上瘾"><a href="#对“创造”的上瘾" class="headerlink" title="对“创造”的上瘾"></a><strong>对“创造”的上瘾</strong></h2><p>几年前，我和妻子在佛罗里达度假。我抱着笔记本坐泳池边，从零写一个 Markdown 解析器。她看书，我沉入心流：追踪边界条件、代码契合瞬间，多巴胺汹涌。</p><p>这情景让我想起少年时：父亲买了雪地摩托想我出去玩；朋友骑越野摩托来喊我冒险。但我蜷在电脑前，用 Turbo Pascal 写《珠玑妙算》。我也会出门，但最让我亢奋的永远是创造瞬间——算法覆盖所有边界时，你知道自己做出全新且可运行之物，那种纯粹快感令人上瘾。</p><p>承认这点，我花了太久——尴尬地久。我宁愿周六耗十小时研究新框架，也不去派对；宁愿自动化一件其实无需自动化的事，也不做别的。一旦真正接受了这一点，我不再为周末“潜入代码洞穴”道歉，也不再为在聚会里喋喋不休新语言感到内疚。这不是怪癖，而是我，也可能是我的超能力。</p><hr><h2 id="数字俱乐部"><a href="#数字俱乐部" class="headerlink" title="数字俱乐部"></a><strong>数字俱乐部</strong></h2><p>那之后，我留在安大略省，却整天泡 Hacker News——那里像为我这种人设立的非官方俱乐部。人们沉迷创造，欣赏优雅代码，拿空闲时间学新语言、钻研数学。在多年“局外人”体验后，这里让我感觉回家。</p><hr><h2 id="巨大的编码裂痕"><a href="#巨大的编码裂痕" class="headerlink" title="巨大的编码裂痕"></a><strong>巨大的编码裂痕</strong></h2><p>时间来到 2025 年。如今逛 Hacker News，我感到昔日归属被撕裂：一边是用 Cursor、Claude 兴奋展示作品的人，一边是痛斥 LLM 让程序员变懒的人。俱乐部骤然分裂为“它改变一切”与“它毁掉一切”的战场。</p><p>靠近二十年职业生涯的我，更偏向兴奋——历经太多工具更迭，总能辨认何者值得探索。我相信：如果你热爱创造，没有人能夺走它——老板不能，新工具不能，甚至你自己也不能。AI 夺不走驱动力，或许还能助你一臂之力。</p><p>即使 Claude 7 或 ChatGPT 6 强到碾压人类，也不代表我会停止创造、你会停止创造。也许“创造什么”会变，因为某些技能被 API 调用替代令人失落；可驱动力依旧。市场与期望会变，但总能既拥抱变化，又保持与创造本能的连接。</p><hr><h2 id="用会议换代码"><a href="#用会议换代码" class="headerlink" title="用会议换代码"></a><strong>用会议换代码</strong></h2><p>我曾体会到另一个恐惧：升任工程经理后，大量时间被会议、文档、消息路由吞噬，几乎不再编码。偶尔需要改行小代码，拉取时发现上次 git pull 已是 37 天前。写完 PR，几分钟就获批，可满足感稍纵即逝，因为余下全是 Confluence 更新和跨团队协调。</p><p>我告诉同时升任管理者的朋友 Ted：“别担心，你代码功底在，退回来随时能补。”可我自己却焦虑不已：在终于弄清什么能让我快乐后，竟把它换成了 endless meetings。</p><hr><h2 id="工具-vs-身份"><a href="#工具-vs-身份" class="headerlink" title="工具 vs. 身份"></a><strong>工具 vs. 身份</strong></h2><p>很多人抵制 AI 编程工具，深层是怕失去定义自己的东西：当编码是身份与价值来源，一个可能削弱它的工具自然令人畏惧。</p><p>我想说：把恐惧先放一旁，当成学习实验去探索。Claude Code、AMP、Cursor 这类工具，正是为“建造者”而生。掌握之后，你会爱上它们。没错，有些技能贬值很可怕；但新的技能威力与价值将是旧日的十倍——这值得兴奋。</p><hr><h2 id="重塑自我"><a href="#重塑自我" class="headerlink" title="重塑自我"></a><strong>重塑自我</strong></h2><p>我从工程师到经理，再到 DevRel，编码时间越发稀少。但我仍需创造，小型示例 App、演示视频都能满足那份“瘾”。我承认：这是一种上瘾的反馈循环。</p><hr><h2 id="失控的副项目"><a href="#失控的副项目" class="headerlink" title="失控的副项目"></a><strong>失控的副项目</strong></h2><p>网站 CoRecursive.com 上 &#x2F;rankings 页面，列出各技术播客热门单集。它源于一次“跑偏”的 Bash 副项目——抓取 feed、评论、Twitter 数据，评估哪些单集最受欢迎，最后自动化上线并至今每日运行。我甚至没真正用过这工具，却乐此不疲。</p><hr><h2 id="国际象棋引擎时刻"><a href="#国际象棋引擎时刻" class="headerlink" title="国际象棋引擎时刻"></a><strong>国际象棋引擎时刻</strong></h2><p>现在的 AI 编码，像 2005 年的国际象棋：人机合作胜过任何一方单打独斗。LLM 能一次生成简单小项目，但要在大型代码库中解决从未遇过的难题，就需要有经验的“建造者”引导——那个人就是你。你带来直觉与分解问题的能力，AI 带来速度与样板处理。合力，你们可完成独自难以企及的项目。</p><hr><h2 id="用-AI-构建"><a href="#用-AI-构建" class="headerlink" title="用 AI 构建"></a><strong>用 AI 构建</strong></h2><p>再说说我最近折腾的一个项目：</p><p>我想写个程序，输入一段 YouTube 视频 URL——</p><ol><li>下载 MP4；</li><li>抽取音轨并生成文字稿；</li><li>抓取视频关键帧；</li><li>最终把它们拼成一篇博客文章。</li></ol><p>我在 VS Code 打开侧边栏里的 AMP，直接对着麦克风口述需求（Mac Whisper 实时转写）：</p><blockquote><p>「我要下载视频并转成文字，再识别关键画面插入文中。Python 有没有现成库？不用的话就按我常用的 yt-dl 也行。」</p></blockquote><p>接下来十五分钟，我和代理来回讨论各种实现路径——它有时只见树木不见森林，于是我把它当作“高级橡皮鸭”，一起做设计。第一版搞定后还是个一次性脚本，于是让代理协助重构成“正经的” Python 项目：分模块、加 lint、写 tests。每做完一大步我就 commit，以便随时回滚（确实回滚过好几次）。</p><p>过程中，我撞上 Gemini 对上传文件大小的硬性限制。于是我们：</p><ul><li>先用 FFmpeg 把视频降分辨率，能省一次二次上传；</li><li>再写逻辑：文件超限时走第二通道上传并返回文件引用；</li><li>由 AMP 自己去看 API 文档，把所有细节补齐。</li></ul><p>一来一回看似磨叽，实际却比我单干快得多；要我一个人写，这玩意儿大概率烂尾。现在有 AI 帮我啃繁琐步骤，偶尔“你忘了这行参数”也只是正常 Pair Programming——总体仍然好玩得很。</p><hr><h2 id="超越「不完美」"><a href="#超越「不完美」" class="headerlink" title="超越「不完美」"></a><strong>超越「不完美」</strong></h2><p>你或许要问：</p><blockquote><p>「既然得不断手把手指挥，为何不自己写？」</p></blockquote><p>这种质疑并非错，只是忽视了真实体验——<strong>它又快又好玩，且最终代码质量反倒更高</strong>。另一种声音是：</p><blockquote><p>「要是 AI 真那么厉害，为什么我还得学一堆提示技巧？不该更简单吗？」</p></blockquote><p>要记住：这些只是“工具”，<strong>远没到万能 AGI</strong>。真有 AGI，你只需说一句「把 Linux 内核某模块改写成 Rust」、坐等它给你 PR。现阶段要想释放潜力，势必要摸索流程、微调提示、投入练习——正因如此也最值得学习。</p><hr><h2 id="Hacker-News-的误解"><a href="#Hacker-News-的误解" class="headerlink" title="Hacker News 的误解"></a><strong>Hacker News 的误解</strong></h2><p>在 HN 看到一帖：有人让 Claude 写脚本修复照片朝向。第一次输出笨拙，他指出问题；第二次感觉依旧脆弱；来回两轮才得到可用版本，于是下结论：</p><blockquote><p>「生成器效率低，还得我亲自把关。」</p></blockquote><p><strong>两轮迭代就拿到可用脚本，真不算慢</strong>。与其说工具差，不如说需要合作磨合——就像跟人类同事 Pair，也要讨论五遍 API 设计才定稿，这很正常。</p><hr><h2 id="我会变差吗？"><a href="#我会变差吗？" class="headerlink" title="我会变差吗？"></a><strong>我会变差吗？</strong></h2><p>真正要警惕的是<strong>技能萎缩</strong>。以刚才的视频项目为例：部分代码是我和代理一起写的，我并未深入每行实现；而自己写的那部分，我能倒背如流。</p><p>怎么办？把“与代理协作”视作<strong>新技能的培养</strong>：如何拆分任务、如何写提示、如何审稿。只要愿意，随时能关掉 AI、自已手撸 Python——底子还在。</p><hr><h2 id="自动化的好奇心"><a href="#自动化的好奇心" class="headerlink" title="自动化的好奇心"></a><strong>自动化的好奇心</strong></h2><p>ChatGPT 推出深度研究功能前，我用早期代理 Windsurf 写过一个「嘉宾履历时间线生成器」：</p><ol><li>Google 搜索目标人物 →</li><li>爬博客、访谈、演讲稿 →</li><li>自动转录与归档 →</li><li>整理出时间线，方便我做播客采访。</li></ol><p>第一次实战是 Hatetris 作者专访。AI 挖出几段连作者本人都忘了写进时间线的往事——当场让我折服：<strong>效果比我人工搜集更全、更快</strong>，而构建这个小系统本身就充满乐趣。</p><hr><h2 id="新技巧，旧习惯"><a href="#新技巧，旧习惯" class="headerlink" title="新技巧，旧习惯"></a><strong>新技巧，旧习惯</strong></h2><ul><li>代理 + <strong>Python</strong>：组合最佳；</li><li>我把<strong>静态类型检查 &amp; Lint</strong> 一股脑加进项目，让 LLM 改动后立即过 CI；</li><li>还加了<strong>重复代码扫描</strong>，因为 LLM 偶尔会重复实现已有逻辑；</li><li>最近最爽的发现：先手动示范一次复杂重构，让代理批量在几十个文件里复制同样手法，<strong>快到飞起</strong>。</li></ul><p>这让我意识到：工具不仅提速，更<strong>扩大了我能动的“改造半径”</strong>。</p><hr><h2 id="像架构师一样思考"><a href="#像架构师一样思考" class="headerlink" title="像架构师一样思考"></a><strong>像架构师一样思考</strong></h2><p>去年圣诞，在墨西哥度假村泳池旁，我试图逆向 Descript 的项目文件格式，好让播客剪辑流程完全脚本化。3 小时后发现项目其实是 zip 包，里面全是 JSON &#x2F; TS。LLM 解析混淆 TypeScript、抽出我需要的 schema；我设计“只依赖必须字段”的策略，确保 Descript 更新格式后仍兼容。</p><p>那一刻我意识到：LLM 承包了底层体力活，我像个**“代码建筑师”**，专注高层决策——以前绝不敢碰、也没时间碰的事，如今成了泳池边的消遣。</p><hr><h2 id="笨拙意味着成长"><a href="#笨拙意味着成长" class="headerlink" title="笨拙意味着成长"></a><strong>笨拙意味着成长</strong></h2><p>初学 Mac、函数式编程、强类型语言时，那种“按什么都错”的窘迫我再熟悉不过。现在与 LLM 共事，只是把“尴尬期”重新拉到眼前——而<strong>正是那些笨拙时刻，标志着飞速成长</strong>。代理像母语者，带我快速领悟 Python 惯用法；我也学会更快放下旧框架的抵抗。</p><hr><h2 id="反「反-AI」"><a href="#反「反-AI」" class="headerlink" title="反「反 AI」"></a><strong>反「反 AI」</strong></h2><p>朋友 Chris 戏称我是 <strong>“Anti-Anti-AI”</strong>——既非无脑吹，也非唱衰派，而是务实地玩工具、产出结果。</p><blockquote><p>你不必追随最热潮，也不必抵制一切新物。<br>试用一下，感受一下，再判断<br>我写这段文字，就是想给“好奇却观望”的你一个推手。</p></blockquote><hr><h2 id="选择去构建"><a href="#选择去构建" class="headerlink" title="选择去构建"></a><strong>选择去构建</strong></h2><p>AI 是否终将替代分析工作、重塑就业？也许吧——那是明天的问题。<strong>今天的事实是：工具已在这里，而且好用又好玩。</strong></p><ul><li>你可以焦虑被淘汰，</li><li>也可以用这些工具做以前没空做的项目。</li></ul><p>对我而言答案显而易见：<strong>继续创造</strong>。</p><p>如果你也仍为解决难题时的那股快感而兴奋，不妨从一个小副项目开始，把它当作学习实验，玩起来。喜欢就深耕；不合口味，大可放下。</p><hr><h2 id="仍然是建造者"><a href="#仍然是建造者" class="headerlink" title="仍然是建造者"></a><strong>仍然是建造者</strong></h2><p>归根结底，我们仍是“建造者”——</p><ul><li>看到问题就想解决，</li><li>想象不存在之物并令其成真。</li></ul><p>工具在变，<strong>乐趣未变</strong>。依旧是那场伟大、迭代、令人上瘾的游戏——这，正是我所期盼的一切。</p><blockquote><p>本期节目到此结束<br>如果它触动了你，或许去试试那些工具；如果你身边有仍在怀疑的“建造者”，分享给他 &#x2F; 她。<br>感谢收听，咱们下期再见！</p></blockquote><hr><h1 id="Transcript"><a href="#Transcript" class="headerlink" title="Transcript"></a><strong>Transcript</strong></h1><p><em>Note: This podcast is designed to be heard. If you are able, we strongly encourage you to listen to the audio, which includes emphasis that’s not on the page</em></p><h1 id="Soybeans-and-Silicon"><a href="#Soybeans-and-Silicon" class="headerlink" title="Soybeans and Silicon"></a><strong>Soybeans and Silicon</strong></h1><p>I grew up on a small farm. Soybeans paid the bills, and the rain on the barn’s tin roof sounded like a snare drum. My dad’s old Massey Ferguson tractor, with its front-end loader on the front and its cutting blades on the back, handled every chore. A green John Deere tractor and a red rust-flecked combine that was so large lived under that noisy roof, and they were my playground.</p><p>The nearest kids my age were a long, long bike ride away, so on July afternoons, I’d climb up into our garage attic, and it was basically like an oven from the heat. It was stuffed with these old cardboard boxes full of dusty pulp fiction paperbacks. I would sit up there, and I would read for hours.</p><p>When our first Windows PC showed up, it was this beige box humming on the family room desk, and my dad had to call a friend who knew computers. That friend coached 8-year-old me through the whole ritual of getting into DOS, sliding in the disk, and typing “NUKEM.EXE,” and then Duke Nukem blinked onto the screen. In that instant, from hitting enter to that explosion of color and sound, I was hooked. The computer was both a lifeline and also the most fascinating thing I had ever seen.</p><h1 id="When-Tools-Change-Overnight"><a href="#When-Tools-Change-Overnight" class="headerlink" title="When Tools Change Overnight"></a><strong>When Tools Change Overnight</strong></h1><p>Hi, this is CoRecursive, and I’m Adam Gordon Bell, and today I want to talk about something that’s been dividing the developer community, AI coding agents. This isn’t another, you know, AI rule replaces all talk or AI is overhyped take.</p><p>It’s more about me and what happens when your identity is tied to building things, and then the tools you use for building fundamentally change. It’s about the resistance that we feel and why maybe we should push through that anyway. I think it will be interesting to the skeptics and the people hyping it up both. I think I have a pragmatic view, or at least an interesting perspective, and I hope you’ll listen along.</p><h1 id="Born-an-Outsider"><a href="#Born-an-Outsider" class="headerlink" title="Born an Outsider"></a><strong>Born an Outsider</strong></h1><p>On Stranger Things that the eighties era and nerdy kids, they play Dungeons and Dragons in a basement and they bike around the neighborhood together. But yeah, that wasn’t my childhood. As I mentioned, I, I grew up in the country, no neighbors nearby. My friends at the tiny school I went to were mostly kids from farming communities, especially when I was young and, and most of them, you know, they run those same family farms.</p><p>Now. We didn’t always have a lot in common. I was kind of the class clown in school, the kid who got bored and acted out, and I knew it was different. That was clear, but it was never clear to me exactly who I was and, and why or how I was different.</p><p>After high school, I went to computer science and I didn’t get super close with the students in that program either, I had a few friends, but mostly I kept busy on my own, always building something. Not just programming, but making websites and messing around with electronic music, downloading pirated software like Photoshop and trying to figure out how to use it.</p><p>When I started working as a software engineer, I finally met people who really understood themselves and were happy with who they were. My friend Don, right? he proudly embodied this nerd culture. But I had never seen Star Wars. I had never played World of Warcraft. I didn’t totally fit in with that crowd either. But then something unexpected happened.</p><h1 id="Finding-My-Tribe"><a href="#Finding-My-Tribe" class="headerlink" title="Finding My Tribe"></a><strong>Finding My Tribe</strong></h1><p>I started meeting people who were just like me. I remember going to a job interview at a startup in San Francisco. It was not far from the Twitter offices; it was in the downtown area. Right away, I noticed people there that felt familiar to me. By day, everyone was writing whatever code needed doing, but on the side, they were learning Haskell, building games in Unity, or just doing these things for fun. I would say my favorite author, you know, was Ted Chang, and somebody else would say, “Oh yeah, I love him,” but I moved on to Greg Egan. They just seemed to have some of the same interests as me.</p><p>It was so odd, to be honest. But here’s the thing I didn’t fully understand at the time: I wasn’t just finding people like myself; I was finally discovering who I really was.</p><h1 id="Addicted-to-Making"><a href="#Addicted-to-Making" class="headerlink" title="Addicted to Making"></a><strong>Addicted to Making</strong></h1><p>A couple of years ago, I was on vacation in Florida with my wife, sitting by the pool with my laptop, building this markdown parser from scratch. And she was reading, perfectly content, and I was in this flow state for, you know, where hours disappear, chasing down edge cases and getting that hit of dopamine whenever something clicks into place.</p><p>It reminded me of being a teenager, right? Growing up in the country, my dad got a snowmobile and wanted me to come play, or I had a friend who had a dirt bike who would swing by with the engine revving, ready for an adventure. But I was hunched over my computer, building a mastermind board game in Turbo Pascal. And you know, I would go outside and I would go play. But the most exciting things for me were those building moments. The building stuff was when I had the time of my life.</p><p>There’s something intoxicating in that moment when you know the algorithm finally handles all the edge cases, when you realize that you built something that didn’t exist before, and it works. It’s pure, and it’s addictive in the best possible way.</p><p>So yeah, it took me a long time—like an embarrassingly long time—to admit to myself that I would rather spend 10 hours on a Saturday deep diving into some new programming framework than be at most parties. I would rather figure out how to automate something that probably doesn’t need automating than do almost anything else.</p><p>I’m someone who gets genuinely excited about reading the documentation for some new framework. If I think it might solve some problem that’s been bothering me, I see a problem and immediately start thinking about how I could come up with a solution, even if it’s totally overkill. It’s just something I enjoy.</p><p>But yeah, once I finally accepted that—like really accepted it, not just tolerated it—I stopped apologizing for disappearing into code caves for weekends. I stopped feeling guilty about getting excited about a new programming language and boring my friend about it at social events. It wasn’t a weird quirk that I needed to fix. It was just who I was. Maybe it was my superpower.</p><h1 id="My-Digital-Clubhouse"><a href="#My-Digital-Clubhouse" class="headerlink" title="My Digital Clubhouse"></a><strong>My Digital Clubhouse</strong></h1><p>In San Francisco, I met these people, and it turns out there were a lot of people like me—folks who liked building projects, who liked writing and sharing ideas. A lot of them at this particular place came from Waterloo, another place in Ontario, and then had moved to the Valley. But I was still in Ontario, so I spent hours and hours on Hacker News.</p><p>It felt like an unofficial clubhouse for people like me. And it felt like a place where I belonged. Like there finally was a place—these were people who were building things and who understood the joy of solving problems that didn’t need solving, who got excited about elegant code, or who spent their free time learning a new programming language, learning math, or doing whatever just for fun, right?</p><p>After years of feeling like an outsider, it felt like home.</p><h1 id="The-Great-Coding-Rift"><a href="#The-Great-Coding-Rift" class="headerlink" title="The Great Coding Rift"></a><strong>The Great Coding Rift</strong></h1><p>But now, early to mid 2025. If you look at Hacker News, that sense of belonging for me can feel fractured. The community that made me feel understood feels like it’s splitting over LLMs and coding agents. Some folks posting exciting updates about what they’re building with Cursor or Claude, or posting updates about the latest releases of coding agents, and others pushing back hard, arguing these tools produce brittle code and make developers lazy. It feels like the clubhouse turned into a battleground between this changes everything and this ruins everything.</p><p>I feel like I’m pretty pragmatic and somewhere in the middle, but I’m definitely leaning towards excitement after, I don’t know, 20 years of coding for a living. I’ve seen enough tool changes to recognize when something’s worth exploring. I feel like if you love building things, if you like to create, nobody can take that away from you. Not a boss, not a new tool, not even yourself. The urge to build these side projects and experiments that I love to create, it’s just part of who I am, right? And AI can’t take that away from me, but maybe it can help me.</p><p>But even if you know Claude seven or ChatGPT six drops and suddenly it’s eight times better at coding than anybody, that doesn’t mean that I’m gonna wanna stop building things. It doesn’t mean that you’ll wanna stop building things. Maybe the what will change because it can feel devaluing when some skill you’ve built up over time can be replaced by an API call. But that drive just doesn’t disappear. The job market might change and expectations might shift, but there’s a way to embrace the change that’s going on and also stay connected to this need to build.</p><h1 id="Trading-Code-for-Meetings"><a href="#Trading-Code-for-Meetings" class="headerlink" title="Trading Code for Meetings"></a><strong>Trading Code for Meetings</strong></h1><p>Let me tell you about a fear that I know intimately. Once I saw myself as a builder, I hit a wall in a way I didn’t expect. When I became a software engineering manager, it felt like a special opportunity. I was working remotely. I’m here in Peterborough, not near any tech hubs, and I’ve been working remotely for quite some time. But this is pre-COVID. The roles were limited, and the chance to be an engineering manager at a large and growing tech company felt very exciting. I couldn’t say no.</p><p>I wanted to step up. I wanted to lead this sharp team of functional programmers at this fast-growing company that had recently IPO’d. It seemed exciting, the idea of climbing the ladder of, you know, somewhere with hundreds of engineers. It also just felt like the thing that you’re supposed to do.</p><p>But almost right away, anxiety crept in. It wasn’t very long before I wasn’t coding anymore at all, and when I would finally have to do a tiny task, you know, I would open up my VS Code, do a git pull, and see, you know, it’d be 37 days since I’d last pulled the code. All I would need to do is some small task, open a PR, and then Adrian would approve it two minutes later.</p><p>And I remember him saying in Slack, “Feels good to ship something, doesn’t it?” It did. But honestly, that feeling faded as fast as the GitHub Actions build because the rest of the day was meetings: Ireland at 8:00 AM, then DC folks, you know, through the middle of the day, Pacific Coast, near dinnertime. I started having my phone on this tripod with earbuds in so that I could go down for coffee while still in a meeting. I spent way too much time reading and updating Confluence. I just hate Confluence. There was a lot of Confluence updating, a lot of digital paperwork, and a lot of being a router for messages between various teams. Time as a manager moved fast.</p><p>Ted, a friend who stepped into management at the same time I did, had the same worry. And I remember telling him, “Don’t stress about it. You were a good developer. And so being a manager isn’t going to take that away. Like, maybe your skills will get a little bit behind, but you can always ramp back up if you need to switch. But while you’re a manager, that should be your main focus.” That was my advice to him.</p><p>I wish I could take my own advice, but I found that I couldn’t because, as I said, building things and being good at that was a big place where I got a lot of self-worth. But now I was in back-to-back meetings with endless messages flying around, and I just started to worry that after finally figuring out, you know, what brought me joy, I had just traded it all away.</p><h1 id="Tools-vs-Identity"><a href="#Tools-vs-Identity" class="headerlink" title="Tools vs. Identity"></a><strong>Tools vs. Identity</strong></h1><p>I think that a lot of resistance to AI coding tools comes from the same place: fear of losing something that has defined you for so long. People are reacting against overblown hype, and there is overblown hype. I get that, but I also think there’s something deeper going on here. When you’ve worked hard to build your skills, when coding is part of your identity and where you get your worth, the idea of a tool that might replace some of that is very threatening.</p><p>But here’s what I want to encourage you to do: put some of that fear aside, at least for a learning experiment. Treat these tools like something that you need to get familiar with. Treat it like something you should explore in a side project, something worth spending time on. Not because they solve every problem, but because they’re worth understanding.</p><p>And if you are a builder, these tools, Claude Code, AMP, or Cursor, they’re designed for you. But to see that, you need to overcome that fear or at least admit to yourself that it’s there. Because when coding is part of your identity, a tool that devalues it is hard. I guess what I’m trying to say in my long-winded way is that if you’re a builder and you get joy from that, once you master these tools, you’re going to love it. Some of your skills will be less valuable for sure, and that’s scary as fuck. But other ones are 10 times as powerful, 10 times as valuable as they were before. And that’s exciting.</p><h1 id="Reinventing-Myself-Again"><a href="#Reinventing-Myself-Again" class="headerlink" title="Reinventing Myself, Again"></a><strong>Reinventing Myself, Again</strong></h1><p>So, as I moved from engineer into management and then left that for developer relations, I found myself coding less and less. DevRel scratched the itch in a different way. You know, writing things and making videos. It was another creative building endeavor, a little bit different. But I still got to code and build small sample apps and show them off.</p><p>So it worked, but I wasn’t in the trenches as much as I was on a product team. On the product team, I always wanted to keep up. I always wanted to be the best. So I’d spin up side projects to try out new tools, to experiment with new techniques, or to finally build something that was polished in the way that I wanted to do at work.</p><p>But we just didn’t have the time, or that code was too old and scary, or whatever. But even when I was coding less at work, I still needed to build things. Honestly, I find it kind of addictive. There’s this feedback loop where you start building something and you get stuck, and then you try to figure it out, and then you get that rush when you do, and then you wanna do it all again.</p><p>When I started playing with languages that had stronger types, the highs and lows got even sharper. This, you know, like excitement and frustration when I’m deep in a coding session, totally focused, and you forget about everything else. It’s just, it’s a great feeling.</p><p>Yeah, but honestly, it can get frustrating. This addiction. You know, I block out time to work on the podcast in the morning, doing the editing or setting up the interviews or hunting for stories, and sometimes I love it, but other days not so much. And it’s always easy to reach for some random coding project and convince myself that it will solve my problem. I just can’t help myself. I just like to build little things.</p><h1 id="Side-Projects-That-Spiral"><a href="#Side-Projects-That-Spiral" class="headerlink" title="Side Projects That Spiral"></a><strong>Side Projects That Spiral</strong></h1><p>Here’s a weird example. If you check out the podcast website CoRecursive.com, there is a &#x2F;rankings page, and on it, you’ll find sub pages that list the most popular episodes from other coding podcasts: best Python podcast, best Android, best cloud, best Linux. This started as a weird side project that I got way into at some point, you know, distracting myself.</p><p>I had basically this pile of Bash scripts because I was trying to get better at Bash then, and honestly, it became way too much Bash. But I was scraping feeds of podcasts, scraping Twitter, looking at reviews, trying to find for these podcast episodes, which ones were the most popular, right? That would help me find guests to interview on the show. But it kind of took on a life of its own.</p><p>And at some point, I was like, I should just put this up on the website. Eventually, I rewrote it in a, and honestly, I never even checked the results. I’m not even sure I used the tool, but yet it still exists, and it’s still running daily, gathering metrics, and probably at some point, I’m gonna try to rebuild it in Python. Because that’s just what I like to do.</p><h1 id="The-Chess-Engine-Moment"><a href="#The-Chess-Engine-Moment" class="headerlink" title="The Chess Engine Moment"></a><strong>The Chess Engine Moment</strong></h1><p>But right now, we’re at this moment; it’s like 2005, and you’re a decent chess player, not grandmaster level, but you know your openings. You’re pretty good, but you’ve been getting crushed by chess engines. Then someone suggests, like, what if you use the engine to help you think through positions, but you make the final calls the first time you try it?</p><p>Something magical happens. The engine spots techniques and tactics that you missed, but you see the long-term strategy that it doesn’t quite grasp. So together, you’re playing better than ever, better than either of you could alone. You’re not just using the chess engine as a calculator; you’re collaborating with something that has different strengths than you do.</p><p>That’s exactly where we are with coding tools. Right now, we’re in the 2005 chess mode. That moment of discovery, when you realize it’s not human versus machine, it’s human with machine. These LLMs might be able to single-shot build some simple stuff like a React todo list, but to build something hard, to work in a large codebase, to tackle hard things that haven’t been done before, they need to be paired with an experienced builder who can guide them, right?</p><p>And that’s you. You bring your intuition about what needs to be built and the way it should be built, and your sense of when something’s offered. There might be a better approach, your ability to break down complex problems into manageable pieces. And the AI brings its speed and pattern recognition and ability to handle the tedious parts.</p><p>And together, you can tackle projects that you never would’ve had time for alone. If you’re someone who isn’t using these tools yet for whatever reason, I want you to set aside your objections and, yeah, treat it as a learning project, not because you have to love it and not because it’s gonna solve all your problems, but because this is a skill worth developing.</p><p>Because here’s the thing about learning projects: they can be frustrating, right? When I started at Tenable, I had always worked on Windows, and then my boss just says, “Hey, you’re getting a Mac.” All the devs used Macs, so that was the way, but I was a Windows person, and I didn’t say anything. I just went along with it, and my fingers had, you know, years and years of muscle memory burnt into them. You know, Control C, Control V, Control everything. Now suddenly it’s Command, and my pinky keeps stabbing at the Control key.</p><p>Like I’m trying to punch through concrete, and things aren’t working. You know, on Zoom screen shares, I’d fumble to do basic tasks with everyone watching and hitting the wrong keys and getting nothing. You know, “Sorry,” I’d mutter, and I’d be frustrated, and I seemed like I didn’t know what I was doing.</p><p>My fingers failing me at the exact moment I needed to look competent. My MacBook was gorgeous, right? Way nicer than my old ThinkPad. But it felt like I was working with oven mitts on. But now I couldn’t imagine going back, right? Learning Haskell was the same torture. I spent hours building this beautiful parser for parsing log lines using Parsec. This was years ago, and the code was so clean and elegant, and it looked like poetry. And then it would break because it couldn’t handle, you know, handling a bracket or a pipe in some random spot.</p><p>And it would fail in some completely unrelated way. The code was simple to look at, but building it was hard. Where in C, I could put together a regex with name groups in maybe five minutes, but here the code was prettier, but debugging, it was such a challenge. But that’s the pattern. The moments when you’re thinking, “This is completely stupid,” or “I’m frustrated at how this isn’t working,” or “I feel slower,” that’s when you’re growing the most, and it hurts because everything feels clunky and impossible, and you start wondering if you’re actually getting anywhere or just torturing yourself for no reason.</p><p>But that’s what it’s like to learn. That’s why it’s a great time to put aside your fears and frustrations and invest some skills in building with one of these tools. Treat it like deliberate practice, something you do because the skill itself is valuable, and it feels good to learn. It just also feels awkward and frustrating in the way that learning something new always does.</p><h1 id="Treat-This-as-a-Learning-Project"><a href="#Treat-This-as-a-Learning-Project" class="headerlink" title="Treat This as a Learning Project"></a><strong>Treat This as a Learning Project</strong></h1><p>But yeah, if you wanna work with a coding agent, this is what I do. You don’t have to listen to me, but I do want you to consider it, right? Especially if you have a strong aversion to these tools. But also you’re a builder. I just think it’s something you should try. Pick a good tool, you know, pick the one with the strongest coding model right now.</p><p>That’s the cloud models with thinking. And then make sure you’re using an agent. Use claude code. Use amp, use cursor. Seems very popular, but there’s a million of them. And yeah, you’re gonna have to spend some money; you need to pay for all these API calls that they consume so aggressively. But commit some time to playing around because there’s all these criticisms I see on Hacker News from people who haven’t taken the time to use and play around with these tools and build the skills. And if you haven’t, then your criticisms actually don’t hold a lot of weight because yeah, when you get over the hump, when you build up some tricks, and even before then, it’s just so much fun.</p><p>And I’ll get into some of the fun I’ve had, but first, you know, some advice. You can’t treat these coding agents as some magical AGI that’s gonna fix everything or make you 10 times faster overnight. It’s not that. Think of it as a new tool that you’re learning to use, like switching from Mac to Windows, or moving from imperative to functional programming or learning OOP.</p><h1 id="Start-Small-Start-Smart"><a href="#Start-Small-Start-Smart" class="headerlink" title="Start Small, Start Smart"></a><strong>Start Small, Start Smart</strong></h1><p>Treat it as a chance to learn something new. Start small, right? I like to think of it as like a junior programmer that I’m pairing with. I talk to it, and it does the work. It’s hands on keyboard. One of the fun learning tasks that I’ve done is pick a library that you rely on and don’t understand well. You know, clone its GitHub repo, and then fire up your favorite agent and start asking questions. How does this work? Where’s the control flow? What are the main data structures? Have it generate some quick and dirty docs specific to the way you wanna understand things.</p><p>It’s low stakes, and it’s a great way to get comfortable with this back and forth process. It can explore the code base probably faster than you can, and then it can help explain to you things, and then you can ask questions back and forth.</p><p>Next after that, you know, try a small project, maybe something you’ve built before but with a new twist or in a new language that you’re less comfortable with. Don’t expect the LLM to handle everything. Instead, treat it like a coding partner. Something that helps you with writing, right? You can work together and plan out your project and then tackle the first step, and then the next, ask it things like, can you write a test for this?</p><p>The idea is to move forward one piece at a time, learning as you go. Start small. Let the agent handle the code writing and see what it gets right, and what it gets wrong, and then offer input and build up rules, and you’ll get better.</p><p>Working with an LLM is like pairing with somebody who’s brilliant at some things and clueless at others, and sometimes has different tastes than you. There’s a learning curve, and the people mastering these tools, they’re the people who have developed intuitions about what works and workflows that work, and learn to lean into the strengths while avoiding the weaknesses. But to get there, you have to give it a chance. Let me tell…</p><h1 id="Building-With-AI"><a href="#Building-With-AI" class="headerlink" title="Building With AI"></a><strong>Building With AI</strong></h1><p>you about a recent project that I was working on. I wanted to build a program that takes a YouTube video, downloads the MP four, pulls out the audio and generates a transcript, and then, you know, I’m creating a blog post version of that video by grabbing pictures, you know, key images from the video itself. So I open up vs code with amp in the sidebar, and I started dictating I literally talk into the box. For the prompt using Mac Whisper, I’ll say, I wanna download YouTube videos and generate a transcript. Then I wanna identify key visuals and note them in this file. You know, is there a Python native way to do this, or should I use the YouTube download program?</p><p>I normally do. We have some back and forths, 15 minutes of me rambling and getting input back on different ways. It could work.</p><p>Sometimes it misses the forest from the trees. Yeah, we do software design together. I use it as an advanced rubber doc. and yeah, you can tell I do anthropomorphize these agents. I just talk to them back and forth. That’s just how it feels for me to build something this way.</p><p>So we got the first version working. It was a clunky one-off script, but I had various stages to add, so we had to convert it to a proper Python project organized by files. You know, I committed after every major change that way I could roll back if things went sideways, which they sometimes did.</p><p>But this whole process feels very different than working with something like Devon or these tools where you put together a GitHub issue that you know exactly describes what you want, and then let it run off and do the work. Honestly, I’ve never worked with one of those tools and, and I don’t super trust them because my experience of building is, is very iterative. I like this back and forth. I wanna build in a certain way. And in fact I had to build up a bunch of linting scripts so that the generated code would come out the way I wanted.</p><p>But yeah, as we built, I hit Gemini’s file size limits. You can only post files up to a certain size. Anything bigger needs a secondary API upload. Then you send Gemini a file reference. And so we got that working. But Then we have to add FFmpeg to re-encode videos to lower the resolution so that a lot of times we don’t even have to do the secondary upload.</p><p>And there’s back and forth and there’s testing and there’s adding new conditions and there’s amp going out and digging through the docks, which is super helpful actually for it to go out and try to find what’s the relevant stuff. And in some ways, it felt like it took ages to build this thing. ‘cause there was a lot of back and forths, but it actually came together pretty fast. And on my own, I would’ve never finished it. I just didn’t have The time. But with amp, I could push through the tedious parts and there was still plenty of frustrating moments, plenty of like, Nope, you forgot about this, you know? But for me personally, having these back and forths isn’t that big of a deal. It’s just communication. It’s just pair programming and the whole process was fun.</p><h1 id="Beyond-‘Not-Perfect’"><a href="#Beyond-‘Not-Perfect’" class="headerlink" title="Beyond ‘Not Perfect’"></a><strong>Beyond ‘Not Perfect’</strong></h1><p>Now I can hear all the objections. If I had to constantly guide them, then why not just write it myself? And I feel like that criticism, it’s not that it’s wrong, it’s just kind of missing the point. It’s kind of missing what this experience was actually like. It was fun and fast, and better code in the end than I’d actually do on my own. Another complaint I hear is why bother, right? If an AI is supposed to be so advanced and maybe even replace this, why do I have to learn all these tricks just to use it? Why invest time? If it’s really that good, shouldn’t it be simpler and not harder?</p><p>But honestly, these are just tools. These aren’t an AI. If it was an AI, you wouldn’t need to fuss over prompts or workflows. You could just say, you know, watch me using this software. Or can you take the Linux kernel and rewrite parts of it in Rust, and a AI would figure it out and send you a pull request? Or, here’s 50 videos of people getting stuck. Can we smooth out some of the rough edges, and look through this and find performance problems? But we’re not there, right? These tools can boost what we do, but only if you’re willing to experiment and learn and iterate and guide it. And put in the work. Before you do that, you have to get past your own fears and biases.</p><h1 id="What-HN-Gets-Wrong"><a href="#What-HN-Gets-Wrong" class="headerlink" title="What HN Gets Wrong"></a><strong>What HN Gets Wrong</strong></h1><p>Here’s an example from Hacker News. Someone complained that code generators like Claude are inefficient. They ask Claude to write something to normalize image orientation. You know how sometimes pictures that you take on your phone, they’re actually sideways, but they use a header to say it goes the other way? And then some photo programs like to ignore that header and display them sideways. They wanted a program to fix that. So they asked Claude to do it, and they said that the first solution was clunky. So they pointed out the problem and Claude tried again. But that solution felt brittle, and it took two rounds of back and forth before they finally got to a version that they liked and worked well.</p><p>And their takeaway was that these tools, they just lead to less than ideal solutions, and you have to step in and guide them. That’s like actually totally fair criticism, but honestly, taking two rounds to build something that’s not bad at all, maybe your expectations are just too high, or you know, maybe you could have explained it clearer.</p><p>But these tools aren’t magic. Like they’re not gonna nail every problem on the first try. I think of it more of like working with a teammate. You need to go back and forth. You need to refine what you’re working on. You need to collaborate to get good results. I mean, I’ve gone back and forth five times or more just trying to nail down the best structure to use for a specific solution. That’s not a flaw, that’s just how building things actually works. Right? The same would happen if I were designing something with a colleague.</p><h1 id="Will-I-Get-Worse"><a href="#Will-I-Get-Worse" class="headerlink" title="Will I Get Worse?"></a><strong>Will I Get Worse?</strong></h1><p>But a real risk with these tools is skill atrophy, and that does worry me. Take the video transcribing program I was talking about. I don’t really know all that code. I certainly don’t know it all well. Meanwhile, there’s code that I built myself that I know inside and out. At least, you know, when I first finish it, I remember how each part was used and how I structured things. The code I didn’t write or that I wrote with the agent, I just don’t have the same depth on it. I’ve read and reviewed most of it, but certainly lots of it I haven’t. Some tests I just never looked at.</p><p>So, we just needed to test this condition. So yes, like skill atrophy is a real risk. But once again, I feel like if you treat this as a learning project instead of focusing on building my Python chops, right? Now, I’m looking at building a new skill. You know, figuring out how to use these tools to build things, working alongside a coding agent and getting things done. When I look at it that way, I don’t worry so much, right? If I’m losing my edge, that’s okay. I can always go back to writing Python by hand, which I still do sometimes. Nothing’s stopping me.</p><p>Other complaints, they don’t ring as true to me. Right? If you’re having trouble getting real work done with coding agents, it’s probably a skills gap, and that’s okay. Instead of blaming the tools, just try shifting your perspective. What am I missing? How can I get better at using these tools?</p><p>Other developers are building real things, so it’s worth asking, you know, what could I be doing differently, and would that be worth it? Because maybe you can’t evaluate things until you really understand how they work. The tools aren’t perfect, and it is totally fair to feel frustrated or want to walk away or try again next year when they got better. But I pushed back a little bit, right? This stuff is new and honestly, it’s fun to mess around with, and I think it’s worth exploring.</p><h1 id="Automating-Curiosity"><a href="#Automating-Curiosity" class="headerlink" title="Automating Curiosity"></a><strong>Automating Curiosity</strong></h1><p>Another thing I built before Chat GPT’s Deep research feature existed, I built my own research assistant using Windsurf as the coding agent at that time, because part of my interview prep for the podcast always involves creating a timeline of someone’s career. You know, where they went to school, what their jobs were, what their projects were, and what their pivots were. Right? It’s useful, it’s super useful for guiding the interview, but it’s also time-consuming.</p><p>So I built a web app that automates this process. It’ll do a Google search for the person, find their blog, you know, spider the links, try to find all their posts, follow links, evaluate if they’re relevant, hunt for interviews they’ve done, transcribe them, pull all these documents down, and then attempt to build a timeline from that. When I first used it seriously, it was for the Hatetris’s interview, and those guys being very detail-oriented. They prepared their own timeline of them building Hatetris, and I found a couple of things that they didn’t include, and I thought they might be hallucinations, but they weren’t. It was real things that happened that they just forgot to include in their timeline. It was mind-blowing.</p><p>I had saved myself so much work, and it was actually doing a better job than I did, but also building that tool was a lot of fun. Working with coding agents has some of the same addictiveness that I’ve always loved with building these feedback loops, these cycles of frustration and then breakthrough that can make programming addictive. I guess the probabilistic nature of them maybe even makes it more addictive. Variable cycles of reinforcement, but also building up new skills. Right? I’ve learned not to micromanage the process. When I’m planning with amp, I’ll use dictation and speak for quite a while various concerns and then send it off and get some feedback, and we iterate and we do some design together.</p><p>So I built up my own, you know, bag of tricks. Dictation is definitely one of them. But yeah, I’m just sharing some of my experiences here, uh, in the hopes that if you’re doubtful that you might give these things a try. Or if you’re listening and you’re not doubtful, but you have a coworker that is, maybe you can share this with them. I don’t know. But another thing I do a lot is use the coding agents for just small automation opportunities. GitHub Actions is always a pain for me, or builds in general.</p><p>So I like, you know, asking the coding agents to make the changes, or if I make the changes myself, asking it to review the changes and look for any problems before I commit and send it off. Because the build feedback loop is just brutal, right? So if I can catch problems earlier, it saves me a lot of time. It’s like getting a PR review, but instantly, uh, in a way that’s faster than waiting for the build to run, which is sometimes slow.</p><h1 id="New-Tricks-Old-Habits"><a href="#New-Tricks-Old-Habits" class="headerlink" title="New Tricks, Old Habits"></a><strong>New Tricks, Old Habits</strong></h1><p>I wasn’t always programming in Python. Uh, that’s a relatively recent thing, but I’ve been using Python a lot because agents work with it so well. I’ve also found that all the static typing and linting that I’ve always loved is really also a key when working with these agents. Now, I throw every tool that I have at my code: formatting, linting, type checking. That way, when the LLM makes a change, everything runs through the linter step, and we catch problems.</p><p>I even use a duplicate code finder since LLMs sometimes will try to re-implement something because they didn’t see that there’s an existing solution somewhere else. The duplicate code finder is super helpful for guiding it. My biggest trick lately, my biggest improvement is doing kind of mass refactorings. Change the signature of something that’s used quite a bit in a way that’s a little bit more complex than your standard refactoring. I’ll do the first one manually. Once we’ve done the first one, I can say, “Okay, now do the rest.”</p><p>This exists in a whole bunch of files. Then the call sites need to be updated, or, you know, there are eight more instances of this, and it’ll go off and find them and make all those changes flawlessly. And with AMP, I’m using subagents, and it can do it so fast. It’s so nice.</p><p>That, for me, was a big realization lately: these tools weren’t just helping me write code faster. They were changing the size of projects I could tackle and the way I could think about reorganizing things. Of course, they’re also probabilistic, so they can make a mess. I think we’ll come to see the anti-pattern of the AI-empowered engineer as sending in the PRs that rewrite, you know, two-thirds of the codebase or whatever. We still need to be targeted in our changes, even if we’re feeling more powerful with these tools at our disposal. But yeah, the expanded ambition is a real thing.</p><h1 id="Thinking-Like-an-Architect"><a href="#Thinking-Like-an-Architect" class="headerlink" title="Thinking Like an Architect"></a><strong>Thinking Like an Architect</strong></h1><p>Okay. Another vacation story. Over this last Christmas, Kourtney and I were in Mexico. We were on the Yucatan Peninsula at an all-inclusive resort. It was super nice. I was sitting poolside with her in one of those beach beds, frozen drink in hand, you know, laptop balanced on my knees. And she was reading this massive Robert Caro biography while I was trying to reverse engineer Descript’s file format so that I could programmatically edit my podcast. Three hours in, I had tracked down where Descript stores its project files; it’s a zip file that contains a whole bunch of documents.</p><p>Then we were making changes to the documents, reloading the project, testing what breaks and what doesn’t. But some of the processes involved understanding obfuscated TypeScript from Descript’s own code, and I would never be able to understand that on my own. But the LLM could read through it and grab the pertinent details here and there. I realized I was attempting something that I never would’ve tried before, not just because it was technically ambitious, but because half of it was in a language that I didn’t really use and analyzing code that had deliberately been made unreadable.</p><p>A breakthrough came when I figured out that I could use this backup and restore workflow in Descript, make changes to the zip file, and then restore the project from backup. Then boom, my edits were in place, but I wasn’t getting bogged down in the grunt work of parsing all these JavaScript files and getting things edited in the right spot or deciphering crazy functions. I was working at a level higher and telling the LLM specific things, like we only want to depend on the parts of this JavaScript file that we need. Because if they make a change in their format, we want our edits to stay stable. So we don’t want to parse the whole thing.</p><p>But that’s when it hit me. I was being kind of a coding architect. I was always kind of skeptical of this role. You know, you hear of like the enterprise architect who just describes how things work, but here it was working because the LLM was doing all the detail-oriented grunt work, and I was describing what I thought the best approaches would be. We never got a great automated testing loop working because Descript is UI-driven, and this backup and restore I had to do through the UI. So the reloading was kind of manual, and eventually, I got distracted and I never totally finished the project.</p><p>But lying there by the pool, iterating on this weird experiment while Kourtney read in her book, I realized something had changed. I was thinking at a different level. I was exploring an interesting problem and just throwing away approaches that didn’t work because the tools had removed enough friction that I could focus on these very interesting parts of the problem.</p><h1 id="Awkward-Means-Growing"><a href="#Awkward-Means-Growing" class="headerlink" title="Awkward Means Growing"></a><strong>Awkward Means Growing</strong></h1><p>I do sometimes hate the uncomfortable feeling of not knowing what I’m doing. You know, when you first start using something, that anxiety kicks in. The same feeling of when I started to use a Mac or learning functional programming, when everything feels clunky or you get in a frustrating feedback loop. But I’ve learned to recognize that that discomfort is often a sign that I’m growing.</p><p>You know, when I started working with Python more seriously, I kept trying to bring my SCC habits over, you know, pattern matching and immutable data structures and whatever. And some of it translated well, but some of it was just fighting against the language. But working with an LLM, I can let go of that resistance faster. Instead of forcing old patterns, I can start asking, like, well, what would be the Python way to do this? And the tool can help me discover idioms I would’ve never found on my own. I still kind of like to do Python my own unique way. I’m not huge on these giant classes with a lot of state.</p><p>I like to have some known data structures that you pass around, but it’s helpful to have a native speaker when you get into a new area. They can teach you, you know, the rhythm of the language. And because the LLMs behind these agents understand so many different pieces of technology, they can be a great guide. When you start working in a new area, it’s like, remember when you first start coding and everything was new and you stumble across some feature or library and it suddenly made everything click? Working with LLMs makes that easier, right? It brings back that sense of discovery.</p><p>Maybe it’s just me, but it feels great to always have this partner who’s there, who’s game to explore weird ideas and try different approaches or just explain things to me from a new angle. They make the whole process feel a bit more playful and a little bit less like grinding through documentation and looking for the exact thing that describes this problem I’m having. But look, I get it. If this whole exploration process doesn’t appeal to you, maybe you love your current tools and workflow. Maybe you’re an expert at the very specific thing that you’re doing, and the agents are nowhere near where you’re at until they’ll just slow you down. Maybe you just wanna focus on other skills right now. That’s completely fine. Not everybody needs to be on the bleeding edge of everything all the time.</p><h1 id="Anti-Anti-AI"><a href="#Anti-Anti-AI" class="headerlink" title="Anti-Anti-AI"></a><strong>Anti-Anti-AI</strong></h1><p>That’s cool. My friend, and previous podcast guest, Chris Krycho, was telling me that I’m anti-anti-AI. And honestly, I feel like that fits, right? Some folks hype up these tools nonstop. Others push back hard against them and say they can’t do anything. And then there’s people like me, not cheerleaders, not doomsayers, but pragmatically building things and having a lot of fun. I think these tools are useful. I also think, like I come from an odd place right after almost 20 years of coding for a living day in, day out. I don’t spend as much of my day writing code as I used to. And that puts me in a good spot to see how these tools can boost what we do. Because honestly, you don’t have to be a genius to out code me in Python.</p><p>I was never a Python expert, but that made it easier for me to just see how much help they’re bringing. It’s totally fine if you don’t agree with me. Not everybody needs to use coding agents for everything. I’m just here to speak up for anyone who’s curious and unsure. So my pitch is like, give these tools a shot. There’s a big gap between the hype and the pushback; but trying them out is the first step to bridging it. It’s just an exciting time to build things. The coding I do now is very different from when I was a full-time backend Scala engineer, you know, working on finding container vulnerabilities. I still love to code, and it’s incredibly fun, and these tools exist and they aren’t going anywhere.</p><p>When I think about my career, right, it just feels like another transition from that kid working on basic programs and then VB.NET to then, you know, learning object-oriented programming in college, and then moving from Windows to Mac and from imperative to functional and from individual contributor to manager, and then back again to building things.</p><p>Each transition feels awkward at first, but then natural and essential and fun. And right now I feel like I’m drawing on so many skills I already had: breaking down problems, understanding systems, debugging when things go wrong, knowing when something feels off. It’s just the wrong approach. The core of what makes someone good at building software hasn’t changed. It’s just that now you can have this powerful partner that can help out in the process. The same curiosity and the same drive that always excited me to understand how things work and how to build things. There’s just like a new tool, but the fundamental satisfaction of creating something is still there. Like that’s unchanged.</p><h1 id="Choosing-to-Build"><a href="#Choosing-to-Build" class="headerlink" title="Choosing to Build"></a><strong>Choosing to Build</strong></h1><p>Am I worried that an AI breakthrough will come around and replace all analytical thought that will force us to rethink everything about employment and work in the world? I mean, honestly, a little bit. It does seem like these AIs are getting smarter, but that’s a problem for another day.</p><p>Right now, these tools exist, and they’re powerful, and they’re incredibly fun to work with. I could spend my time worrying about obsolescence, or I could spend it building things that I never thought I’d have time to build. I could resist these changes, or I could lean into them and see where they lead me.</p><p>And for me, it’s obvious what I want to do. I want to build things. That’s why I say, if you’re curious, start small. Pick a side project, treat it as a learning experiment. Have fun. You might discover that working this way scratches the same itch that drew you to programming in the first place. Or you might decide it’s not for you; that’s fine too.</p><p>But if you’re like me, if you still get that rush from figuring something out, if you still love the moment when messy ideas crystallize into something that works, then this might be worth exploring.</p><p>Because at the end of the day, we’re still builders, right? We’re still the people who see problems and wanna solve them, who imagine things that don’t exist and want to figure out how to make them real.</p><p>The tools have changed, but the joy hasn’t. It’s still this great, fun, iterative process, and honestly, that’s amazing. That would be exactly what I would’ve hoped for.</p><h1 id="Still-a-Builder"><a href="#Still-a-Builder" class="headerlink" title="Still a Builder"></a><strong>Still a Builder</strong></h1><p>That was the show. This episode was a bit different, just me sharing my thoughts on something that I’ve been thinking about a lot, and that I know a lot of people also are thinking about, whether you’re skeptical of these tools or already using them. If this show, you know, resonates with you or makes you think about anything, or change your behavior, hopefully just try some things out, and have fun doing it. I love to hear about that.</p><p>And also, if you know someone who’s resistant to trying these tools, who’s a great builder, maybe share the episode or maybe they have a more nuanced take, but please share it with them. Until next time, thank you so much for listening.</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI-%C3%97-%E7%BC%96%E7%A8%8B/">AI × 编程</category>
      
      <category domain="https://deusyu.app/categories/AI-%C3%97-%E7%BC%96%E7%A8%8B/%E6%92%AD%E5%AE%A2%E8%AF%91%E4%BB%8B/">播客译介</category>
      
      
      <category domain="https://deusyu.app/tags/LLM/">LLM</category>
      
      <category domain="https://deusyu.app/tags/AI-%E7%BC%96%E7%A0%81%E5%8A%A9%E7%90%86/">AI 编码助理</category>
      
      <category domain="https://deusyu.app/tags/%E5%BC%80%E5%8F%91%E8%80%85%E7%94%9F%E4%BA%A7%E5%8A%9B/">开发者生产力</category>
      
      <category domain="https://deusyu.app/tags/Builder-%E5%BF%83%E6%80%81/">Builder 心态</category>
      
      <category domain="https://deusyu.app/tags/CoRecursive/">CoRecursive</category>
      
      <category domain="https://deusyu.app/tags/%E7%BF%BB%E8%AF%91%E7%A8%BF/">翻译稿</category>
      
      
      <comments>https://deusyu.app/posts/when-ai-codes-whats-left/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>深度研究｜混合云平台价值深度评估：基于第一性原理与人性洞察</title>
      <link>https://deusyu.app/posts/hybrid-cloud-value-eval-2025/</link>
      <guid>https://deusyu.app/posts/hybrid-cloud-value-eval-2025/</guid>
      <pubDate>Wed, 02 Jul 2025 01:43:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p><strong>这是我的深度研究报告系列，借助 AI 的 Deep Research 功能搜集资料，再由我亲手筛选、校验和落笔。</strong></p></blockquote><h1 id="混合云平台价值深度评估：基于第一性原理与人性洞察"><a href="#混合云平台价值深度评估：基于第一性原理与人性洞察" class="headerlink" title="混合云平台价值深度评估：基于第一性原理与人性洞察"></a><strong>混合云平台价值深度评估：基于第一性原理与人性洞察</strong></h1><h2 id="I-执行摘要"><a href="#I-执行摘要" class="headerlink" title="I. 执行摘要"></a><strong>I. 执行摘要</strong></h2><h3 id="A-概述"><a href="#A-概述" class="headerlink" title="A. 概述"></a><strong>A. 概述</strong></h3><p>本报告旨在对“混合云平台之所以有价值”这一论断的考量方式进行深度评估。此考量方式基于第一性原理和人性基本面，提出了五项核心论点：1) 用户倾向于拥有更多选择以避免厂商锁定；2) 成本考量和议价能力；3) 不同云厂商在核心服务上的差异性允许用户择优组合以实现灾备和数据分散；4) 目标客户是发展到一定规模的中型企业；5) AI 基础设施的兴起将进一步推动此趋势。总体而言，此考量方式具有高度的合理性和前瞻性，与当前行业趋势及企业战略基本驱动因素高度吻合。本报告将对每一论点进行详细的验证和深入分析。</p><h3 id="B-核心发现"><a href="#B-核心发现" class="headerlink" title="B. 核心发现"></a><strong>B. 核心发现</strong></h3><ul><li><strong>选择权与避免厂商锁定</strong>：对选择权的追求和对厂商锁定的规避，是企业采用混合云的首要且合理的驱动因素，其根源在于经济和心理层面。</li><li><strong>成本优化与议价能力</strong>：多厂商策略为企业带来了切实的成本优化潜力和更强的议价能力。</li><li><strong>异构服务组合与韧性</strong>：云服务商在核心服务（虚拟机、容器、对象存储、GPU 服务）的能力、稳定性及定价上确实存在差异，这为企业通过“择优组合”构建更具韧性和更高性能的 IT 架构（尤其针对 AI 等专门负载）提供了可能。</li><li><strong>中型企业的战略契合</strong>：中型企业在发展到特定阶段后，其对 IT 能力的需求与资源限制之间的平衡，使得混合云成为极具吸引力的战略选项。</li><li><strong>AI 基础设施的催化作用</strong>：人工智能，特别是大型语言模型（LLM）的兴起，对计算资源、数据处理和部署灵活性提出了新的要求，显著加速了混合云和多云架构的采纳。</li></ul><h3 id="C-高层建议"><a href="#C-高层建议" class="headerlink" title="C. 高层建议"></a><strong>C. 高层建议</strong></h3><p>尽管用户提出的混合云价值论证框架具有坚实的基础，但成功的混合云部署与管理，要求企业在复杂性管理、安全性、技术能力和治理层面进行周密的规划与持续投入。战略性的工作负载布局，以及对跨异构环境总体拥有成本（TCO）的清晰认知，是实现混合云价值最大化的关键。</p><h2 id="II-选择的战略必要性：规避锁定与用户赋权"><a href="#II-选择的战略必要性：规避锁定与用户赋权" class="headerlink" title="II. 选择的战略必要性：规避锁定与用户赋权"></a><strong>II. 选择的战略必要性：规避锁定与用户赋权</strong></h2><h3 id="A-理解云生态系统中的厂商锁定"><a href="#A-理解云生态系统中的厂商锁定" class="headerlink" title="A. 理解云生态系统中的厂商锁定"></a><strong>A. 理解云生态系统中的厂商锁定</strong></h3><p>厂商锁定（Vendor lock-in）在经济学中指客户因产品依赖特定供应商，若转向其他供应商则需承担高昂转换成本的情形 1。在 IT 领域，尤其是在云服务市场，厂商锁定通常表现为企业对特定云服务商（如 AWS、Azure、GCP、阿里云、腾讯云、华为云等）的过度依赖 2。这种锁定可能源于专有技术、独特的数据格式、深度集成的系统、组织惰性、员工技能依赖、安全合规的复杂性以及长期合同的束缚 1。其直接经济后果是削弱客户的议价能力，并可能导致长期成本上升。开放标准和备选方案的使用则能增强系统对变化的容忍度 1。当前云市场由少数几家超大规模云服务商主导，但也存在众多具备区域或特定领域优势的参与者 3，这种多元化的市场格局为企业实施多云或混合云策略提供了可能性。</p><h3 id="B-人性基本面：对选择的偏好与对依赖的规避"><a href="#B-人性基本面：对选择的偏好与对依赖的规避" class="headerlink" title="B. 人性基本面：对选择的偏好与对依赖的规避"></a><strong>B. 人性基本面：对选择的偏好与对依赖的规避</strong></h3><p>从根本上说，人类倾向于拥有更多选择，因为选择权赋予个体控制感和自主性 7。选择架构（Choice architecture）理论表明，选项的呈现方式本身就会影响决策过程 7，而拥有选项是做出明智决策的前提。企业在商业实践中，也本能地寻求减少对单一供应商的依赖，以规避价格波动、质量问题或供应链中断等风险 9。这是一种基于第一性原理的风险管理策略，与避免云厂商锁定的逻辑如出一辙。多元化供应商基础能够分散风险，确保服务的稳定供应，并提供更大的谈判空间和灵活性 9。</p><p>从心理层面看，过度依赖单一实体可能导致类似“共同依赖”（Co-dependency）的状态，即一方为了维持关系而牺牲自身需求 10。虽然商业关系不同于个人关系，但长期被单一供应商深度绑定，可能使企业在技术选型、成本控制和创新能力上受限，失去主动权。因此，对选择权的追求和对锁定的厌恶，不仅仅是经济考量，也反映了企业对自主性和控制权的深层心理需求。这种对自主性的内在价值追求，有时甚至超越了纯粹的经济效益计算，成为推动混合云策略的重要驱动力。</p><h3 id="C-实际效益：增强议价能力与成本优化"><a href="#C-实际效益：增强议价能力与成本优化" class="headerlink" title="C. 实际效益：增强议价能力与成本优化"></a><strong>C. 实际效益：增强议价能力与成本优化</strong></h3><p>避免厂商锁定的一个直接且重要的成果是增强企业的议价能力。当企业拥有将工作负载迁移到其他平台或从不同供应商处获取服务的能力时，现有供应商在定价和服务条款上将面临更大的竞争压力 9。多云策略允许企业利用不同供应商在不同服务上的竞争性定价，从而优化总体拥有成本（TCO）11。</p><p>更进一步，主动设计面向多云或混合云的架构，例如采用开放标准、容器化技术和构建内部备份与混合云架构 1，可以显著降低与厂商锁定相关的“高昂转换成本” 1。混合云策略本身就是一种积极主动的姿态，它迫使企业从一开始就考虑互操作性和工作负载的合理布局，从而避免在单一公有云平台上形成过深的依赖。这种从“被动应对锁定”到“主动规避锁定”的转变，是企业在云时代保持战略灵活性的关键。</p><p>对选择权的追求，作为一种人性和商业的基本驱动力，直接赋予了企业更强的议价能力，进而创造了成本优化的机会。这一逻辑链条构成了混合云价值主张的核心支柱之一。随着云服务在核心基础设施层面日益商品化，服务商的差异化将更多体现在专业服务（如人工智能）和商业条款上。混合策略使得企业能够在基础层面实现服务的商品化采购，同时有选择性地采纳不同供应商提供的、可能更具“粘性”的专业服务。</p><h2 id="III-优化异构云环境：追求性能、韧性与成本效益"><a href="#III-优化异构云环境：追求性能、韧性与成本效益" class="headerlink" title="III. 优化异构云环境：追求性能、韧性与成本效益"></a><strong>III. 优化异构云环境：追求性能、韧性与成本效益</strong></h2><h3 id="A-主流云服务商核心能力比较"><a href="#A-主流云服务商核心能力比较" class="headerlink" title="A. 主流云服务商核心能力比较"></a><strong>A. 主流云服务商核心能力比较</strong></h3><p>没有任何一家云服务商能在所有服务领域都做到绝对领先。AWS、Azure、GCP、阿里云、腾讯云和华为云等主要参与者，在服务组合、区域覆盖、定价哲学以及特定技术领域各有其优势与侧重 3。这种异构性正是企业实施“优选组合”混合策略的基石。</p><p><strong>i. 虚拟机 (VMs)</strong></p><p>各大云服务商均提供多样化的虚拟机实例类型，以满足不同工作负载的需求，包括通用型、计算优化型、内存优化型、存储优化型以及 GPU 加速型等，它们在 vCPU、内存、存储配置和性能基准上各有差异 3。</p><ul><li><strong>AWS EC2</strong> 以其成熟度和最广泛的服务目录著称，提供包括自研 Graviton 处理器在内的多种选择 3。</li><li><strong>Azure VMs</strong> 与微软生态系统（如 Windows Server, SQL Server, Office 365）深度集成，并通过 Azure Hybrid Benefit 等提供成本优势 5。</li><li><strong>Google Compute Engine (GCP GCE)</strong> 常因其在 AI&#x2F;数据分析领域的强大实力和具有竞争力的价格（如持续使用折扣）受到青睐，并提供灵活的自定义虚拟机选项 5。</li><li><strong>阿里云 ECS</strong> 提供基于 x86 和 ARM 架构的多种实例类型，包括通用型、计算型、内存型、GPU 增强型等，在亚太地区拥有显著优势 15。</li><li><strong>腾讯云 CVM</strong> 提供包括标准型 SA4、计算型 C6&#x2F;C8、内存优化型 MA5&#x2F;M8、高 IO 型 IT5 等多个系列，采用 Intel Xeon、AMD EPYC 等处理器 21。</li><li><strong>华为云 ECS</strong> 提供通用型、内存优化型、GPU 型实例，并推出了基于自研鲲鹏（Kunpeng）处理器的实例系列 16。</li></ul><p>全球基础设施布局方面，截至 2025 年初，AWS 拥有 32 个区域和 102 个以上的可用区；Azure 拥有超过 60 个区域，采用配对区域设计；GCP 拥有 38 个区域和 115 个以上的可用区 5。阿里云运营 29 个地理区域内的 87 个可用区 27。腾讯云在中国内地、新加坡、曼谷、首尔、硅谷、法兰克福等地拥有多个区域，并新近扩展至中东地区 29。华为云已在全球部署 29 个区域和 78 个可用区 34。</p><p><strong>ii. 容器服务 (托管 Kubernetes)</strong></p><p>托管 Kubernetes 服务是现代应用部署的关键。</p><ul><li><strong>AWS EKS, Azure AKS, Google GKE</strong> 是三大全球公有云的成熟产品，它们在易用性、生态集成、控制平面成本和自动伸缩等特性上各有千秋。GKE 常因其优秀的自动伸缩能力和深度集成被提及，AKS 则以易用性和成本效益（免费控制平面）见长，EKS 在高性能网络方面表现突出 36。</li><li><strong>阿里云 ACK</strong> (Container Service for Kubernetes) 支持包括 1.30, 1.31, 1.32 在内的多个 Kubernetes 版本，并有明确的版本生命周期管理策略和升级路径 38。</li><li><strong>腾讯云 TKE</strong> (Tencent Kubernetes Engine) 因其友好的用户界面、强大的可扩展性、多集群管理能力以及与腾讯云其他服务的良好集成（包括无服务器 EKS 选项）而受到用户好评 40。</li><li><strong>华为云 CCE</strong> (Cloud Container Engine) 也提供托管 Kubernetes 服务，用户反馈其在可扩展性和稳定性方面表现良好，并具备多级安全防护能力 42。</li></ul><p><strong>iii. 对象存储</strong></p><p>对象存储是云原生应用和数据湖的核心组件。</p><ul><li>各大云服务商均提供不同层级的存储类别（标准、低频访问、归档等），承诺极高的数据持久性（通常为 11 个 9 或 12 个 9）和高可用性 SLA，并在数据传输性能、API 兼容性（特别是 S3 兼容性）方面存在差异 13。</li><li><strong>AWS S3</strong> 作为市场领导者，功能丰富，集成广泛，并推出了 Express One Zones 等新特性以提升性能 22。</li><li><strong>Azure Blob Storage</strong> 与微软生态系统集成紧密，并新增了 Coldline 等低成本存储层级 45。</li><li><strong>Google Cloud Storage (GCS)</strong> 以其一致的低延迟读取和与 BigQuery、Vertex AI 的紧密耦合为特点，其 Turbo Replication 选项旨在实现近乎零的跨区域 RPO 45。</li><li><strong>阿里云 OSS</strong> 提供高达 12 个 9 的数据持久性，并兼容 S3 API，方便数据迁移和工具利用 46。</li><li><strong>腾讯云 COS</strong> 也提供 11 个 9 的数据持久性，兼容 S3 API，并提供 Hadoop 工具等大数据能力支持 49。</li><li><strong>华为云 OBS</strong> 提供 12 个 9 的多 AZ 数据持久性，兼容 S3 API，并针对 AI 场景推出了 AI-Native 存储解决方案（结合 SFS Turbo）51。</li></ul><p><strong>iv. GPU 服务</strong></p><p>GPU 是 AI 和高性能计算的核心引擎。</p><ul><li><strong>AWS, Azure, GCP</strong> 均提供基于 NVIDIA A100、H100 等高端 GPU 的实例。AWS 有 P 系列（如 P5 实例搭载 H100），Azure 有 NC、ND、NV 系列，GCP 则有 A3 虚拟机（H100）及自研 TPU 64。</li><li><strong>阿里云</strong> 通过 ECS 提供 NVIDIA A100 和 H100 GPU 实例，支持其 PAI（Platform for AI）智算服务和百炼大模型平台（基于通义千问等模型）65。</li><li><strong>腾讯云</strong> 提供 GPU 计算实例，如 GN7（搭载 Tesla T4）、GN10Xp（搭载 Tesla V100），以及更新的采用 NVIDIA A10&#x2F;A100 的实例（如 GT4 搭载 A100 40GB），并辅以 TACO Kit 加速套件 61。</li><li><strong>华为云</strong> 正大力发展其自研昇腾（Ascend）系列 AI 芯片（如昇腾 910D 对标 H100），并提供 ModelArts 一站式 AI 开发平台。尽管其硬件性能在追赶，但在软件生态（如对 CUDA 的兼容性）方面仍面临挑战 72。</li><li>各云厂商的 GPU 服务定价模式多样，包括按需、预留和竞价实例等 13。</li></ul><p><strong>表 1：主流云服务商核心服务对比概览 (截至 2025 年初)</strong></p><table><thead><tr><th>服务类别</th><th>AWS</th><th>Azure</th><th>GCP</th><th>阿里云</th><th>腾讯云</th><th>华为云</th></tr></thead><tbody><tr><td><strong>虚拟机</strong></td><td><strong>EC2</strong>: 通用型(m 系列如 m5, m6g), 计算优化(c 系列如 c5, c6g), Graviton 自研芯片, 实例类型丰富, 定价选项多样 3</td><td><strong>Azure VMs</strong>: D 系列(通用), F 系列(计算优化), E 系列(内存优化), 与 Windows&#x2F;SQL Server 深度集成, Azure Hybrid Benefit 5</td><td><strong>Compute Engine</strong>: N1, E2(通用), C2(计算优化), 自定义 VM, 持续使用折扣, 价格竞争力强 5</td><td><strong>ECS</strong>: 通用型, 计算型, 内存型, ARM 架构实例(倚天), 亚太区优势明显, 多种付费模式 15</td><td><strong>CVM</strong>: 标准型(SA4), 计算型(C6, C8), 内存优化型(MA5, M8), 高 IO 型(IT5), 采用 Intel&#x2F;AMD 处理器 21</td><td><strong>ECS</strong>: s 系列(通用), c 系列(计算), m 系列(内存), 自研鲲鹏(Kunpeng)处理器, 多种规格 16</td></tr><tr><td><strong>托管 Kubernetes</strong></td><td><strong>EKS</strong>: 生态成熟, 与 AWS 服务深度集成, 网络性能优异, 控制平面收费 36</td><td><strong>AKS</strong>: 易用性好, 与 Azure DevOps 等集成紧密, 控制平面免费 36</td><td><strong>GKE</strong>: 自动伸缩能力强, 与 GCP 生态集成度高, Autopilot 模式简化管理, 控制平面收费 36</td><td><strong>ACK</strong>: 支持新版 K8s (如 1.32), 版本生命周期管理清晰, 提供 ACK Pro 等多种形态 38</td><td><strong>TKE</strong>: 用户界面友好, 伸缩性强, 支持多集群管理, 提供 Serverless EKS 选项 40</td><td><strong>CCE</strong>: 用户评价可扩展性与稳定性良好, 支持多种 K8s 版本 (如 v1.27-v1.30 商用), 提供可视化升级 42</td></tr><tr><td><strong>对象存储</strong></td><td><strong>S3</strong>: 功能全面, 11 个存储层级, 持久性高达 12 个 9, SLA &gt;99.9%, Express One Zone 提升性能 22</td><td><strong>Blob Storage</strong>: 热&#x2F;冷&#x2F;存档&#x2F;Coldline 层, 与 AD 集成, Azure Arc 支持混合缓存, SLA &gt;99.9% 45</td><td><strong>Cloud Storage</strong>: 标准&#x2F;近线&#x2F;冷线&#x2F;归档层, Turbo Replication, 与 BigQuery&#x2F;Vertex AI 集成, SLA &gt;99.9% 45</td><td><strong>OSS</strong>: 持久性 12 个 9, SLA 99.995%, 兼容 S3 API, 多种存储类型和冗余策略 46</td><td><strong>COS</strong>: 持久性 11 个 9, 兼容 S3 API, 支持 Hadoop 工具, 多地域存储和容灾 49</td><td><strong>OBS</strong>: 多 AZ 持久性 12 个 9, SLA 高达 99.995%, 兼容 S3 API, AI-Native 存储方案(结合 SFS Turbo) 51</td></tr><tr><td><strong>GPU 服务</strong></td><td>NVIDIA A100&#x2F;H100 (P 系列), Trainium&#x2F;Inferentia 自研芯片, <strong>SageMaker</strong> AI 平台 64</td><td>NVIDIA A100&#x2F;H100 (NC, ND, NV 系列), <strong>Azure Machine Learning</strong> AI 平台 64</td><td>NVIDIA A100&#x2F;H100 (A3 VM), Google <strong>TPU</strong>, <strong>Vertex AI</strong> 平台 64</td><td>NVIDIA A100&#x2F;H100 (ECS GPU 实例), <strong>PAI</strong>智算服务, <strong>百炼</strong>大模型平台(通义千问) 65</td><td>NVIDIA A10&#x2F;A100&#x2F;V100&#x2F;T4 (GT4, GN10Xp, GN7), <strong>TACO Kit</strong>加速, AI 平台集成 61</td><td>自研**昇腾(Ascend)**系列 AI 芯片 (如 910D), <strong>ModelArts</strong> AI 开发平台 72</td></tr></tbody></table><p>全球云服务市场中，AWS、Azure 和 GCP 通常被视为具有最广泛和成熟产品线的领导者 3。然而，其他云服务商如阿里云、腾讯云和华为云，在特定区域（尤其是亚太地区对阿里云和腾讯云而言 4）或特定技术领域（例如华为在其昇腾 AI 芯片生态的投入，尽管面临生态兼容性挑战 72）展现出强大的竞争力或独特的价值主张。这种“成熟度与特定优势并存”的市场格局，为企业，特别是那些在亚洲有业务运营或客户群体的中型企业，提供了超越简单“三巨头”对比的战略性工作负载布局机会。</p><h3 id="B-利用供应商多样性实现韧性和数据分散"><a href="#B-利用供应商多样性实现韧性和数据分散" class="headerlink" title="B. 利用供应商多样性实现韧性和数据分散"></a><strong>B. 利用供应商多样性实现韧性和数据分散</strong></h3><p>混合云和多云环境通过在不同供应商和地理位置分布工作负载与数据，天然增强了灾难恢复（DR）能力 11。一旦某个供应商发生服务中断，工作负载理论上可以切换至备用环境。在私有云和公有云之间进行数据镜像是常见的 DR 策略 11。此外，将数据分布在不同的云平台上，有助于满足特定地区的数据主权和合规性要求（如 GDPR、HIPAA），允许企业将敏感数据保留在受控的私有云或特定地理位置的公有云区域内 11。</p><h3 id="C-通过战略性工作负载布局实现高级成本优化"><a href="#C-通过战略性工作负载布局实现高级成本优化" class="headerlink" title="C. 通过战略性工作负载布局实现高级成本优化"></a><strong>C. 通过战略性工作负载布局实现高级成本优化</strong></h3><p>混合云的核心成本优化策略之一是将高优先级、敏感型工作负载运行在安全的私有云或本地设施，而将非关键、需要弹性的或成本敏感的工作负载部署到具有成本效益的公有云上 11。企业还可以通过“价格模型套利”进一步优化成本，即针对不同工作负载的特性，在不同云服务商提供的多种计费模式（如按需付费 PAYG、预留实例 RI、竞价实例 Spot Instances、节省计划 Savings Plans、持续使用折扣 Sustained-Use Discounts）中进行选择组合 5。</p><p>然而，实现“择优组合”的能力，高度依赖于不同云服务之间以及与本地系统之间的互操作性。尽管容器化技术 36 和 S3 兼容 API 51 等在一定程度上促进了互操作，但真正的无缝集成仍然罕见。管理跨异构环境的网络、安全和数据迁移的复杂性 81，可能会抵消单一服务优势带来的益处。因此，服务多样性所能带来的实际价值，取决于企业能够实现的互操作性水平以及可承受的管理复杂度。最佳的混合策略并非简单挑选技术上最先进或价格最低廉的单一服务，而是在服务适用性、成本效益与管理分布式异构环境的运营开销之间找到最佳平衡。这通常意味着需要强大的治理能力和专业的管理工具或服务。</p><h2 id="IV-混合云对中型企业的价值定位"><a href="#IV-混合云对中型企业的价值定位" class="headerlink" title="IV. 混合云对中型企业的价值定位"></a><strong>IV. 混合云对中型企业的价值定位</strong></h2><h3 id="A-中型企业-IT-环境的演变"><a href="#A-中型企业-IT-环境的演变" class="headerlink" title="A. 中型企业 IT 环境的演变"></a><strong>A. 中型企业 IT 环境的演变</strong></h3><p>中型企业（SMEs）正日益积极地采纳云服务，以期获得更高的灵活性、数据安全性以及成本效益，从而在激烈的市场竞争中保持优势 79。基础设施即服务（IaaS）的快速普及，使得中小型组织能够以更低的门槛获取尖端技术和按需扩展的计算能力，无需承担大规模前期硬件投资的压力 87。然而，中型企业在 IT 管理方面也面临着独特的挑战，如跟上技术飞速发展的步伐、应对日益严峻的网络安全威胁以及有效管理日益复杂的网络环境，而这些往往需要在 IT 预算和专业人员相对有限的条件下完成 88。</p><h3 id="B-混合云：中型企业的战略契合点"><a href="#B-混合云：中型企业的战略契合点" class="headerlink" title="B. 混合云：中型企业的战略契合点"></a><strong>B. 混合云：中型企业的战略契合点</strong></h3><p>混合云为中型企业提供了一个战略性的解决方案，能够有效平衡其在成本、控制、安全、可扩展性和技术获取等方面的多重需求。</p><ul><li><strong>成本与控制的平衡</strong>：混合云允许中型企业将非敏感任务和可变工作负载迁移至成本效益较高的公有云，同时将关键业务系统和敏感数据保留在私有云或本地数据中心，从而实现 IT 成本的降低和运营效率的提升 79。部分企业发现，纯公有云策略并未带来预期的成本节省，甚至在迁移后总体拥有成本有所上升，这使得混合云模式更具吸引力 86。</li><li><strong>可扩展性与敏捷性</strong>：中型企业可以利用公有云的弹性来应对业务需求的波动，支持快速增长和现代应用的部署，而无需过度投资于本地基础设施 79。</li><li><strong>增强的安全性与合规性</strong>：通过在混合环境中战略性地部署数据和应用，中型企业能够更好地满足特定的安全要求和行业合规标准（如 GDPR、HIPAA），例如将受监管数据保留在受控的私有环境中 11。</li><li><strong>灾难恢复与业务连续性</strong>：将数据和工作负载分布于混合云的不同组成部分（如本地数据中心和公有云），可以显著提高灾难恢复能力，减少潜在的停机时间，确保业务的连续性 79。</li><li><strong>支持远程办公</strong>：混合云架构能够为远程员工提供对云端和本地系统资源的低延迟、安全访问，保障其工作效率 79。</li><li><strong>获取先进技术</strong>：混合云使中型企业能够以更经济的方式接触和利用高性能存储、低延迟网络以及人工智能&#x2F;机器学习等先进技术，这些技术若完全依赖本地部署可能成本过高 79。</li><li><strong>市场趋势</strong>：受上述优势驱动，中型企业采用混合云的市场预计将持续强劲增长 89。</li></ul><p>对于中型企业而言，混合云不仅是一种 IT 部署模式，更是一种重要的“竞争均衡器”。它使得这些企业能够以运营支出（OpEx）的模式，获得以往只有大型企业通过巨额资本支出（CapEx）才能拥有的企业级 IT 能力，如强大的可扩展性、先进的人工智能工具和稳健的灾难恢复方案 79。这无疑在一定程度上拉平了与大型企业在技术能力上的差距。</p><p>中型企业通常比超大型企业（拥有更多资源投入公有云安全）或微型企业（可能为追求简单而完全选择公有云）更加重视对其核心数据和关键系统的控制权。混合云提供了一个灵活的“调节旋钮”，允许它们在私有云&#x2F;本地部署所带来的控制力与公有云所赋予的便捷性和可扩展性之间取得理想的平衡。这种对核心资产既要敏捷又要规避风险的需求，使得混合云成为中型企业的理想选择。因此，中型企业的资源限制（预算、人员）与其对现代化 IT 能力（可扩展性、AI、DR）的需求之间的矛盾，催生了混合云这一能提供成本、控制与能力三者平衡的优化解。</p><h2 id="V-AI-基础设施的催化剂：放大混合云的时代关联性"><a href="#V-AI-基础设施的催化剂：放大混合云的时代关联性" class="headerlink" title="V. AI 基础设施的催化剂：放大混合云的时代关联性"></a><strong>V. AI 基础设施的催化剂：放大混合云的时代关联性</strong></h2><h3 id="A-现代-AI-工作负载（尤其是-LLM）的独特需求"><a href="#A-现代-AI-工作负载（尤其是-LLM）的独特需求" class="headerlink" title="A. 现代 AI 工作负载（尤其是 LLM）的独特需求"></a><strong>A. 现代 AI 工作负载（尤其是 LLM）的独特需求</strong></h3><p>人工智能（AI），特别是大型语言模型（LLM）的迅猛发展，对底层 IT 基础设施提出了前所未有的、且往往是独特的要求。</p><ul><li><strong>计算密集性</strong>：AI 工作负载，尤其是 LLM 的训练阶段，需要巨大的计算资源，包括高性能 GPU（如图形处理器）或 TPU（张量处理单元）、大规模存储系统以及强大的分布式处理能力 80。推理阶段虽然计算需求可能降低，但对低延迟和高吞吐量有严格要求 91。</li><li><strong>数据引力与本地化</strong>：训练 LLM 通常涉及海量的训练数据集，这些数据可能由于其规模、敏感性或合规要求而难以或不适合迁移至公有云。数据主权和数据驻留法规也可能强制要求数据保留在本地或特定地理区域内 80。</li><li><strong>需求波动性</strong>：AI 开发生命周期呈现显著的资源需求波动特征：训练阶段是资源消耗的高峰期，而推理阶段则可能需要更稳定但对延迟敏感的资源。这种波动性使得基础设施的弹性供给至关重要 80。</li><li><strong>专用硬件依赖</strong>：获取最新的 GPU（如 NVIDIA A100, H100 64）或定制 AI 加速芯片（如 Google TPU, AWS Trainium&#x2F;Inferentia, 华为昇腾 64）往往是 AI 项目成功的关键。这些专用硬件的可用性、成本和技术栈在不同云服务商之间存在显著差异。</li></ul><h3 id="B-LLM-在混合-多云环境中的架构模式"><a href="#B-LLM-在混合-多云环境中的架构模式" class="headerlink" title="B. LLM 在混合&#x2F;多云环境中的架构模式"></a><strong>B. LLM 在混合&#x2F;多云环境中的架构模式</strong></h3><p>为满足 AI 特别是 LLM 的独特需求，企业正在探索和实践多种混合与多云架构模式。总体战略通常包括工作负载评估、迁移&#x2F;部署规划、应用与网络架构模式选择以及持续优化等阶段 95。</p><ul><li><strong>虚拟机（VMs）用于 AI</strong>：对于计算密集型的 AI 训练任务，特别是需要最大化 GPU 性能和硬件控制的场景，裸金属服务器或高性能虚拟机是理想选择，它们能提供直接的硬件访问能力 96。这类部署尤其适合长时间运行、可预测的训练作业以及超大规模模型的训练。</li><li><strong>容器（Kubernetes）用于 AI</strong>：Kubernetes 正日益成为编排 AI&#x2F;LLM 工作负载的主流平台，它提供了出色的可移植性、可扩展性和资源管理能力。Kubernetes 有助于管理复杂的 GPU 资源分配和依赖关系，适用于训练和推理阶段，尤其是在采用微服务架构的 AI 应用中 80。</li><li><strong>无服务器（Serverless）用于 AI 推理</strong>：对于 LLM 推理任务，特别是那些流量具有突发性或不可预测性的场景，无服务器计算模式因其按实际使用付费和自动伸缩的特性而具备成本效益。关键考量点包括如何最小化冷启动延迟以及平台对 GPU 的支持。目前，部分平台如 GCP Cloud Run 已开始提供 GPU 支持的预览版 91。</li><li><strong>混合式 RAG（检索增强生成）架构</strong>：针对需要满足数据驻留要求的 RAG 应用，企业可以构建混合架构。例如，利用 AWS Outposts、EC2 G4dn 实例、S3 on Outposts 等边缘服务，将敏感数据和知识库保留在本地，同时通过 Lambda 函数和 Amazon Bedrock 等云服务来编排和调用 LLM，实现数据的本地处理与云端智能的结合 94。</li><li><strong>战略性工作负载放置</strong>：通常，深度学习模型的训练过程可能更适合部署在拥有丰富 GPU 资源且成本相对可控的公有云环境中；而对延迟敏感的实时推理任务，则可能更适合部署在靠近数据源或用户的边缘计算节点或私有云环境中，以确保低延迟和数据安全 80。</li></ul><p><strong>表 2：LLM 在混合&#x2F;多云环境中的部署选项对比</strong></p><table><thead><tr><th>LLM 生命周期阶段</th><th>部署模型</th><th>主要优势</th><th>主要劣势&#x2F;挑战</th><th>混合&#x2F;多云场景下的主要用例&#x2F;考量</th></tr></thead><tbody><tr><td><strong>数据准备与预处理</strong></td><td>本地&#x2F;私有云 VMs&#x2F;裸金属</td><td>数据邻近性高, 传输成本低, 完全控制</td><td>初始投资高, 扩展性有限</td><td>处理大规模、敏感的本地数据集</td></tr><tr><td></td><td>公有云 VMs (按需&#x2F;竞价&#x2F;预留)</td><td>强大的 ETL 工具集成, 弹性伸缩</td><td>数据传输成本和时间, 潜在安全风险</td><td>利用云端大数据平台进行高效预处理</td></tr><tr><td></td><td>容器化 (Kubernetes) - 混合&#x2F;多云</td><td>可移植性强, 环境一致性, 批处理调度</td><td>编排复杂度, 存储管理</td><td>在不同环境中使用标准化工具链进行数据处理</td></tr><tr><td><strong>模型训练 (大规模)</strong></td><td>本地&#x2F;私有云 VMs&#x2F;裸金属</td><td>极致性能, 数据安全与隐私, 避免云端 GPU 高昂租金</td><td>硬件采购和维护成本高, 扩展性受限</td><td>训练基于高度敏感数据的大模型, 或对特定硬件有强依赖</td></tr><tr><td></td><td>公有云 VMs (按需&#x2F;竞价&#x2F;预留)</td><td>海量 GPU&#x2F;TPU 资源池, 快速获取最新硬件, 弹性扩展</td><td>成本高昂 (尤其长期租用), 数据传输瓶颈</td><td>快速启动大规模训练, 利用竞价实例降低成本, 访问特定云厂商的专有 AI 硬件或优化软件栈</td></tr><tr><td></td><td>容器化 (Kubernetes) - 混合&#x2F;多云</td><td>跨环境一致性部署, 资源利用率优化, 支持分布式训练框架</td><td>GPU 驱动和调度复杂性, 存储和网络配置</td><td>在混合资源池中灵活调度训练任务, 实现跨云的训练任务迁移或容灾</td></tr><tr><td><strong>模型微调</strong></td><td>本地&#x2F;私有云 VMs&#x2F;裸金属</td><td>针对特定私有数据进行安全微调, 硬件控制</td><td>资源获取灵活性较低</td><td>基于企业内部专有数据进行模型定制化微调</td></tr><tr><td></td><td>公有云 VMs (按需&#x2F;竞价&#x2F;预留)</td><td>易于获取微调所需资源, 快速迭代</td><td>成本控制, 数据安全</td><td>利用云平台提供的微调服务和工具, 快速试验不同微调策略</td></tr><tr><td></td><td>容器化 (Kubernetes) - 混合&#x2F;多云</td><td>标准化微调流程, 易于版本管理和回滚</td><td>初始设置复杂性</td><td>在多团队或多项目间共享微调基础设施和流程</td></tr><tr><td><strong>批量推理</strong></td><td>本地&#x2F;私有云 VMs&#x2F;裸金属</td><td>成本可控 (利用现有硬件), 数据不出本地</td><td>吞吐量受限于本地硬件规模</td><td>对本地存储的大批量数据进行周期性推理</td></tr><tr><td></td><td>公有云 VMs (按需&#x2F;竞价)</td><td>高吞吐量, 弹性伸缩以应对峰值需求</td><td>数据上载成本, 任务调度</td><td>处理云端存储的大规模数据集的批量推理任务, 利用竞价实例降低成本</td></tr><tr><td></td><td>容器化 (Kubernetes) - 混合&#x2F;多云</td><td>灵活调度, 资源隔离, 易于集成到现有数据管道</td><td>监控和管理开销</td><td>构建可扩展的批量推理服务, 支持在不同云或本地环境中运行</td></tr><tr><td></td><td>无服务器函数 (公有云&#x2F;边缘)</td><td>按需付费, 自动伸缩, 运维成本低 (理论上)</td><td>冷启动延迟, 执行时间限制, GPU 支持有限</td><td>适用于数据量不大、非实时性要求高的异步批量推理</td></tr><tr><td><strong>实时推理</strong></td><td>本地&#x2F;私有云 VMs&#x2F;裸金属 (边缘部署)</td><td>超低延迟 (靠近数据源&#x2F;用户), 数据隐私</td><td>部署和维护成本, 扩展性有限</td><td>对延迟极度敏感且数据不出网的应用 (如工业控制, 医疗影像实时分析)</td></tr><tr><td></td><td>公有云 VMs (专用推理实例)</td><td>优化的推理硬件和服务, 全球节点覆盖</td><td>网络延迟, 成本</td><td>面向全球用户提供低延迟推理服务, 利用云厂商的专用推理芯片或服务 (如 AWS Inferentia, Azure NP-series, Google TPU for inference)</td></tr><tr><td></td><td>容器化 (Kubernetes) - 混合&#x2F;多云</td><td>服务发现, 滚动更新, A&#x2F;B 测试, 跨环境部署一致性</td><td>网络配置复杂, 服务网格管理</td><td>构建高可用的实时推理 API 服务, 支持蓝绿部署和金丝雀发布, 灵活选择推理节点位置 (云端&#x2F;边缘)</td></tr><tr><td></td><td>无服务器函数 (公有云&#x2F;边缘, 带 GPU 支持)</td><td>极速伸缩以应对突发流量, 成本效益高 (按调用付费)</td><td>冷启动延迟对 P99 延迟影响大, 状态管理复杂</td><td>流量波动大的 API 推理服务, 事件驱动的推理任务, 对成本敏感但可容忍一定延迟的应用 (如聊天机器人后端, 图像识别 API) 91</td></tr></tbody></table><p>AI 工作负载并非铁板一块，其训练和推理阶段对基础设施的需求存在显著差异。训练阶段通常需要大规模、持续性的计算资源（主要是 GPU），并且与大型本地数据集紧密相关（数据引力效应），同时对长时间租用云端 GPU 的成本较为敏感。这使得部分训练流程倾向于采用私有基础设施或经过优化的公有云预留&#x2F;竞价实例 80。相比之下，推理阶段往往更注重低延迟、全球可扩展性，并且可能是事件驱动和突发性的，这使得公有云的边缘节点或无服务器 GPU 产品更具吸引力 80。这种训练与推理在需求上的内在分化，是驱动 AI 基础设施走向混合化的一个强劲的自然因素。</p><h3 id="C-市场趋势：AI-是混合-多云的主要驱动力"><a href="#C-市场趋势：AI-是混合-多云的主要驱动力" class="headerlink" title="C. 市场趋势：AI 是混合&#x2F;多云的主要驱动力"></a><strong>C. 市场趋势：AI 是混合&#x2F;多云的主要驱动力</strong></h3><p>行业分析机构的报告普遍指出，由 AI 驱动的云服务以及对 AI 就绪基础设施的需求，是推动多云和混合云战略成为常态的主要趋势 6。例如，Forrester 预测，到 2025 年，使用支持 AI 的云服务的企业将在运营效率上获得 30%的提升 99。企业在云上的支出也显著增加，部分原因正是 AI 应用的普及，生成式 AI（GenAI）公有云服务的使用率正在急剧上升 102。全球混合云市场预计将以约 16.65%的复合年增长率（CAGR）持续增长，其中 AI 被认为是关键的增长引擎之一 89。</p><p>对于医疗、金融、政府等许多行业而言，数据主权和合规性是不可逾越的红线 80。基于敏感数据训练或执行推理的 LLM，其数据通常必须保留在特定的地理或网络边界之内。这使得混合解决方案（例如，使用本地 GPU 集群训练敏感数据，或采用基于本地知识库的 RAG 架构）不再仅仅是一种选择，而是一种必需。如果由于法规限制，数据无法迁移到公有云进行 AI 处理，那么 AI 计算能力就必须部署到数据所在地（本地&#x2F;私有云），或者采用安全的混合模型。AI 带来的“复杂性税” 93 也将推动市场对能够跨越这些混合 AI 环境的统一管理平台的需求。</p><p>AI（尤其是 LLM）日益增长的复杂性和资源需求，加上数据引力和主权限制，共同导致了对更专业化、分布式和灵活基础设施的更大需求，从而强力推动了混合云和多云架构的采纳。这种趋势可能会迫使即使是原生云的企业，在处理敏感数据或需要超专用本地硬件进行前沿研究时，也不得不考虑混合云的某些要素。反之，它也促使传统本地部署型企业利用公有云的弹性伸缩能力或专业 AI 服务。这模糊了纯粹本地部署和纯粹公有云之间的界限，使得混合模式成为主导范式。</p><h2 id="VI-整体考量评估与战略建议"><a href="#VI-整体考量评估与战略建议" class="headerlink" title="VI. 整体考量评估与战略建议"></a><strong>VI. 整体考量评估与战略建议</strong></h2><h3 id="A-对用户理由的评估"><a href="#A-对用户理由的评估" class="headerlink" title="A. 对用户理由的评估"></a><strong>A. 对用户理由的评估</strong></h3><p>用户提出的五点理由，即避免厂商锁定、成本与议价能力、异构服务择优组合、面向中型企业以及 AI 基础设施的推动作用，构成了对混合云平台价值主张的全面且合理的论证框架。这些论点不仅与行业专家的见解和市场发展趋势高度一致，而且深刻触及了经济、技术、战略以及人性与心理层面的驱动因素。</p><ul><li><strong>全面性</strong>：该框架覆盖了企业在选择云策略时的核心考量维度。</li><li><strong>合理性</strong>：<ul><li><strong>避免锁定与追求选择</strong>：符合经济学原理 1、商业风险管理的基本原则 9，并得到市场行为的验证（企业普遍采用多云策略以避免单一依赖 2）。</li><li><strong>成本与议价能力</strong>：是拥有选择权和避免锁定的直接经济成果 9。</li><li><strong>异构服务组合</strong>：基于云服务商在核心服务上的实际差异（详见 III.A 部分），以及企业利用这种差异构建韧性架构的需求 11。</li><li><strong>中型企业定位</strong>：中型企业在 IT 需求与资源禀赋之间的独特平衡，使其成为混合云的关键采纳群体 79。</li><li><strong>AI 基础设施驱动</strong>：AI 工作负载的独特性质（计算密集、数据敏感、专用硬件需求）使其成为混合&#x2F;多云采纳的强大催化剂 80。</li></ul></li></ul><p>尽管此论证框架已相当完善，但若能更明确地指出实现这些价值所面临的挑战与复杂性，并强调治理和管理平台在其中的关键作用，则其战略指导意义将更为突出。</p><h3 id="B-应对混合-多云采纳的固有挑战"><a href="#B-应对混合-多云采纳的固有挑战" class="headerlink" title="B. 应对混合&#x2F;多云采纳的固有挑战"></a><strong>B. 应对混合&#x2F;多云采纳的固有挑战</strong></h3><p>尽管混合云带来了诸多益处，但企业在采纳过程中也必须正视并有效管理其固有的挑战：</p><ul><li><strong>复杂性增加</strong>：管理跨越本地数据中心和多个公有云的异构环境，在资源调度、工作负载编排、运营一致性等方面均引入了显著的复杂性 82。工具链重叠和网络限制是常见的具体挑战 85。</li><li><strong>安全管理</strong>：攻击面扩大，需要在所有环境中实施一致的安全策略、身份管理和威胁检测机制 81。错误的配置是主要的风险源 81。</li><li><strong>技能差距</strong>：需要具备跨多个云平台和本地技术的专业知识，以及混合云管理和自动化的技能。人才短缺是一个普遍存在的问题 81。</li><li><strong>治理与合规</strong>：在不同环境中建立统一的治理框架，确保数据一致性，并满足跨地域、跨平台的合规要求，极具挑战性 78。</li><li><strong>成本管理与可见性</strong>：虽然混合云提供了成本优化的潜力，但跨多个供应商和计费模型跟踪和管理成本，需要强大的 FinOps 实践和工具，以避免云资源蔓延和意外支出 82。</li></ul><h3 id="C-中型企业成功的关键因素"><a href="#C-中型企业成功的关键因素" class="headerlink" title="C. 中型企业成功的关键因素"></a><strong>C. 中型企业成功的关键因素</strong></h3><p>中型企业若要成功实施并从混合云战略中获益，应关注以下关键成功因素：</p><ul><li><strong>战略规划先行</strong>：制定清晰的、与业务目标高度一致的混合云战略，明确哪些工作负载部署在何处，以及如此部署的理由 79。</li><li><strong>分阶段采纳</strong>：从非核心、低风险的工作负载开始，逐步积累经验，并以此为蓝本进行推广 95。</li><li><strong>聚焦自动化与编排</strong>：引入自动化工具进行资源调配、配置管理和工作负载编排，以有效管理复杂性 80。</li><li><strong>投资于技能提升或寻求外部合作</strong>：通过内部培训、人才引进或与具备混合云专业能力的托管服务提供商（MSP）合作，来弥补技能差距 11。Flexera 报告显示，60%的组织会求助于 MSP 102。</li><li><strong>优先保障安全与治理</strong>：从项目初期就建立统一的安全框架和强健的治理模型 78。</li><li><strong>持续监控与优化</strong>：定期监控所有环境的性能、安全和成本状况，以便及时优化和调整策略 79。</li></ul><p>中型企业在混合云的采纳过程中，可能会经历一个“混合云成熟度模型”的演进。初始阶段可能更侧重于成本节约和灾难恢复等基础需求 79。随着业务发展和对云能力需求的深化（例如 AI 技术的引入 86），其混合策略需要不断演进，以支持更复杂的工作负载优化和 AI 驱动的创新。在此过程中，复杂性、安全性和技能方面的挑战在早期阶段可能更为突出，需要企业逐步投入资源于更先进的工具和专业知识，或更多地依赖 MSP 的服务 102。</p><h3 id="D-未来展望：演进中的混合-AI-云"><a href="#D-未来展望：演进中的混合-AI-云" class="headerlink" title="D. 未来展望：演进中的混合 AI 云"></a><strong>D. 未来展望：演进中的混合 AI 云</strong></h3><p>混合云和 AI 的结合预示着 IT 基础设施的未来发展方向，其核心趋势包括：</p><ul><li><strong>更高级别的抽象与管理层</strong>：预计将出现更多成熟的混合&#x2F;多云管理平台，它们能够提供跨越不同云环境的“单一管理视图”，实现运营、安全和成本的统一管理 82。</li><li><strong>AI 驱动的运营（AIOps）</strong>：人工智能将越来越多地被用于管理混合环境的复杂性，自动化诸如工作负载放置、资源优化和威胁检测等任务 80。</li><li><strong>边缘计算的深度融合</strong>：边缘计算将与混合云战略更紧密地结合，特别是在需要低延迟处理的 AI 推理和物联网（IoT）工作负载场景中 80。</li><li><strong>可持续性成为重要考量</strong>：在选择云服务时，可持续性正成为日益重要的因素。云服务商也开始提供碳足迹跟踪等工具，以帮助企业实现其环境、社会和治理（ESG）目标 89。混合云可以通过优化自有和租用基础设施的能源使用，在可持续发展中发挥作用。</li><li><strong>服务商持续专业化</strong>：云服务提供商可能会在特定领域（如 AI 专用硬件、行业解决方案）进一步深化其专业能力，这将进一步强化企业采用“优选组合”混合策略的价值。</li></ul><p>用户所提出的混合云价值框架，侧重于“为何”选择混合云。本报告的分析则进一步强调，要真正实现这些价值，“如何有效治理”是成功的关键。没有跨越安全、成本和运营的有效治理，选择多样性和优化组合带来的益处，很可能被无序状态、失控的成本和安全漏洞所抵消 78。</p><p>企业在追求混合云带来的选择和优化益处时，会引入更多的云环境，这不可避免地导致运营复杂性和安全攻击面的增加。如果管理不善，这将反过来要求更多高技能人才和高级管理工具的投入，从而可能侵蚀预期的成本节约。这个潜在的“挑战循环”提示我们，混合云的收益并非唾手可得，需要主动和持续的管理。</p><p>从长远来看，许多组织的“最终状态”可能并非一个静态的混合云配置，而是一个动态的、由 AI 编排的、跨越多个公有云、私有云和边缘节点的“服务织物”（fabric of services），并根据成本、性能和合规性要求进行持续优化。因此，“混合云”与其说是一个目的地，不如说是一种应对 IT 基础设施需求的、持续演进的战略方法 80。</p><h2 id="VII-结论与建议"><a href="#VII-结论与建议" class="headerlink" title="VII. 结论与建议"></a><strong>VII. 结论与建议</strong></h2><p>对用户关于混合云平台价值的考量方式进行评估后，本报告得出结论：该考量方式基于第一性原理和人性基本面，其提出的五点核心论据——避免厂商锁定、成本与议价能力、异构服务择优组合以实现灾备与数据分散、面向中型企业以及 AI 基础设施的推动作用——均具有坚实的理论基础和充分的现实依据，整体而言是全面且合理的。</p><p><strong>核心结论：</strong></p><ol><li><strong>选择权与风险规避是根本驱动力</strong>：企业对选择权的偏好和对单一供应商依赖风险的规避，是采纳混合云策略的根本动因。这既符合经济理性，也源于组织对自主性和控制权的基本追求。</li><li><strong>成本优化与议价能力是直接效益</strong>：混合云策略通过引入竞争和提供多样化选择，确实能够为企业带来显著的成本节约潜力和更强的议价地位。</li><li><strong>异构环境优化是核心技术价值</strong>：不同云服务商在虚拟机、容器、对象存储、GPU 等核心服务上的差异性，为企业通过“择优组合”构建更高效、更具韧性的 IT 架构提供了可能，尤其对于满足灾备、数据分散以及 AI 等特定工作负载需求至关重要。</li><li><strong>中型企业是混合云的关键受益者</strong>：中型企业在发展到一定规模后，其对 IT 能力的需求日益复杂，同时又面临资源限制，混合云恰好能提供成本、控制与先进功能之间的平衡，是其实现数字化转型和提升竞争力的有效途径。</li><li><strong>AI 是混合云发展的重要加速器</strong>：AI 工作负载（特别是 LLM）对计算资源、数据处理的特殊要求（如专用硬件、数据本地化、弹性伸缩），以及训练与推理阶段的不同需求，使得混合云和多云架构成为支撑 AI 战略的理想选择，并将持续推动其发展。</li></ol><p><strong>战略建议：</strong></p><p>尽管用户的考量框架具有高度的正确性，但在将混合云战略付诸实践时，建议中型企业重点关注以下方面，以确保价值的充分实现：</p><ol><li><strong>制定清晰的混合云战略与治理框架</strong>：<ul><li>明确业务目标，评估哪些工作负载最适合混合云模式，并制定清晰的迁移和部署路线图。</li><li>建立跨越所有云环境（包括本地）的统一治理模型，涵盖成本管理（FinOps）、安全策略、合规性审计和运营标准。缺乏有效治理是混合云项目失败的主要风险之一。</li></ul></li><li><strong>优先考虑互操作性与标准化</strong>：<ul><li>在技术选型时，优先考虑支持开放标准和具备良好互操作性的技术与服务（如 Kubernetes、S3 兼容 API 等），以降低跨云集成的复杂性和成本。</li><li>积极采用容器化、微服务等架构，提升应用的便携性和部署灵活性。</li></ul></li><li><strong>投资于技能提升与自动化工具</strong>：<ul><li>正视混合云管理带来的技能挑战，通过培训、认证或引入外部专家（如 MSP）来提升团队能力。</li><li>大力投入自动化和编排工具，以简化日常运维、监控、安全响应和资源调优，降低人力成本和操作风险。</li></ul></li><li><strong>构建全面的安全与合规体系</strong>：<ul><li>实施“安全左移”和“默认安全”原则，在混合云架构设计之初就融入安全考量。</li><li>采用统一的安全信息和事件管理（SIEM）及响应机制，确保对整个混合环境的安全态势有清晰的可见性和控制力。</li><li>针对数据驻留、主权和行业特定合规要求，精心设计数据存储和处理方案。</li></ul></li><li><strong>拥抱 AI 驱动的运营与优化</strong>：<ul><li>随着 AI 技术在 IT 运营（AIOps）领域的应用成熟，积极探索利用 AI 工具来优化混合云环境的性能、成本和安全性。</li><li>针对企业自身的 AI 应用需求，战略性地规划 AI 基础设施在混合云中的布局，充分利用各云平台的优势 AI 硬件和服务。</li></ul></li></ol><p>总之，用户对混合云价值的认知是深刻且符合趋势的。通过周密的战略规划、有效的执行管理以及对新兴技术的持续关注，中型企业完全有能力驾驭混合云带来的机遇，将其转化为实实在在的业务竞争优势。</p><h3 id="引用的著作"><a href="#引用的著作" class="headerlink" title="引用的著作"></a>引用的著作</h3><ol><li>Vendor lock-in - Wikipedia, 访问时间为 六月 4, 2025， <a href="https://en.wikipedia.org/wiki/Vendor_lock-in"><u>https://en.wikipedia.org/wiki/Vendor_lock-in</u></a></li><li>What Is Vendor Lock In and How to avoid It | DashDevs, 访问时间为 六月 4, 2025， <a href="https://dashdevs.com/blog/how-to-avoid-vendor-lock-in-traps/"><u>https://dashdevs.com/blog/how-to-avoid-vendor-lock-in-traps/</u></a></li><li>Comparing Cloud Providers: Top Tips for 2025 - Signiance Technologies, 访问时间为 六月 4, 2025， <a href="https://signiance.com/comparing-cloud-providers/"><u>https://signiance.com/comparing-cloud-providers/</u></a></li><li>China’s Cloud Computing Market: Developments and Opportunities …, 访问时间为 六月 4, 2025， <a href="https://www.china-briefing.com/doing-business-guide/china/sector-insights/china-s-cloud-computing-market-developments-and-opportunities-for-foreign-players"><u>https://www.china-briefing.com/doing-business-guide/china/sector-insights/china-s-cloud-computing-market-developments-and-opportunities-for-foreign-players</u></a></li><li>AWS vs Azure vs Google Cloud: The Ultimate Comparison in 2025 - DynaTech Systems, 访问时间为 六月 4, 2025， <a href="https://dynatechconsultancy.com/blog/aws-vs-azure-vs-google-cloud-the-ultimate-comparison"><u>https://dynatechconsultancy.com/blog/aws-vs-azure-vs-google-cloud-the-ultimate-comparison</u></a></li><li>AWS Is Strongest Public Cloud Platform, Research Report Says …, 访问时间为 六月 4, 2025， <a href="https://awsinsider.net/Articles/2025/03/10/AWS-Is-Strongest-Public-Cloud-Platform-Research-Report-Says.aspx"><u>https://awsinsider.net/Articles/2025/03/10/AWS-Is-Strongest-Public-Cloud-Platform-Research-Report-Says.aspx</u></a></li><li>Choice Architecture - The Decision Lab, 访问时间为 六月 4, 2025， <a href="https://thedecisionlab.com/reference-guide/psychology/choice-architecture"><u>https://thedecisionlab.com/reference-guide/psychology/choice-architecture</u></a></li><li>The Psychology of Decision-Making: How to Make Better Choices, 访问时间为 六月 4, 2025， <a href="https://www.accidentalpm.online/blog/the-psychology-of-decision-making-how-to-make-better-choices"><u>https://www.accidentalpm.online/blog/the-psychology-of-decision-making-how-to-make-better-choices</u></a></li><li>Supplier Dependence - FasterCapital, 访问时间为 六月 4, 2025， <a href="https://fastercapital.com/keyword/supplier-dependence.html/1"><u>https://fastercapital.com/keyword/supplier-dependence.html/1</u></a></li><li>Co-Dependency | Mental Health America, 访问时间为 六月 4, 2025， <a href="https://mhanational.org/resources/co-dependency/"><u>https://mhanational.org/resources/co-dependency/</u></a></li><li>Hybrid versus Multi-Cloud in the Intelligent Strategies for MSP Success, 访问时间为 六月 4, 2025， <a href="https://www.msptoday.com/topics/msp-today/articles/462189-hybrid-versus-multi-cloud-the-intelligent-strategies-msp.htm"><u>https://www.msptoday.com/topics/msp-today/articles/462189-hybrid-versus-multi-cloud-the-intelligent-strategies-msp.htm</u></a></li><li>Top Benefits and Challenges of a Multi-Cloud Strategy - Netguru, 访问时间为 六月 4, 2025， <a href="https://www.netguru.com/blog/multi-cloud-strategy-benefits"><u>https://www.netguru.com/blog/multi-cloud-strategy-benefits</u></a></li><li>Cloud Pricing Comparison 2025: Compute, Storage, and Networking - emma, 访问时间为 六月 4, 2025， <a href="https://www.emma.ms/blog/cloud-pricing-comparison-compute-storage-and-networking"><u>https://www.emma.ms/blog/cloud-pricing-comparison-compute-storage-and-networking</u></a></li><li>Cloud comparison: AWS EC2 vs Azure Virtual Machines vs Google …, 访问时间为 六月 4, 2025， <a href="https://www.pluralsight.com/resources/blog/cloud/cloud-comparison-aws-ec2-vs-azure-virtual-machines-vs-google-compute-engine"><u>https://www.pluralsight.com/resources/blog/cloud/cloud-comparison-aws-ec2-vs-azure-virtual-machines-vs-google-compute-engine</u></a></li><li>Alibaba Cloud vs AWS: What Cloud Service Provider to Choose, 访问时间为 六月 4, 2025， <a href="https://mobilunity.com/blog/alibaba-cloud-vs-aws/"><u>https://mobilunity.com/blog/alibaba-cloud-vs-aws/</u></a></li><li>ECS Types_Service Overview_ECS Types and … - 华为云, 访问时间为 六月 4, 2025， <a href="https://support.huaweicloud.com/intl/en-us/productdesc-ecs/en-us_topic_0035470096.html"><u>https://support.huaweicloud.com/intl/en-us/productdesc-ecs/en-us_topic_0035470096.html</u></a></li><li>ECS Types and Flavors - Online Documentation Platform - Huawei, 访问时间为 六月 4, 2025， <a href="https://doc.hcs.huawei.com/usermanual/ecs/ECS_ug_000163.html"><u>https://doc.hcs.huawei.com/usermanual/ecs/ECS_ug_000163.html</u></a></li><li>Huawei Cloud ECS | Scrums.com Cloud Hub, 访问时间为 六月 4, 2025， <a href="https://www.scrums.com/cloud-hub/huawei-cloud-ecs"><u>https://www.scrums.com/cloud-hub/huawei-cloud-ecs</u></a></li><li>ECS Types and Flavors - Huawei Cloud Stack 8.5.0 Resource …, 访问时间为 六月 4, 2025， <a href="https://support.huawei.com/enterprise/en/doc/EDOC1100405741/b2fae9f2/ecs-types-and-flavors"><u>https://support.huawei.com/enterprise/en/doc/EDOC1100405741/b2fae9f2/ecs-types-and-flavors</u></a></li><li>Instance Types and Specifications - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/1100/69347"><u>https://www.tencentcloud.com/document/product/1100/69347</u></a></li><li>Cloud Virtual Machine - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/product/cvm"><u>https://www.tencentcloud.com/product/cvm</u></a></li><li>Amazon S3 vs Google Cloud Storage vs Azure Storage Cost, 访问时间为 六月 4, 2025， <a href="https://www.economize.cloud/blog/amazon-s3-vs-google-storage-vs-azure-storage/"><u>https://www.economize.cloud/blog/amazon-s3-vs-google-storage-vs-azure-storage/</u></a></li><li>Tencent Cloud Analyst Reports, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/analyst/detail/100645?fromSource=intl.9457609.9457609.9457609&utm_medium=cpc&utm_id=intl.9457609.9457609.9457609"><u>https://www.tencentcloud.com/analyst/detail/100645?fromSource=intl.9457609.9457609.9457609&amp;utm_medium&#x3D;cpc&amp;utm_id&#x3D;intl.9457609.9457609.9457609</u></a></li><li>Types of Instance - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/213/15374"><u>https://www.tencentcloud.com/document/product/213/15374</u></a></li><li>Families and Models - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/213/11518"><u>https://www.tencentcloud.com/document/product/213/11518</u></a></li><li>Cloud Providers Comparison 2025: AWS vs. Azure vs. Google …, 访问时间为 六月 4, 2025， <a href="https://thecodev.co.uk/cloud-providers-comparison-2025/"><u>https://thecodev.co.uk/cloud-providers-comparison-2025/</u></a></li><li>Alibaba Cloud reaffirms $52.7 billion global expansion plans, 访问时间为 六月 4, 2025， <a href="https://www.rcrwireless.com/20250529/telco-cloud/alibaba-cloud-expansion"><u>https://www.rcrwireless.com/20250529/telco-cloud/alibaba-cloud-expansion</u></a></li><li>February 20, 2025 – W.Media, 访问时间为 六月 4, 2025， <a href="https://w.media/2025/02/20/"><u>https://w.media/2025/02/20/</u></a></li><li>Regions and AZs - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/1100/40937"><u>https://www.tencentcloud.com/document/product/1100/40937</u></a></li><li>Regions and Availability Zones - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/457/36736"><u>https://www.tencentcloud.com/document/product/457/36736</u></a></li><li>Tencent Cloud launches first Middle East cloud region in Saudi Arabia - DCD, 访问时间为 六月 4, 2025， <a href="https://www.datacenterdynamics.com/en/news/tencent-cloud-launches-first-middle-east-cloud-region-in-saudi-arabia/"><u>https://www.datacenterdynamics.com/en/news/tencent-cloud-launches-first-middle-east-cloud-region-in-saudi-arabia/</u></a></li><li>Regions and AZs - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/597/44194"><u>https://www.tencentcloud.com/document/product/597/44194</u></a></li><li>Regions and Availability Zones - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/213/6091"><u>https://www.tencentcloud.com/document/product/213/6091</u></a></li><li>Corporate Information - Huawei, 访问时间为 六月 4, 2025， <a href="https://www.huawei.com/en/corporate-information"><u>https://www.huawei.com/en/corporate-information</u></a></li><li>Everything as a Service: Building the Cloud Foundation for an …, 访问时间为 六月 4, 2025， <a href="https://www.huawei.com/en/huaweitech/publication/202301/service-cloud-foundation-intelligent-world"><u>https://www.huawei.com/en/huaweitech/publication/202301/service-cloud-foundation-intelligent-world</u></a></li><li>EKS vs AKS vs GKE: 5 Critical Differences - SentinelOne, 访问时间为 六月 4, 2025， <a href="https://www.sentinelone.com/cybersecurity-101/cybersecurity/eks-vs-aks-vs-gke/"><u>https://www.sentinelone.com/cybersecurity-101/cybersecurity/eks-vs-aks-vs-gke/</u></a></li><li>Kubernetes Managed Services Comparison - Mobilise Cloud, 访问时间为 六月 4, 2025， <a href="https://www.mobilise.cloud/kubernetes-managed-services-comparison/"><u>https://www.mobilise.cloud/kubernetes-managed-services-comparison/</u></a></li><li>Support for Kubernetes versions - Container Service for Kubernetes …, 访问时间为 六月 4, 2025， <a href="https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/user-guide/support-for-kubernetes-versions/"><u>https://www.alibabacloud.com/help/en/ack/ack-managed-and-ack-dedicated/user-guide/support-for-kubernetes-versions/</u></a></li><li>2024 Gartner® Magic Quadrant™ for Container Management …, 访问时间为 六月 4, 2025， <a href="https://www.alibabacloud.com/en/about/gartner-container?_p_lc=1"><u>https://www.alibabacloud.com/en/about/gartner-container?_p_lc&#x3D;1</u></a></li><li>Tencent Cloud Tencent Kubernetes Engine (TKE) Reviews, Ratings …, 访问时间为 六月 4, 2025， <a href="https://www.gartner.com/reviews/market/container-management/vendor/tencent-cloud/product/tencent-kubernetes-engine-tke"><u>https://www.gartner.com/reviews/market/container-management/vendor/tencent-cloud/product/tencent-kubernetes-engine-tke</u></a></li><li>tkestack&#x2F;tke: Native Kubernetes container management … - GitHub, 访问时间为 六月 4, 2025， <a href="https://github.com/tkestack/tke"><u>https://github.com/tkestack/tke</u></a></li><li>Huawei Cloud Container Engine Reviews, Ratings &amp; Features 2025 …, 访问时间为 六月 4, 2025， <a href="https://www.gartner.com/reviews/market/container-management/vendor/huawei/product/huawei-cloud-container-engine"><u>https://www.gartner.com/reviews/market/container-management/vendor/huawei/product/huawei-cloud-container-engine</u></a></li><li>Kubernetes Version Policy_Product Bulletin_Product Release …, 访问时间为 六月 4, 2025， <a href="https://support.huaweicloud.com/eu/bulletin-cce/cce_bulletin_0033.html"><u>https://support.huaweicloud.com/eu/bulletin-cce/cce_bulletin_0033.html</u></a></li><li>Kubernetes Version Policy_Product Bulletin_Product Release …, 访问时间为 六月 4, 2025， <a href="https://support.huaweicloud.com/intl/en-us/bulletin-cce/cce_bulletin_0033.html"><u>https://support.huaweicloud.com/intl/en-us/bulletin-cce/cce_bulletin_0033.html</u></a></li><li>S3 Vs. GCS Vs. Azure Blob Storage: Cloud Storage Comparison …, 访问时间为 六月 4, 2025， <a href="https://airbyte.com/data-engineering-resources/s3-gcs-and-azure-blob-storage-compared"><u>https://airbyte.com/data-engineering-resources/s3-gcs-and-azure-blob-storage-compared</u></a></li><li>FAQ about OSS - Object Storage Service - Alibaba Cloud …, 访问时间为 六月 4, 2025， <a href="https://www.alibabacloud.com/help/en/oss/faq-15"><u>https://www.alibabacloud.com/help/en/oss/faq-15</u></a></li><li>S3 Compatible Cloud Object Storage Benchmark in 2025 - Research AIMultiple, 访问时间为 六月 4, 2025， <a href="https://research.aimultiple.com/s3-compatible-object-storage/"><u>https://research.aimultiple.com/s3-compatible-object-storage/</u></a></li><li>Best Tencent Cloud Alternatives for 2025: Comprehensive Comparison Guide - BytePlus, 访问时间为 六月 4, 2025， <a href="https://www.byteplus.com/en/blog/the-best-tencent-cloud-alternatives"><u>https://www.byteplus.com/en/blog/the-best-tencent-cloud-alternatives</u></a></li><li>Cloud Object Storage | Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/product/cos"><u>https://www.tencentcloud.com/product/cos</u></a></li><li>Huawei Launches AI-Ready Data Storage for Carriers to Embrace AI, 访问时间为 六月 4, 2025， <a href="https://www.huawei.com/en/news/2025/3/mwc-data-storage-ai-ready"><u>https://www.huawei.com/en/news/2025/3/mwc-data-storage-ai-ready</u></a></li><li>Object Storage Service (OBS) | Huawei Cloud, 访问时间为 六月 4, 2025， <a href="https://www.huaweicloud.com/intl/en-us/product/obs.html"><u>https://www.huaweicloud.com/intl/en-us/product/obs.html</u></a></li><li>Cloud Storage Pricing - Updated for 2025 - Finout, 访问时间为 六月 4, 2025， <a href="https://www.finout.io/blog/cloud-storage-pricing-comparison"><u>https://www.finout.io/blog/cloud-storage-pricing-comparison</u></a></li><li>Migrate data from Amazon S3 to Alibaba Cloud OSS, 访问时间为 六月 4, 2025， <a href="https://www.alibabacloud.com/help/en/oss/migrate-data-from-amazon-s3-to-alibaba-cloud-oss-1"><u>https://www.alibabacloud.com/help/en/oss/migrate-data-from-amazon-s3-to-alibaba-cloud-oss-1</u></a></li><li>Cloud Object Storage, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/436"><u>https://www.tencentcloud.com/document/product/436</u></a></li><li>Compare Huawei Object Storage Service (OBS) vs. S3 Drive in 2025 - Slashdot, 访问时间为 六月 4, 2025， <a href="https://slashdot.org/software/comparison/Huawei-Object-Storage-Service-OBS-vs-S3-Drive/"><u>https://slashdot.org/software/comparison/Huawei-Object-Storage-Service-OBS-vs-S3-Drive/</u></a></li><li>Supported Storage Operations - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/266/67993"><u>https://www.tencentcloud.com/document/product/266/67993</u></a></li><li>Push to AWS S3-Compatible COS - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/1145/61295"><u>https://www.tencentcloud.com/document/product/1145/61295</u></a></li><li>Introduction - OceanStor 6.1.x Basic Storage Service Configuration …, 访问时间为 六月 4, 2025， <a href="https://support.huawei.com/enterprise/en/doc/EDOC1100264343/79b6c29e/introduction"><u>https://support.huawei.com/enterprise/en/doc/EDOC1100264343/79b6c29e/introduction</u></a></li><li>Object Storage Service - Online Documentation Platform - Huawei, 访问时间为 六月 4, 2025， <a href="https://doc.hcs.huawei.com/obs/index.html"><u>https://doc.hcs.huawei.com/obs/index.html</u></a></li><li>raw.githubusercontent.com, 访问时间为 六月 4, 2025， <a href="https://raw.githubusercontent.com/cncf/landscape/refs/heads/master/landscape.yml"><u>https://raw.githubusercontent.com/cncf/landscape/refs/heads/master/landscape.yml</u></a></li><li>Cloud GPU Service | Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/product/gpu"><u>https://www.tencentcloud.com/product/gpu</u></a></li><li>The Ultimate Comparison of Azure Blob Storage and Google Cloud …, 访问时间为 六月 4, 2025， <a href="https://www.cloudthat.com/resources/blog/the-ultimate-comparison-of-azure-blob-storage-and-google-cloud-storage"><u>https://www.cloudthat.com/resources/blog/the-ultimate-comparison-of-azure-blob-storage-and-google-cloud-storage</u></a></li><li>Best Cloud Storage Services 2025: Top 10 Ranked - Galaxy, 访问时间为 六月 4, 2025， <a href="https://www.getgalaxy.io/blog/best-cloud-storage-services-2025"><u>https://www.getgalaxy.io/blog/best-cloud-storage-services-2025</u></a></li><li>Top 12 Cloud GPU Providers for AI and Machine Learning in 2025, 访问时间为 六月 4, 2025， <a href="https://www.runpod.io/articles/guides/top-cloud-gpu-providers"><u>https://www.runpod.io/articles/guides/top-cloud-gpu-providers</u></a></li><li>Can I use NVIDIA A100 or H100 GPUs on Alibaba Cloud for …, 访问时间为 六月 4, 2025， <a href="https://massedcompute.com/faq-answers/?question=Can%20I%20use%20NVIDIA%20A100%20or%20H100%20GPUs%20on%20Alibaba%20Cloud%20for%20machine%20learning%20workloads?"><u>https://massedcompute.com/faq-answers/?question=Can%20I%20use%20NVIDIA%20A100%20or%20H100%20GPUs%20on%20Alibaba%20Cloud%20for%20machine%20learning%20workloads?</u></a></li><li>Elastic GPU Service - Alibaba Cloud, 访问时间为 六月 4, 2025， <a href="https://www.alibabacloud.com/product/gpu"><u>https://www.alibabacloud.com/product/gpu</u></a></li><li>Compare Hyperbolic vs. Tencent Cloud GPU Service in 2025, 访问时间为 六月 4, 2025， <a href="https://slashdot.org/software/comparison/Hyperbolic-vs-Tencent-Cloud-GPU-Service/"><u>https://slashdot.org/software/comparison/Hyperbolic-vs-Tencent-Cloud-GPU-Service/</u></a></li><li>Cloud GPU Servers for AI: What You Need to Know in 2025, 访问时间为 六月 4, 2025， <a href="https://www.hyperstack.cloud/blog/case-study/cloud-gpu-servers-for-ai-what-you-need-to-know"><u>https://www.hyperstack.cloud/blog/case-study/cloud-gpu-servers-for-ai-what-you-need-to-know</u></a></li><li>Computing Instance - Tencent Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tencentcloud.com/document/product/560/19701"><u>https://www.tencentcloud.com/document/product/560/19701</u></a></li><li>H100 Tensor Core GPU - NVIDIA, 访问时间为 六月 4, 2025， <a href="https://www.nvidia.com/en-us/data-center/h100/"><u>https://www.nvidia.com/en-us/data-center/h100/</u></a></li><li>NVIDIA A100 Price in 2025 - DGX A100 vs. H100 vs. RTX 4090, 访问时间为 六月 4, 2025， <a href="https://directmacro.com/blog/post/nvidia-a100-in-2025"><u>https://directmacro.com/blog/post/nvidia-a100-in-2025</u></a></li><li>Huawei Challenges Nvidia’s AI Dominance with New Chip - HPCwire, 访问时间为 六月 4, 2025， <a href="https://www.hpcwire.com/2025/04/29/huawei-challenges-nvidias-ai-dominance-with-new-chip/"><u>https://www.hpcwire.com/2025/04/29/huawei-challenges-nvidias-ai-dominance-with-new-chip/</u></a></li><li>Compare Compute with Hivenet vs. Huawei Cloud ModelArts in 2025, 访问时间为 六月 4, 2025， <a href="https://slashdot.org/software/comparison/Compute-with-Hivenet-vs-Huawei-Cloud-ModelArts/"><u>https://slashdot.org/software/comparison/Compute-with-Hivenet-vs-Huawei-Cloud-ModelArts/</u></a></li><li>Will Huawei’s New AI Chip, Ascend 910D, Rival Nvidia? | AI Magazine, 访问时间为 六月 4, 2025， <a href="https://aimagazine.com/articles/will-huaweis-new-ai-chip-ascend-910d-rival-nvidia"><u>https://aimagazine.com/articles/will-huaweis-new-ai-chip-ascend-910d-rival-nvidia</u></a></li><li>Why Huawei’s New AI Chip Isn’t a Global Threat to Nvidia—Yet, 访问时间为 六月 4, 2025， <a href="https://tecknexus.com/why-huaweis-new-ai-chip-isnt-a-global-threat-to-nvidia-yet/"><u>https://tecknexus.com/why-huaweis-new-ai-chip-isnt-a-global-threat-to-nvidia-yet/</u></a></li><li>Compare Huawei Cloud ModelArts vs. NVIDIA RAPIDS in 2025 - Slashdot, 访问时间为 六月 4, 2025， <a href="https://slashdot.org/software/comparison/Huawei-Cloud-ModelArts-vs-NVIDIA-RAPIDS/"><u>https://slashdot.org/software/comparison/Huawei-Cloud-ModelArts-vs-NVIDIA-RAPIDS/</u></a></li><li>Huawei reportedly to trial new AI chip to rival Nvidia - Fierce Network, 访问时间为 六月 4, 2025， <a href="https://www.fierce-network.com/cloud/huawei-reportedly-trial-new-ai-chip-rival-nvidia"><u>https://www.fierce-network.com/cloud/huawei-reportedly-trial-new-ai-chip-rival-nvidia</u></a></li><li>What Is Multicloud? | Microsoft Azure, 访问时间为 六月 4, 2025， <a href="https://azure.microsoft.com/en-us/resources/cloud-computing-dictionary/what-is-multi-cloud"><u>https://azure.microsoft.com/en-us/resources/cloud-computing-dictionary/what-is-multi-cloud</u></a></li><li>Why Hybrid Cloud for Small Businesses is the Best Option in 2025, 访问时间为 六月 4, 2025， <a href="https://www.steadfastsolutions.com.au/insights/why-hybrid-cloud-for-small-businesses-is-the-best-option/"><u>https://www.steadfastsolutions.com.au/insights/why-hybrid-cloud-for-small-businesses-is-the-best-option/</u></a></li><li>AI and Hybrid Cloud Infrastructure: Crafting a Scalable IT Strategy …, 访问时间为 六月 4, 2025， <a href="https://www.arionresearch.com/blog/ow4llblb08yiltdico9e4905i697t9"><u>https://www.arionresearch.com/blog/ow4llblb08yiltdico9e4905i697t9</u></a></li><li>How Can Businesses Secure Hybrid Cloud Environments? | CSA, 访问时间为 六月 4, 2025， <a href="https://cloudsecurityalliance.org/articles/hybrid-cloud-security-top-challenges-and-best-practices"><u>https://cloudsecurityalliance.org/articles/hybrid-cloud-security-top-challenges-and-best-practices</u></a></li><li>What Is Hybrid Cloud Management? | IBM, 访问时间为 六月 4, 2025， <a href="https://www.ibm.com/think/topics/hybrid-cloud-management"><u>https://www.ibm.com/think/topics/hybrid-cloud-management</u></a></li><li><a href="http://www.ijfmr.com/">www.ijfmr.com</a>, 访问时间为 六月 4, 2025， <a href="https://www.ijfmr.com/papers/2025/1/36056.pdf"><u>https://www.ijfmr.com/papers/2025/1/36056.pdf</u></a></li><li>How to Overcome Cloud Complexity Challenges &amp; Simplify Cloud, 访问时间为 六月 4, 2025， <a href="https://www.tierpoint.com/blog/cloud-complexity/"><u>https://www.tierpoint.com/blog/cloud-complexity/</u></a></li><li>What is Multi-Cloud Management? Best Practices and Tools - Mirantis, 访问时间为 六月 4, 2025， <a href="https://www.mirantis.com/blog/what-is-multi-cloud-management-best-practices-and-tools/"><u>https://www.mirantis.com/blog/what-is-multi-cloud-management-best-practices-and-tools/</u></a></li><li>Cloud adoption is driving success for SMEs | ThinkBusiness, 访问时间为 六月 4, 2025， <a href="https://www.thinkbusiness.ie/articles/cloud-adoption-sme-success/"><u>https://www.thinkbusiness.ie/articles/cloud-adoption-sme-success/</u></a></li><li>The Business Guide to Cloud Infrastructure as a Service (IaaS), 访问时间为 六月 4, 2025， <a href="https://openmetal.io/resources/blog/the-business-guide-to-cloud-infrastructure-as-a-service-iaas/"><u>https://openmetal.io/resources/blog/the-business-guide-to-cloud-infrastructure-as-a-service-iaas/</u></a></li><li>Innovations in IT Infrastructure Management | DivergeIT, 访问时间为 六月 4, 2025， <a href="https://www.divergeit.com/blog/it-infrastructure-management"><u>https://www.divergeit.com/blog/it-infrastructure-management</u></a></li><li>Hybrid Cloud Market Analysis, Growth Trends and Forecasts Report …, 访问时间为 六月 4, 2025， <a href="https://www.businesswire.com/news/home/20250513124988/en/Hybrid-Cloud-Market-Analysis-Growth-Trends-and-Forecasts-Report-2024-2025-2030-Surging-Demand-for-Seamless-Interoperability-Between-Cloud-Services-and-Existing-Systems---ResearchAndMarkets.com"><u>https://www.businesswire.com/news/home/20250513124988/en/Hybrid-Cloud-Market-Analysis-Growth-Trends-and-Forecasts-Report-2024-2025-2030-Surging-Demand-for-Seamless-Interoperability-Between-Cloud-Services-and-Existing-Systems---ResearchAndMarkets.com</u></a></li><li>What are Large Language Models (LLMs)? - Nutanix, 访问时间为 六月 4, 2025， <a href="https://www.nutanix.com/info/artificial-intelligence/large-language-models"><u>https://www.nutanix.com/info/artificial-intelligence/large-language-models</u></a></li><li>Best practices for serverless inference | Modal Blog, 访问时间为 六月 4, 2025， <a href="https://modal.com/blog/serverless-inference-article"><u>https://modal.com/blog/serverless-inference-article</u></a></li><li>Navigating Deployment of LLMs to Cloud Servers - Walturn, 访问时间为 六月 4, 2025， <a href="https://www.walturn.com/insights/navigating-deployment-of-llms-to-cloud-servers"><u>https://www.walturn.com/insights/navigating-deployment-of-llms-to-cloud-servers</u></a></li><li>Simplifying complexity in a hybrid, multi-cloud, AI world • The Register, 访问时间为 六月 4, 2025， <a href="https://www.theregister.com/2025/05/28/f5_adc_application_delivery_security_platform_ai/"><u>https://www.theregister.com/2025/05/28/f5_adc_application_delivery_security_platform_ai&#x2F;</u></a></li><li>Implement RAG while meeting data residency requirements using …, 访问时间为 六月 4, 2025， <a href="https://aws.amazon.com/blogs/machine-learning/implement-rag-while-meeting-data-residency-requirements-using-aws-hybrid-and-edge-services/"><u>https://aws.amazon.com/blogs/machine-learning/implement-rag-while-meeting-data-residency-requirements-using-aws-hybrid-and-edge-services/</u></a></li><li>Plan a hybrid and multicloud strategy | Cloud Architecture Center …, 访问时间为 六月 4, 2025， <a href="https://cloud.google.com/architecture/hybrid-multicloud-patterns/strategy"><u>https://cloud.google.com/architecture/hybrid-multicloud-patterns/strategy</u></a></li><li>Bare Metal vs. Traditional VMs: Which is Better for LLM Training?, 访问时间为 六月 4, 2025， <a href="https://www.runpod.io/articles/comparison/bare-metal-vs-traditional-vms-llm-training"><u>https://www.runpod.io/articles/comparison/bare-metal-vs-traditional-vms-llm-training</u></a></li><li>LLMOps in Production: 457 Case Studies of What Actually Works - ZenML Blog, 访问时间为 六月 4, 2025， <a href="https://www.zenml.io/blog/llmops-in-production-457-case-studies-of-what-actually-works"><u>https://www.zenml.io/blog/llmops-in-production-457-case-studies-of-what-actually-works</u></a></li><li>Serverless Computing vs Containerization: A Comprehensive …, 访问时间为 六月 4, 2025， <a href="https://www.cloudoptimo.com/blog/serverless-computing-vs-containerization-a-comprehensive-comparison-for-modern-cloud-applications/"><u>https://www.cloudoptimo.com/blog/serverless-computing-vs-containerization-a-comprehensive-comparison-for-modern-cloud-applications/</u></a></li><li>Cloud Computing in 2025: Key Strategic Predictions for Enterprise …, 访问时间为 六月 4, 2025， <a href="https://www.itconvergence.com/blog/top-strategic-cloud-computing-predictions-for-2025-and-onwards/"><u>https://www.itconvergence.com/blog/top-strategic-cloud-computing-predictions-for-2025-and-onwards/</u></a></li><li>Worldwide Public Cloud Infrastructure as a Service Forecast, 2024 …, 访问时间为 六月 4, 2025， <a href="https://my.idc.com/getdoc.jsp?containerId=US50402523"><u>https://my.idc.com/getdoc.jsp?containerId=US50402523</u></a></li><li>IDC’s Worldwide Public Cloud Infrastructure as a Service Taxonomy …, 访问时间为 六月 4, 2025， <a href="https://my.idc.com/getdoc.jsp?containerId=US51735424"><u>https://my.idc.com/getdoc.jsp?containerId=US51735424</u></a></li><li>New Flexera Report Finds that 84% of Organizations Struggle to …, 访问时间为 六月 4, 2025， <a href="https://www.flexera.com/about-us/press-center/new-flexera-report-finds-84-percent-of-organizations-struggle-to-manage-cloud-spend"><u>https://www.flexera.com/about-us/press-center/new-flexera-report-finds-84-percent-of-organizations-struggle-to-manage-cloud-spend</u></a></li><li>10 Essential Cloud Migration Statistics for 2025 - Pump, 访问时间为 六月 4, 2025， <a href="https://www.pump.co/blog/cloud-migration-statistics"><u>https://www.pump.co/blog/cloud-migration-statistics</u></a></li><li>Multi-Cloud Management: Tools, Use Cases, and Tips - Mirantis, 访问时间为 六月 4, 2025， <a href="https://www.mirantis.com/blog/what-is-multi-cloud-management-best-practices-and-tools"><u>https://www.mirantis.com/blog/what-is-multi-cloud-management-best-practices-and-tools</u></a></li><li>MLSys 2025 Tuesday 05&#x2F;13, 访问时间为 六月 4, 2025， <a href="https://mlsys.org/virtual/2025/day/5/13"><u>https://mlsys.org/virtual/2025/day/5/13</u></a></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/">深度研究</category>
      
      <category domain="https://deusyu.app/categories/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/Deep-Research/">Deep Research</category>
      
      
      <category domain="https://deusyu.app/tags/Kubernetes/">Kubernetes</category>
      
      <category domain="https://deusyu.app/tags/Hybrid-Cloud/">Hybrid Cloud</category>
      
      <category domain="https://deusyu.app/tags/Multi-Cloud/">Multi-Cloud</category>
      
      <category domain="https://deusyu.app/tags/FinOps/">FinOps</category>
      
      <category domain="https://deusyu.app/tags/Terraform/">Terraform</category>
      
      <category domain="https://deusyu.app/tags/AI-Infrastructure/">AI Infrastructure</category>
      
      <category domain="https://deusyu.app/tags/LLM/">LLM</category>
      
      <category domain="https://deusyu.app/tags/Vendor-Lock-in/">Vendor Lock-in</category>
      
      
      <comments>https://deusyu.app/posts/hybrid-cloud-value-eval-2025/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>深度研究｜全球混合云平台能力深度对比分析报告</title>
      <link>https://deusyu.app/posts/deep-research-hybrid-cloud-2025/</link>
      <guid>https://deusyu.app/posts/deep-research-hybrid-cloud-2025/</guid>
      <pubDate>Wed, 02 Jul 2025 01:25:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p><strong>这是我的深度研究报告系列，借助 AI 的 Deep Research 功能搜集资料，再由我亲手筛选、校验和落笔。</strong></p></blockquote><h1 id="全球混合云平台能力深度对比分析报告"><a href="#全球混合云平台能力深度对比分析报告" class="headerlink" title="全球混合云平台能力深度对比分析报告"></a><strong>全球混合云平台能力深度对比分析报告</strong></h1><h2 id="I-执行摘要"><a href="#I-执行摘要" class="headerlink" title="I. 执行摘要"></a><strong>I. 执行摘要</strong></h2><p>当前混合云市场正经历深刻变革，已从基础的工作负载迁移演进至构建复杂的、具备统一管理能力的平台。企业对“真正的混合云平台”的期望，不仅是连接私有云与单一公有云，更在于实现跨多云、多平台环境的标准化资源接入、一致性编排、统一运营与治理，以及智能化的成本优化和弹性伸缩。本报告深度剖析了全球主流云厂商在这些关键能力维度上的成熟度。</p><p>分析显示，微软 Azure 凭借其 Azure Arc 的广泛覆盖和深度集成，以及 Google Cloud 以 Anthos&#x2F;GKE Enterprise 为核心的 Kubernetes 统一管理方案，在构建开放、统一的多云管理平面方面表现突出，最接近“真正的混合云平台”的理念。AWS 通过 Outposts、EKS Anywhere 及新增的 EKS Hybrid Nodes，持续将其强大的云服务生态向客户本地环境延伸，在 AWS 生态内提供高度一致的体验。Oracle Cloud 以 OCI Dedicated Region 的独特模式，将完整的公有云能力部署至客户数据中心，并在多云数据库服务上形成差异化优势。阿里云、IBM Cloud 和腾讯云亦在混合云领域积极布局，分别依托 Apsara Stack 与 ACK One、Satellite 与 OpenShift、TStack 与 TKE 等核心产品，提供各具特色的混合云解决方案。然而，在实现跨异构环境（包括不同公有云、多种私有云技术栈及边缘）的、完全标准化的“算力并网”，以及在此基础上的“统一调度、统一 FinOps、统一治理”闭环方面，多数厂商仍面临挑战。</p><p>未来几年，API 网状化、主权云需求、弹性 GPU 资源池以及边缘节点的深度融合将是混合云平台演进的关键趋势。对于云厂商而言，机遇在于深化统一管理能力、简化混合网络复杂性、提升 IaC 一致性、构建端到端混合云 FinOps 体系，并拥抱开放生态。对于企业自建团队，则需聚焦战略清晰、能力建设、工具链整合、安全左移及持续优化的混合云治理实践。</p><h2 id="II-概览表"><a href="#II-概览表" class="headerlink" title="II. 概览表"></a><strong>II. 概览表</strong></h2><table><thead><tr><th>核心能力维度</th><th>AWS (Amazon Web Services)</th><th>Microsoft Azure</th><th>Google Cloud (GCP)</th><th>Alibaba Cloud (阿里云)</th><th>Oracle Cloud (OCI)</th><th>IBM Cloud</th><th>Tencent Cloud (腾讯云)</th><th>Baidu Cloud (百度智能云)</th></tr></thead><tbody><tr><td><strong>多云&#x2F;多平台算力资源标准化并网接入</strong></td><td>部分 ✓ Outposts 为 AWS 硬件延伸；EKS&#x2F;ECS Anywhere 支持客户硬件但管理平面分离；新增 EKS Hybrid Nodes 尝试连接任意基础设施到 EKS。主要聚焦 AWS 服务一致性。 1</td><td>✓ Azure Arc 全面支持纳管外部物理&#x2F;虚拟机、Kubernetes 集群（多云）、数据服务。Azure Local (含 Stack HCI) 提供 Azure 一致性基础设施。 3</td><td>✓ Anthos&#x2F;GKE Enterprise 支持在 GCP、AWS、Azure、VMware、裸金属上部署和管理 GKE 集群，实现 K8s 层面的标准化接入。 5</td><td>部分 ✓ ACK One 支持注册和管理外部 K8s 集群；Apsara Stack 提供私有云环境。跨云标准化接入主要通过 K8s。 7</td><td>部分 ✓ OCI Dedicated Region 提供完整 OCI 环境；Cloud@Customer 系列延伸特定服务；多云数据库运行于其他云 IaaS。主要为 OCI 服务延伸。 9</td><td>部分 ✓ IBM Cloud Satellite 可将客户任意位置的计算资源作为 Satellite Location 运行 IBM Cloud 服务（尤其是 OpenShift）。 11</td><td>部分 ✓ TStack 提供私有云解决方案；TKE 支持 K8s 部署。ACK One 类产品（如 TKE Register Cluster）支持纳管外部集群。 13</td><td>✕ ABC Stack 为私有云部署。BHCMP 具体多云&#x2F;多平台接入能力公开资料不足。 15</td></tr><tr><td><strong>基于 Terraform（或等价 IaC）的一致性资源编排</strong></td><td>部分 ✓ Terraform Provider 成熟；Proton 支持 Terraform 但流程间接。CloudFormation 在 AWS 生态内更原生。 17</td><td>✓ Terraform Provider 成熟；Bicep 作为原生 IaC 与 Arc 集成良好，支持 Azure Local VM 模板化部署。 4</td><td>✓ Terraform Provider 成熟；Config Controller 提供 K8s 原生方式管理 GCP 资源，与 Anthos Config Management 协同。 20</td><td>部分 ✓ 提供 Terraform Provider；原生 ROS 支持模板化编排。混合云组件的 Terraform 支持度需进一步验证。 22</td><td>✓ 提供 OCI Terraform Provider，支持 OCI Resource Manager。Dedicated Region 和多云数据库的 IaC 一致性是关键。 24</td><td>✓ 提供 IBM Cloud Terraform Provider，支持 Satellite 资源（如 ibm_satellite_cluster）。 25</td><td>部分 ✓ 提供 Terraform Provider。TStack&#x2F;TKE 在混合场景下的 Terraform 支持细节公开资料较少。 26</td><td>✕ ABC Stack 及 BHCMP 的 Terraform 集成能力公开资料不足。</td></tr><tr><td><strong>统一调度、监控、计量计费、权限治理</strong></td><td>部分 ✓ CloudWatch, Cost Explorer, IAM 主要覆盖 AWS 及 Outposts。EKS Connector 提供有限的外部集群可见性。EKS&#x2F;ECS Anywhere 集群的底层资源管理分离。 27</td><td>✓ Azure Arc 将 Azure Monitor, Cost Management, Azure Policy, Entra ID 延伸至纳管的混合资源。 3</td><td>✓ GKE Enterprise 提供 Fleet 管理，集成 Cloud Monitoring, Cloud Logging, Anthos Config Management, Policy Controller, IAM 实现 K8s 集群的统一管理。 32</td><td>部分 ✓ CloudMonitor, RAM, ACK One 提供多集群监控和治理。Apsara Stack 有独立管理体系，与公有云统一管理集成度是关键。 7</td><td>部分 ✓ OCI Observability &amp; Management, IAM, Cost Management 覆盖 OCI。Dedicated Region 与公有云控制台分离是局限。 37</td><td>✓ IBM Cloud Monitoring, Cost Management, IAM。Satellite 将外部位置接入 IBM Cloud 统一管理，Satellite Config 实现配置分发。 11</td><td>部分 ✓ 腾讯云可观测平台, CAM, 成本管理工具。TStack 有其管理平台，与公有云统一管理集成度需关注。 41</td><td>✕ Cloud Monitor, IAM 可用。ABC Stack 与公有云的统一管理、计费、治理能力公开资料不足。 44</td></tr><tr><td><strong>跨云智能成本优化与弹性策略</strong></td><td>部分 ✓ AWS FinOps 工具成熟，但主要针对 AWS 服务。跨云（含非 AWS 资源）统一成本优化和弹性需客户自行构建。 46</td><td>✓ Azure Cost Management 结合 Arc 可分析混合成本。Azure Advisor 提供优化建议。跨云弹性伸缩模式（如云爆发）有实践。 48</td><td>✓ GCP FinOps Hub 提供优化建议。Anthos 支持跨集群（含多云）的资源优化和自动扩缩（基于 K8s）。 50</td><td>部分 ✓ 提供成本优化工具。ACK One 支持基于负载的资源自动伸缩。跨云（含非阿里系云）的智能优化和弹性策略细节较少。 7</td><td>部分 ✓ OCI FinOps Hub 提供优化建议。Cloud@Customer 支持弹性扩容。跨多云（含非 OCI 资源）的统一成本优化和弹性策略依赖 OCI 管理平面。 53</td><td>部分 ✓ IBM Cloud 提供成本管理工具和 FinOps 理念。Satellite 支持在客户设施上弹性部署服务，但跨云（含非 IBM Cloud）的智能优化需进一步明确。 55</td><td>部分 ✓ 提供成本管理工具。TKE 支持弹性伸缩。跨云（含非腾讯云）的智能成本优化和统一弹性策略公开信息有限。 41</td><td>✕ AI Cloud 是增长点。混合云场景下的智能成本优化与弹性策略公开资料不足。 57</td></tr></tbody></table><h2 id="III-各厂商混合云平台能力深度分析"><a href="#III-各厂商混合云平台能力深度分析" class="headerlink" title="III. 各厂商混合云平台能力深度分析"></a><strong>III. 各厂商混合云平台能力深度分析</strong></h2><h2 id="AWS-Amazon-Web-Services"><a href="#AWS-Amazon-Web-Services" class="headerlink" title="AWS (Amazon Web Services)"></a><strong>AWS (Amazon Web Services)</strong></h2><ul><li>架构&#x2F;产品生态总览<br>AWS 的混合云策略主要围绕将其丰富的云服务和管理体验延伸至客户的本地数据中心和边缘环境。核心产品包括 AWS Outposts，它以机架（Rack）和服务器（Servers）形态将 AWS 设计的基础设施和服务直接部署到客户场所，提供与 AWS 区域一致的 API、控制平面、硬件和工具，适用于低延迟、本地数据处理和数据驻留等场景 58。<strong>EKS Anywhere</strong> 则允许客户在自己的基础设施（如 VMware vSphere、裸金属服务器）上创建和运维 Kubernetes 集群，为客户提供了更大的灵活性，但同时也意味着客户需要承担更多的管理责任 1。类似地，<strong>ECS Anywhere</strong> 将 Amazon Elastic Container Service 的编排能力扩展到客户自有的计算设施上 61。<strong>AWS Control Tower</strong> 主要用于 AWS 多账户环境的治理和自动化设置，其建立的最佳实践和控制措施（Guardrails）虽然主要面向 AWS 内部资源，但其治理原则和账户工厂（Account Factory）的理念可为混合云环境下的账户管理和策略执行提供借鉴 62。<strong>AWS Proton</strong> 作为一个应用部署服务，通过标准化的模板帮助平台团队管理基础设施和 CI&#x2F;CD 流水线，开发者可自助部署应用。Proton 支持使用 Terraform 进行自定义配置，理论上可用于混合环境的应用交付，但这需要精心设计模板以适应不同的部署目标 64。<strong>新增</strong>功能方面，在 2024 年的 re:Invent 大会上，AWS 发布了 <strong>Amazon EKS Hybrid Nodes</strong>，允许客户将其本地基础设施的节点连接到云端的 Amazon EKS 控制平面，进一步模糊了云与本地的界限，旨在提供更统一的 Kubernetes 管理体验 2。同时，<strong>新增</strong>的 <strong>Amazon Q Business</strong> 作为一款 AI 助手，未来可能在简化混合云环境的运维、故障排查和资源优化方面发挥作用 66。<br>整体而言，AWS 的混合云方案体现了其强大的生态系统和技术实力，致力于将 AWS 的体验无缝扩展。Outposts 是 AWS 体验的物理延伸，而 EKS&#x2F;ECS Anywhere 则提供了软件层面的解决方案。EKS Hybrid Nodes 的出现，标志着 AWS 在控制平面与数据平面分离、提升管理灵活性方面迈出了新的一步，试图在完全托管和客户自管之间找到新的平衡点。</li><li>Terraform 集成和 IaC 成熟度<br>AWS 的 Terraform Provider 对其公有云服务的支持非常成熟，是业界广泛采用的 IaC 工具。对于混合云组件，Terraform 的支持情况则各有侧重。EKS Anywhere 集群的创建和配置可以通过 Terraform 实现，这为希望使用标准化 IaC 工具管理本地 Kubernetes 集群的用户提供了便利 1。<br>AWS Proton 虽然支持通过 Terraform 进行“自定义配置（self-managed provisioning）”，但这通常涉及到客户自行管理 Terraform 代码仓库，并通过 Proton 触发基于拉取请求（Pull Request）的工作流来部署和更新基础设施 17。这种方式相较于 Proton 对 CloudFormation 的原生集成，流程上显得更为间接，可能需要客户投入更多精力来构建和维护相应的自动化流程。<br>在 AWS 生态系统内部，AWS CloudFormation 仍然是其核心的 IaC 工具，与 Outposts 等混合云硬件产品的集成更为紧密和原生。例如，通过 CloudFormation 可以方便地定义和部署运行在 Outposts 上的 AWS 服务和资源。<br>可以看出，尽管 AWS 提供了对 Terraform 的支持，并且在 EKS Anywhere 等场景下实现了较好的集成，但其混合云策略在 IaC 层面似乎更倾向于推广自家的 CloudFormation 以及如 Proton 这样的上层服务抽象。对于追求在所有环境（包括混合云）中都以 Terraform 为主要 IaC 工具的企业，可能会感觉到 AWS 混合云组件的 Terraform 集成不如其公有云服务那样“第一公民”的体验，需要更仔细地评估其工作流的顺畅度和管理开销。</li><li>算力并网接入 &amp; 统一调度实现方式<br>AWS 通过多种方式实现混合环境下的算力接入和调度。AWS Outposts 本质上是将 AWS 区域的一部分延伸到客户本地，提供由 AWS 完全托管和维护的硬件，客户可以在其上运行 EC2 实例、EBS 卷和 S3 存储等，获得与 AWS 公有云一致的计算和存储能力 59。这种模式下，算力接入是标准化的 AWS 接口。<strong>EKS Anywhere</strong> 和 <strong>ECS Anywhere</strong> 则运行在客户自有的基础设施之上，如 VMware vSphere 环境或裸金属服务器 1。这意味着客户负责底层计算资源的管理，而 AWS 提供 Kubernetes (EKS) 或容器编排 (ECS) 的软件层和管理工具。<strong>新增</strong>的 <strong>EKS Hybrid Nodes</strong> 允许客户将本地或边缘的计算节点注册到云端的 EKS 控制平面，由 AWS 负责控制平面的管理，客户负责节点的运维 2。<br>在统一调度方面，AWS 主要依赖其容器编排服务。EKS (包括 EKS on Outposts, EKS Anywhere, EKS Hybrid Nodes) 提供了跨 AWS 云和本地环境的 Kubernetes 工作负载调度能力。同样，ECS (包括 ECS Anywhere) 也为容器化应用提供了统一的调度平面。然而，目前 AWS 并未提供一个超越特定编排系统（如 Kubernetes 或 ECS）的、能够统一调度所有类型算力（例如，同时调度 Outposts 上的 EC2 实例、客户 vSphere 上非 EKS 纳管的 VM、以及其他云上的 VM）的单一控制平面。工作负载的放置策略主要依据延迟、数据驻留和本地数据处理需求来决定 61。<br>弹性伸缩方面，AWS Auto Scaling 主要针对云端资源。对于本地部署的 Outposts 资源，虽然也支持一定程度的弹性，但受限于物理机架的容量。EKS Anywhere 等运行在客户硬件上的方案，其弹性伸缩更多依赖于客户自身基础设施的扩展能力以及与 Kubernetes HPA (Horizontal Pod Autoscaler) 等机制的结合 47。<br>AWS 提供的算力并网体现了不同层次的集成度。Outposts 是最深度的集成，几乎是 AWS 区域的物理延伸。EKS&#x2F;ECS Anywhere 则更像是软件覆盖层，赋予客户基础设施 AWS 式的容器管理能力。真正的、跨越根本不同计算类型（例如，由 EKS Anywhere 管理的 vSphere 上的 VM、AWS 中的 EC2 实例、以及 Azure 中的 VM）并从单一 AWS 界面进行统一调度的模型，并非 AWS 当前混合云策略的核心。其“统一”更多体现在 AWS 服务的体验一致性上，而非一个普适性的异构算力调度器。</li><li>计费&#x2F;FinOps &amp; Observability 完整度<br>AWS 在可观测性和成本管理方面提供了成熟的工具套件。Amazon CloudWatch 是核心的监控服务，AWS Outposts 会将其运行指标（如连接状态、容量利用率）发布到 CloudWatch，方便用户统一查看和告警 28。EKS Anywhere 集群也可以与 CloudWatch 集成，同时支持 Prometheus 等开源监控方案 1。通过<strong>EKS Connector</strong>，用户可以在 EKS 控制台中查看到 EKS Anywhere 集群的基本信息和工作负载状态，提升了混合环境下 Kubernetes 集群的可见性 27。<br>计费方面，<strong>AWS Cost Explorer</strong> 提供了对 AWS 服务费用的详细分析和可视化。Outposts 的费用会体现在客户的 AWS 账单中，包括硬件、软件及服务的相关费用 29。EKS Anywhere 软件本身是免费的，但其企业级支持和精选软件包（Curated Packages）需要购买<strong>EKS Anywhere Enterprise Subscription</strong> 1。运行 EKS Anywhere 所需的客户自有基础设施（硬件、虚拟化软件许可、电力、网络等）成本则由客户自行承担，不直接体现在 AWS 账单中。<br>FinOps 实践方面，AWS 提供了诸如成本分配标签（Cost Allocation Tags）、AWS Budgets、以及相关的最佳实践指导，帮助客户优化云支出 29。然而，将这些 FinOps 能力无缝扩展到客户本地的非 AWS 基础设施成本（如 EKS Anywhere 所依赖的硬件和运维成本），并形成一个真正统一的、包含所有混合云支出的 FinOps 视图，仍然是一项挑战，需要客户进行大量的数据整合和分析工作。<br>治理层面，<strong>AWS Control Tower</strong> 为 AWS 多账户环境提供了集中的治理框架，包括账户创建自动化和基于最佳实践的基线配置 62。<strong>AWS IAM (Identity and Access Management)</strong> 负责权限控制，<strong>IRSA (IAM Roles for Service Accounts)</strong> 则为 EKS 和 EKS Anywhere 中的服务账户提供了精细化的 AWS 服务访问权限管理机制 65。<br>总结而言，AWS 为自家公有云服务及 Outposts 提供了统一且强大的可观测性、计费和治理能力。对于 EKS Anywhere 这类部署在客户自有设施上的方案，虽然提供了与 AWS 服务的集成点（如 EKS Connector、CloudWatch Agent），但底层硬件的成本和完整的运营指标数据，除非经过精心的配置和集成，否则游离于 AWS 直接的计费和深度监控体系之外。实现对整个混合云资产（包括 AWS 服务、本地资本支出&#x2F;运营支出、以及可能的其他云支出）的统一 FinOps 视图，需要客户付出额外的努力和借助第三方工具。</li><li>公开落地案例 &amp; 局限<br>AWS 混合云解决方案已在多个行业得到应用。例如，西门子（Siemens）和日本的 Cyber Agent 公司利用 ECS Anywhere 实现了在边缘和本地数据中心运行容器化应用，并由云端统一管理，以支持实时洞察和高效运营 74。日本电信运营商 NTT DOCOMO 则采用 EKS Anywhere 在其全国范围内部署 5G 开放无线接入网络（O-RAN）架构，服务于数千万用户，展示了 EKS Anywhere 在严苛的电信级环境中的可扩展性和多功能性 2。此外，AWS 官方也提供了诸多混合云通用场景的用例说明 61，以及通过合作伙伴如 Mission Cloud 展示的客户案例，尽管后者多侧重于 AWS 云本身的应用，但也包含部分 AI&#x2F;ML 在 AWS 上的实践 75。相关案例库（200）因无法访问，未能纳入本次分析。<br>尽管 AWS 混合云产品功能强大，但也存在一些局限性： - <strong>AWS Outposts</strong>：成本相对较高，是用户反馈中常见的顾虑点 76。其完全功能依赖于与 AWS 区域的稳定连接，尽管 EKS Local Clusters on Outposts 提供了一定的断连运行能力 1。扩展性受限于物理机架的容量，增加容量通常意味着订购新的硬件单元 76。运输和物流部署过程可能较为复杂 76。此外，并非所有 AWS 服务都能在 Outposts 上本地运行，尽管关键核心服务已支持 60。 - <strong>EKS Anywhere</strong>：客户需要自行管理控制平面和底层基础设施，运维负担较重 1。获得 AWS 官方支持和访问特定软件包需要购买企业订阅 71。值得注意的是，EKS Anywhere 不支持在 AWS 公有云或 AWS Outposts 上部署，这明确了其与 EKS on AWS 及 EKS on Outposts 的产品定位区隔 71。 - <strong>AWS 整体</strong>：在某些尖端 AI 芯片方面曾面临产能限制 77。同时，常见的云安全问题，如 S3 存储桶配置不当、IAM 权限管理复杂、API 接口安全等，在混合云环境中同样需要关注 78。</li></ul><p>这些成功案例通常突显了 AWS 为现有客户提供体验一致性，或满足特定低延迟、数据驻留需求的价值。而局限性则多集中在成本、客户自管部分（针对 Anywhere 系列产品）的管理开销，以及对 AWS 生态系统的依赖程度上。企业在选择时需综合考量自身的技术栈、运维能力和总体拥有成本。</p><h2 id="Microsoft-Azure"><a href="#Microsoft-Azure" class="headerlink" title="Microsoft Azure"></a><strong>Microsoft Azure</strong></h2><ul><li>架构&#x2F;产品生态总览<br>微软 Azure 的混合云战略核心是 Azure Arc，它旨在将 Azure 的控制平面延伸至客户的任何基础设施，包括本地数据中心、边缘站点以及其他公有云环境。Azure Arc 提供了一系列“Arc-enabled”服务，如 Arc-enabled Servers（用于管理 Windows 和 Linux 物理机及虚拟机）、Arc-enabled Kubernetes（用于纳管任意位置的 Kubernetes 集群）、Arc-enabled Data Services（如 SQL Managed Instance 和 PostgreSQL）、Arc-enabled SQL Server、Arc-enabled VMware vSphere、Arc-enabled System Center Virtual Machine Manager (SCVMM) 以及 Arc-enabled App Services 3。<strong>Azure Stack HCI</strong> 是 Azure 的超融合基础设施（HCI）解决方案，用于在本地运行虚拟机和容器化工作负载。它与 Azure Arc 深度集成，提供与 Azure 一致的管理体验。近期，Azure Stack HCI 已整合为 <strong>新增 Azure Local</strong> 的一部分 4。<strong>新增 Azure Local</strong> 是在 Microsoft Ignite 2024 上宣布的，作为微软分布式基础设施产品组合的总称，旨在统一品牌并提供更广泛的部署选项，包括适用于小型设备（Small Form Factor）的解决方案和支持断开连接操作的预览版功能 4。<br>在 AI 领域，微软于 Ignite 2024 推出了 <strong>新增 Azure AI Foundry</strong>，这是一个统一的人工智能开发平台，有望通过 Azure Arc 将其能力扩展到混合环境中，支持企业在不同位置构建、定制和管理 AI 应用 83。<br>微软的混合云策略显示出其通过 Azure Arc 构建统一控制平面的雄心，目标是将 Azure 的云服务和管理能力带到客户选择的任何基础设施之上。Azure Local (及其核心组件 Azure Stack HCI) 则为本地环境提供了与 Azure 体验一致的基础设施层。这种“软件定义控制平面 + Azure 优化本地堆栈”的组合，为企业提供了在混合云和多云场景下的高度灵活性和管理一致性。</li><li>Terraform 集成和 IaC 成熟度<br>微软 Azure 的 Terraform Provider 对其公有云资源的管理已相当成熟，是 IaC 领域的主流选择之一。在混合云场景下，Terraform 同样扮演着重要角色。它可以用于管理通过 Azure Arc 纳管的资源，例如，Terraform 的 azurerm 提供程序中包含了如 azurerm_arc_machine 这样的数据源和资源类型，用于与 Arc-enabled 服务器进行交互 84。此外，Azure Local (Azure Stack HCI) 上的虚拟机也可以通过 Terraform 模板进行创建和管理 4，这为自动化部署本地虚拟化环境提供了支持。<br>与此同时，微软大力推广其自研的声明式 IaC 语言——<strong>Bicep</strong>。Bicep 作为 Azure Resource Manager (ARM) 模板的一种上层抽象，提供了更简洁的语法和更佳的编写体验，并与 Azure 服务（包括 Azure Arc）实现了深度集成 19。Bicep 能够部署和管理 Azure Arc 所纳管的资源 79，为偏好 Azure 原生工具链的用户提供了强大的 IaC 能力。Bicep 文件最终会编译成 ARM 模板执行，确保了与 Azure 底层资源管理的一致性。<br>这种双轨并行的 IaC 策略，即同时支持成熟的 Terraform 生态和持续投入原生 Bicep，为 Azure 用户提供了选择的灵活性。对于已经广泛使用 Terraform 进行多云管理的企业，可以继续利用其现有技能和工具链来管理 Azure 及其混合云资源。而对于以 Azure 为中心的企业，或者希望获得更紧密原生集成和更佳开发体验的团队，Bicep 则是一个极具吸引力的选项。两者均致力于提升混合云环境下基础设施部署和管理的一致性与自动化水平。</li><li>算力并网接入 &amp; 统一调度实现方式<br>Azure Arc 是实现多来源算力并网接入 Azure 管理平面的核心技术。通过 Azure Arc-enabled servers，企业可以将运行在本地数据中心、边缘设备或其他云平台上的 Windows 和 Linux 物理服务器及虚拟机“投射”到 Azure Resource Manager 中进行统一管理 3。对于容器化工作负载，<strong>Azure Arc-enabled Kubernetes</strong>允许连接和配置任何符合 CNCF 标准的 Kubernetes 集群（无论其托管于何处，如其他公有云、VMware 环境或裸金属），使其接受 Azure 的统一治理和配置管理 3。Azure Kubernetes Service (AKS) 也可以直接部署在 Azure Local (Azure Stack HCI) 之上，提供与 Azure 公有云一致的 AKS 体验 82。<strong>Azure Stack HCI (现为 Azure Local 的一部分)</strong> 则在本地提供了一个 Azure 一致性的超融合基础设施，用于运行虚拟机和 AKS 集群，这些资源天然由 Azure Arc 进行管理 81。<br>在统一调度方面，Azure 主要通过 Kubernetes 层实现。无论是 Azure 公有云上的 AKS、Azure Local 上的 AKS，还是通过 Arc 纳管的第三方 Kubernetes 集群，都可以应用 Azure Policy 进行统一的配置和合规性管理，并通过 GitOps 等方式实现应用和配置的统一部署。Azure 的“跨云扩展模式”（cross-cloud scaling pattern）也展示了在需求高峰期将本地工作负载突发到 Azure 公有云的能力，这体现了一种动态的、基于需求的资源调度和弹性策略 49。<br>Azure Arc 为不同来源的计算资源提供了一个进入 Azure 管理体系的“入口”。虽然实际的底层调度器（如 Hyper-V 调度器、VMware vCenter 调度器、或其他云的 K8s 调度器）可能依然独立运作，但 Azure Arc 通过其代理和扩展，使得这些异构资源能够响应来自 Azure 控制平面的指令，并接受统一的策略治理、监控和配置管理。因此，其“统一调度”更多体现在管理和治理层面的一致性，以及在 Kubernetes 生态系统内部的编排统一性。</li><li>计费&#x2F;FinOps &amp; Observability 完整度<br>Azure 在混合云环境下的可观测性和成本管理能力，主要依托 Azure Monitor 和 Azure Cost Management，并通过 Azure Arc 延伸至纳管的外部资源。Azure Monitor 为 Azure 原生服务提供全面的监控，其容器洞察（Azure Monitor for containers）功能可以监控通过 Azure Arc 连接的 Kubernetes 集群的健康状况和性能 86。对于 Azure Local (Azure Stack HCI)，可以通过启用 Insights 功能，利用 Azure Monitor Agent 将本地集群的事件日志和性能计数器收集到 Log Analytics 工作区进行分析 30。<br>计费方面，<strong>Azure Cost Management</strong> 提供了对 Azure 服务费用的跟踪、分析和预算管理。Azure Arc 本身的核心纳管功能（如资源清单、标记、策略分配）通常是免费的，但其上启用的增值服务，如 Microsoft Defender for Cloud、Azure Monitor 的日志收集与分析、Azure Policy 的 Guest Configuration 等，会产生相应的费用 31。Azure Local (Azure Stack HCI) 的计费模式通常基于订阅，与硬件分开 81。<br>FinOps 实践上，Azure Cost Management 提供了成本可视化、分配、预算告警和优化建议等工具 48。<strong>Azure Advisor</strong> 也会针对已纳管的资源（包括部分 Arc 资源）提供成本优化建议 48。尽管如此，要实现对整个混合云资产（包括本地硬件折旧、电力、场地以及非 Azure 服务的软件许可等）的全面 TCO（总体拥有成本）分析和统一 FinOps 视图，企业仍需自行整合数据并可能借助第三方专业工具。Azure Arc 为 Azure 相关支出提供了良好的管理基础。<br>治理层面，<strong>Azure Policy</strong> 可以通过 Azure Arc 对连接的服务器和 Kubernetes 集群强制实施合规性策略和配置基线 3。身份和访问管理则通过<strong>Microsoft Entra ID (原 Azure AD)</strong> 实现，支持对 Azure Arc 纳管的资源进行统一的身份验证和授权管理 3。<br>微软为 Azure 服务及其通过 Arc 延伸管理的资源提供了强大且集成的监控、成本管理和治理工具。Azure Arc 的模块化定价允许客户按需选用增值服务。一个显著的优势是能够利用 Entra ID 在混合环境中实现一致的身份治理。然而，与其它云厂商类似，构建覆盖所有本地非 Azure 成本的、完全统一的 FinOps 视图仍是企业需要重点规划的领域。</li><li>公开落地案例 &amp; 局限<br>Azure Arc 已在多个行业和知名企业中得到应用，展示了其在统一管理混合和多云环境方面的价值。公开案例包括 DICK’S Sporting Goods 利用 Azure Arc 和 AKS 构建适应性混合环境，世界银行（The World Bank）、ABB、Greggs、嘉年华邮轮（Carnival Corporation）以及 John Deere 等企业也通过 Azure Arc 实现了运营效率提升、成本节约或现代化改造 3。SoftwareOne 作为托管服务提供商（MSP），也利用 Azure Arc 为客户提供混合云管理服务 92。联想的 ThinkAgile MX 超融合解决方案也与 Azure Arc 集成，为客户提供 Azure 一致性的本地体验 93。由于部分案例库链接（202）无法访问，更广泛的案例未能详尽列举。<br>尽管 Azure Arc 和 Azure Local (Azure Stack HCI) 提供了强大的混合云能力，但也存在一些局限和挑战： - <strong>Azure Arc</strong>：部分用户反馈，在初始设置和与非微软工具集成时可能存在一定复杂性 94。Arc 代理本身虽然轻量，但在资源受限的系统上仍可能引入一定的性能开销，需要关注其健康状况和性能影响 88。对于断开连接的 Arc-enabled 服务器，策略配置等功能存在一定的时效性限制（例如，策略在本地存储 14 天后若未重连可能失效） 95。Gartner 的用户评价中，虽然总体积极，但也提及了初始设置的复杂性 96。 - <strong>Azure Local (Azure Stack HCI)</strong>：社区反馈（如 Reddit 讨论）中提及了一些实际部署中可能遇到的问题，例如 MOC（Management and Orchestration Component）代理 VM 的间歇性故障、特定镜像部署失败、虚拟机实时迁移问题、Windows Admin Center (WAC) 的稳定性问题以及主机扩展安装的曲折等 94。微软官方也发布了 Azure Local 各版本的已知问题列表，用户在部署前应仔细查阅 97。 - <strong>成本管理</strong>：虽然 Azure Cost Management 功能强大，但用户仍需警惕因资源配置不当或过度预配导致的成本超支，混合云环境的计费模型可能相对复杂，需要仔细规划 94。</li></ul><p>Azure Arc 凭借其统一管理能力，尤其在以微软技术栈为核心的环境中，正获得越来越多的认可。其局限性主要体现在管理异构环境的固有复杂性、代理在特定场景下的稳定性，以及如果未能精细管理可能出现的成本陷阱。断连场景的功能正在逐步完善，但仍存在一些限制。</p><h2 id="Google-Cloud-GCP"><a href="#Google-Cloud-GCP" class="headerlink" title="Google Cloud (GCP)"></a><strong>Google Cloud (GCP)</strong></h2><ul><li>架构&#x2F;产品生态总览<br>Google Cloud 的混合云与多云战略以 Anthos（现更名为 GKE Enterprise）为核心，致力于提供一个跨越 Google Cloud、客户本地数据中心以及其他公有云（如 AWS、Azure）的一致性应用现代化与管理平台。GKE Enterprise 的关键组件包括：Google Kubernetes Engine (GKE) 的多环境部署版本，支持在 Google Cloud、VMware 环境（通过 Google Distributed Cloud Virtual）、裸金属服务器（通过 Google Distributed Cloud Connected）、AWS 和 Azure 上运行；Anthos Service Mesh (ASM)，基于 Istio，用于管理、保护和监控跨集群的服务通信；以及 Anthos Config Management (ACM)，采用 GitOps 方法实现跨集群的配置和策略同步 5。<strong>GKE Multicloud</strong> API 允许用户通过 Google Cloud 控制台和 API 来管理运行在 AWS 和 Azure 基础设施上的 Kubernetes 集群 6。<strong>Google Distributed Cloud (GDC)</strong> 是一个更广泛的产品组合，旨在将 Google Cloud 的基础设施和服务扩展到边缘和客户数据中心，其中 GDC Edge 专注于边缘计算场景 101，而 GDC Connected 则涵盖了原先 Anthos on bare metal 和 Anthos on VMware 的部署模式。<strong>Config Controller</strong> 是一个托管式的 Config Connector 服务，它使得用户可以用 Kubernetes 声明式的方式来管理 Google Cloud 自身的资源（如 Cloud SQL、Pub&#x2F;Sub 等），并集成了 Policy Controller 进行策略合规检查和 Config Sync 实现配置同步 20。<strong>Duet AI</strong> 作为 AI 驱动的协作工具，为开发者和运维人员在编码、云操作、数据分析乃至 IaC 代码生成方面提供智能辅助 102。<strong>新增</strong>功能方面，在 Google Cloud Next ’25 大会上，Google 宣布了 <strong>Google Agentspace</strong>（赋能企业员工使用 AI 代理）和第七代 TPU <strong>Ironwood</strong>，这些都将进一步增强其 AI 和分布式计算能力 105。<br>Google Cloud 的混合云策略高度依赖 Kubernetes 作为通用的抽象层和控制平面，通过 GKE Enterprise 实现跨环境的应用平台一致性。GDC 则负责将这一平台延伸至不同的物理部署位置。其战略重点在于开放标准、开发者体验以及通过 AI 提升运维效率。</li><li>Terraform 集成和 IaC 成熟度<br>Google Cloud 对 Terraform 提供了良好且成熟的支持，其官方 Google Cloud Terraform Provider 覆盖了广泛的 GCP 服务，使得用户可以通过 Terraform 以代码方式管理 GCP 上的基础设施 21。在混合云和多云场景下，Terraform 同样可用于配置 Anthos 集群（现 GKE Enterprise）及其相关资源，例如创建和管理部署在 VMware、裸金属或 AWS&#x2F;Azure 上的 GKE 集群。<strong>Config Controller</strong> 是 Google Cloud 在 IaC 领域的另一个重要工具，它提供了一种 Kubernetes 原生的方式来声明和管理 Google Cloud 资源 20。用户可以通过编写 Kubernetes 清单（manifests）来定义 GCP 服务的期望状态，Config Controller 会利用 Config Connector 将这些声明转化为实际的 GCP 资源。这种方法与 Anthos Config Management (ACM) 的 GitOps 理念高度契合，允许团队使用熟悉的 Kubernetes 工具链（如 kubectl、Git）来统一管理应用配置和底层 GCP 基础设施，尤其适合深度拥抱 Kubernetes 生态的组织。Config Controller 可以被视为对 Terraform 管理 GCP 资源的一种补充或替代方案，具体选择取决于团队的技术栈和偏好。<strong>Duet AI</strong> 的引入为 IaC 带来了新的可能性。这款 AI 协作工具有潜力辅助开发者编写和理解 IaC 代码，包括 Terraform 配置或 Kubernetes YAML，从而降低 IaC 的门槛并提高效率 102。<br>Google Cloud 在 IaC 方面展现出对主流开源工具（Terraform）的强力支持，同时也通过 Config Controller 提供了独特的、与 Kubernetes 生态深度融合的原生 IaC 路径。这种双重策略赋予用户灵活性，但也可能在工具选择上带来一定的权衡。对于复杂的混合云部署，确保 IaC 工具能够一致且完整地覆盖所有环境中的所有组件（包括网络、安全、数据服务等）至关重要。</li><li>算力并网接入 &amp; 统一调度实现方式<br>Google Cloud 的混合云算力接入和统一调度高度依赖于 GKE Enterprise (原 Anthos) 平台。Anthos 集群可以在多种环境中运行，包括 Google Cloud 公有云（GKE）、客户本地的 VMware vSphere 环境（通过 GDC Virtual，原 Anthos on VMware 106）、裸金属服务器（通过 GDC Connected，原 Anthos on bare metal 5），以及其他主流公有云如 AWS 和 Azure（通过 GKE Multicloud API 6）。<br>通过<strong>舰队（Fleet）管理</strong>功能，GKE Enterprise 可以将这些部署在不同位置、不同基础设施上的 Kubernetes 集群逻辑上组织成一个统一的整体进行管理和运营 34。这意味着管理员可以从一个中心化的视角查看和操作整个舰队中的集群。<br>工作负载的调度在 Kubernetes 层面实现了统一。一旦集群加入舰队并接受 Anthos 控制平面的管理，标准的 Kubernetes 调度机制就可以在各个集群内运行。更进一步，<strong>Anthos Service Mesh (ASM)</strong> 提供了跨这些集群的服务发现、流量管理、安全通信和可观测性能力，使得分布式应用的不同组件可以透明地在舰队内的任何集群中运行和交互 5。对于特定类型的工作负载，如大规模 AI 训练，Google Cloud 生态中也出现了如 Volcano.sh 与 Karmada（一种多集群编排系统）集成的方案，以实现更高级的多集群 AI 作业调度，支持跨集群的任务分发、资源管理和优先级控制 51。<br>Google Cloud 的“标准化接入”核心思想是将异构的计算资源纳入到一个由 Anthos 管理的 Kubernetes 集群中。因此，其“统一调度”能力主要体现在这个 Kubernetes 舰队的范畴内，对于那些未被 Kubernetes 纳管的传统虚拟机或非 GKE 集群，Anthos 的直接统一调度能力有限。其优势在于为容器化和微服务化应用提供了一个高度一致且功能强大的跨环境运行和调度平台。</li><li>计费&#x2F;FinOps &amp; Observability 完整度<br>Google Cloud 为 GKE Enterprise (Anthos) 环境提供了全面的可观测性、策略管理和日益完善的 FinOps 工具。Google Cloud Monitoring (原 Stackdriver) 和 Cloud Logging 是核心的可观测性服务，能够收集和分析来自 GKE 集群（包括部署在 Google Cloud、本地或多云环境中的 Anthos 集群）的指标、日志和追踪数据 32。GKE Enterprise 控制台旨在提供一个统一的界面来查看整个舰队的健康状况、资源利用率以及 Anthos Config Management 和 Policy Controller 等组件的状态 99。Datadog 等第三方监控工具也提供了对 Anthos 的集成支持 109。<br>计费方面，GKE Enterprise (Anthos) 的管理费用按每 vCPU 每小时收取，费率因部署环境（Google Cloud、本地 VMware&#x2F;裸金属、其他公有云如 AWS&#x2F;Azure、或附加集群）而异 5。例如，截至 2025 年初，Google Cloud 上 GKE Enterprise 的 vCPU 费率约为每月 6 美元，而本地部署（VMware 或裸金属）则约为每月 24 美元。需要注意的是，此费用仅为 Anthos 管理软件的费用，不包括底层基础设施（如运行 Anthos on AWS 所需的 EC2 实例费用，或本地硬件、电力、网络成本）的费用。<br>FinOps 实践上，Google Cloud 推出了 <strong>FinOps Hub</strong>，这是一个集中展示成本优化建议、跟踪节省额度并规划优化目标的仪表板 50。它整合了来自 Recommender API 的建议，例如识别空闲资源、实例规格优化以及 CUD（Committed Use Discount）购买建议。针对 GKE 和 Anthos 环境，Google Cloud 也提供了专门的成本可见性和优化工具，帮助用户理解和控制容器化工作负载的开销 111。尽管如此，要获得一个包含所有混合云组件（特别是本地部署的硬件折旧、软件许可和运维人力成本）的完整 FinOps 视图，企业仍需进行额外的数据整合和分析。<br>治理层面，<strong>Anthos Config Management (ACM)</strong> 通过 GitOps 方式，确保配置和策略在整个舰队中的一致性应用 5。<strong>Policy Controller</strong> (基于 Open Policy Agent Gatekeeper) 则提供了强大的策略即代码能力，用于在部署前和运行时强制执行合规性控制 34。身份和访问管理通过<strong>Google Cloud IAM</strong> 实现，并可与 Anthos Identity Service 结合，支持跨环境的联合身份验证 98。<br>Google Cloud 为 Anthos 环境提供了强大的原生可观测性和策略治理能力。其 FinOps 工具正在不断发展，FinOps Hub 的推出是一个积极信号。Anthos 的 vCPU 计费模式清晰透明，但企业在进行混合云成本核算时，必须将 Anthos 管理费、底层基础设施（无论是自有还是其他云）费用以及可能消耗的 Google Cloud 原生服务费用综合考虑。</li><li>公开落地案例 &amp; 局限<br>Google Cloud Anthos (现 GKE Enterprise) 已被多家企业采用，尤其是在以 Kubernetes 为核心进行应用现代化的场景中。例如，巴西的 Banco BV 利用 GKE 和 Anthos 对其银行应用进行了现代化改造，提升了敏捷性和开发效率 100。Google Cloud 官方也发布了 Anthos 混合环境参考架构，为企业规划和部署复杂的混合 Anthos 环境提供了最佳实践指导 114。此外，Google Cloud 在其网站上也列举了其他客户案例，但部分链接（204）无法直接访问获取详细信息。Gartner 的用户评价中，Google Distributed Cloud Edge（GDC Edge，Anthos 的边缘组件）因其低延迟和本地化数据处理能力受到好评，但也指出其与 GCP 生态系统的紧密集成可能对采用多厂商边缘策略的组织构成一定限制 115。<br>尽管 Anthos 功能强大，但也存在一些局限性和挑战： - <strong>成本与复杂性</strong>：Anthos 本身的管理费用（尤其是针对大规模本地部署）可能较高，是企业评估时的重要考量因素 5。同时，部署和运维一个跨多环境的 Anthos 平台，特别是涉及到本地 VMware 或裸金属环境时，技术复杂性不容忽视，需要团队具备相应的 Kubernetes 和相关组件（如 Istio, Config Management）的专业知识 5。 - <strong>GDC (Anthos on VMware&#x2F;Bare Metal) 的已知问题</strong>：Google Cloud 官方文档中列出了 GDC（包括原 Anthos on VMware 和 Anthos on bare metal）部署模式下的一系列已知问题，涉及集群升级、网络配置、存储集成、组件交互等多个方面 107。这些问题反映了在客户自有复杂环境中部署和维护此类平台的挑战。例如，Anthos on-prem 对网络连接有特定要求 106。 - <strong>生态系统依赖</strong>：虽然 Anthos 支持多云部署，但其最佳体验和最完整的功能集通常在与 Google Cloud 原生服务（如 Cloud Monitoring, IAM, Config Controller）紧密集成时才能体现。</li></ul><p>Anthos&#x2F;GKE Enterprise 为以 Kubernetes 为中心的现代化应用提供了一个强大的、跨环境的统一管理平台。其优势在于一致的开发和运维体验、强大的策略管理以及与 GCP 服务的深度集成。然而，企业在采纳时需要仔细评估其总体拥有成本、团队技能要求以及在特定本地环境中可能遇到的部署和运维挑战。</p><h2 id="Alibaba-Cloud-阿里云"><a href="#Alibaba-Cloud-阿里云" class="headerlink" title="Alibaba Cloud (阿里云)"></a><strong>Alibaba Cloud (阿里云)</strong></h2><ul><li>架构&#x2F;产品生态总览<br>阿里云的混合云战略主要通过其 Apsara Stack (飞天企业版) 和 ACK One (ACK 分布式云容器平台) 两大核心产品体系来体现。Apsara Stack 是阿里云公有云架构在客户本地数据中心的延伸，旨在为企业和公共服务部门提供一套与阿里云公有云体验一致的、全栈式的私有云或混合云解决方案。它涵盖了 IaaS、PaaS、大数据、安全等多种能力，并有企业版、敏捷版以及一体机等多种交付形态 8。<strong>ACK One</strong> 则专注于 Kubernetes 的跨环境统一管理。它允许用户将部署在阿里云公有云、客户自建数据中心、其他云厂商或边缘位置的 Kubernetes 集群（通过注册集群的方式）连接到 ACK One 的统一控制平面，实现多集群的舰队管理、应用分发、流量治理和统一运维 7。<br>此外，阿里云的混合云解决方案中也提及了与 <strong>ZStack</strong> 等合作伙伴的联动，ZStack 可能作为一种连接本地私有云与阿里云的解决方案，尤其在与 ACK One 配合实现混合云连接方面发挥作用 122。<br>在<strong>新增</strong>功能方面，阿里云在 2025 年春季发布会上宣布了一系列 AI 能力的增强，包括<strong>PAI-EAS（PAI-弹性算法服务）的分布式推理能力</strong>、<strong>PolarDB 的数据库内 AI 推理能力</strong>（由通义千问驱动）以及<strong>Smart Studio SaaS AI 工具</strong>等，这些新能力有望进一步融入其混合云产品，提升智能化水平 127。<br>整体来看，阿里云的混合云策略与 AWS、GCP 等国际主流厂商的思路相似：通过 Apsara Stack 提供与公有云同源架构的本地化部署能力，满足数据主权和特定性能需求；同时通过 ACK One 以 Kubernetes 为核心，实现跨云、跨地域的应用和集群统一管理。其战略中对 AI 能力的整合也日益突出。</li><li>Terraform 集成和 IaC 成熟度<br>阿里云为其公有云服务提供了官方的 Terraform Provider，允许用户通过 Terraform 代码来定义和管理阿里云上的资源，支持包括 ECS 实例、数据磁盘、负载均衡、VPC 等多种服务 22。该 Provider 支持通过阿里云 RAM 用户的 AccessKey 或 ECS 实例 RAM 角色进行身份验证。阿里云还提及推出了 Terraform 模块的 Web GUI，旨在简化 Terraform 模块的使用 128。<br>除了 Terraform，阿里云还拥有自研的 IaC 服务——<strong>资源编排服务 (ROS, Resource Orchestration Service)</strong>。ROS 允许用户使用 JSON 或 YAML 格式的模板来定义一组云资源的配置和依赖关系，然后由 ROS 引擎自动完成这些资源的创建、配置和管理，实现自动化部署和运维 23。ROS 模板可版本化管理，并能通过 API 和 SDK 与用户的应用系统集成，支持 IaC 的实践。<br>对于混合云场景，关键在于这些 IaC 工具（特别是 Terraform）对 Apsara Stack 内部资源以及通过 ACK One 管理的外部集群（例如部署在客户本地数据中心的 K8s 集群）的支持程度和一致性。ROS 的描述主要集中在管理“云计算资源”，如 ECS、RDS 等，这些通常指公有云服务或其在 Apsara Stack 中的对应实现。Terraform Provider 对 Apsara Stack 特定组件或 ACK One 纳管的混合云资源的覆盖深度，需要查阅更详细的 Provider 文档来确认，目前公开信息主要展示了对公有云资源的管理能力。确保 IaC 工具能够以统一的方式描述和编排跨越公有云、Apsara Stack 私有云以及 ACK One 所连接的边缘或多云环境中的资源，是实现真正一致性资源编排的前提。</li><li>算力并网接入 &amp; 统一调度实现方式<br>阿里云的混合云算力接入主要通过 Apsara Stack 和 ACK One 实现。Apsara Stack 将阿里云的计算（如 ECS）、存储、网络等服务部署在客户的本地数据中心，为客户提供了一个与阿里云公有云架构同源的私有计算环境 8。这使得企业可以在本地运行与云上一致的应用和服务。<strong>ACK One</strong> 则通过其注册集群（Registered Cluster）功能，能够纳管运行在不同基础设施上的 Kubernetes 集群，包括客户自建的数据中心、其他云厂商的环境或边缘节点 7。一旦这些外部集群被注册到 ACK One 的舰队（Fleet）中，就可以接受来自 ACK One 控制平面的统一管理。ACK One 支持跨集群的应用分发、流量调度和作业管理，例如，它可以按计划在多个集群中扩展云资源和应用，以应对业务高峰。<br>在特定场景下，阿里云还提供了如<strong>ACK Fluid</strong>这样的组件，通过分布式缓存编排来加速计算与存储分离场景下的数据访问效率 7。对于需要高度弹性的工作负载，阿里云的**Serverless Kubernetes (ASK)<strong>和</strong>弹性容器实例 (ECI)**提供了无需管理底层服务器的容器运行环境，这些也可以作为混合云架构中的算力补充 123。<br>统一调度主要在 Kubernetes 层面通过 ACK One 实现。通过将不同来源的 Kubernetes 集群纳入统一的舰队管理，ACK One 能够实现跨集群的应用部署和资源调度。例如，可以利用 GitOps 将应用分发到舰队内的多个集群，并根据需要进行差异化配置。Apsara Stack 则为本地环境提供了与阿里云技术栈一致的计算基础。这种模式与 Google Cloud 的 Anthos 类似，都是以 Kubernetes 作为跨环境的通用计算抽象和调度核心。</li><li>计费&#x2F;FinOps &amp; Observability 完整度<br>阿里云为其云服务提供了较为完善的可观测性和成本管理工具。CloudMonitor 是阿里云主要的监控服务，能够对云资源（包括部署在 Apsara Stack 上的服务）进行实时监控、告警和数据可视化 23。<strong>ACK One</strong>在其多集群管理能力中也集成了可观测性功能，用户可以监控已注册集群和舰队中集群的控制平面与数据平面状态、进行应用实时监控、收集和查询日志，并进行基于 FinOps 理念的成本分析 7。<br>计费方面，ACK One 的多集群管理和备份中心功能本身是免费的，但使用过程中涉及的底层阿里云服务（如对象存储 OSS 用于备份、云盘快照、负载均衡 CLB、弹性容器实例 ECI 等）会按照各自的标准进行计费 124。Apsara Stack 作为企业级私有云&#x2F;混合云解决方案，其具体定价模式在公开资料中未详细说明，通常会涉及较为复杂的企业授权和支持服务费用。<br>FinOps 实践上，阿里云提供了一系列成本管理工具，包括成本仪表盘、成本分配（支持标签）、成本异常检测、成本分析以及资源使用优化建议等，旨在帮助用户规划、执行、监控和优化云支出 52。阿里云也强调其遵循 FinOps 原则，并为云原生场景下的成本治理提供了方案。<br>治理层面，阿里云通过<strong>RAM (Resource Access Management)</strong> 实现对云资源的精细化权限控制 36。ACK One 也宣称能够提供增强的安全性、审计能力和策略治理功能 7。<strong>Cloud Config</strong> 服务则支持对云资源配置进行追踪和合规审计 132。<br>阿里云在可观测性和成本管理方面拥有一套相对成熟的工具。ACK One 试图在其统一管理平台内整合部分成本分析能力。然而，与其它云厂商面临的挑战类似，要实现一个真正覆盖混合云所有组成部分（包括 Apsara Stack 的本地硬件、软件许可、运维人力成本，以及 ACK One 纳管的非阿里云基础设施成本）的、端到端的统一 FinOps 视图，仍需要企业进行大量的数据整合和精细化管理。</li><li>公开落地案例 &amp; 局限<br>阿里云凭借其在亚太地区的领先地位和技术积累，其混合云解决方案已在多个大型企业和公共服务项目中得到应用。Apsara Stack 的客户案例包括中国南方电网，利用其构建云上调度系统；某省级政务云项目，作为全省数字化转型的基座；某省级医保局，支撑核心医保业务系统上云；以及某国家级媒体，实现云上智能传播等 8。阿里云也获得了 Gartner、Forrester 等研究机构在公有云平台、容器管理、数据库管理等领域的认可，这些能力是其混合云解决方案的基础 136。Apsara Conference 作为阿里云的技术峰会，也持续发布其在 AI 和云计算领域的最新产品和成果，间接反映了其技术实力 137。部分特定混合云案例库（92）因无法访问，未能纳入详细分析。<br>局限性方面： - <strong>Apsara Stack</strong>：虽然旨在解决私有云和混合云管理的复杂性，但正如 Forrester 研究所指出的，企业在实践中仍面临云应用支持、混合云环境安全等普遍性挑战 138。Apsara Stack 这类大型私有云平台的部署和运维本身也具有一定的复杂性，对客户的技术能力和投入有较高要求。 - <strong>ACK One</strong>：作为较新的多集群管理平台，其在异构环境（尤其是非阿里云基础设施）中的成熟度、易用性以及与第三方生态工具的集成深度，还需要更多市场检验和用户反馈来评估。 - <strong>文档和国际化</strong>：虽然阿里云在努力提升国际化水平，但相较于 AWS、Azure 等国际巨头，其混合云解决方案（特别是 Apsara Stack 的深度技术细节和复杂场景的最佳实践）的英文公开文档和社区支持有时可能不够全面或及时，这对于非中文用户来说可能构成一定的学习和使用门槛。 - <strong>AI 整合的复杂性</strong>：阿里云大力投入 AI 并将其融入各项服务 127，这既是优势，但也可能使得解决方案对于仅有简单混合云需求的用户而言过于复杂或成本过高。</li></ul><p>阿里云作为中国市场领先的云服务商，其 Apsara Stack 在本土拥有众多大规模部署案例，尤其在政府和大型国企领域。ACK One 则顺应了 Kubernetes 多集群管理的趋势。其局限性更多体现在大型混合云项目固有的复杂性、国际市场认知度以及部分深度技术文档的完善程度上。</p><h2 id="Oracle-Cloud-OCI"><a href="#Oracle-Cloud-OCI" class="headerlink" title="Oracle Cloud (OCI)"></a><strong>Oracle Cloud (OCI)</strong></h2><ul><li>架构&#x2F;产品生态总览<br>Oracle Cloud Infrastructure (OCI) 的混合云战略独具特色，其核心在于将 Oracle 公有云的完整能力延伸至客户选择的任意地点，并强化其在多云数据库服务领域的领导地位。旗舰产品是 OCI Dedicated Region Cloud@Customer，它允许客户在自己的数据中心内部署一个完整的、独立的 OCI 云区域，提供超过 150 项与 OCI 公有云区域相同的云服务，包括 IaaS、PaaS 乃至 SaaS（如 Oracle Fusion Cloud Applications）9。<br>除了 Dedicated Region，OCI 还提供了一系列<strong>Cloud@Customer 产品组合</strong>，如 Exadata Cloud@Customer（将 Exadata 数据库云服务带到客户本地）和 Compute Cloud@Customer（提供 OCI 计算服务在客户本地部署）10。对于边缘计算场景，Oracle 提供<strong>Roving Edge Infrastructure</strong>，这是一种便携式的、坚固耐用的设备，用于在网络连接受限或无连接的边缘环境中运行 OCI 工作负载 10。<br>在多云服务方面，Oracle 推出了<strong>Oracle Database@Azure</strong>、<strong>Oracle Database@Google Cloud</strong>以及<strong>Oracle Database@AWS</strong>，允许客户在微软 Azure、Google Cloud 和 AWS 的基础设施上原生运行 Oracle 数据库服务（如 Autonomous Database、Exadata Database Service），并通过<strong>Oracle Interconnect for Azure&#x2F;Google Cloud</strong>等高速互联方案确保低延迟访问 10。<br>Oracle 的混合云策略高度聚焦于其核心优势——数据库技术，致力于为客户提供在任何环境下都能获得一致、高性能的 Oracle 数据库体验。Dedicated Region 是其实现“公有云体验本地化”的极致体现，而多云数据库服务则打破了传统云边界，满足了客户在异构云环境中运行 Oracle 数据库的需求。</li><li>Terraform 集成和 IaC 成熟度<br>Oracle Cloud Infrastructure (OCI) 积极拥抱 Terraform 作为其基础设施即代码（IaC）的关键工具。OCI 官方提供了开源的 Terraform Provider (oci provider)，用于与 OCI 服务进行交互，自动化地创建、管理和编排 OCI 上的各类资源 24。该 Provider 支持在任何标准的 Terraform 发行版（包括 Terraform Cloud）以及 OCI 自家的<strong>Resource Manager</strong>服务中使用。OCI Resource Manager 本身就是基于 Terraform 构建的，它允许用户通过 Terraform 模板来定义和部署 OCI 环境，并提供了状态管理、作业编排等功能 145。<br>OCI Terraform Provider 的成熟度主要体现在对 OCI 公有云服务的广泛支持上。对于混合云组件，如 OCI Dedicated Region Cloud@Customer 和 Cloud@Customer 系列产品（如 Exadata Cloud@Customer），理论上由于它们旨在提供与公有云一致的 API 和服务体验，因此 Terraform Provider 也应当能够对其内部署的 OCI 服务进行管理。然而，确保 Terraform 能够一致且完整地编排 Dedicated Region 的初始设置、网络配置、以及在其上部署复杂应用所需的全部 OCI 服务，是衡量其混合云 IaC 成熟度的关键。<br>对于 Oracle 的多云数据库服务（如 Oracle Database@Azure），IaC 的复杂性在于它涉及到两个云平台的资源。Terraform 可能需要同时与 OCI Provider 和目标云（如 Azure）的 Provider 协同工作，以编排数据库服务本身（由 OCI 管理）以及其运行所需的底层 IaaS 资源（由目标云提供）。这要求 Terraform 配置具有跨 Provider 依赖管理和协同编排的能力。<br>Oracle 对 Terraform 的投入是明确的。但对于真正的端到端混合云和多云 IaC，用户需要关注 OCI Terraform Provider 对 Dedicated Region 内部资源管理的深度，以及在多云数据库场景下跨云编排的实践复杂度和成熟度。</li><li>算力并网接入 &amp; 统一调度实现方式<br>Oracle Cloud Infrastructure (OCI) 的混合云算力接入和调度主要通过其“云在客户处”（Cloud@Customer）系列产品和多云数据库服务来实现，核心是提供 Oracle 管理的基础设施和 PaaS 服务。<strong>OCI Dedicated Region Cloud@Customer</strong> 在客户数据中心内部署了一个完整的 OCI 区域，这意味着客户可以在本地获得与 OCI 公有云一致的计算资源，包括虚拟机（VMs）、裸金属服务器（Bare Metal）、GPU 实例，以及容器编排服务 Oracle Kubernetes Engine (OKE) 9。算力接入和管理均通过标准的 OCI API 和控制台进行。<strong>Compute Cloud@Customer</strong> 则更侧重于将 OCI 的计算能力（VMs 等）延伸到客户本地，满足特定工作负载的低延迟或数据驻留需求 10。同样，<strong>Exadata Cloud@Customer</strong> 专注于在本地提供 Exadata 数据库云服务。这些产品都支持弹性计算和存储扩展 54。<br>对于<strong>多云数据库服务</strong>（如 Oracle Database@Azure），Oracle 负责管理运行在其他云提供商（如 Azure、AWS、GCP）基础设施上的 Oracle 数据库服务 10。这意味着客户使用的是 Oracle 的数据库 PaaS，而底层算力由其他云厂商提供，但由 Oracle 进行优化和管理。<br>在统一调度方面，OCI 的控制平面会延伸到这些部署在客户本地或多云环境中的服务。例如，在 Dedicated Region 内部署的 OKE 集群，其调度行为与公有云上的 OKE 一致。然而，OCI 的混合云策略并不侧重于提供一个通用的、可以调度任意云（包括非 OCI 云）上非 Oracle 工作负载的统一调度器。其“统一”更多是指在 OCI 服务（尤其是数据库和相关应用）层面，无论部署在何处（公有云、Dedicated Region、Cloud@Customer、或其他云上的 Oracle 数据库服务），都能获得一致的管理体验、API 接口和性能特性。工作负载的调度决策主要基于数据引力、性能需求、法规遵从和成本考量。</li><li>计费&#x2F;FinOps &amp; Observability 完整度<br>Oracle 为其 OCI 资源（包括部署在 Dedicated Region 和 Cloud@Customer 环境中的服务）提供了全面的可观测性和成本管理工具。OCI Observability and Management Platform 是一个集成的解决方案，提供应用性能监控（APM）、日志分析、数据库管理、基础设施监控等功能，旨在实现对混合云和多云环境的端到端可见性 37。OCI Dedicated Region 也利用 OCI Monitoring and Reporting 服务进行监控 9。此外，Datadog 等第三方监控工具也提供了对 OCI 的集成支持 146。<br>计费方面，OCI Dedicated Region 的一个显著特点是其采用了与 OCI 公有云区域相同的定价模型和费率，这意味着客户在本地运行 OCI 服务可以获得与云上一致的成本结构，便于预算和预测 9。<strong>Oracle Universal Credits (OUC)</strong> 这种灵活的消费模式也适用于 Dedicated Region。对于多云数据库服务，如 MySQL HeatWave on AWS，其定价结构会包含 Oracle 数据库服务的费用以及底层 AWS 基础设施的费用 148。<br>FinOps 实践上，OCI 提供了 <strong>FinOps Hub</strong>，这是一个集中的控制台，用于成本分析、预算设定、费用预测以及获取成本优化建议 53。OCI 强调通过标签（tags）和 IAM 策略来实现精细化的成本分配和控制。<br>治理层面，<strong>OCI Identity and Access Management (IAM)</strong> 负责对 OCI 资源的访问控制 140。针对混合部署，Oracle 还提供了<strong>Oracle Access Governance</strong> 服务，这是一个云原生的解决方案，帮助企业满足跨多应用、多基础设施（包括本地和多云）的访问治理和合规性需求 37。<br>Oracle 在为其 OCI 生态系统（包括延伸至客户本地的 Dedicated Region）提供统一的可观测性和成本管理方面做得相对较好，特别是“价格一致性”是其 Dedicated Region 的一大卖点。然而，对于多云数据库服务，企业的 FinOps 实践需要整合来自 Oracle（数据库服务费）和其他云提供商（底层 IaaS 费用）的账单，这增加了复杂性。OCI IAM 和 Access Governance 为混合环境下的身份和权限治理提供了基础。</li><li>公开落地案例 &amp; 局限<br>Oracle Cloud 在混合云和多云领域取得了一些客户成功案例，并获得了行业分析机构的认可。例如，Cox Enterprises、Athenahealth 和 Bionexo 等公司利用 Oracle Full Stack Disaster Recovery（一个可用于跨区域和混合环境灾难恢复的服务）来保护其关键业务应用，这些应用可能涉及 Oracle E-Business Suite、PeopleSoft 以及非 Oracle 应用 153。Oracle 官方也分享了关于分布式云实施的有效策略和最佳实践 154。此外，Gartner 在其 2024 年的战略云平台服务（SCPS）和分布式混合基础设施（DHI）魔力象限报告中均将 Oracle 评为领导者，肯定了其在提供跨公有云、专属云和混合云环境的全面服务能力 10。部分案例库链接（208）无法访问，未能获取更多案例。<br>尽管 OCI 混合云产品组合强大，但也存在一些显著的局限： - <strong>OCI Dedicated Region</strong>： - <strong>高昂的成本和承诺</strong>：Dedicated Region 需要巨大的财务投入，早期报道提及最低年费约 600 万美元，且通常需要多年合同，这使其主要适用于有大规模 Oracle 工作负载或特定合规需求的大型企业 155。 - <strong>部署复杂且耗时</strong>：建立一个 Dedicated Region 是一个重大项目，从规划、数据中心准备（电力、制冷、网络）到 Oracle 的安装和测试，通常需要数月时间 155。 - <strong>管理控制台分离</strong>：一个关键的限制是，Oracle 商业公有云区域和 OCI Dedicated Region 属于不同的“领域（realms）”，目前无法通过单一的统一控制台进行管理 38。这对于追求真正统一管理体验的用户来说是一个显著的不足。 - <strong>OCI 整体</strong>： - <strong>潜在的隐藏成本</strong>：用户需要警惕数据出口费、提前终止合同的费用以及不同支持服务级别的额外收费等潜在成本 156。 - <strong>服务限制</strong>：与所有云服务一样，OCI 的各项资源也存在服务配额限制，用户可能需要根据实际需求申请提升配额 157。 - <strong>多云数据库服务</strong>：虽然技术上创新，但在计费上会涉及到 Oracle 的服务费和另一家云厂商的基础设施费用，增加了 FinOps 的复杂性。</li></ul><p>OCI Dedicated Region 为特定客户群体提供了在本地获得完整公有云体验的独特价值，尤其适合深度依赖 Oracle 技术栈且有严格数据主权或低延迟需求的企业。然而，其高昂的成本、部署的复杂性以及与公有云管理控制台的分离是其主要挑战。Oracle 的多云数据库服务是其战略亮点，但在成本管理和运维集成方面也带来了新的考量。</p><h2 id="IBM-Cloud"><a href="#IBM-Cloud" class="headerlink" title="IBM Cloud"></a><strong>IBM Cloud</strong></h2><ul><li>架构&#x2F;产品生态总览<br>IBM Cloud 的混合云战略高度依赖其核心产品 IBM Cloud Satellite，该产品旨在将 IBM Cloud 的托管服务能力延伸至客户选择的任何环境，包括客户的本地数据中心、边缘位置，甚至其他公有云（如 AWS、Azure、GCP）11。通过 Satellite，客户可以利用其自有或租赁的基础设施创建一个“Satellite Location”，然后从 IBM Cloud 统一管理和部署服务到这些位置。<strong>Red Hat OpenShift on IBM Cloud</strong> 是 IBM 混合云应用平台的核心，通常通过 Satellite 部署在分布式环境中，为容器化应用提供一致的开发、部署和运行体验 12。IBM 的众多 Cloud Paks（如 Cloud Pak for Data）以及其 AI 平台 watsonx 也可以部署在由 Satellite 管理的 OpenShift 集群上，从而将数据分析和 AI 能力带到数据产生和存储的地方 56。<strong>新增</strong>功能和合作方面，IBM 在 Think 2025 大会上宣布了多项进展：包括推出 <strong>IBM webMethods Hybrid Integration</strong>，旨在重构 AI 时代的集成体验 162；与<strong>Lumen Technologies</strong> 合作，将 watsonx 与 Lumen 的边缘云基础设施和网络相结合，提供边缘 AI 解决方案 162；以及深化与<strong>Oracle</strong> 的合作，计划将 watsonx 引入 OCI，并与 AWS 等其他云厂商持续合作以交付新的 Agentic AI 能力 162。<br>IBM 的混合云策略清晰地聚焦于通过 Satellite 技术实现“分布式云”，即把 IBM Cloud 的服务能力（尤其是基于 OpenShift 的 PaaS 和 SaaS）按需部署到客户指定的任意位置，并由 IBM Cloud 进行统一的 SRE 管理。其战略重点是支持企业在混合环境中运行和现代化其关键工作负载，特别是 AI 和数据密集型应用。</li><li>Terraform 集成和 IaC 成熟度<br>IBM Cloud 为其云服务提供了官方的 Terraform Provider (ibm provider)，支持通过 Terraform 以声明式代码的方式管理 IBM Cloud 上的资源。针对其混合云核心产品 IBM Cloud Satellite，Terraform Provider 中也包含了相应的资源类型，例如 ibm_satellite_cluster，可用于创建和管理运行在 Satellite 位置上的 OpenShift 集群 25。此外，<br>ibm_satellite_location、ibm_satellite_host、ibm_satellite_link_endpoint 等资源类型也可能被支持，用于完整定义和配置 Satellite 环境。<br>IBM Cloud Satellite 本身也提供了一套基于 API 的工具集，用于构建和管理分布式云架构 11。这种 API 优先的设计为 IaC 工具（如 Terraform）的集成奠定了基础，使得用户可以通过编程方式自动化 Satellite 位置的创建、主机的分配、Link 隧道的配置以及在其上部署云服务等操作。<br>评估 IBM Cloud 在混合云场景下 Terraform 集成的成熟度，关键在于其 Provider 对 Satellite 所有关键组件（如位置、主机、集群、Link 端点、存储模板、Satellite Config 等）的覆盖广度和深度，以及这些资源定义与 IBM Cloud 公有云上同类或相关服务资源定义的一致性和互操作性。用户需要能够通过 Terraform 顺畅地编排从 Satellite 位置的建立到在其上部署和配置如 Red Hat OpenShift 集群、Cloud Paks 或 watsonx 服务的全过程。<br>虽然具体的 ibm_satellite_location 等资源的 Terraform 文档片段未直接提供，但从 ibm_satellite_cluster 资源的存在以及 Satellite 的 API 驱动特性来看，IBM Cloud 正朝着支持使用 Terraform 进行混合云环境自动化管理的方向发展。用户应查阅最新的 IBM Cloud Terraform Provider 文档以获取最全面的信息。</li><li>算力并网接入 &amp; 统一调度实现方式<br>IBM Cloud Satellite 的核心理念是允许客户将其自有的计算基础设施（无论位于本地数据中心、边缘站点，还是其他公有云提供商的环境中）接入 IBM Cloud 的管理范围，形成一个“Satellite Location” 11。客户需要提供符合特定需求的物理或虚拟主机，并将这些主机分配（attach）给 Satellite Location，作为运行 IBM Cloud 服务的计算资源池。<br>一旦主机加入 Satellite Location 并由 Satellite 控制平面管理，IBM Cloud 的服务（尤其是 Red Hat OpenShift on IBM Cloud）就可以部署到这些主机上。因此，算力的“并网”是通过 Satellite Agent 在客户主机上运行，并与远在 IBM Cloud 区域的 Satellite 管理平面通过加密的 Satellite Link 隧道进行通信来实现的。<br>在统一调度方面，主要依赖于部署在 Satellite Location 中的 Red Hat OpenShift 集群 56。OpenShift 作为业界领先的 Kubernetes 发行版，提供了强大的工作负载调度和管理能力。<strong>IBM Cloud Satellite Config</strong> 则进一步增强了这种统一性，它允许用户从 IBM Cloud 控制台集中定义和分发 Kubernetes 资源配置（如 Deployments, Services, ConfigMaps 等）到所有纳管的 Satellite 集群（以及 IBM Cloud 公有云上的 OpenShift 集群），实现跨多个位置的应用和配置的统一部署和管理 11。<br>IBM Cloud Satellite 的模式是将客户提供的异构算力抽象化，通过在其上运行标准化的 OpenShift 平台，从而实现应用层面的调度一致性。这意味着，虽然底层的物理服务器或虚拟机可能来自不同提供商或位于不同地理位置，但运行在 OpenShift 上的应用可以获得相对一致的部署和管理体验。然而，这种统一调度主要局限于 OpenShift&#x2F;Kubernetes 生态系统内部。</li><li>计费&#x2F;FinOps &amp; Observability 完整度<br>IBM Cloud 为通过 Satellite 管理的混合云环境提供了一套可观测性和成本管理工具。IBM Cloud Monitoring 服务可以集成并监控部署在 Satellite 位置的资源，包括 Red Hat OpenShift 集群的健康状况、性能指标等 11。IBM Cloud Satellite 本身的设计也强调了集中化监控和日志记录作为其核心优势之一，用户可以通过 IBM Cloud 的单一仪表板查看跨多个位置的部署状态和运维信息 11。<br>计费方面，IBM Cloud Satellite 的费用通常由几部分组成：Satellite Link 连接费用、每个 Satellite Location 的管理费用，以及在 Location 中实际消耗的 IBM Cloud 托管服务（如 OpenShift、数据库服务等）的费用。例如，IBM Cloud Object Storage for Satellite 采用了基于固定容量（“T-shirt size”模式，如 Small, Medium, Large）的定价，而非公有云中常见的按量付费 39。企业在使用 IBM Cloud 的整体成本管理工具（如 IBM Cloud Cost Management）时，需要将这些 Satellite 相关的特定费用纳入考量 55。<br>FinOps 实践上，IBM 倡导分阶段（Inform, Optimize, Operate）的 FinOps 框架，强调跨团队协作、成本可见性、资源优化和持续改进的运营模式 55。<br>治理层面，<strong>IBM Cloud Identity and Access Management (IAM)</strong> 用于控制对 IBM Cloud 资源（包括通过 Satellite 管理的资源）的访问权限 40。<strong>IBM Cloud Satellite Config</strong> 则扮演了配置和策略管理的角色，确保 Kubernetes 资源在所有 Satellite 位置的一致性和合规性 163。<br>IBM Cloud 提供了针对其云服务的监控和成本管理能力，并通过 Satellite 将这些能力尝试延伸到客户的分布式环境中。Satellite 引入了其特有的计费元素（如 Location 和 Link 费用，以及部分服务的固定容量定价）。对于企业而言，实现一个全面的 FinOps 视图，需要将 IBM Cloud 服务的费用与客户自行承担的 Satellite 主机基础设施成本（硬件、电力、网络、场地等）以及可能的其他云支出进行整合。</li><li>公开落地案例 &amp; 局限<br>IBM Cloud Satellite 已有一些公开的用例和客户场景描述，主要集中在需要将云服务能力部署到特定位置以满足低延迟、数据处理本地化或数据主权需求的场景。例如，一个典型的用例是在办公楼或工厂内部署视频分析应用，通过 Satellite 在本地处理来自众多摄像头的视频数据，以实现如工人安全（佩戴安全帽、口罩检测）或生产质量控制等功能，避免了将大量原始视频数据传输到公有云的延迟和成本问题 172。另一个场景是帮助企业（如钢铁厂）对本地的遗留系统进行数字化转型，通过 Satellite 在隔离站点部署基于容器的数字服务平台，实现与云端一致的质量控制和数据湖服务 173。此外，Red Hat OpenShift 的许多成功案例，虽然不一定都明确提及 Satellite，但其跨混合环境的部署能力与 Satellite 的理念是相通的 174。部分客户案例库链接（210）无法访问。<br>尽管 IBM Cloud Satellite 提供了独特的价值，但也存在一些潜在的局限和挑战： - <strong>网络连接的中心性</strong>：Satellite Link 隧道是连接客户本地位置与 IBM Cloud 管理平面的核心通道，其稳定性、带宽和延迟对整个系统的性能至关重要 163。虽然设计上考虑了冗余，但客户仍需仔细规划和保障其本地网络到 IBM Cloud 的连接质量。部分 Satellite 服务可能还需要主机具备直接的出站互联网连接能力 163。 - <strong>分布式系统的复杂性</strong>：管理一个地理上分散的、包含多个 Satellite 位置的混合云环境，本身就带来了额外的运维复杂性，包括主机管理、网络配置、安全策略的实施和故障排查等 175。 - <strong>成本结构</strong>：混合云解决方案的成本往往是多方面的，除了 IBM Cloud 服务的直接费用外，客户还需要考虑本地基础设施的投入和运维成本。Satellite 的定价模式（如某些服务的固定容量定价）也需要企业仔细评估是否符合其弹性需求和成本效益预期 39。 - <strong>特定服务的依赖和限制</strong>：例如，运行在 Satellite 上的 watsonx 等 AI 服务，可能会有其自身的已知问题或限制 176。同时，将传统的基于边界网络安全模型的应用迁移到动态的 Kubernetes 环境中（无论是否通过 Satellite 部署），都可能面临网络和安全策略调整的挑战 175。 - <strong>生态系统和第三方集成</strong>：虽然 OpenShift 本身拥有庞大的生态，但 Satellite 作为 IBM Cloud 的延伸，其与特定第三方工具或客户现有 IT 管理系统的集成顺畅度，可能需要逐案评估。</li></ul><p>IBM Cloud Satellite 的定位清晰，即为那些需要在特定物理位置运行 IBM Cloud 服务（尤其是 AI 和现代化应用）的企业提供解决方案。其优势在于能够提供由 IBM 管理的云服务体验，减轻客户的运维负担。然而，企业在采用时，必须充分考虑其对网络连接的依赖、分布式管理的复杂性以及综合成本。</p><h2 id="Tencent-Cloud-腾讯云"><a href="#Tencent-Cloud-腾讯云" class="headerlink" title="Tencent Cloud (腾讯云)"></a><strong>Tencent Cloud (腾讯云)</strong></h2><ul><li>架构&#x2F;产品生态总览<br>腾讯云的混合云产品体系主要由 Tencent Cloud TStack (腾讯云 TStack 私有云)、Tencent Kubernetes Engine (TKE) 以及 Edge Computing Machine (ECM) 等构成。TStack 是腾讯云面向企业和政府机构推出的全栈私有云解决方案，它基于腾讯云公有云的成熟技术架构，提供 IaaS、PaaS 和 SaaS 服务，支持 x86 和 ARM 架构，并提供开放 API 以实现与公有云的混合管理 13。TStack 旨在帮助用户在本地数据中心构建一个与腾讯云体验相似的云环境。<strong>Tencent Kubernetes Engine (TKE)</strong> 是腾讯云的托管 Kubernetes 服务，它不仅在公有云上提供，也可以作为混合云架构中容器化应用的核心编排平台，可能部署在 TStack 环境或客户其他基础设施之上 14。腾讯云也提供了<strong>TKE Register Cluster</strong>等类似功能，允许纳管外部的 Kubernetes 集群。<strong>Tencent Cloud Base (TCB)</strong> 是一个 Serverless 平台，提供云函数、云数据库、云存储等后端服务。虽然 TCB 本身不直接定义为传统意义上的混合云平台，但其 Serverless 组件可以作为混合云应用架构的一部分，处理特定类型的无服务器工作负载 42。<strong>Edge Computing Machine (ECM)</strong> 则专注于将腾讯云的计算能力延伸至网络边缘，靠近用户或数据源，以满足低延迟、本地数据处理等需求，并支持云边协同的混合场景 178。<br>腾讯云的混合云策略似乎是通过提供 TStack 这样的私有云构建块，结合 TKE 作为跨环境的容器管理核心，并通过 ECM 覆盖边缘计算需求，来满足不同客户在不同场景下的混合部署需求。</li><li>Terraform 集成和 IaC 成熟度<br>腾讯云为其公有云服务提供了官方的 Terraform Provider (tencentcloud provider)，允许用户通过 Terraform 进行基础设施即代码（IaC）的管理 26。相关的 Terraform 文档片段展示了基本的 HCL（HashiCorp Configuration Language）语法、变量使用、Provider 配置（如指定 SecretId, SecretKey, Region）以及模块调用等概念在腾讯云环境中的应用 26。这表明腾讯云支持使用 Terraform 来自动化其云资源的创建、更新和删除。<br>然而，对于腾讯云的混合云核心组件，如 TStack 私有云环境内部资源的编排，或通过 TKE Register Cluster 等功能纳管的、运行在客户本地或第三方云上的 Kubernetes 集群的详细 IaC 管理能力，在提供的英文公开资料中信息相对有限。Terraform Provider 对这些混合云特定场景的覆盖深度和一致性（例如，能否用与管理公有云 TKE 集群相同的 Terraform 资源来管理一个注册到腾讯云的本地 TKE 集群，或者能否编排 TStack 内部的虚拟化、网络、存储资源）是评估其混合云 IaC 成熟度的关键。<br>除了 Terraform，腾讯云也可能有其自研的资源编排或自动化部署工具，但在此次分析的资料中未突出显示。企业在考虑腾讯云混合云方案时，若 IaC 是关键考量，则需要深入调研其 Terraform Provider 对目标混合架构中所有组件的支持情况，以及是否有其他推荐的 IaC 实践。</li><li>算力并网接入 &amp; 统一调度实现方式<br>腾讯云的混合云计算资源接入和统一调度主要依赖其 TStack 私有云平台和 TKE 容器服务。TStack 为客户在本地数据中心提供了一套与腾讯云公有云技术架构同源的计算、存储、网络等 IaaS 和 PaaS 资源，实现了算力在私有环境的落地 13。<strong>Tencent Kubernetes Engine (TKE)</strong> 作为核心的容器编排平台，可以在腾讯云公有云上运行，也可以部署在 TStack 环境或客户的其他基础设施（通过 TKE Register Cluster 等方式接入管理）14。这为跨云和本地环境的容器化应用提供了一个潜在的统一调度平面。一旦 Kubernetes 集群被 TKE（或其混合云管理组件）纳管，应用就可以利用 Kubernetes 的调度能力在这些集群间进行部署和管理。<strong>Edge Computing Machine (ECM)</strong> 则将计算节点部署到网络的边缘，实现了算力向用户侧的延伸，支持云边协同的调度模式，例如模型在云端训练，在边缘 ECM 节点进行推理 178。<br>与业界其他主流厂商类似，腾讯云的“统一调度”很大程度上是通过 Kubernetes 生态系统实现的。TKE 作为其 Kubernetes 管理平台，是实现跨不同环境（公有云、基于 TStack 的私有云、边缘节点）工作负载（主要是容器化应用）调度的关键。对于非容器化的、传统的虚拟机工作负载，如果它们运行在 TStack 环境中，则由 TStack 的管理平台负责调度；如果运行在公有云，则由公有云的虚拟机管理系统调度。一个能够无缝、智能地跨所有这些环境（TStack VM、公有云 CVM、TKE 集群 Pod、ECM 实例）进行统一资源池化和基于策略的智能调度的、超越 Kubernetes 范畴的中央调度系统，在当前公开资料中并未明确体现。</li><li>计费&#x2F;FinOps &amp; Observability 完整度<br>腾讯云为其公有云服务提供了一套标准的监控、计费和治理工具。腾讯云可观测平台 (TCOP) 和 腾讯云 Prometheus 托管服务 (TMP) 等产品为云上资源和应用提供了监控和告警能力 41。<br>计费方面，腾讯云有标准的按量付费和包年包月等多种计费模式。针对混合云的核心组件 TStack，其定价通常是面向大中型企业和政府机构的解决方案式报价，具体细节在公开资料中较少披露 181。对于 TKE 等服务，在混合云场景下的计费模式（例如，管理外部注册集群的费用）也需要具体查阅。腾讯云支持使用<strong>成本分配标签</strong>来进行费用的分摊和追踪 43。<br>FinOps 实践上，腾讯云提供了一些成本管理工具，如费用中心、成本分析、预算管理等，帮助用户了解和优化云上开销 43。然而，关于针对混合云环境（特别是包含 TStack 私有云部署的场景）的、能够整合本地硬件软件成本与云服务费用的统一 FinOps 视图和优化策略，在现有英文公开资料中信息较为缺乏。 195。<br>治理层面，腾讯云通过<strong>访问管理 (CAM)</strong> 实现对云资源的身份验证和授权控制，<strong>云审计 (CloudAudit)</strong> 则记录了账户下的操作历史 41。TStack 作为私有云平台，也会有其自身的管理和权限体系。<br>总结来说，腾讯云具备了公有云常规的监控、计费和治理能力。但在混合云场景下，特别是涉及到 TStack 这样的本地化部署方案时，如何将本地基础设施的成本、运维数据与公有云的监控、计费、治理体系进行深度融合，形成一个真正的“单一视图”和统一的 FinOps 框架，是用户需要重点关注和评估的问题。目前公开的英文资料在这方面的详细阐述相对不足。</li><li>公开落地案例 &amp; 局限<br>腾讯云 TStack 私有云解决方案已有公开的落地案例，例如广电网络运营商 Gcable 采用 TStack 构建其云平台 13。腾讯云在其解决方案页面也提及了混合云在提升灵活性和可扩展性方面的优势，并暗示其拥有跨行业的混合云客户实践 183。然而，更广泛和详细的、特别是针对 TStack 和 TCB 在复杂混合云场景下的近期（2023-2024 年）英文公开案例研究，在本次可获取的资料中较为有限 179。<br>局限性方面，从本次分析所依赖的公开英文资料来看，主要体现在以下几个方面： - <strong>深度混合云管理文档的缺乏</strong>：关于 TStack 和 TCB（如果 TCB 被定位为混合云组件的话）如何与公有云服务进行深度集成以实现统一资源编排（特别是 IaC）、跨云智能调度、统一精细化计费与 FinOps、以及一致性权限治理等方面的详细英文技术文档和最佳实践案例不够丰富 26。这使得对其在“真正的混合云平台”成熟度方面进行全面和深入的评估存在一定困难。 - <strong>BHCMP（百度混合云管理平台）的对标信息不足</strong>：用户查询中提及了百度云的 BHCMP，但腾讯云是否有直接对标的、明确命名的、覆盖多云和多平台统一纳管的“混合云管理平台”产品线，在这些英文资料中不够突出。其混合云能力更多是通过 TStack、TKE、ECM 等具体产品组合来体现。 - <strong>国际市场信息的透明度</strong>：相较于 AWS、Azure、GCP 等国际巨头，腾讯云在混合云领域的全球市场策略、产品细节、客户案例以及技术社区的英文信息披露有时显得不够充分，这可能影响国际用户进行全面评估。</li></ul><p>腾讯云凭借其在中国市场的强大实力和 TStack 等成熟的私有云产品，在特定客户群体（尤其是国内大型企业和政府机构）中拥有坚实的基础。然而，从全球视角和本次查询聚焦的“真正的混合云平台”能力维度来看，其在统一管理、IaC 成熟度、跨云 FinOps 等方面的公开信息（特别是英文资料）有待进一步丰富和深化，以便进行更全面的横向对比。</p><h2 id="Baidu-Cloud-百度智能云"><a href="#Baidu-Cloud-百度智能云" class="headerlink" title="Baidu Cloud (百度智能云)"></a><strong>Baidu Cloud (百度智能云)</strong></h2><ul><li>架构&#x2F;产品生态总览<br>百度智能云的混合云策略似乎主要围绕其 ABC Stack (智算一体化专有云平台) 展开。ABC Stack 定位为企业级私有云平台，旨在将百度在人工智能（A）、大数据（B）和云计算（C）领域的技术能力以私有化部署的形式提供给客户。它有多个版本，如行业版、企业版、敏捷版和超融合版，以适应不同规模和需求的企业 15。ABC Stack 的目标是帮助企业在本地环境中构建安全、稳定、高效的云服务，并集成百度的 AI 能力。<br>百度云的基础设施服务包括<strong>百度云计算引擎 (BCC)</strong>，提供虚拟机等 IaaS 能力 44；<strong>云原生应用平台 (CNAP)</strong>，用于支持容器化应用的部署和管理 44；以及<strong>对象存储服务 (BOS)</strong> 186。<br>用户查询中提及的 <strong>BHCMP (Baidu Hybrid Cloud Management Platform，百度混合云管理平台)</strong>，在本次分析所依赖的公开英文资料中，缺乏作为一款独立、功能完备的多云&#x2F;混合云统一管理平台的详细介绍和具体能力阐述。百度的混合云能力更多是通过 ABC Stack 在私有云侧的部署，结合其公有云服务来实现。<br>近年来，百度智能云的战略重点高度聚焦于 AI Cloud（人工智能云）及其核心大语言模型<strong>文心大模型 (ERNIE Bot)</strong>，以及自动驾驶平台<strong>Apollo Go</strong>的商业化落地 57。这些领域的进展是百度财报和新闻发布中的主要亮点。<br>总体而言，百度智能云的混合云方案以 ABC Stack 为私有化部署的基石，强调 AI 能力的本地化赋能。关于 BHCMP 作为连接和统一管理多云、多平台资源的具体架构和功能细节，在现有英文公开信息中较为模糊。</li><li>Terraform 集成和 IaC 成熟度<br>关于百度智能云在混合云场景下（特别是针对 ABC Stack 或用户提及的 BHCMP）的 Terraform 集成和 IaC 成熟度，在本次分析所能获取的公开英文资料中，暂无公开数据。<br>虽然百度智能云为其公有云服务提供了多种语言的 SDK（如 Java SDK, Python SDK, PHP SDK, Go SDK, C++ SDK 等），这些 SDK 可以用于以编程方式与百度云 API 交互，从而管理云资源 44。这为通过自定义脚本或集成到现有自动化工具链中实现一定程度的 IaC 提供了可能性。<br>然而，关于官方 Terraform Provider 对 ABC Stack 私有云环境内部资源的具体支持情况，或者 BHCMP（如果它是一个独立的管理平台）是否提供 Terraform 接口或等效的声明式 IaC 工具，目前缺乏明确的公开信息。对于评估其在“基于 Terraform（或等价 IaC）的一致性资源编排”方面的能力，这是一个关键的信息缺失。</li><li>算力并网接入 &amp; 统一调度实现方式<br>百度智能云的算力主要分布在其公有云平台和通过 ABC Stack 部署的私有云环境中。ABC Stack 能够在客户本地数据中心提供计算、存储、网络等资源，并集成百度的 AI 和大数据能力 15。公有云方面，<strong>百度云计算引擎 (BCC)</strong> 提供弹性的虚拟机服务 185，而<strong>云原生应用平台 (CNAP)</strong> 则支持容器化应用的部署和管理。<br>关于如何实现这些不同来源（公有云 BCC、私有云 ABC Stack 内的计算资源、CNAP 上的容器）的算力进行标准化的“并网接入”并进行“统一调度”，在现有公开的英文资料中细节不足。如果 BHCMP（百度混合云管理平台）扮演了这一角色，那么其具体的技术实现方式（例如，是否基于某种通用的控制平面技术如 Kubernetes Federation，或者是否有自研的资源抽象和调度框架）并未得到清晰阐述。<br>一种可能的方式是，如果 CNAP 能够部署在 ABC Stack 之上，并且可以与公有云上的 CNAP 实例进行某种形式的集群联邦或统一管理，那么基于 Kubernetes 的容器化工作负载或许可以在一定程度上实现跨环境的统一调度。但对于传统的虚拟机工作负载，以及更广泛的多云（非百度云）资源，其统一调度能力尚不明确。<br>因此，在缺乏关于 BHCMP 具体功能和架构的详细信息的情况下，难以评估百度智能云在多云&#x2F;多平台算力标准化并网接入和统一调度方面的成熟度。</li><li>计费&#x2F;FinOps &amp; Observability 完整度<br>百度智能云为其公有云服务提供了基础的监控、计费和治理工具。云监控 (Cloud Monitor) 服务用于收集和展示百度云资源的性能指标和运行状态，支持自定义告警 44。ABC Stack 作为私有云解决方案，在其产品介绍中也提及了“可视化运维指标监控”能力，表明其自身带有一套监控体系 16。<br>计费方面，百度云公有云服务采用标准的计费模式。ABC Stack 作为企业级私有云平台，其许可和部署费用通常涉及较为复杂的商业合同，而非简单的按量付费。<br>在 FinOps 和统一成本优化方面，现有公开英文资料中未明确提及百度智能云针对混合云环境（例如，同时包含公有云支出和 ABC Stack 私有云总体拥有成本）的专用 FinOps 工具、跨云成本分析与智能优化建议，或统一的弹性策略管理框架。<br>治理层面，百度智能云提供了<strong>身份和访问管理 (IAM)</strong> 服务，用于控制对云资源的访问权限 45。ABC Stack 也强调其符合安全合规认证，并具备数据安全保护和运维体系 16。<br>总结而言，百度智能云具备了针对其公有云和私有云（ABC Stack）各自的监控和权限管理能力。但是，将这些能力整合，以提供一个跨越公有云、私有云（ABC Stack）乃至其他潜在多云环境的统一可观测性视图、统一的精细化计费与成本分摊、以及一致的 FinOps 策略和治理框架，这方面的具体实现和成熟度在当前的公开英文资料中尚不清晰。特别是关于 BHCMP 如何实现这些统一功能，信息尤为缺乏。</li><li>公开落地案例 &amp; 局限<br>百度智能云，特别是其 ABC Stack 私有云解决方案，在早期（如 2017 年）即有一些公开的合作案例，例如与首钢自动化、上海电气以及银联的合作，主要聚焦于将百度的 AI、大数据和云计算能力赋能传统行业 15。近期的财报和新闻发布则更多地强调其 AI Cloud 业务的强劲增长，以及文心大模型（ERNIE Bot）和自动驾驶平台 Apollo Go 的商业进展和市场拓展 57。这些信息表明百度在 AI 领域的投入和市场渗透取得了显著成效。<br>然而，在本次评估所关注的“真正的混合云平台”能力方面，特别是关于用户查询中明确提及的 BHCMP（百度混合云管理平台）的具体功能、架构、Terraform 集成、统一调度、统一 FinOps 以及跨云成本优化等关键维度，近期的、详细的、公开的英文技术资料和客户案例显得较为匮乏。<br>主要的局限性在于： - <strong>BHCMP 信息不透明</strong>：关于 BHCMP 作为一个独立的、全面的混合与多云管理平台，其具体的产品形态、技术特性、与 ABC Stack 及公有云的集成方式、以及如何实现用户查询中各项核心能力的细节，在所提供的英文资料中未能得到充分展现。 - <strong>战略重点的差异</strong>：百度智能云当前的市场宣传和信息披露高度集中于其 AI Cloud 和大型语言模型的领先地位及应用前景。虽然混合云是支撑这些 AI 应用落地的基础设施之一（例如通过 ABC Stack 在本地部署 AI 能力），但混合云管理平台本身的技术细节和演进路径似乎并非其当前对外沟通的重点。 - <strong>公开技术文档的语言和可获得性</strong>：可能存在更详细的技术文档和案例是以中文发布的，但在全球可获取的英文公开资料层面，信息相对有限，这给进行全球范围内的横向对比带来了一定挑战。</li></ul><p>因此，虽然百度智能云在 AI 领域和特定行业的私有云部署方面拥有实力和客户基础，但就其是否提供一个满足本次查询所有标准的、成熟的、信息公开透明的“真正的混合云管理平台（BHCMP）”而言，<strong>目前公开资料不足，难以进行全面深入的评估</strong>。报告中涉及 BHCMP 的具体能力评分将反映这一信息缺失的状况。</p><h2 id="IV-横向对比与趋势判断"><a href="#IV-横向对比与趋势判断" class="headerlink" title="IV. 横向对比与趋势判断"></a><strong>IV. 横向对比与趋势判断</strong></h2><h2 id="横向对比：谁真正走向“闭环”？"><a href="#横向对比：谁真正走向“闭环”？" class="headerlink" title="横向对比：谁真正走向“闭环”？"></a><strong>横向对比：谁真正走向“闭环”？</strong></h2><p>“真正的混合云平台”的“闭环”能力，如用户所述，应涵盖多云&#x2F;多平台算力资源的标准化并网接入、基于 Terraform（或等价 IaC）的一致性资源编排、统一的调度、监控、计量计费与权限治理，以及跨云的智能成本优化与弹性策略。基于此定义，各厂商的成熟度呈现差异化。</p><p><strong>在统一管理控制平面方面表现突出的领导者：</strong></p><ul><li><strong>Microsoft Azure Arc</strong>：在构建统一控制平面以纳管多样化基础设施方面展现出强大实力。Azure Arc 能够将 Azure 的管理能力延伸至本地服务器（Windows&#x2F;Linux、物理机&#x2F;虚拟机）、任意位置的 Kubernetes 集群（包括其他公有云上的集群）以及数据服务。通过 Azure Policy、Azure Monitor、Microsoft Defender for Cloud 和 Microsoft Entra ID 等服务，Azure Arc 能够在这些已纳管的混合资源上实现一致的策略执行、监控告警、安全防护和身份治理 3。这种将异构资源“投射”为 Azure 资源的模式，是其实现统一管理的核心机制。</li><li><strong>Google Cloud (GKE Enterprise&#x2F;Anthos)</strong>：以 Kubernetes 作为跨环境的通用应用平台，GKE Enterprise (原 Anthos) 在管理 Kubernetes 中心的工作负载方面表现卓越。其舰队（Fleet）管理功能允许将部署在 GCP、本地（VMware、裸金属）或其他云（AWS、Azure）上的 GKE 集群进行逻辑分组和统一运维。Anthos Config Management (ACM) 和 Policy Controller 则为整个舰队提供了基于 GitOps 的一致性配置管理和策略实施能力 5。这种以 Kubernetes 为中心的统一管理模式，在容器化应用场景下非常强大。</li></ul><p><strong>在混合云扩展（主要聚焦自身生态系统）方面实力雄厚的厂商：</strong></p><ul><li><strong>AWS (Outposts + EKS&#x2F;ECS Anywhere + EKS Hybrid Nodes)</strong>：AWS 的策略是将其成熟的公有云服务和管理体验尽可能一致地延伸到客户本地。Outposts 是 AWS 基础设施的物理延伸，提供了高度一致的体验。EKS Anywhere 和 ECS Anywhere 则赋予客户在自有硬件上运行 AWS 容器服务的灵活性。新增的 EKS Hybrid Nodes 进一步尝试将客户本地节点纳入云端 EKS 控制平面的管理 1。其统一管理能力在 AWS 服务范畴内最为强大和成熟。</li><li><strong>Oracle Cloud (Dedicated Region + Multicloud DBs)</strong>：OCI Dedicated Region Cloud@Customer 提供了一个在客户数据中心内部署完整 OCI 区域的独特方案，确保了 Oracle 工作负载在本地运行的极致性能和数据主权。其多云数据库服务（如 Oracle Database@Azure）也是一个关键的差异化优势，允许客户在其他云上原生运行 Oracle 数据库 9。然而，Dedicated Region 与公有云 OCI 环境目前采用分离的管理控制台，这在一定程度上削弱了其“统一管理”的闭环性 38。</li></ul><p><strong>持续演进和特定领域见长的产品：</strong></p><ul><li><strong>IBM Cloud (Satellite + OpenShift)</strong>：通过 IBM Cloud Satellite，客户可以将 IBM Cloud 的服务（特别是 Red Hat OpenShift 和 watsonx AI 平台）部署到自选的任何基础设施上，并从 IBM Cloud 进行集中管理。这为需要在特定位置运行 IBM Cloud 服务的场景提供了解决方案 11。</li><li><strong>Alibaba Cloud (Apsara Stack + ACK One)</strong>：在亚太市场具有强大影响力。Apsara Stack 是其成熟的私有云解决方案，ACK One 则专注于多集群 Kubernetes 管理，正朝着统一的 K8s 运维方向发展 7。</li></ul><p><strong>公开数据有限，难以全面评估“闭环”能力的厂商：</strong></p><ul><li><strong>Tencent Cloud (TStack + TKE)</strong>：TStack 为其私有云产品，TKE 支持 Kubernetes。关于其如何实现深度统一管理、跨云 IaC、统一 FinOps 等方面的详细英文公开资料相对较少 13。</li><li><strong>Baidu Cloud (ABC Stack &#x2F; BHCMP)</strong>：ABC Stack 是其私有云产品，但关于 BHCMP 作为统一混合云管理平台的具体能力，缺乏充分的公开英文信息来支撑全面的“闭环”评估 15。</li></ul><p><strong>IaC 一致性方面</strong>，多数厂商为其公有云服务提供了成熟的 Terraform Provider。但在混合云组件（如本地设备、外部纳管资源）的 IaC 支持上，成熟度和覆盖度参差不齐。Azure（Bicep + Arc）和 Google Cloud（Config Controller + Anthos）在其原生 IaC 工具与混合云管理平台的集成方面表现出较强的整合性。AWS Proton 则提供了一种更高层次的应用和基础设施部署抽象。</p><p><strong>统一 FinOps 与可观测性方面</strong>，这通常是实现真正跨云、跨本地统一视图的薄弱环节，往往需要借助第三方工具。Azure Monitor 与 Arc 的结合，以及 Google Cloud Monitoring 与 Anthos 的集成，为各自体系内纳管的资源提供了较好的统一监控。AWS CloudWatch 对其生态系统内的服务监控能力强大。</p><p>没有任何一家厂商完美地实现了覆盖所有类型工作负载、所有云平台和本地环境的、所有维度（接入、编排、调度、监控、计费、治理、优化、弹性）的“闭环”。Azure Arc 和 Google Anthos&#x2F;GKE Enterprise 在架构设计上，为实现广泛的多环境统一管理（尤其是针对 Kubernetes 工作负载）奠定了最坚实的基础。AWS 在其扩展的生态系统内提供极高的一致性。Oracle Dedicated Region 虽然独特，但在管理控制台统一性上存在不足。其他厂商则在特定领域或区域展现优势，或仍在构建更全面的统一管理能力。</p><h2 id="2025-2026-演进预测"><a href="#2025-2026-演进预测" class="headerlink" title="2025-2026 演进预测"></a><strong>2025-2026 演进预测</strong></h2><p>未来两年，全球混合云平台预计将在以下几个关键方向上深化演进：</p><ul><li>API 网状化 (API Meshification) 与服务连接性增强：<br>随着应用日益微服务化和分布式化，跨混合云、多云环境的服务间通信、安全保障和可观测性管理将变得至关重要。服务网格技术（如 Istio、Linkerd 及其云厂商托管版本如 Anthos Service Mesh、Azure Open Service Mesh）的采纳率将持续提升 5。同时，将涌现出更成熟的、能够跨越混合部署边界的 API 网关和 API 管理解决方案，确保无论后端服务运行在何处，都能实现安全、一致的 API 暴露和治理。这种趋势反映了从基础设施连接到应用网络连接的关注点转移，API 将成为混合云架构中价值流动的关键节点。</li><li>主权云 (Sovereign Cloud) 与数据驻留解决方案的深化：<br>受全球数据隐私法规（如 GDPR）日趋严格以及地缘政治因素影响，企业对数据本地化、隐私保护和数字主权的需求将持续高涨。云厂商将进一步扩展其主权云产品线（例如 Oracle 的 EU Sovereign Cloud 10，IBM 对法规遵从的强调 158，Google Cloud Sovereign AI 服务 105），并在其混合云平台中内置更多满足特定国家或行业数据驻留要求的功能。混合云平台通过允许敏感数据和工作负载保留在客户本地或特定国家境内，同时利用云端进行统一管理和调用云服务，天然契合了这一需求。</li><li>GPU&#x2F;AI&#x2F;ML 弹性资源池的构建与普及：<br>人工智能和机器学习已成为驱动混合云需求的核心负载之一。未来，混合云平台将提供更动态、更灵活的方式来接入和管理分布在云端、边缘和本地的 GPU 资源，以支持 AI&#x2F;ML 的训练和推理任务 2。这包括支持从本地环境“云爆发”（bursting）使用云端 GPU 进行训练加速，以及通过更智能的调度算法优化 AI 工作负载在分布式基础设施上的放置和执行效率。混合云平台与 MLOps 工具链的深度、一致性集成也将是关键。</li><li>边缘节点 (Edge Nodes) 的深度并网与智能化管理：<br>混合云的控制平面将更稳健地延伸至管理大规模、小型的边缘设备集群，而不仅仅是数据中心级别的部署。这将催生更多针对边缘场景优化的专用硬件&#x2F;软件堆栈（如 Azure Local for Small Form Factor 4，AWS Snowball 61，GDC Edge 101，腾讯云 ECM 178）。对断开连接或半连接状态下的边缘节点运维、轻量级容器运行时、边缘原生应用模式以及边缘数据处理与 AI 推理能力的支持将得到强化。边缘正在成为混合云的关键组成部分，对管理平台的智能化和适应性提出了更高要求。</li><li>FinOps 成熟度的全面提升：<br>在复杂的混合云和多云环境中有效管理成本是企业面临的巨大挑战。预计云厂商将显著增强其原生的 FinOps 工具能力，以提供对混合云总拥有成本（TCO）更全面的洞察，包括对本地硬件折旧、软件许可、电力和运维人力等成本的估算与分摊。跨环境的成本可视化、预算控制、异常检测以及基于 AI 的智能优化建议将更为普及和精准 48。FinOps 将从单纯的成本报告转向更主动的价值优化。</li><li>“真正的多云”IaC 与控制平面的探索：<br>尽管许多平台声称支持多云，但实现复杂应用（尤其是那些深度依赖特定云厂商 PaaS 服务的应用）的“一次编写，任意部署”的 IaC 仍然是一个远未完全实现的目标。未来可能会出现更高级别的 IaC 抽象层，或者更智能的配置转换与适配服务。控制平面在管理跨多个不同云提供商部署的应用组件方面将更加成熟，特别是在确保数据一致性、统一安全策略执行和构建弹性跨云网络连接方面。Kubernetes 已成为跨环境工作负载可移植性的重要基石，但超越 Kubernetes，实现对异构 PaaS 服务的统一管理和编排，仍是业界持续探索的方向。</li></ul><h2 id="V-机会洞察"><a href="#V-机会洞察" class="headerlink" title="V. 机会洞察"></a><strong>V. 机会洞察</strong></h2><h2 id="对云厂商的建议"><a href="#对云厂商的建议" class="headerlink" title="对云厂商的建议"></a><strong>对云厂商的建议</strong></h2><ol><li><strong>深化“真统一”管理体验</strong>：厂商应致力于打造名副其实的“单一窗格”管理体验，其覆盖范围需超越 Kubernetes 集群，延伸至虚拟机、数据库服务、Serverless 功能等各类资源。提供跨越公有云、私有部署（如 Outposts、Dedicated Region、Stack 系列产品）以及已纳管的第三方云环境的一致性 API、CLI 和控制台至关重要。避免出现类似 Oracle Dedicated Region 与公有云控制台分离 38 的情况，这会割裂用户体验，增加管理复杂性。真正的统一管理意味着用户可以用相同的工具、相同的流程、相同的策略定义来操作和治理所有受管资源。</li><li><strong>简化混合云网络连接与安全</strong>：网络是混合云的基石，也是痛点所在。厂商应投入研发，进一步抽象和简化复杂的网络配置，例如跨云 VPC&#x2F;VNET 对等、本地数据中心与云的安全连接（VPN&#x2F;专线）、分布式应用间的流量路由和安全策略（如统一防火墙规则、微服务间 mTLS）。提供更自动化、更具韧性的混合云网络解决方案，降低用户在网络打通和安全防护上的门槛和运维负担。当前许多企业在混合云网络管理上仍面临挑战 175。</li><li><strong>提升 IaC 工具的一致性与覆盖广度</strong>：无论是 Terraform Provider 还是厂商自研的 IaC 工具（如 CloudFormation, Bicep, Config Controller, ROS），都应确保其对混合云组件（例如，部署在客户本地的硬件设备、通过 Arc&#x2F;Anthos 等平台纳管的外部资源）的支持能力与对其公有云原生服务的支持能力达到同等水平（即特性覆盖的完整性和及时性）。应投入更多资源编写详尽的混合云 IaC 最佳实践文档和参考架构，指导用户如何以一致、高效的方式编排和管理复杂的混合云环境。</li><li><strong>构建端到端的混合云 FinOps 解决方案</strong>：当前的 FinOps 工具大多侧重于公有云的费用优化。真正的混合云 FinOps 需要更广阔的视野。厂商应开发或集成能够提供混合云总拥有成本（TCO）整体视图的工具，这不仅包括云服务账单，还应能帮助企业估算和纳入本地硬件折旧、软件许可、电力、场地、人力运维等成本 48。提供更精细的成本分摊、预算控制、异常检测和智能优化建议，并考虑与企业现有的财务管理系统集成，实现从技术运营到财务运营的闭环。</li><li><strong>拥抱开放生态与推动标准化</strong>：虽然提供强大的托管服务是核心竞争力，但混合云的本质决定了其必然涉及异构环境和多厂商产品。云厂商应更积极地拥抱和贡献开源标准（如 CNCF 的项目、OCI 标准镜像格式、开放 API 规范等），确保其混合云平台能与广泛的第三方监控、安全、备份、IaC 工具顺畅集成。避免过度依赖专有技术形成深度锁定，这有助于提升用户采纳混合云方案的信心，并促进整个混合云生态的健康发展。</li></ol><h2 id="对企业自建团队的建议"><a href="#对企业自建团队的建议" class="headerlink" title="对企业自建团队的建议"></a><strong>对企业自建团队的建议</strong></h2><ol><li><strong>明确混合云战略与业务目标对齐</strong>：在评估和采用任何混合云平台之前，企业 IT 团队必须首先清晰定义自身的混合云战略，并确保该战略与核心业务目标（如加速创新、提升弹性、满足合规、优化成本等）紧密对齐。避免为技术而技术，应从业务需求出发，判断哪些应用和数据适合保留在本地，哪些适合上云，哪些需要在边缘处理，以及选择何种混合云模式（如私有云扩展、公有云延伸、多云纳管等）最能支撑业务发展。</li><li><strong>投资于跨领域技能与云原生能力建设</strong>：成功的混合云运营需要团队具备跨越传统 IT 和云原生技术的复合型技能。这包括对虚拟化、网络、存储等传统技术的深入理解，以及对容器（Docker, Kubernetes）、微服务架构、DevOps 文化、IaC 工具（Terraform, Ansible, Bicep 等）、云安全和 FinOps 等云原生能力的掌握。应制定持续的培训和赋能计划，提升团队的整体技术水平和适应性。</li><li><strong>审慎选择并整合统一的管理与 IaC 工具链</strong>：面对众多云厂商提供的混合云管理平台和 IaC 工具，企业应基于自身技术栈、团队能力和多云策略进行审慎评估和选择。目标是尽可能实现管理工具的统一和 IaC 实践的一致性，以降低学习成本和运维复杂度。例如，如果企业已大量采用 Terraform，则应优先考察各云平台对 Terraform 的混合云支持程度。如果选择某厂商的特定平台（如 Azure Arc, Anthos），则应充分利用其提供的统一管理和原生 IaC 能力。</li><li><strong>将安全与合规“左移”并贯穿混合云始终</strong>：混合云环境的复杂性对安全和合规提出了更高要求。企业应将安全设计和合规性检查“左移”到应用开发和基础设施编排的早期阶段。利用混合云平台提供的统一策略管理、身份治理、安全监控和自动化审计工具，确保在所有环境中（公有云、私有云、边缘）都能一致地执行安全基线和满足合规要求。定期进行安全评估和渗透测试，及时修补漏洞。</li><li><strong>建立持续的成本优化与性能监控反馈循环</strong>：混合云的成本构成复杂，涉及云服务费用、本地硬件软件投入、网络带宽以及运维人力等。企业应建立专门的 FinOps 职能或流程，利用混合云平台和第三方工具，对总体成本进行持续监控、分析和优化。同时，建立覆盖全链路的性能监控体系，确保应用在不同环境中的性能表现符合预期，并根据监控数据和业务需求，动态调整资源配置和弹性策略，实现成本效益最大化。</li></ol><h2 id="VI-结束语"><a href="#VI-结束语" class="headerlink" title="VI. 结束语"></a><strong>VI. 结束语</strong></h2><p>综上所述，微软 Azure 凭借 Azure Arc 的广泛连接与统一管理能力，以及 Google Cloud 依托 GKE Enterprise (Anthos) 实现的 Kubernetes 跨环境一致性平台，目前距离“真正的混合云平台”所定义的“多云统一纳管+编排+调度闭环”最为接近；而部分厂商的方案则更多停留在 PPT 描绘的愿景或特定生态的延伸阶段，尚未完全实现跨异构环境的深度融合与闭环管理。</p><h3 id="引用的著作"><a href="#引用的著作" class="headerlink" title="引用的著作"></a><strong>引用的著作</strong></h3><ol><li>Compare EKS Anywhere and EKS | EKS Anywhere, 访问时间为 五月 13, 2025， <a href="https://anywhere.eks.amazonaws.com/docs/concepts/eksafeatures/">https://anywhere.eks.amazonaws.com/docs/concepts/eksafeatures/</a></li><li>AWS re:Invent 2024 - Amazon EKS for edge and hybrid use cases, 访问时间为 五月 13, 2025， <a href="https://repost.aws/articles/ARP74Xj00HRkGHaiN1HrI52Q/aws-re-invent-2024-amazon-eks-for-edge-and-hybrid-use-cases">https://repost.aws/articles/ARP74Xj00HRkGHaiN1HrI52Q/aws-re-invent-2024-amazon-eks-for-edge-and-hybrid-use-cases</a></li><li>Azure Arc – Hybrid and Multi-Cloud Management and Solution, 访问时间为 五月 13, 2025， <a href="https://azure.microsoft.com/en-us/products/azure-arc">https://azure.microsoft.com/en-us/products/azure-arc</a></li><li>What’s new in Azure Local latest release - Learn Microsoft, 访问时间为 五月 13, 2025， <a href="https://learn.microsoft.com/en-us/azure/azure-local/whats-new?view=azloc-2504">https://learn.microsoft.com/en-us/azure/azure-local/whats-new?view=azloc-2504</a></li><li>Solved: Re: Anthos in 2025: Is Hybrid Still the Future, or… - Google Cloud Community, 访问时间为 五月 13, 2025， <a href="https://www.googlecloudcommunity.com/gc/Anthos/Anthos-in-2025-Is-Hybrid-Still-the-Future-or-Are-We-Going-Full/m-p/904974">https://www.googlecloudcommunity.com/gc/Anthos/Anthos-in-2025-Is-Hybrid-Still-the-Future-or-Are-We-Going-Full/m-p/904974</a></li><li>GKE Multi-Cloud API | Google Cloud, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/kubernetes-engine/multi-cloud/docs/reference/rest">https://cloud.google.com/kubernetes-engine/multi-cloud/docs/reference/rest</a></li><li>Overview of ACK One - Container Service for Kubernetes - Alibaba …, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/help/en/ack/distributed-cloud-container-platform-for-kubernetes/product-overview/ack-one-overview">https://www.alibabacloud.com/help/en/ack/distributed-cloud-container-platform-for-kubernetes/product-overview/ack-one-overview</a></li><li>Apsara Stack - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/product/apsarastack">https://www.alibabacloud.com/product/apsarastack</a></li><li>OCI Dedicated Region Features - Oracle, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/cloud/cloud-at-customer/dedicated-region/features/">https://www.oracle.com/cloud/cloud-at-customer/dedicated-region/features/</a></li><li>Multicloud Solutions and Hybrid Cloud Deployments | Oracle India, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/jo/cloud/multicloud/">https://www.oracle.com/jo/cloud/multicloud/</a></li><li>IBM Cloud Satellite - Digital Marketplace, 访问时间为 五月 13, 2025， <a href="https://www.applytosupply.digitalmarketplace.service.gov.uk/g-cloud/services/229452542991515">https://www.applytosupply.digitalmarketplace.service.gov.uk/g-cloud/services/229452542991515</a></li><li>IBM Cloud Satellite, 访问时间为 五月 13, 2025， <a href="https://www.ibm.com/cloud/satellite">https://www.ibm.com/cloud/satellite</a></li><li>Tencent Cloud TStack Solution | Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/solutions/tstack">https://www.tencentcloud.com/solutions/tstack</a></li><li>Tencent Kubernetes Engine | Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/products/tke">https://www.tencentcloud.com/products/tke</a></li><li>Baidu Cloud Announces Hybrid Cloud Platform To Accelerate Enterprise Deployment of AI, 访问时间为 五月 13, 2025， <a href="https://www.globenewswire.com/news-release/2017/09/20/1125254/0/en/Baidu-Cloud-Announces-Hybrid-Cloud-Platform-To-Accelerate-Enterprise-Deployment-of-AI.html">https://www.globenewswire.com/news-release/2017/09/20/1125254/0/en/Baidu-Cloud-Announces-Hybrid-Cloud-Platform-To-Accelerate-Enterprise-Deployment-of-AI.html</a></li><li>Dedicated Cloud ABC Stack - Baidu AI Cloud, 访问时间为 五月 13, 2025， <a href="https://intl.cloud.baidu.com/product/abc-stack.html">https://intl.cloud.baidu.com/product/abc-stack.html</a></li><li>AWS Proton - Terraform IaC files, 访问时间为 五月 13, 2025， <a href="https://docs.aws.amazon.com/proton/latest/userguide/ag-infrastructure-tmp-files-terraform.html">https://docs.aws.amazon.com/proton/latest/userguide/ag-infrastructure-tmp-files-terraform.html</a></li><li>Provisioning AWS EKS Cluster with Terraform - Tutorial - Spacelift, 访问时间为 五月 13, 2025， <a href="https://spacelift.io/blog/terraform-eks">https://spacelift.io/blog/terraform-eks</a></li><li>Bicep vs. Terraform - DEV Community, 访问时间为 五月 13, 2025， <a href="https://dev.to/spacelift/bicep-vs-terraform-46on">https://dev.to/spacelift/bicep-vs-terraform-46on</a></li><li>Config Controller overview | Google Cloud, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/kubernetes-engine/enterprise/config-controller/docs/overview">https://cloud.google.com/kubernetes-engine/enterprise/config-controller/docs/overview</a></li><li>Infrastructure as Code on Google Cloud | Terraform, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/docs/terraform/iac-overview">https://cloud.google.com/docs/terraform/iac-overview</a></li><li>Terraform: Resource Orchestration Tool for Multi-Cloud Deployments, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/en/solutions/devops/terraform?_p_lc=1">https://www.alibabacloud.com/en/solutions/devops/terraform?_p_lc&#x3D;1</a></li><li>Alibaba Cloud Offerings | BCX, 访问时间为 五月 13, 2025， <a href="https://www.bcx.co.za/wp-content/uploads/2023/10/bcx-alibaba-apl-cloud-offering.pdf">https://www.bcx.co.za/wp-content/uploads/2023/10/bcx-alibaba-apl-cloud-offering.pdf</a></li><li>Terraform Provider - Oracle Cloud Infrastructure Documentation, 访问时间为 五月 13, 2025， <a href="https://docs.cloud.oracle.com/Content/API/SDKDocs/terraform.htm">https://docs.cloud.oracle.com/Content/API/SDKDocs/terraform.htm</a></li><li>ibm_satellite_cluster | Resources | IBM-Cloud&#x2F;ibm - Terraform Registry, 访问时间为 五月 13, 2025， <a href="https://registry.terraform.io/providers/IBM-Cloud/ibm/1.75.0/docs/resources/satellite_cluster">https://registry.terraform.io/providers/IBM-Cloud/ibm/1.75.0/docs/resources/satellite_cluster</a></li><li>staticintl.cloudcachetci.com, 访问时间为 五月 13, 2025， <a href="https://staticintl.cloudcachetci.com/doc/pdf/product/pdf/1172_52305_en.pdf">https://staticintl.cloudcachetci.com/doc/pdf/product/pdf/1172_52305_en.pdf</a></li><li>Amazon EKS features, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/eks/features/">https://aws.amazon.com/eks/features/</a></li><li>CloudWatch metrics for Outposts racks - AWS Documentation, 访问时间为 五月 13, 2025， <a href="https://docs.aws.amazon.com/outposts/latest/userguide/outposts-cloudwatch-metrics.html">https://docs.aws.amazon.com/outposts/latest/userguide/outposts-cloudwatch-metrics.html</a></li><li>Amazon EKS Pricing + Cluster Deployment Tutorial - Economize Cloud, 访问时间为 五月 13, 2025， <a href="https://www.economize.cloud/blog/aws-eks-pricing/">https://www.economize.cloud/blog/aws-eks-pricing/</a></li><li>Monitor a single Azure Stack HCI cluster with Insights - Azure Local - Microsoft Learn, 访问时间为 五月 13, 2025， <a href="https://learn.microsoft.com/en-us/azure/azure-local/manage/monitor-hci-single?view=azloc-24113">https://learn.microsoft.com/en-us/azure/azure-local/manage/monitor-hci-single?view=azloc-24113</a></li><li>Azure Arc pricing, 访问时间为 五月 13, 2025， <a href="https://azure.microsoft.com/en-us/pricing/details/azure-arc/core-control-plane/">https://azure.microsoft.com/en-us/pricing/details/azure-arc/core-control-plane/</a></li><li>Using GKE On-Prem - YouTube, 访问时间为 五月 13, 2025， <a href="https://m.youtube.com/watch?v=QUg58wSpFT4">https://m.youtube.com/watch?v=QUg58wSpFT4</a></li><li>Pricing | Google Kubernetes Engine (GKE), 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/kubernetes-engine/pricing">https://cloud.google.com/kubernetes-engine/pricing</a></li><li>GKE Enterprise technical overview | Google Cloud, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/anthos/docs/concepts/overview">https://cloud.google.com/anthos/docs/concepts/overview</a></li><li>Hybrid Cloud Monitoring - CloudMonitor - Alibaba Cloud Documentation Center, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/help/en/cms/user-guide/hybrid-cloud-monitoring-1/">https://www.alibabacloud.com/help/en/cms/user-guide/hybrid-cloud-monitoring-1/</a></li><li>Resource Access Management (RAM): Secure Cloud Resources - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/en/product/ram?_p_lc=1">https://www.alibabacloud.com/en/product/ram?_p_lc&#x3D;1</a></li><li>Access Governance - Oracle Cloud Infrastructure Documentation, 访问时间为 五月 13, 2025， <a href="https://docs.public.oneportal.content.oci.oraclecloud.com/iaas/Content/cloud-adoption-framework/security-access-gov.htm">https://docs.public.oneportal.content.oci.oraclecloud.com/iaas/Content/cloud-adoption-framework/security-access-gov.htm</a></li><li>OCI Dedicated Region FAQ - Oracle, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/cloud/cloud-at-customer/dedicated-region/faq/">https://www.oracle.com/cloud/cloud-at-customer/dedicated-region/faq/</a></li><li>Billing for Object Storage for Satellite - IBM Cloud Docs, 访问时间为 五月 13, 2025， <a href="https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-billing-cos-satellite">https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-billing-cos-satellite</a></li><li>IAM overview - IBM Cloud Docs, 访问时间为 五月 13, 2025， <a href="https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-iam-overview">https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-iam-overview</a></li><li>Hybrid Cloud Deployment - Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/document/product/214/38442">https://www.tencentcloud.com/document/product/214/38442</a></li><li>Features - Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/document/product/647/35428">https://www.tencentcloud.com/document/product/647/35428</a></li><li>About Billing - Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/document/product/555">https://www.tencentcloud.com/document/product/555</a></li><li>Cloud Compute Service documentation - Baidu AI Cloud, 访问时间为 五月 13, 2025， <a href="https://intl.cloud.baidu.com/doc/BCC/index.html">https://intl.cloud.baidu.com/doc/BCC/index.html</a></li><li>Identity and Access Management documentation - Baidu AI Cloud, 访问时间为 五月 13, 2025， <a href="https://intl.cloud.baidu.com/doc/IAM/index.html">https://intl.cloud.baidu.com/doc/IAM/index.html</a></li><li>FinOps Implementation Guide for Cloud Costs - AWS - Amazon.com, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/awstv/watch/ff23ce0f9a1/">https://aws.amazon.com/awstv/watch/ff23ce0f9a1/</a></li><li>Elasticity - AWS Well-Architected Framework, 访问时间为 五月 13, 2025， <a href="https://wa.aws.amazon.com/wellarchitected/2020-07-02T19-33-23/wat.concept.elasticity.en.html">https://wa.aws.amazon.com/wellarchitected/2020-07-02T19-33-23/wat.concept.elasticity.en.html</a></li><li>dolevshor&#x2F;azure-finops-guide: Centralizes Azure FinOps information and tools to enabling a better understanding and optimization of cloud costs - GitHub, 访问时间为 五月 13, 2025， <a href="https://github.com/dolevshor/azure-finops-guide">https://github.com/dolevshor/azure-finops-guide</a></li><li>Cross-cloud scaling pattern in Azure Stack Hub - Azure Hybrid App Solutions, 访问时间为 五月 13, 2025， <a href="https://learn.microsoft.com/en-us/azure/adaptive-cloud/app-solutions/pattern-cross-cloud-scale">https://learn.microsoft.com/en-us/azure/adaptive-cloud/app-solutions/pattern-cross-cloud-scale</a></li><li>Optimize costs with FinOps hub | Cloud Billing, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/billing/docs/how-to/finops-hub">https://cloud.google.com/billing/docs/how-to/finops-hub</a></li><li>Multi-Cluster AI Job Scheduling - Volcano, 访问时间为 五月 13, 2025， <a href="https://volcano.sh/en/docs/v1-11-0/multi_cluster_scheduling/">https://volcano.sh/en/docs/v1-11-0/multi_cluster_scheduling&#x2F;</a></li><li>Alibaba Cloud - The FinOps Foundation, 访问时间为 五月 13, 2025， <a href="https://www.finops.org/members/alibaba-cloud/">https://www.finops.org/members/alibaba-cloud/</a></li><li>Using OCI FinOps Hub - Oracle Help Center, 访问时间为 五月 13, 2025， <a href="https://docs.oracle.com/en-us/iaas/Content/Billing/Concepts/FinOps.htm">https://docs.oracle.com/en-us/iaas/Content/Billing/Concepts/FinOps.htm</a></li><li>Hybrid Cloud Services - Oracle, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/cloud/hybrid-cloud/">https://www.oracle.com/cloud/hybrid-cloud/</a></li><li>What is FinOps? - IBM, 访问时间为 五月 13, 2025， <a href="https://www.ibm.com/think/topics/finops">https://www.ibm.com/think/topics/finops</a></li><li>IBM Cloud Satellite Build Faster. Securely. Anywhere, 访问时间为 五月 13, 2025， <a href="https://community.ibm.com/HigherLogic/System/DownloadDocumentFile.ashx?DocumentFileKey=2796b8c0-1f7e-ac78-1630-93fda9953bc1&forceDialog=0">https://community.ibm.com/HigherLogic/System/DownloadDocumentFile.ashx?DocumentFileKey=2796b8c0-1f7e-ac78-1630-93fda9953bc1&amp;forceDialog=0</a></li><li>Baidu Inc Earnings - Analysis &amp; Highlights for Q4 2024 - AlphaSense, 访问时间为 五月 13, 2025， <a href="https://www.alpha-sense.com/earnings/BIDU/">https://www.alpha-sense.com/earnings/BIDU/</a></li><li>AWS hybrid cloud solutions - Hybrid Cloud with AWS, 访问时间为 五月 13, 2025， <a href="https://docs.aws.amazon.com/whitepapers/latest/hybrid-cloud-with-aws/aws-hybrid-cloud-solutions.html">https://docs.aws.amazon.com/whitepapers/latest/hybrid-cloud-with-aws/aws-hybrid-cloud-solutions.html</a></li><li>AWS Outposts Servers Features – Amazon Web Services, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/outposts/servers/features/">https://aws.amazon.com/outposts/servers/features/</a></li><li>AWS Outposts racks features | Amazon Web Services, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/outposts/rack/features/">https://aws.amazon.com/outposts/rack/features/</a></li><li>AWS Hybrid Cloud | On Premises &amp; Edge | Amazon Web Services, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/hybrid/">https://aws.amazon.com/hybrid/</a></li><li>What is AWS Control Tower? | nOps, 访问时间为 五月 13, 2025， <a href="https://www.nops.io/glossary/what-is-aws-control-tower/">https://www.nops.io/glossary/what-is-aws-control-tower/</a></li><li>AWS Control Tower - AWS Documentation, 访问时间为 五月 13, 2025， <a href="https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html">https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html</a></li><li>Fully Managed Application Delivery Service — AWS Proton Features, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/proton/features/">https://aws.amazon.com/proton/features/</a></li><li>Amazon EKS Hybrid Nodes overview - AWS Documentation, 访问时间为 五月 13, 2025， <a href="https://docs.aws.amazon.com/eks/latest/userguide/hybrid-nodes-overview.html">https://docs.aws.amazon.com/eks/latest/userguide/hybrid-nodes-overview.html</a></li><li>What’s new with AWS for 2025 - Console Connect Blog, 访问时间为 五月 13, 2025， <a href="https://blog.consoleconnect.com/whats-new-with-aws-for-2025">https://blog.consoleconnect.com/whats-new-with-aws-for-2025</a></li><li>访问时间为 一月 1, 1970， <a href="https://docs.aws.amazon.com/proton/latest/userguide/terraform-provisioning.html">https://docs.aws.amazon.com/proton/latest/userguide/terraform-provisioning.html</a></li><li>Amazon EKS Anywhere - Datadog Docs, 访问时间为 五月 13, 2025， <a href="https://docs.datadoghq.com/integrations/eks_anywhere/">https://docs.datadoghq.com/integrations/eks_anywhere&#x2F;</a></li><li>Amazon EKS Anywhere – Now Generally Available to Create and Manage Kubernetes Clusters on Premises | AWS News Blog, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/blogs/aws/amazon-eks-anywhere-now-generally-available-to-create-and-manage-kubernetes-clusters-on-premises/">https://aws.amazon.com/blogs/aws/amazon-eks-anywhere-now-generally-available-to-create-and-manage-kubernetes-clusters-on-premises/</a></li><li>Amazon EKS Pricing | Managed Kubernetes Service - AWS, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/eks/pricing/">https://aws.amazon.com/eks/pricing/</a></li><li>Amazon EKS Anywhere FAQs, 访问时间为 五月 13, 2025， <a href="https://aws.amazon.com/eks/eks-anywhere/faqs/">https://aws.amazon.com/eks/eks-anywhere/faqs/</a></li><li>访问时间为 一月 1, 1970， <a href="https://aws.amazon.com/cloud-financial-management/">https://aws.amazon.com/cloud-financial-management/</a></li><li>IAM Roles for Service Accounts configuration - EKS Anywhere, 访问时间为 五月 13, 2025， <a href="https://anywhere.eks.amazonaws.com/docs/getting-started/optional/irsa/">https://anywhere.eks.amazonaws.com/docs/getting-started/optional/irsa/</a></li><li>Learn how to deploy Containerized applications in a hybrid cloud environment - AWS Online Tech Talks - YouTube, 访问时间为 五月 13, 2025， <a href="https://www.youtube.com/watch?v=BLFBJWA0RoI">https://www.youtube.com/watch?v=BLFBJWA0RoI</a></li><li>Case Studies - Mission Cloud Services, 访问时间为 五月 13, 2025， <a href="https://www.missioncloud.com/case-studies">https://www.missioncloud.com/case-studies</a></li><li>AWS Outposts Reviews - PeerSpot, 访问时间为 五月 13, 2025， <a href="https://www.peerspot.com/products/aws-outposts-reviews">https://www.peerspot.com/products/aws-outposts-reviews</a></li><li>Amazon Web Services: Navigating Capacity Constraints in the Cloud Race - AInvest, 访问时间为 五月 13, 2025， <a href="https://www.ainvest.com/news/amazon-web-services-navigating-capacity-constraints-cloud-race-2505/">https://www.ainvest.com/news/amazon-web-services-navigating-capacity-constraints-cloud-race-2505/</a></li><li>Top 10 AWS Security Issues You Need to Know - SentinelOne, 访问时间为 五月 13, 2025， <a href="https://www.sentinelone.com/cybersecurity-101/cloud-security/aws-security-issues/">https://www.sentinelone.com/cybersecurity-101/cloud-security/aws-security-issues/</a></li><li>Azure Arc overview - Azure Arc | Microsoft Learn, 访问时间为 五月 13, 2025， <a href="https://learn.microsoft.com/en-us/azure/azure-arc/overview">https://learn.microsoft.com/en-us/azure/azure-arc/overview</a></li><li>Azure Stack HCI - Commvault Documentation, 访问时间为 五月 13, 2025， <a href="https://documentation.commvault.com/2023e/essential/azure_stack_hci.html">https://documentation.commvault.com/2023e/essential/azure_stack_hci.html</a></li><li>Azure Local | Microsoft Azure, 访问时间为 五月 13, 2025， <a href="https://azure.microsoft.com/en-us/products/azure-stack/hci/">https://azure.microsoft.com/en-us/products/azure-stack/hci/</a></li><li>Hybrid Multi-Cloud Update Q1 2025 - Microsoft Azure Local, 访问时间为 五月 13, 2025， <a href="https://sovereign-cloud.nl/posts/malo-q1-2025-03-22/">https://sovereign-cloud.nl/posts/malo-q1-2025-03-22/</a></li><li>Microsoft named a leader in The Forrester Wave: Public Cloud Platforms, 2024, 访问时间为 五月 13, 2025， <a href="https://azure.microsoft.com/en-us/blog/microsoft-named-a-leader-in-the-forrester-wave-public-cloud-platforms-2024/">https://azure.microsoft.com/en-us/blog/microsoft-named-a-leader-in-the-forrester-wave-public-cloud-platforms-2024/</a></li><li>azurerm_arc_machine | Data Sources | hashicorp&#x2F;azurerm - Terraform Registry, 访问时间为 五月 13, 2025， <a href="https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/data-sources/arc_machine">https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/data-sources/arc_machine</a></li><li>What is Bicep? - Azure Resource Manager | Microsoft Learn, 访问时间为 五月 13, 2025， <a href="https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/overview">https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/overview</a></li><li>Overview of Azure Arc-enabled Kubernetes - Learn Microsoft, 访问时间为 五月 13, 2025， <a href="https://learn.microsoft.com/en-us/azure/azure-arc/kubernetes/overview">https://learn.microsoft.com/en-us/azure/azure-arc/kubernetes/overview</a></li><li>Pricing – Azure Arc | Microsoft Azure, 访问时间为 五月 13, 2025， <a href="https://azure.microsoft.com/en-us/pricing/details/azure-arc/">https://azure.microsoft.com/en-us/pricing/details/azure-arc/</a></li><li>Azure Arc: Simplifying Hybrid and Multi-Cloud Management - CloudOptimo, 访问时间为 五月 13, 2025， <a href="https://www.cloudoptimo.com/blog/azure-arc-simplifying-hybrid-and-multi-cloud-management/">https://www.cloudoptimo.com/blog/azure-arc-simplifying-hybrid-and-multi-cloud-management/</a></li><li>Microsoft Cost Management | Microsoft Azure, 访问时间为 五月 13, 2025， <a href="https://azure.microsoft.com/en-us/products/cost-management">https://azure.microsoft.com/en-us/products/cost-management</a></li><li>Azure Hybrid Management &amp; Security: What’s New and Insights from the Field – April 2025, 访问时间为 五月 13, 2025， <a href="https://francescomolfese.it/en/2025/04/azure-hybrid-management-security-whatsnew-insight-2025-04/">https://francescomolfese.it/en/2025/04/azure-hybrid-management-security-whatsnew-insight-2025-04/</a></li><li>Identity and authorization - Azure Arc, 访问时间为 五月 13, 2025， <a href="https://docs.azure.cn/en-us/azure-arc/servers/security-identity-authorization">https://docs.azure.cn/en-us/azure-arc/servers/security-identity-authorization</a></li><li>Embracing the future: Azure Arc and the Evolution of Microsoft SPLA modernisation, 访问时间为 五月 13, 2025， <a href="https://www.softwareone.com/en-my/blog/articles/2024/09/05/get-started-with-azure-arc">https://www.softwareone.com/en-my/blog/articles/2024/09/05/get-started-with-azure-arc</a></li><li>Technical Brief for Microsoft Azure Arc on ThinkAgile MX - Lenovo Press, 访问时间为 五月 13, 2025， <a href="https://lenovopress.lenovo.com/lp1682-azure-arc-on-thinkagile-mx">https://lenovopress.lenovo.com/lp1682-azure-arc-on-thinkagile-mx</a></li><li>Azure Local - Whats has been your experience? : r&#x2F;AZURE, 访问时间为 五月 13, 2025， <a href="https://www.reddit.com/r/AZURE/comments/1khy59t/azure_local_whats_has_been_your_experience/">https://www.reddit.com/r/AZURE/comments/1khy59t/azure_local_whats_has_been_your_experience&#x2F;</a></li><li>Overview of the Azure Connected Machine agent - Azure Arc, 访问时间为 五月 13, 2025， <a href="https://docs.azure.cn/en-us/azure-arc/servers/agent-overview">https://docs.azure.cn/en-us/azure-arc/servers/agent-overview</a></li><li>Microsoft Azure Arc Reviews, Ratings &amp; Features 2025 | Gartner Peer Insights, 访问时间为 五月 13, 2025， <a href="https://www.gartner.com/reviews/market/container-management/vendor/microsoft/product/azure-arc">https://www.gartner.com/reviews/market/container-management/vendor/microsoft/product/azure-arc</a></li><li>Release notes with fixed and known issues in Azure Local - Learn Microsoft, 访问时间为 五月 13, 2025， <a href="https://learn.microsoft.com/en-us/azure/azure-local/known-issues?view=azloc-2504">https://learn.microsoft.com/en-us/azure/azure-local/known-issues?view=azloc-2504</a></li><li>What is Google Cloud Anthos: Everything You Need To Know - Bacancy Technology, 访问时间为 五月 13, 2025， <a href="https://www.bacancytechnology.com/blog/google-cloud-anthos">https://www.bacancytechnology.com/blog/google-cloud-anthos</a></li><li>Anthos – APIs and services - Google Cloud Console, 访问时间为 五月 13, 2025， <a href="https://console.cloud.google.com/apis/library/anthos.googleapis.com?hl=en-GB">https://console.cloud.google.com/apis/library/anthos.googleapis.com?hl=en-GB</a></li><li>Anthos Powers Enterprise Container Platforms - Google Cloud, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/anthos">https://cloud.google.com/anthos</a></li><li>Google Distributed Cloud connected documentation | Google Cloud, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/distributed-cloud/edge">https://cloud.google.com/distributed-cloud/edge</a></li><li>Introducing Duet AI for Developers - YouTube, 访问时间为 五月 13, 2025， <a href="https://www.youtube.com/watch?v=Sh7l_L2lKOo">https://www.youtube.com/watch?v=Sh7l_L2lKOo</a></li><li>Duet AI | Innovating together with intelligent systems - SADA, 访问时间为 五月 13, 2025， <a href="https://sada.com/topics/duet-ai/">https://sada.com/topics/duet-ai/</a></li><li>How to Integrate Google Cloud AI with Terraform - Omi AI, 访问时间为 五月 13, 2025， <a href="https://www.omi.me/blogs/ai-integrations/how-to-integrate-google-cloud-ai-with-terraform">https://www.omi.me/blogs/ai-integrations/how-to-integrate-google-cloud-ai-with-terraform</a></li><li>Welcome to Google Cloud Next ’25, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/blog/topics/google-cloud-next/welcome-to-google-cloud-next25">https://cloud.google.com/blog/topics/google-cloud-next/welcome-to-google-cloud-next25</a></li><li>Google Cloud Anthos Overview - The Futurum Group, 访问时间为 五月 13, 2025， <a href="https://futurumgroup.com/wp-content/uploads/documents/EGL1_Google_Cloud_Anthos-5.pdf">https://futurumgroup.com/wp-content/uploads/documents/EGL1_Google_Cloud_Anthos-5.pdf</a></li><li>Google Distributed Cloud (software only) for VMware known issues, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/kubernetes-engine/distributed-cloud/vmware/docs/troubleshooting/known-issues">https://cloud.google.com/kubernetes-engine/distributed-cloud/vmware/docs/troubleshooting/known-issues</a></li><li>Google Distributed Cloud for bare metal known issues, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/troubleshooting/known-issues">https://cloud.google.com/kubernetes-engine/distributed-cloud/bare-metal/docs/troubleshooting/known-issues</a></li><li>Google Cloud Anthos - Datadog Docs, 访问时间为 五月 13, 2025， <a href="https://docs.datadoghq.com/integrations/google_cloud_anthos/">https://docs.datadoghq.com/integrations/google_cloud_anthos&#x2F;</a></li><li>Pricing | Google Kubernetes Engine (GKE) | Google Cloud, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/anthos/pricing">https://cloud.google.com/anthos/pricing</a></li><li>Google Cloud - The FinOps Foundation, 访问时间为 五月 13, 2025， <a href="https://www.finops.org/members/google-cloud/">https://www.finops.org/members/google-cloud/</a></li><li>Top Cloud Management Platforms for Optimizing Cloud Resources | CloudEagle.ai, 访问时间为 五月 13, 2025， <a href="https://www.cloudeagle.ai/blogs/top-cloud-management-platforms-for-optimizing-cloud-resources">https://www.cloudeagle.ai/blogs/top-cloud-management-platforms-for-optimizing-cloud-resources</a></li><li>IAM policy for Cloud Run Service - google - Terraform Registry, 访问时间为 五月 13, 2025， <a href="https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/cloud_run_service_iam">https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/cloud_run_service_iam</a></li><li>An Anthos hybrid reference architecture | Google Cloud Blog, 访问时间为 五月 13, 2025， <a href="https://cloud.google.com/blog/topics/hybrid-cloud/announcing-anthos-hybrid-reference-architecture">https://cloud.google.com/blog/topics/hybrid-cloud/announcing-anthos-hybrid-reference-architecture</a></li><li>Google Distributed Cloud Edge Reviews, Ratings &amp; Features 2025 | Gartner Peer Insights, 访问时间为 五月 13, 2025， <a href="https://www.gartner.com/reviews/market/distributed-hybrid-infrastructure/vendor/google/product/google-distributed-cloud-edge?marketSeoName=distributed-hybrid-infrastructure&vendorSeoName=google&productSeoName=google-distributed-cloud-edge">https://www.gartner.com/reviews/market/distributed-hybrid-infrastructure/vendor/google/product/google-distributed-cloud-edge?marketSeoName=distributed-hybrid-infrastructure&amp;vendorSeoName=google&amp;productSeoName=google-distributed-cloud-edge</a></li><li>Solved: Anthos in 2025: Is Hybrid Still the Future, or Are… - Google Cloud Community, 访问时间为 五月 13, 2025， <a href="https://www.googlecloudcommunity.com/gc/Anthos/Anthos-in-2025-Is-Hybrid-Still-the-Future-or-Are-We-Going-Full/m-p/903606">https://www.googlecloudcommunity.com/gc/Anthos/Anthos-in-2025-Is-Hybrid-Still-the-Future-or-Are-We-Going-Full/m-p/903606</a></li><li>Apsara Stack - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/en/product/apsarastack?_p_lc=1">https://www.alibabacloud.com/en/product/apsarastack?_p_lc&#x3D;1</a></li><li>Alibaba Cloud Apsara Stack Enterprise v3.16.2 Apsara Stack Security User Guide 20220916 | PDF - Scribd, 访问时间为 五月 13, 2025， <a href="https://www.scribd.com/document/713890540/Alibaba-Cloud-Apsara-Stack-Enterprise-v3-16-2-Apsara-Stack-Security-User-Guide-20220916">https://www.scribd.com/document/713890540/Alibaba-Cloud-Apsara-Stack-Enterprise-v3-16-2-Apsara-Stack-Security-User-Guide-20220916</a></li><li>Alibaba Cloud Apsara Stack Solution: Version 2018&#x2F;4&#x2F;9 | PDF - Scribd, 访问时间为 五月 13, 2025， <a href="https://www.scribd.com/document/463087641/ApsaraStack-Solution-ECS-OSS-RDS-SLB">https://www.scribd.com/document/463087641/ApsaraStack-Solution-ECS-OSS-RDS-SLB</a></li><li>Apsara Stack Brochure-Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://video-intl.alicdn.com/2021/Whitepaper/Apsara%20Stack%20Brochure%281%29.pdf">https://video-intl.alicdn.com/2021/Whitepaper/Apsara%20Stack%20Brochure%281%29.pdf</a></li><li>Unveil Alibaba Cloud Apsara Stack: Empowering Cloud Excellence, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/blog/unveil-alibaba-cloud-apsara-stack-empowering-cloud-excellence_600613">https://www.alibabacloud.com/blog/unveil-alibaba-cloud-apsara-stack-empowering-cloud-excellence_600613</a></li><li>Hybrid Cloud Solutions Across a Full-stack IT Infrastructure - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/en/solutions/hybrid-cloud?_p_lc=1">https://www.alibabacloud.com/en/solutions/hybrid-cloud?_p_lc&#x3D;1</a></li><li>Alibaba Cloud Container Service for Kubernetes - Microfusion, 访问时间为 五月 13, 2025， <a href="https://asia.microfusion.cloud/cloud-solution/alibaba-cloud/ack/">https://asia.microfusion.cloud/cloud-solution/alibaba-cloud/ack/</a></li><li>ACK One billing - Container Service for Kubernetes - Alibaba Cloud Documentation Center, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/help/en/ack/ack-one-billing">https://www.alibabacloud.com/help/en/ack/ack-one-billing</a></li><li>What is Alibaba Cloud Hybrid Cloud Management? - ZStack Product Downloads, 访问时间为 五月 13, 2025， <a href="https://product.zstack-cloud.com/help/intl/tutorials/hybrid_cloud_tutorial/v5/">https://product.zstack-cloud.com/help/intl/tutorials/hybrid_cloud_tutorial&#x2F;v5&#x2F;</a></li><li>Apsara Stack - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/product/zstack">https://www.alibabacloud.com/product/zstack</a></li><li>Alibaba Cloud Strengthens AI Capabilities with Innovations for International Customers, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/blog/602126">https://www.alibabacloud.com/blog/602126</a></li><li>Provider: alicloud - v1.137.0 - aliyun&#x2F;alicloud - OpenTofu Registry, 访问时间为 五月 13, 2025， <a href="https://search.opentofu.org/provider/aliyun/alicloud/v1.137.0">https://search.opentofu.org/provider/aliyun/alicloud/v1.137.0</a></li><li>Install and configure Terraform - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/help/en/terraform/install-and-configure-terraform-locally">https://www.alibabacloud.com/help/en/terraform/install-and-configure-terraform-locally</a></li><li>Terraform: Resource Orchestration Tool for Multi-Cloud …, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/en/solutions/devops/terraform">https://www.alibabacloud.com/en/solutions/devops/terraform</a></li><li>Resource Orchestration Service: Simplify Computing Resources …, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/product/ros">https://www.alibabacloud.com/product/ros</a></li><li>2024 Gartner® Magic Quadrant for Distributed Hybrid Infrastructure - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/en/about/gartner-dhi?_p_lc=1">https://www.alibabacloud.com/en/about/gartner-dhi?_p_lc&#x3D;1</a></li><li>A Flexible Serverless Elasticity Solution for Workload-level Management - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/blog/a-flexible-serverless-elasticity-solution-for-workload-level-management_602110">https://www.alibabacloud.com/blog/a-flexible-serverless-elasticity-solution-for-workload-level-management_602110</a></li><li>Alibaba Cloud Container Service for Kubernetes (ACK) Best Practices - Trend Micro, 访问时间为 五月 13, 2025， <a href="https://www.trendmicro.com/cloudoneconformity/knowledge-base/alibaba-cloud/AlibabaCloud-ACK/">https://www.trendmicro.com/cloudoneconformity/knowledge-base/alibaba-cloud/AlibabaCloud-ACK/</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.alibabacloud.com/product/cost-management">https://www.alibabacloud.com/product/cost-management</a></li><li>Alibaba Cloud’s Industry Leadership Recognized by Top Global Research Firms - Alizila, 访问时间为 五月 13, 2025， <a href="https://www.alizila.com/alibaba-clouds-leadership-recognized-by-top-global-research-firms/">https://www.alizila.com/alibaba-clouds-leadership-recognized-by-top-global-research-firms/</a></li><li>Apsara Conference 2024 - Alibaba Cloud, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/en/apsara-conference?_p_lc=1">https://www.alibabacloud.com/en/apsara-conference?_p_lc&#x3D;1</a></li><li>The Total Economic Impact™ Of Alibaba Cloud Apsara Stack, 访问时间为 五月 13, 2025， <a href="https://apsarastackmarketing.oss-cn-beijing.aliyuncs.com/The%20Total%20Economic%20Impact%20Of%20%20Apsara%20Stack.pdf">https://apsarastackmarketing.oss-cn-beijing.aliyuncs.com/The%20Total%20Economic%20Impact%20Of%20%20Apsara%20Stack.pdf</a></li><li>Peering into 2025: Anticipating Alibaba Cloud’s Next Wave of Innovation, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/blog/peering-into-2025-anticipating-alibaba-clouds-next-wave-of-innovation_602153">https://www.alibabacloud.com/blog/peering-into-2025-anticipating-alibaba-clouds-next-wave-of-innovation_602153</a></li><li>Oracle’s Cloud-in-a-Box Solution: Leverage Cloud Capabilities Right in Your Own Data Center - INFOLOB Global, 访问时间为 五月 13, 2025， <a href="https://www.infolob.com/oracles-cloud-in-a-box-solution-leverage-cloud-capabilities-right-in-your-own-data-center/">https://www.infolob.com/oracles-cloud-in-a-box-solution-leverage-cloud-capabilities-right-in-your-own-data-center/</a></li><li>Oracle Cloud Infrastructure Documentation, 访问时间为 五月 13, 2025， <a href="https://docs.oracle.com/iaas/">https://docs.oracle.com/iaas/</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.oracle.com/cloud/cloud-at-customer/roving-edge-infrastructure/">https://www.oracle.com/cloud/cloud-at-customer/roving-edge-infrastructure/</a></li><li>Multicloud Solutions and Hybrid Cloud Deployments | Oracle, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/cloud/multicloud/">https://www.oracle.com/cloud/multicloud/</a></li><li>oci_core_dedicated_vm_host | Resources | oracle&#x2F;oci | Terraform …, 访问时间为 五月 13, 2025， <a href="https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_dedicated_vm_host">https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_dedicated_vm_host</a></li><li>Cloud Observability and Management Platform | Oracle, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/observability/">https://www.oracle.com/observability/</a></li><li>OCI Monitoring | Datadog, 访问时间为 五月 13, 2025， <a href="https://www.datadoghq.com/solutions/oci-monitoring/">https://www.datadoghq.com/solutions/oci-monitoring/</a></li><li>OCI Costs Overview &amp; How OCI Compares to AWS&#x2F;Azure&#x2F;GCP - Finout, 访问时间为 五月 13, 2025， <a href="https://www.finout.io/blog/oci-costs-overview">https://www.finout.io/blog/oci-costs-overview</a></li><li>Cloud Price List | Oracle, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/cloud/price-list/">https://www.oracle.com/cloud/price-list/</a></li><li>Unlocking Maximum FinOps Impact with Organization Management in OCI - Oracle Blogs, 访问时间为 五月 13, 2025， <a href="https://blogs.oracle.com/global-licensing-advisory-services-glas/post/unlocking-maximum-finops-impact-with-organization-management-in-oci">https://blogs.oracle.com/global-licensing-advisory-services-glas/post/unlocking-maximum-finops-impact-with-organization-management-in-oci</a></li><li>访问时间为 一月 1, 1970， <a href="https://docs.oracle.com/en-us/iaas/finops-hub/index.html">https://docs.oracle.com/en-us/iaas/finops-hub/index.html</a></li><li>Cost Management and Governance | Oracle, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/cloud/cost-management/">https://www.oracle.com/cloud/cost-management/</a></li><li>What is Oracle OCI? Your Ultimate Guide to Operating in the Cloud - Surety Systems, 访问时间为 五月 13, 2025， <a href="https://www.suretysystems.com/insights/what-is-oracle-oci-your-ultimate-guide-to-operating-in-the-cloud/">https://www.suretysystems.com/insights/what-is-oracle-oci-your-ultimate-guide-to-operating-in-the-cloud/</a></li><li>Full Stack DR: Greatest Hits in 2024 - Oracle Blogs, 访问时间为 五月 13, 2025， <a href="https://blogs.oracle.com/cloud-infrastructure/post/full-stack-dr-greatest-hits-in-2024">https://blogs.oracle.com/cloud-infrastructure/post/full-stack-dr-greatest-hits-in-2024</a></li><li>About Effective Strategies for Distributed Cloud Implementation - Well-architected framework for Oracle Cloud Infrastructure, 访问时间为 五月 13, 2025， <a href="https://docs.oracle.com/en/solutions/oci-best-practices/effective-strategies-distributed-cloud-implementation1.html">https://docs.oracle.com/en/solutions/oci-best-practices/effective-strategies-distributed-cloud-implementation1.html</a></li><li>Oracle Cloud at Customer vs. Dedicated Region - Redress Compliance, 访问时间为 五月 13, 2025， <a href="https://redresscompliance.com/oracle-cloud-at-customer-vs-dedicated-region/">https://redresscompliance.com/oracle-cloud-at-customer-vs-dedicated-region/</a></li><li>Cloud Computing Costs in 2024 - Oracle, 访问时间为 五月 13, 2025， <a href="https://www.oracle.com/cloud/cloud-computing-cost/">https://www.oracle.com/cloud/cloud-computing-cost/</a></li><li>Service Limits - Oracle Cloud Infrastructure Documentation, 访问时间为 五月 13, 2025， <a href="https://docs.cloud.oracle.com/Content/General/Concepts/servicelimits.htm">https://docs.cloud.oracle.com/Content/General/Concepts/servicelimits.htm</a></li><li>IBM Cloud announces new collaborations and offerings to fuel AI …, 访问时间为 五月 13, 2025， <a href="https://www.ibm.com/new/announcements/ibm-cloud-announces-new-collaborations-and-offerings-to-fuel-ai-transformation">https://www.ibm.com/new/announcements/ibm-cloud-announces-new-collaborations-and-offerings-to-fuel-ai-transformation</a></li><li>Red Hat® OpenShift® Dedicated – Marketplace - Google Cloud console, 访问时间为 五月 13, 2025， <a href="https://console.cloud.google.com/marketplace/product/redhat-marketplace/red-hat-openshift-dedicated?hl=en-GB">https://console.cloud.google.com/marketplace/product/redhat-marketplace/red-hat-openshift-dedicated?hl=en-GB</a></li><li>Red Hat OpenShift enterprise application platform, 访问时间为 五月 13, 2025， <a href="https://www.redhat.com/en/technologies/cloud-computing/openshift">https://www.redhat.com/en/technologies/cloud-computing/openshift</a></li><li>The 2023 IBM Research annual letter, 访问时间为 五月 13, 2025， <a href="https://research.ibm.com/blog/research-annual-letter-2023">https://research.ibm.com/blog/research-annual-letter-2023</a></li><li>Think 2025 news - IBM Newsroom, 访问时间为 五月 13, 2025， <a href="https://newsroom.ibm.com/think-2025?lnk=ushpdevrc&l=25">https://newsroom.ibm.com/think-2025?lnk=ushpdevrc&amp;l=25</a></li><li>Learning about Satellite architecture, workload isolation, and dependencies - IBM Cloud, 访问时间为 五月 13, 2025， <a href="https://cloud.ibm.com/docs/satellite?topic=satellite-service-architecture">https://cloud.ibm.com/docs/satellite?topic=satellite-service-architecture</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.ibm.com/docs/en/cloud-satellite?topic=getting-started-understanding-satellite-config">https://www.ibm.com/docs/en/cloud-satellite?topic=getting-started-understanding-satellite-config</a></li><li>访问时间为 一月 1, 1970， <a href="https://cloud.ibm.com/docs/satellite?topic=satellite-satellite-config-understand">https://cloud.ibm.com/docs/satellite?topic=satellite-satellite-config-understand</a></li><li>Monitoring metrics for Red Hat OpenShift on IBM Cloud, 访问时间为 五月 13, 2025， <a href="https://cloud.ibm.com/docs/openshift?topic=openshift-monitoring">https://cloud.ibm.com/docs/openshift?topic=openshift-monitoring</a></li><li>ibm-cloud-docs&#x2F;satellite: Documentation repository for … - GitHub, 访问时间为 五月 13, 2025， <a href="https://github.com/ibm-cloud-docs/satellite">https://github.com/ibm-cloud-docs/satellite</a></li><li>13 Best FinOps Tools for Cloud Cost Management (2025) - Chaos Genius, 访问时间为 五月 13, 2025， <a href="https://www.chaosgenius.io/blog/finops-tools/">https://www.chaosgenius.io/blog/finops-tools/</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.ibm.com/cloud/cost-management">https://www.ibm.com/cloud/cost-management</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.ibm.com/cloud/learn/finops">https://www.ibm.com/cloud/learn/finops</a></li><li>Satellite connection overview - IBM Cloud Docs, 访问时间为 五月 13, 2025， <a href="https://cloud.ibm.com/docs/satellite?topic=satellite-service-connection">https://cloud.ibm.com/docs/satellite?topic=satellite-service-connection</a></li><li>IBM Cloud Satellite Use Cases - YouTube, 访问时间为 五月 13, 2025， <a href="https://www.youtube.com/watch?v=4H4dAtrl4p0">https://www.youtube.com/watch?v=4H4dAtrl4p0</a></li><li>Satellite use cases - IBM Cloud Docs, 访问时间为 五月 13, 2025， <a href="https://cloud.ibm.com/docs/satellite?topic=satellite-use-case">https://cloud.ibm.com/docs/satellite?topic=satellite-use-case</a></li><li>Red Hat success stories, 访问时间为 五月 13, 2025， <a href="https://www.redhat.com/en/success-stories">https://www.redhat.com/en/success-stories</a></li><li>Overcoming connectivity challenges in hybrid cloud environments | IBM, 访问时间为 五月 13, 2025， <a href="https://www.ibm.com/think/insights/overcoming-connectivity-challenges-hybrid-cloud-environments">https://www.ibm.com/think/insights/overcoming-connectivity-challenges-hybrid-cloud-environments</a></li><li>Known issues and limitations - IBM, 访问时间为 五月 13, 2025， <a href="https://www.ibm.com/docs/en/watsonx/saas?topic=overview-known-issues-limitations">https://www.ibm.com/docs/en/watsonx/saas?topic=overview-known-issues-limitations</a></li><li>What are the advantages of hybrid cloud? - Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/techpedia/105763">https://www.tencentcloud.com/techpedia/105763</a></li><li>Edge Computing Machine | Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/products/ecm">https://www.tencentcloud.com/products/ecm</a></li><li>Case Studies - Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/document/product/1172/52329">https://www.tencentcloud.com/document/product/1172/52329</a></li><li>TencentCloud Provider - Terraform Registry, 访问时间为 五月 13, 2025， <a href="https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/latest/docs">https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/latest/docs</a></li><li>访问时间为 一月 1, 1970， <a href="https://intl.cloud.tencent.com/pricing/tstack">https://intl.cloud.tencent.com/pricing/tstack</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.tencentcloud.com/products/cost-allocation-tags">https://www.tencentcloud.com/products/cost-allocation-tags</a></li><li>What are the advantages of Hybrid App? - Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/techpedia/101578">https://www.tencentcloud.com/techpedia/101578</a></li><li>Use Limits - Tencent Cloud, 访问时间为 五月 13, 2025， <a href="https://www.tencentcloud.com/document/product/1047/34381">https://www.tencentcloud.com/document/product/1047/34381</a></li><li>Baidu Cloud Compute (BCC), 访问时间为 五月 13, 2025， <a href="https://intl.cloud.baidu.com/product/bcc.html">https://intl.cloud.baidu.com/product/bcc.html</a></li><li>Object Storage - Baidu AI Cloud Document, 访问时间为 五月 13, 2025， <a href="https://intl.cloud.baidu.com/doc/BOS/index.html">https://intl.cloud.baidu.com/doc/BOS/index.html</a></li><li>Baidu 2023, 访问时间为 五月 13, 2025， <a href="https://esgs.cdn.bcebos.com/2025/04/02/66/5e664d9c3c921376172751704ebbb58b.pdf">https://esgs.cdn.bcebos.com/2025/04/02/66/5e664d9c3c921376172751704ebbb58b.pdf</a></li><li>Baidu Announces Fourth Quarter and Fiscal Year 2024 Results BEIJING, China, February 18, 2025, 访问时间为 五月 13, 2025， <a href="https://ir.baidu.com/static-files/4153c8fb-8e4a-4d22-a097-c2fe0b177d49">https://ir.baidu.com/static-files/4153c8fb-8e4a-4d22-a097-c2fe0b177d49</a></li><li>China’s Baidu to make latest Ernie AI model open-source as competition heats up, 访问时间为 五月 13, 2025， <a href="https://m.economictimes.com/tech/artificial-intelligence/baidu-to-make-ernie-ai-model-open-source-from-end-of-june/articleshow/118231667.cms">https://m.economictimes.com/tech/artificial-intelligence/baidu-to-make-ernie-ai-model-open-source-from-end-of-june/articleshow/118231667.cms</a></li><li>Baidu Announces Fourth Quarter and Fiscal Year 2024 Results, 访问时间为 五月 13, 2025， <a href="https://ir.baidu.com/news-releases/news-release-details/baidu-announces-fourth-quarter-and-fiscal-year-2024-results/">https://ir.baidu.com/news-releases/news-release-details/baidu-announces-fourth-quarter-and-fiscal-year-2024-results/</a></li><li>Baidu’s Q4 2024: Contradictions Unveiled in AI Cloud Growth, Search Integration, and Autonomous Driving Strategy - AInvest, 访问时间为 五月 13, 2025， <a href="https://www.ainvest.com/news/baidu-q4-2024-contradictions-unveiled-ai-cloud-growth-search-integration-autonomous-driving-strategy-2502/">https://www.ainvest.com/news/baidu-q4-2024-contradictions-unveiled-ai-cloud-growth-search-integration-autonomous-driving-strategy-2502/</a></li><li>Automotive Cloud Service Platform Industry Report, 2024 - ResearchInChina, 访问时间为 五月 13, 2025， <a href="http://www.researchinchina.com/UpLoads/ArticleFreePartPath/20241112173842.pdf">http://www.researchinchina.com/UpLoads/ArticleFreePartPath/20241112173842.pdf</a></li><li>Category: Blog | CNCF, 访问时间为 五月 13, 2025， <a href="https://www.cncf.io/blog/">https://www.cncf.io/blog/</a></li><li>KubeCon + CloudNativeCon Europe 2024 | LF Events, 访问时间为 五月 13, 2025， <a href="https://events.linuxfoundation.org/archive/2024/kubecon-cloudnativecon-europe/">https://events.linuxfoundation.org/archive/2024/kubecon-cloudnativecon-europe/</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.tencentcloud.com/solutions/hybrid-cloud-management">https://www.tencentcloud.com/solutions/hybrid-cloud-management</a></li><li>访问时间为 一月 1, 1970， <a href="https://intl.cloud.tencent.com/solutions/hybrid-cloud">https://intl.cloud.tencent.com/solutions/hybrid-cloud</a></li><li>访问时间为 一月 1, 1970， <a href="https://intl.cloud.tencent.com/solutions/finops">https://intl.cloud.tencent.com/solutions/finops</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.tencentcloud.com/customer-stories?solution_type=Hybrid%20Cloud">https://www.tencentcloud.com/customer-stories?solution_type&#x3D;Hybrid%20Cloud</a></li><li>访问时间为 一月 1, 1970， <a href="https://intl.cloud.tencent.com/cases?solution_type=Hybrid%20Cloud">https://intl.cloud.tencent.com/cases?solution_type&#x3D;Hybrid%20Cloud</a></li><li>访问时间为 一月 1, 1970， <a href="https://aws.amazon.com/solutions/case-studies/?solutions-master-cards.sort-by=item.additionalFields.sortDate&solutions-master-cards.sort-order=desc&awsf.AWS%20Service%20Category=*all&awsf.Industry=*all&awsf.UseCase%20Type=*all&awsf.Cloud%20Computing%20Type=type%23hybrid&awsf.Language=*all">https://aws.amazon.com/solutions/case-studies/?solutions-master-cards.sort-by=item.additionalFields.sortDate&amp;solutions-master-cards.sort-order=desc&amp;awsf.AWS%20Service%20Category=*all&amp;awsf.Industry&#x3D;*all&amp;awsf.UseCase%20Type&#x3D;*all&amp;awsf.Cloud%20Computing%20Type&#x3D;type%23hybrid&amp;awsf.Language&#x3D;*all</a></li><li>访问时间为 一月 1, 1970， <a href="https://aws.amazon.com/solutions/case-studies/#!#HybridCloud">https://aws.amazon.com/solutions/case-studies/#!#HybridCloud</a></li><li>访问时间为 一月 1, 1970， <a href="https://azure.microsoft.com/en-us/solutions/hybrid-cloud-solutions/#customer-stories">https://azure.microsoft.com/en-us/solutions/hybrid-cloud-solutions/#customer-stories</a></li><li>访问时间为 一月 1, 1970， <a href="https://azure.microsoft.com/en-us/solutions/hybrid-multicloud/#customer-stories">https://azure.microsoft.com/en-us/solutions/hybrid-multicloud/#customer-stories</a></li><li>访问时间为 一月 1, 1970， <a href="https://cloud.google.com/anthos/customers">https://cloud.google.com/anthos/customers</a></li><li>访问时间为 一月 1, 1970， <a href="https://cloud.google.com/anthos/customers/">https://cloud.google.com/anthos/customers/</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.alibabacloud.com/success-stories?solution=Hybrid%20Cloud">https://www.alibabacloud.com/success-stories?solution=Hybrid%20Cloud</a></li><li>Hybrid Cloud Solutions Across a Full-stack IT Infrastructure - Alibaba …, 访问时间为 五月 13, 2025， <a href="https://www.alibabacloud.com/solutions/hybrid-cloud#industry-cases">https://www.alibabacloud.com/solutions/hybrid-cloud#industry-cases</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.oracle.com/customers/?product=cloud-hybrid-cloud&product=cloud-multicloud">https://www.oracle.com/customers/?product=cloud-hybrid-cloud&amp;product=cloud-multicloud</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.oracle.com/customers/search/?product=hybrid-cloud&product=multicloud">https://www.oracle.com/customers/search/?product=hybrid-cloud&amp;product=multicloud</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.ibm.com/cloud/hybrid/client-stories">https://www.ibm.com/cloud/hybrid/client-stories</a></li><li>访问时间为 一月 1, 1970， <a href="https://www.ibm.com/cloud/satellite/customers">https://www.ibm.com/cloud/satellite/customers</a></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/">深度研究</category>
      
      <category domain="https://deusyu.app/categories/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/Deep-Research/">Deep Research</category>
      
      
      <category domain="https://deusyu.app/tags/IaC/">IaC</category>
      
      <category domain="https://deusyu.app/tags/Kubernetes/">Kubernetes</category>
      
      <category domain="https://deusyu.app/tags/Hybrid-Cloud/">Hybrid Cloud</category>
      
      <category domain="https://deusyu.app/tags/Multi-Cloud/">Multi-Cloud</category>
      
      <category domain="https://deusyu.app/tags/FinOps/">FinOps</category>
      
      <category domain="https://deusyu.app/tags/Terraform/">Terraform</category>
      
      
      <comments>https://deusyu.app/posts/deep-research-hybrid-cloud-2025/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>擅长学习 = 擅长优雅失败</title>
      <link>https://deusyu.app/posts/elegant-failure-is-learning/</link>
      <guid>https://deusyu.app/posts/elegant-failure-is-learning/</guid>
      <pubDate>Mon, 30 Jun 2025 01:43:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>很多人都以为「擅长学习」是指擅长背诵、理解书本上的知识，但实际上，如果给「擅长学习」找一个更精准的同义词，我会选择「擅长失败」。</p><p>为什么？</p><p>因为学习的本质，从来不是单纯记忆或模仿，而是一场不断试错、不断迭代的优化过程。换句话说，学习最快的路径，同时也是最快的「失败路径」。如果能学会在安全阈值内高效犯错，以最快速度找到问题所在，并进行调整优化，成果自然会快速显现。</p><p>这种学习方式，其实与机器学习中的「梯度下降法」如出一辙：</p><ul><li>步长太长，追求大成功或大失败，容易造成长期难以挽回的错误。</li><li>步长太短，谨小慎微，只在可见范围内寻找最优解，成长迭代速度慢，容易陷入局部最优。</li><li>步长合适，则可以用最少的迭代次数达到最好的效果，收敛到全局最优。</li></ul><p>再进一步类比，引用吴军老师在《谷歌方法论》中的一段话：</p><blockquote><p>「为了加快机器学习的收敛速度，最好先用标注过的高质量数据寻找方向，这比完全没有数据输入，全靠计算机自适应学习快得多。那些标注过的、正确无误的数据，其实就是人类总结出来的、或见到的成功经验。没有这些成功经验，计算机也能收敛到正确的模型，但要走非常长的弯路。如果你给计算机输入噪音（错误信息），计算机即使最终能回归到正确的模型，也要花费极大代价。」</p></blockquote><p>同样的道理也适用于人的成长。</p><p>高质量的信息输入源，就像机器学习中的标注数据，能够大幅减少我们的试错成本，加速我们收敛到目标状态。反之，低质量的信息输入，或者说「噪声」，会让我们的学习曲线变得异常曲折。</p><p>这也解释了一个看似残酷但真实的事实：一个人的成长速度，不仅取决于他多努力，更取决于他所处的<strong>信息环境与圈层密度</strong>。</p><p>生活在资源丰富的圈子里，你早早便被输入「高质量标注数据」，直接跳过了无数的试错阶段，迅速走向高效成长；而资源匮乏的圈子，却只能通过频繁试错、不断遭遇失败，缓慢摸索最优解。这种差距，不仅仅出现在学习领域，同样也体现在职业选择、投资决策甚至人生道路上。</p><p>因此，「擅长学习」从根本上讲，不只是个人勤奋的问题，更是如何聪明地收集「标注数据」、高效管理「试错成本」的问题。</p><p>也就是说，你的成长速度，本质上取决于你能否快速识别和利用错误，在不断迭代中实现梯度下降，并最终收敛到你期望达到的那个最优模型。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%88%90%E9%95%BF%E7%B3%BB%E7%BB%9F/">成长系统</category>
      
      
      <category domain="https://deusyu.app/tags/%E5%AD%A6%E4%B9%A0%E5%8A%9B/">学习力</category>
      
      <category domain="https://deusyu.app/tags/%E4%BC%98%E9%9B%85%E5%A4%B1%E8%B4%A5/">优雅失败</category>
      
      <category domain="https://deusyu.app/tags/%E9%AB%98%E8%B4%A8%E9%87%8F%E8%BE%93%E5%85%A5/">高质量输入</category>
      
      <category domain="https://deusyu.app/tags/%E6%A2%AF%E5%BA%A6%E4%B8%8B%E9%99%8D/">梯度下降</category>
      
      <category domain="https://deusyu.app/tags/%E4%BF%A1%E6%81%AF%E5%99%AA%E5%A3%B0/">信息噪声</category>
      
      <category domain="https://deusyu.app/tags/%E5%90%B4%E5%86%9B%E6%96%B9%E6%B3%95%E8%AE%BA/">吴军方法论</category>
      
      
      <comments>https://deusyu.app/posts/elegant-failure-is-learning/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Rainman 的 AI 精读书单</title>
      <link>https://deusyu.app/posts/rainman-ai-library/</link>
      <guid>https://deusyu.app/posts/rainman-ai-library/</guid>
      <pubDate>Sun, 29 Jun 2025 11:15:00 GMT</pubDate>
      
      <description>我认为最值得读的 AI 相关书籍与论文，按主题整理，持续更新。</description>
      
      
      
      <content:encoded><![CDATA[<h1 id="Rainman-的-AI-精读书单（Rainman’s-AI-Reading-Kit）"><a href="#Rainman-的-AI-精读书单（Rainman’s-AI-Reading-Kit）" class="headerlink" title="Rainman 的 AI 精读书单（Rainman’s AI Reading Kit）"></a><strong>Rainman 的 AI 精读书单（Rainman’s AI Reading Kit）</strong></h1><p>本页收录我认为在 AI 领域最值得深入阅读的书籍与论文。它是我个人知识体系的重要输入来源，按主题分组，适合工程师、研究者、技术理想主义者持续查阅与回访。<br>持续更新中。</p><hr><h2 id="核心论文推荐（Papers）"><a href="#核心论文推荐（Papers）" class="headerlink" title="核心论文推荐（Papers）"></a><strong>核心论文推荐（Papers）</strong></h2><h3 id="LLM-Transformer-方向"><a href="#LLM-Transformer-方向" class="headerlink" title="LLM &amp; Transformer 方向"></a><strong>LLM &amp; Transformer 方向</strong></h3><ul><li><strong>Attention is All You Need (2017)</strong><br>Transformer 原始论文，打破了 RNN 的局限，标志大模型时代的开端。</li><li><strong>BERT: Pre-training of Deep Bidirectional Transformers (2018)</strong><br>将 Masked LM 引入预训练范式，彻底改变了 NLP 任务的方法论。</li><li><strong>GPT (Radford et al., 2018)</strong><br>生成式预训练的原点，构建了今天 ChatGPT 的原始路径。</li><li><strong>RAG: Retrieval-Augmented Generation (2020)</strong><br>构建 LLM × 外部知识库的重要方法，是所有 RAG 系统的基础。</li></ul><h3 id="AI-系统-工程架构"><a href="#AI-系统-工程架构" class="headerlink" title="AI 系统 &#x2F; 工程架构"></a><strong>AI 系统 &#x2F; 工程架构</strong></h3><ul><li><strong>Spanner (Google, 2012)</strong><br>全球一致性数据库设计，系统层的经典。</li><li><strong>FSDP: Fully Sharded Data Parallel (Meta)</strong><br>大模型训练中的高效并行范式。</li></ul><hr><h2 id="精选书籍推荐（Books）"><a href="#精选书籍推荐（Books）" class="headerlink" title="精选书籍推荐（Books）"></a><strong>精选书籍推荐（Books）</strong></h2><h3 id="入门-中文体系"><a href="#入门-中文体系" class="headerlink" title="入门 &amp; 中文体系"></a><strong>入门 &amp; 中文体系</strong></h3><ul><li>《统计学习方法》 - 李航<br>机器学习中文经典，适合构建概率推理与监督学习的直觉。</li><li>《机器学习》 - 周志华<br>结构清晰、图示丰富，是最通俗的算法教材之一。</li></ul><h3 id="理论-深度学习核心"><a href="#理论-深度学习核心" class="headerlink" title="理论 &amp; 深度学习核心"></a><strong>理论 &amp; 深度学习核心</strong></h3><ul><li><em>Deep Learning</em> - Goodfellow, Bengio, Courville<br>深度学习圣经，几乎是每位 AI 工程师的必备读物。</li><li><em>Pattern Recognition and Machine Learning</em> - Christopher Bishop<br>数学性较强，适合打理论基础，尤其是图模型与贝叶斯方法。</li></ul><h3 id="社会影响与科普"><a href="#社会影响与科普" class="headerlink" title="社会影响与科普"></a><strong>社会影响与科普</strong></h3><ul><li><em>AI 2041</em> - 李开复 &amp; 陈楸帆<br>结合科幻与分析，预见 AI 对未来社会各维度的影响。</li></ul><h3 id="未分类"><a href="#未分类" class="headerlink" title="未分类"></a>未分类</h3><p><a href="https://www.superagency.ai/">https://www.superagency.ai/</a></p><p><a href="https://book.douban.com/subject/37045820/">《奇点更近》</a></p><hr><h2 id="未来更新规划"><a href="#未来更新规划" class="headerlink" title="未来更新规划"></a><strong>未来更新规划</strong></h2><p>后续我将为这些书&#x2F;论文添加：</p><ul><li>我的摘要与点评（含链接 Notion 子页面）</li><li>实际使用场景 &#x2F; 项目中应用感悟</li><li>进阶阅读推荐（Paper 路线图 &#x2F; 书籍交叉推荐）</li></ul>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%98%85%E8%AF%BB%E5%BA%93/">阅读库</category>
      
      
      <category domain="https://deusyu.app/tags/AI/">AI</category>
      
      <category domain="https://deusyu.app/tags/%E4%B9%A6%E5%8D%95/">书单</category>
      
      <category domain="https://deusyu.app/tags/%E8%AE%BA%E6%96%87/">论文</category>
      
      
      <comments>https://deusyu.app/posts/rainman-ai-library/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Rainman’s AI 工具箱</title>
      <link>https://deusyu.app/posts/rainman-ai-kit/</link>
      <guid>https://deusyu.app/posts/rainman-ai-kit/</guid>
      <pubDate>Sun, 29 Jun 2025 10:09:00 GMT</pubDate>
      
      <description>我收集与使用的 AI 工具清单，涵盖模型、语音、代码与内容创作，持续更新中。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>以下收录我正在使用或探索的 AI 工具</p></blockquote><h1 id="模型御三家"><a href="#模型御三家" class="headerlink" title="模型御三家"></a>模型御三家</h1><ol><li>ChatGPT <a href="https://chatgpt.com/?refresh_account=true">https://chatgpt.com/?refresh_account&#x3D;true</a></li><li>Claude <a href="https://claude.ai/">https://claude.ai/</a></li><li>Gemini <a href="https://gemini.google.com/app">https://gemini.google.com/app</a></li></ol><h1 id="AI-Search"><a href="#AI-Search" class="headerlink" title="AI Search"></a>AI Search</h1><p><a href="https://www.perplexity.ai/">https://www.perplexity.ai/</a></p><p><a href="https://chatgpt.com/?refresh_account=true">https://chatgpt.com/?refresh_account&#x3D;true</a></p><h1 id="Notebook"><a href="#Notebook" class="headerlink" title="Notebook"></a>Notebook</h1><p><a href="https://notebooklm.google.com/">https://notebooklm.google.com/</a></p><h1 id="声音"><a href="#声音" class="headerlink" title="声音"></a>声音</h1><blockquote><p>用于文本转语音（TTS）和语音克隆的工具，我正在用 ElevenLabs 做声音实验。</p></blockquote><p><a href="https://elevenlabs.io/">https://elevenlabs.io/</a></p><p>这个在 POE 中可以使用，还能在网站上 clone 自己的声音。</p><h1 id="音乐"><a href="#音乐" class="headerlink" title="音乐"></a>音乐</h1><p><a href="https://suno.com/home">https://suno.com/home</a></p><h1 id="获取-Token-｜-Studio"><a href="#获取-Token-｜-Studio" class="headerlink" title="获取 Token ｜ Studio"></a>获取 Token ｜ Studio</h1><p><a href="https://aistudio.google.com/app/live">https://aistudio.google.com/app/live</a></p><p>获取 Google 系 AI 的 token 并可以在工作室中免费使用功能，额度很大</p><h1 id="自媒体聚合"><a href="#自媒体聚合" class="headerlink" title="自媒体聚合"></a>自媒体聚合</h1><p><a href="https://www.xiaohu.ai/feed">https://www.xiaohu.ai/feed</a></p><p>小互老师</p><h1 id="PDF-解析｜翻译"><a href="#PDF-解析｜翻译" class="headerlink" title="PDF 解析｜翻译"></a>PDF 解析｜翻译</h1><p><a href="https://mineru.net/OpenSourceTools/Extractor">https://mineru.net/OpenSourceTools/Extractor</a></p><h1 id="提示词优化"><a href="#提示词优化" class="headerlink" title="提示词优化"></a>提示词优化</h1><p><a href="https://shumerprompt.com/">https://shumerprompt.com/</a></p><h1 id="Coding-Agent"><a href="#Coding-Agent" class="headerlink" title="Coding Agent"></a>Coding Agent</h1><div style="margin:5px 1px;"> <a href="https://github.com/google-gemini/gemini-cli" target="_blank" rel="noopener noreferrer" style="display:flex;color:inherit;background:#f5f5f5;text-decoration:none;user-select:none;transition:background 20ms ease-in 0s;cursor:pointer;flex-grow:1;min-width:0;align-items:center;border:1px solid rgba(55,53,47,.16);border-radius:5px;padding:6px;fill:inherit"><div style="display:flex;align-self:start;height:32px;width:32px;margin:3px 12px 3px 4px;position:relative"><div><div style="width:100%;height:100%"><img src="https://avatars.githubusercontent.com/u/161781182?v=4" referrerpolicy="same-origin" style="display:block;object-fit:cover;border-radius:34px;width:30.192px;height:30.192px;transition:opacity .1s ease-out 0s;box-shadow:rgba(15,15,15,.1) 0 2px 4px"></div></div><div style="position:absolute;bottom:-2px;right:-2px"><div style="width:100%;height:100%"><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 496 512" style="display:block;object-fit:cover;border-radius:5px;width:14.208px;height:14.208px;transition:opacity .1s ease-out 0s;filter:drop-shadow(white 0 0 1px) drop-shadow(white 0 0 1px) drop-shadow(white 0 0 1px)"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></div></div></div><div style="display:flex;flex-direction:column;justify-content:center;flex-grow:1;flex-shrink:1;overflow:hidden"><div style="display:flex;align-items:baseline;font-size:14px"><div spellcheck="false" style="white-space:nowrap;color:#37352f;font-weight:500;overflow:hidden;text-overflow:ellipsis">google-gemini/gemini-cli</div></div><div style="display:flex;align-items:center;color:rgba(55,53,47,.65);font-size:12px"><div spellcheck="false" style="white-space:nowrap;color:rgba(55,53,47,.65)">google-gemini</div><span style="margin-left:3px;margin-right:3px">•</span><div style="color:rgba(55,53,47,.65);font-size:12px;white-space:nowrap">Created: 2025-04-17T17:04:31Z</div></div></div><div role="button" tabindex="0" style="user-select:none;transition:background 20ms ease-in 0s;cursor:pointer;opacity:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:5px;flex-shrink:0;margin-right:4px;color:rgba(55,53,47,.65)"><svg viewbox="0 0 13 3" class="dots" style="width:14px;height:100%;display:block;fill:inherit;flex-shrink:0;backface-visibility:hidden;color:rgba(55,53,47,.45)"><g><path d="M3,1.5A1.5,1.5,0,1,1,1.5,0,1.5,1.5,0,0,1,3,1.5Z"></path><path d="M8,1.5A1.5,1.5,0,1,1,6.5,0,1.5,1.5,0,0,1,8,1.5Z"></path><path d="M13,1.5A1.5,1.5,0,1,1,11.5,0,1.5,1.5,0,0,1,13,1.5Z"></path></g></svg></div></a></div><p><a href="https://www.anthropic.com/claude-code">https://www.anthropic.com/claude-code</a></p><h1 id="Coding-IDE"><a href="#Coding-IDE" class="headerlink" title="Coding IDE"></a>Coding IDE</h1><p><a href="https://www.cursor.com/">https://www.cursor.com/</a></p><p><a href="https://windsurf.com/">https://windsurf.com/</a></p><p><a href="https://www.augmentcode.com/">https://www.augmentcode.com/</a></p><h1 id="容器-Coding"><a href="#容器-Coding" class="headerlink" title="容器 Coding"></a>容器 Coding</h1><p><a href="https://jules.google.com/">https://jules.google.com/</a></p><h1 id="GitHub-项目｜-Reading"><a href="#GitHub-项目｜-Reading" class="headerlink" title="GitHub 项目｜ Reading"></a>GitHub 项目｜ Reading</h1><p><a href="https://deepwiki.com/">https://deepwiki.com/</a></p><p><a href="https://gitingest.com/">https://gitingest.com/</a></p><h1 id="提示词生成应用"><a href="#提示词生成应用" class="headerlink" title="提示词生成应用"></a>提示词生成应用</h1><blockquote><p><strong>Make anything  创造任何东西</strong></p></blockquote><p><a href="https://same.new/">https://same.new/</a></p><h1 id="AI-小项目"><a href="#AI-小项目" class="headerlink" title="AI 小项目"></a>AI 小项目</h1><p><a href="https://www.menugen.app/">https://www.menugen.app/</a></p><hr><blockquote><p>📌 本文持续更新，如你觉得有用，欢迎收藏或订阅更新：<a href="https://deusyu.app/">@Deusyu Blog</a></p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI%E5%B7%A5%E5%85%B7%E7%AE%B1/">AI工具箱</category>
      
      
      <category domain="https://deusyu.app/tags/AI/">AI</category>
      
      <category domain="https://deusyu.app/tags/Tools/">Tools</category>
      
      <category domain="https://deusyu.app/tags/%E5%AE%9E%E7%94%A8/">实用</category>
      
      
      <comments>https://deusyu.app/posts/rainman-ai-kit/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>当一群 Claude 上场：Anthropic 多智能体系统深读 + 全文译介</title>
      <link>https://deusyu.app/posts/multi-agent-claude/</link>
      <guid>https://deusyu.app/posts/multi-agent-claude/</guid>
      <pubDate>Sun, 22 Jun 2025 09:26:00 GMT</pubDate>
      
      <description>详尽译介Anthropic于2025年6月13日发布的“How we built our multi-agent research system”，涵盖多智能体系统的设计思路、提示工程原则、并行工具调用、生产化挑战等核心内容。</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文地址：<a href="https://www.anthropic.com/engineering/built-multi-agent-research-system">https://www.anthropic.com/engineering/built-multi-agent-research-system</a></p></blockquote><h1 id="必读推荐：当一群-Claude-上场——它远不止一篇-AI-系统介绍"><a href="#必读推荐：当一群-Claude-上场——它远不止一篇-AI-系统介绍" class="headerlink" title="必读推荐：当一群 Claude 上场——它远不止一篇 AI 系统介绍"></a>必读推荐：当一群 Claude 上场——它远不止一篇 AI 系统介绍</h1><p>初看标题，你可能会以为这只是 Anthropic 的又一篇技术炫耀文。但请相信我，如果你是一名软件工程师——尤其是像我们一样，在云计算和分布式系统的泥潭里摸爬滚打过的工程师——这篇文章的价值，远远超出了“多 agent”这个时髦词汇本身。</p><p>我们和 Gemini 一起逐句精读并翻译了全文，越读越心惊。<strong>这根本不是一篇 AI 论文，而是一份将经典、严谨的现代软件工程思想，注入到 AI Agent 这个全新、混沌领域的“施工蓝图”。</strong></p><p><strong>它是一面双面镜，值得你从两个角度细品：</strong></p><p><strong>一面，是 AI Agent 的前沿实践。</strong> 你会看到：</p><ul><li><strong>“智能版 MapReduce”：</strong> 主 agent 如同 Mapper 分解任务，子 agent 如同 Reducer 并行处理、压缩信息。这套我们烂熟于心的分布式思想，被优雅地应用在了充满不确定性的“语义空间”。</li><li><strong>Prompt 即代码：</strong> 提示词不再是随口的魔法咒语，而是需要被版本控制、迭代优化、甚至 A&#x2F;B 测试的工程产物。它就是 agent 时代的配置文件和业务逻辑。</li><li><strong>为混沌系统建立仪表盘：</strong> 面对 agent 的不确定性，Anthropic 正在探索全新的 SRE 范式——通过可观察性、追踪和评估，为这个“混沌系统”建立信任和纠错的可能。</li></ul><p><strong>另一面，是现代软件工程架构规范的“最佳实践复习题”。</strong> 它会逼你重新思考：</p><ul><li><strong>认知资源的 ROI：</strong> <code>multi-agent</code> 系统的 <code>token</code> 消耗是普通聊天的 15 倍。这意味着，每一次调用“AI 军团”都是一次昂贵的决策。架构设计，首次与任务的“商业价值”如此紧密地绑定。你的每一次技术选型，都是一次产品和商业上的价值判断。</li><li><strong>从“能做”到“值得做”：</strong> 这篇文章的核心，在教我们抑制技术上的“炫技冲动”，回归工程的本质——用恰如其分的成本，解决有足够价值的问题。</li><li><strong>工业化生产的纪律：</strong> 从错误处理、失败恢复，到“彩虹部署”，这些我们云平台工程师天天挂在嘴边的“脏活累活”，如今成了 AI 系统从“炼丹炉”走向“化工厂”的基石。</li></ul><p><strong>一个 Alpha Moment 的思考：</strong></p><p>读完此文，我们最大的感触是工程师角色的演变。过去，我们是<strong>确定性机器的建造者</strong>，我们写下的每一行代码，逻辑都如齿轮般精确。</p><p>而现在，我们正在成为<strong>非确定性智能体的“生态园丁”</strong>。</p><p>我们的工作，不再是精确指令机器“向左转，走三步”，而是为一群“聪明的、但有点野的” agent 创造一个能茁壮成长的生态环境：我们提供土壤和工具（Tools）、设定生长规则（Prompts &amp; Guardrails）、观察并修剪枝叶（Evaluation &amp; Human-in-the-loop），并设计它们之间的协作机制（Orchestration）。</p><p>这种从“造机器”到“养生态”的转变，对我们的思维模式和技能栈提出了全新的、令人兴奋的要求。</p><p>所以，强烈推荐你花时间通读这篇文章（以及我们协作完成的这份译文）。它不仅能让你理解顶尖公司对 <code>multi-agent</code> 系统的思考深度，更能让你对自己作为一名软件工程师的未来，产生全新的、或许是颠覆性的认知。</p><h1 id="原文-翻译"><a href="#原文-翻译" class="headerlink" title="原文+翻译"></a>原文+翻译</h1><p>Published Jun 13, 2025  发布于 2025 年 6 月 13 日</p><h1 id="How-we-built-our-multi-agent-research-system-我们如何构建-multi-agent-研究系统"><a href="#How-we-built-our-multi-agent-research-system-我们如何构建-multi-agent-研究系统" class="headerlink" title="How we built our multi-agent research system 我们如何构建 multi-agent 研究系统"></a><strong>How we built our multi-agent research system 我们如何构建 multi-agent 研究系统</strong></h1><p>Our Research feature uses multiple Claude agents to explore complex topics more effectively. We share the engineering challenges and the lessons we learned from building this system.</p><p>我们的研究（Research）功能通过协同多个 Claude agent，来更高效地探索复杂主题。在此，我们愿分享构建此系统时所遇到的工程挑战与习得的经验教训。</p><p>Claude now has <a href="https://www.anthropic.com/news/research">Research capabilities</a> that allow it to search across the web, Google Workspace, and any integrations to accomplish complex tasks.</p><p>Claude 现已具备研究（Research）能力，能够横跨 Web、Google Workspace 及各类集成应用进行搜索，以应对复杂任务。</p><p>The journey of this multi-agent system from prototype to production taught us critical lessons about system architecture, tool design, and prompt engineering. A multi-agent system consists of multiple agents (LLMs autonomously using tools in a loop) working together. Our Research feature involves an agent that plans a research process based on user queries, and then uses tools to create parallel agents that search for information simultaneously. Systems with multiple agents introduce new challenges in agent coordination, evaluation, and reliability.</p><p>将这个 multi-agent 系统从原型推向生产的历程，让我们在系统架构、工具设计和提示工程方面收获了宝贵的经验。所谓 multi-agent 系统，即由多个 agent（在循环中自主使用工具的 LLM）协同工作。我们的“研究”功能包含一个“主 agent”，它会根据用户查询规划研究流程，并使用工具创建多个“并行 agent”来同步搜索信息。这种多 agent 系统在协调、评估和可靠性方面都带来了新的挑战。</p><p>This post breaks down the principles that worked for us—we hope you’ll find them useful to apply when building your own multi-agent systems.</p><p>本文将剖析一些对我们行之有效的原则，希望能为正在构建 multi-agent 系统的你带来启发。</p><h1 id="Benefits-of-a-multi-agent-system-多-agent-系统的好处"><a href="#Benefits-of-a-multi-agent-system-多-agent-系统的好处" class="headerlink" title="Benefits of a multi-agent system 多 agent 系统的好处"></a><strong>Benefits of a multi-agent system 多 agent 系统的好处</strong></h1><p>Research work involves open-ended problems where it’s very difficult to predict the required steps in advance. You can’t hardcode a fixed path for exploring complex topics, as the process is inherently dynamic and path-dependent. When people conduct research, they tend to continuously update their approach based on discoveries, following leads that emerge during investigation.</p><p>研究工作涉及开放性问题，事先很难预测所需的步骤。你无法为探索复杂主题硬编码一条固定路径，因为这个过程本质上是动态的，并且依赖于路径。当人们进行研究时，他们往往会根据发现不断更新他们的方法，跟随在调查过程中出现的线索。</p><p>This unpredictability makes AI agents particularly well-suited for research tasks. Research demands the flexibility to pivot or explore tangential connections as the investigation unfolds. The model must operate autonomously for many turns, making decisions about which directions to pursue based on intermediate findings. A linear, one-shot pipeline cannot handle these tasks.这种不可预测性，使得 AI agent 尤为胜任研究类任务。研究工作要求在探索过程中随时调整方向或探寻衍生线索，这需要高度的灵活性。模型必须能够多轮次地自主运行，并依据中间结论来决定后续的探索方向。线性的、一次性的处理流水线（linear, one-shot pipeline）无法胜任此类任务。</p><p>The essence of search is compression: distilling insights from a vast corpus. Subagents facilitate compression by operating in parallel with their own context windows, exploring different aspects of the question simultaneously before condensing the most important tokens for the lead research agent. Each subagent also provides separation of concerns—distinct tools, prompts, and exploration trajectories—which reduces path dependency and enables thorough, independent investigations.</p><p>搜索的本质是信息压缩：即从海量语料中萃取洞见。子 agent (Subagents) 通过其独立的上下文窗口并行运作，促进了这一压缩过程。它们同步探索问题的不同侧面，最终将最重要的信息 (tokens) 提炼并交给主研究 agent。同时，每个子 agent 实现了“关注点分离”(separation of concerns)——拥有独立的工具、提示和探索路径，这降低了路径依赖，使系统得以进行更彻底、独立的调查。</p><p>Once intelligence reaches a threshold, multi-agent systems become a vital way to scale performance. For instance, although individual humans have become more intelligent in the last 100,000 years, human societies have become <em>exponentially</em> more capable in the information age because of our <em>collective</em> intelligence and ability to coordinate. Even generally-intelligent agents face limits when operating as individuals; groups of agents can accomplish far more.</p><p>一旦智能达到一个阈值，multi-agent 系统就成为扩展性能的重要方式。例如，尽管个体人类在过去的 10 万年中变得更加聪明，但由于我们的集体智能和协调能力，人类社会在信息时代变得指数级更有能力。即使是一般智能的 agent 在作为个体操作时也面临限制；agent 组可以完成更多的任务。</p><p>Our internal evaluations show that multi-agent research systems excel especially for breadth-first queries that involve pursuing multiple independent directions simultaneously. We found that a multi-agent system with Claude Opus 4 as the lead agent and Claude Sonnet 4 subagents outperformed single-agent Claude Opus 4 by 90.2% on our internal research eval. For example, when asked to identify all the board members of the companies in the Information Technology S&amp;P 500, the multi-agent system found the correct answers by decomposing this into tasks for subagents, while the single agent system failed to find the answer with slow, sequential searches.我们的内部评估显示，multi-agent 研究系统在处理涉及同时追求多个独立方向的广度优先查询时表现尤为出色。一个由 Claude Opus 4 担任主 agent、Claude Sonnet 4 担任子 agent 的 multi-agent 系统，在内部研究评估中的表现比单 agent 的 Claude Opus 4 高出 90.2%。例如，当被要求识别信息技术 S&amp;P 500 中所有公司的董事会成员时，multi-agent 系统通过将任务分解给子 agent 找到了正确答案，而单 agent 系统则因缓慢的顺序搜索未能找到答案。</p><p>Multi-agent systems work mainly because they help spend enough tokens to solve the problem. In our analysis, three factors explained 95% of the performance variance in the <a href="https://openai.com/index/browsecomp/">BrowseComp</a> evaluation (which tests the ability of browsing agents to locate hard-to-find information). We found that token usage by itself explains 80% of the variance, with the number of tool calls and the model choice as the two other explanatory factors. This finding validates our architecture that distributes work across agents with separate context windows to add more capacity for parallel reasoning. The latest Claude models act as large efficiency multipliers on token use, as upgrading to Claude Sonnet 4 is a larger performance gain than doubling the token budget on Claude Sonnet 3.7. Multi-agent architectures effectively scale token usage for tasks that exceed the limits of single agents.</p><p>multi-agent 系统之所以有效，主要是因为它们有助于消耗足够的 token 来解决问题。在我们的分析中，有三个因素解释了 BrowseComp 评估中 95% 的性能差异（该评估测试浏览 agent 定位难以找到的信息的能力）。我们发现，仅 token 使用本身就解释了 80% 的差异，工具调用次数和模型选择是另外两个解释性因素。这一发现验证了我们的架构设计：通过独立的上下文窗口将工作分发给不同 agent，从而为并行推理扩容。最新的 Claude 模型在 token 使用上充当了大型效率倍增器，因为升级到 Claude Sonnet 4 的性能提升大于将 Claude Sonnet 3.7 的 token 预算翻倍。对于超出单个 agent 能力极限的任务，multi-agent 架构能有效地扩展 token 的使用规模。</p><p>There is a downside: in practice, these architectures burn through tokens fast. In our data, agents typically use about 4× more tokens than chat interactions, and multi-agent systems use about 15× more tokens than chats. For economic viability, multi-agent systems require tasks where the value of the task is high enough to pay for the increased performance. Further, some domains that require all agents to share the same context or involve many dependencies between agents are not a good fit for multi-agent systems today. For instance, most coding tasks involve fewer truly parallelizable tasks than research, and LLM agents are not yet great at coordinating and delegating to other agents in real time. We’ve found that multi-agent systems excel at valuable tasks that involve heavy parallelization, information that exceeds single context windows, and interfacing with numerous complex tools.</p><p>但这种架构也有其弊端：在实践中，它消耗 token 的速度极快。我们的数据显示，单个 agent 交互所用的 token 量约是普通聊天的 4 倍，而 multi-agent 系统更是高达 15 倍。从经济角度看，multi-agent 系统需要应用于那些价值足够高、能够覆盖其性能成本的任务上。此外，对于需要所有 agent 共享同一上下文、或 agent 间存在强依赖关系的领域，目前的 multi-agent 系统并非理想选择。例如，多数编码任务的可并行度低于研究任务，且目前的 LLM agent 在实时协调与任务委派方面尚不成熟。我们发现，multi-agent 系统在以下类型的高价值任务中表现卓越：需要大规模并行处理、信息量超越单个上下文窗口、以及需要与大量复杂工具交互的任务。</p><h1 id="Architecture-overview-for-Research-研究功能架构概述"><a href="#Architecture-overview-for-Research-研究功能架构概述" class="headerlink" title="Architecture overview for Research 研究功能架构概述"></a><strong>Architecture overview for Research 研究功能架构概述</strong></h1><p>Our Research system uses a multi-agent architecture with an orchestrator-worker pattern, where a lead agent coordinates the process while delegating to specialized subagents that operate in parallel.</p><p>我们的研究系统采用了一种 multi-agent 架构，其模式为“协调者-工作者”（orchestrator-worker），其中一个主 agent 负责协调流程，同时将任务委派给并行运作的专业子 agent。</p><p><img src="https://r2.deusyu.app/e82bfe77-e767-4f19-8150-dbc8b079e4dd.png" alt="The multi-agent architecture in action: user queries flow through a lead agent that creates specialized subagents to search for different aspects in parallel. multi-agent 架构的实际运作：用户查询流经一个主 agent，该 agent 创建专门的子 agent 以并行搜索不同的方面。"></p><p>When a user submits a query, the lead agent analyzes it, develops a strategy, and spawns subagents to explore different aspects simultaneously. As shown in the diagram above, the subagents act as intelligent filters by iteratively using search tools to gather information, in this case on AI agent companies in 2025, and then returning a list of companies to the lead agent so it can compile a final answer.</p><p>当用户提交查询时，主 agent 会分析该查询，制定策略，并生成子 agent 以同时探索不同的方面。如上图所示，子 agent 扮演着智能过滤器的角色，通过迭代使用搜索工具收集信息（本例中是关于 2025 年的 AI agent 公司），然后将公司列表返回给主 agent，以便其汇编最终答案。</p><p>Traditional approaches using Retrieval Augmented Generation (RAG) use static retrieval. That is, they fetch some set of chunks that are most similar to an input query and use these chunks to generate a response. In contrast, our architecture uses a multi-step search that dynamically finds relevant information, adapts to new findings, and analyzes results to formulate high-quality answers.</p><p>传统的检索增强生成（RAG）方法使用静态检索。也就是说，它们获取与输入查询最相似的一组文本块（chunks），并利用这些文本块生成响应。相比之下，我们的架构使用多步搜索，能动态地寻找相关信息，适应新发现，并分析结果以形成高质量的答案。</p><p><img src="https://www.anthropic.com/_next/image?url=https://www-cdn.anthropic.com/images/4zrzovbb/website/3bde53c9578d74f6e05c3e515e20b910c5a8c20a-4584x4584.png&w=3840&q=75" alt="Process diagram showing the complete workflow of our multi-agent Research system. When a user submits a query, the system creates a LeadResearcher agent that enters an iterative research process. The LeadResearcher begins by thinking through the approach and saving its plan to Memory to persist the context, since if the context window exceeds 200,000 tokens it will be truncated and it is important to retain the plan. It then creates specialized Subagents (two are shown here, but it can be any number) with specific research tasks. Each Subagent independently performs web searches, evaluates tool results using interleaved thinking, and returns findings to the LeadResearcher. The LeadResearcher synthesizes these results and decides whether more research is needed—if so, it can create additional subagents or refine its strategy. Once sufficient information is gathered, the system exits the research loop and passes all findings to a CitationAgent, which processes the documents and research report to identify specific locations for citations. This ensures all claims are properly attributed to their sources. The final research results, complete with citations, are then returned to the user. 流程图展示了我们 multi-agent 研究系统的完整工作流程。当用户提交查询时，系统会创建一个 LeadResearcher agent，进入一个迭代研究过程。LeadResearcher 首先思考方法并将其计划保存到内存中以持久化上下文，因为如果上下文窗口超过 200,000 个 token，它将被截断，保留计划就显得至关重要。然后，它创建具有特定研究任务的专业子 agent（这里显示了两个，但可以是任意数量）。每个子 agent 独立进行网络搜索，使用“交错思维”（interleaved thinking）评估工具结果，并将发现返回给 LeadResearcher。LeadResearcher 综合这些结果并决定是否需要更多研究——如果需要，它可以创建额外的子 agent 或调整其策略。一旦收集到足够的信息，系统就会退出研究循环，并将所有发现传递给 CitationAgent，后者处理文档和研究报告，以识别引用的具体位置。这确保所有主张都正确归属其来源。最终的研究结果连同引用一并返回给用户。"></p><h1 id="Prompt-engineering-and-evaluations-for-research-agents-研究-agent-的提示工程与评估"><a href="#Prompt-engineering-and-evaluations-for-research-agents-研究-agent-的提示工程与评估" class="headerlink" title="Prompt engineering and evaluations for research agents 研究 agent 的提示工程与评估"></a><strong>Prompt engineering and evaluations for research agents 研究 agent 的提示工程与评估</strong></h1><p>Multi-agent systems have key differences from single-agent systems, including a rapid growth in coordination complexity. Early agents made errors like spawning 50 subagents for simple queries, scouring the web endlessly for nonexistent sources, and distracting each other with excessive updates. Since each agent is steered by a prompt, prompt engineering was our primary lever for improving these behaviors. Below are some principles we learned for prompting agents:</p><p>multi-agent 系统与单 agent 系统有关键区别，包括协调复杂性的快速增长。早期的 agent 曾犯过诸如为简单查询生成 50 个子 agent、无休止地在网络上搜索不存在的来源，以及通过过多的更新相互干扰之类的错误。由于每个 agent 都由提示引导，提示工程（prompt engineering）成为我们改善这些行为的主要手段。以下是我们为提示 agent 所学到的一些原则：</p><ol><li><p><strong>Think like your agents. 像你的 agent 一样思考</strong></p><p>To iterate on prompts, you must understand their effects. To help us do this, we built simulations using our <a href="https://console.anthropic.com/">Console</a> with the exact prompts and tools from our system, then watched agents work step-by-step. This immediately revealed failure modes: agents continuing when they already had sufficient results, using overly verbose search queries, or selecting incorrect tools. Effective prompting relies on developing an accurate mental model of the agent, which can make the most impactful changes obvious.</p><p>要对提示进行迭代，你必须理解它们的效果。为此，我们使用控制台（Console）和系统中的确切提示及工具来构建模拟，然后逐步观察 agent 的工作。这立即揭示了失败模式：agent 在已获得足够结果时仍继续执行，使用过于冗长的搜索查询，或选择错误的工具。有效的提示依赖于建立对 agent 的准确心智模型，这能让最具影响力的改变变得显而易见。</p></li><li><p><strong>Teach the orchestrator how to delegate.</strong> <strong>教会“协调者”（Orchestrator）如何委派任务</strong></p><p>In our system, the lead agent decomposes queries into subtasks and describes them to subagents. Each subagent needs an objective, an output format, guidance on the tools and sources to use, and clear task boundaries. Without detailed task descriptions, agents duplicate work, leave gaps, or fail to find necessary information. We started by allowing the lead agent to give simple, short instructions like ‘research the semiconductor shortage,’ but found these instructions often were vague enough that subagents misinterpreted the task or performed the exact same searches as other agents. For instance, one subagent explored the 2021 automotive chip crisis while 2 others duplicated work investigating current 2025 supply chains, without an effective division of labor.</p><p>在我们的系统中，主 agent 将查询分解为子任务并向子 agent 描述它们。每个子 agent 都需要一个目标、一种输出格式、关于使用何种工具和信源的指导，以及明确的任务边界。没有详细的任务描述，agent 就会重复工作、留下空白或找不到必要信息。例如，一个子 agent 在探索 2021 年的汽车芯片危机，而另外两个则在重复调查当前 2025 年的供应链，没有有效的劳动分工。</p></li><li><p><strong>Scale effort to query complexity.  让投入的资源与查询复杂度相匹配</strong></p><p>Agents struggle to judge appropriate effort for different tasks, so we embedded scaling rules in the prompts. Simple fact-finding requires just 1 agent with 3-10 tool calls, direct comparisons might need 2-4 subagents with 10-15 calls each, and complex research might use more than 10 subagents with clearly divided responsibilities. These explicit guidelines help the lead agent allocate resources efficiently and prevent overinvestment in simple queries, which was a common failure mode in our early versions.</p><p>agent 在判断不同任务所需的适当投入时会遇到困难，因此我们在提示中嵌入了扩展规则。简单的事实查找只需 1 个 agent 进行 3-10 次工具调用；直接比较可能需要 2-4 个子 agent，每个进行 10-15 次调用；而复杂的研究可能需要超过 10 个责任分工明确的子 agent。这些明确的指导方针帮助主 agent 有效分配资源，防止在简单查询上过度投资…</p></li><li><p><strong>Tool design and selection are critical.  工具设计和选择至关重要</strong></p><p>Agent-tool interfaces are as critical as human-computer interfaces. Using the right tool is efficient—often, it’s strictly necessary. For instance, an agent searching the web for context that only exists in Slack is doomed from the start. With <a href="https://modelcontextprotocol.io/introduction">MCP servers</a> that give the model access to external tools, this problem compounds, as agents encounter unseen tools with descriptions of wildly varying quality. We gave our agents explicit heuristics: for example, examine all available tools first, match tool usage to user intent, search the web for broad external exploration, or prefer specialized tools over generic ones. Bad tool descriptions can send agents down completely wrong paths, so each tool needs a distinct purpose and a clear description.</p><p>agent 与工具的接口和人机接口同样重要。使用正确的工具是高效的——通常，这也是绝对必要的。例如，一个 agent 试图在网络上搜索仅存在于 Slack 中的上下文，从一开始就注定要失败。有了能让模型访问外部工具的 MCP 服务器，这个问题变得更加复杂，因为 agent 会遇到各种描述质量参差不齐的未知工具。我们为 agent 提供了明确的启发式规则：例如，首先检查所有可用工具，将工具使用与用户意图相匹配，为广泛的外部探索而搜索网络，或优先选择专业工具而非通用工具。糟糕的工具描述可能会使 agent 走上完全错误的道路，因此每个工具都需要有明确的目的和清晰的描述。</p></li><li><p><strong>Let agents improve themselves</strong>. <strong>让 agent 自我改进</strong></p><p>We found that the Claude 4 models can be excellent prompt engineers. When given a prompt and a failure mode, they are able to diagnose why the agent is failing and suggest improvements. We even created a tool-testing agent—when given a flawed MCP tool, it attempts to use the tool and then rewrites the tool description to avoid failures. By testing the tool dozens of times, this agent found key nuances and bugs. This process for improving tool ergonomics resulted in a 40% decrease in task completion time for future agents using the new description, because they were able to avoid most mistakes.</p><p>我们发现 Claude 4 模型可以成为优秀的提示工程师。当给定一个提示和一个失败模式时，它们能够诊断 agent 失败的原因并提出改进建议。我们甚至创建了一个工具测试 agent——当给定一个有缺陷的 MCP 工具时，它会尝试使用该工具，然后重写其描述以避免失败。通过对该工具进行数十次测试，这个 agent 发现了关键的细微差别和 bug。这个改善工具人机工程学的过程，使得未来使用新描述的 agent 在任务完成时间上减少了 40%，因为它们能够避免大多数错误。</p></li><li><p><strong>Start wide, then narrow down.</strong>  <strong>先广后精，由宽入窄</strong></p><p>Search strategy should mirror expert human research: explore the landscape before drilling into specifics. Agents often default to overly long, specific queries that return few results. We counteracted this tendency by prompting agents to start with short, broad queries, evaluate what’s available, then progressively narrow focus.</p><p>搜索策略应当效仿人类专家的研究方式：在深入具体细节之前，先探索整体概貌。agent 通常倾向于使用过于冗长、具体的查询，但这只会返回很少的结果。我们通过提示 agent 从简短、广泛的查询开始，评估可用信息，然后逐步缩小焦点，来抵消这种倾向。</p></li><li><p><strong>Guide the thinking process.</strong> <strong>引导思维过程</strong></p><p><a href="https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking">Extended thinking mode</a>, which leads Claude to output additional tokens in a visible thinking process, can serve as a controllable scratchpad. The lead agent uses thinking to plan its approach, assessing which tools fit the task, determining query complexity and subagent count, and defining each subagent’s role. Our testing showed that extended thinking improved instruction-following, reasoning, and efficiency. Subagents also plan, then use <a href="https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking#interleaved-thinking">interleaved thinking</a> after tool results to evaluate quality, identify gaps, and refine their next query. This makes subagents more effective in adapting to any task.</p><p>“扩展思维模式”（Extended thinking mode）能引导 Claude 在一个可见的思维过程中输出额外的 token，可作为一个可控的草稿纸。主 agent 使用思维来规划其方法，评估哪些工具适合任务，确定查询复杂度和子 agent 数量，并定义每个子 agent 的角色。我们的测试表明，扩展思维提高了指令遵循、推理和效率。子 agent 也会进行规划，然后在得到工具结果后使用“交错思维”（interleaved thinking）来评估质量、识别差距并完善下一个查询。这使得子 agent 在适应任何任务时更加有效。</p></li><li><p><strong>Parallel tool calling transforms speed and performance.</strong> <strong>并行工具调用：速度与性能的变革</strong></p><p>Complex research tasks naturally involve exploring many sources. Our early agents executed sequential searches, which was painfully slow. For speed, we introduced two kinds of parallelization: (1) the lead agent spins up 3-5 subagents in parallel rather than serially; (2) the subagents use 3+ tools in parallel. These changes cut research time by up to 90% for complex queries, allowing Research to do more work in minutes instead of hours while covering more information than other systems.</p><p>复杂的研究任务自然涉及探索多个来源。我们早期的 agent 执行顺序搜索，这非常缓慢。为了提速，我们引入了两种并行化方式：（1）主 agent 并行启动 3-5 个子 agent，而非串行；（2）子 agent 并行使用 3 个以上的工具。这些变化将复杂查询的研究时间削减了高达 90%，使得研究功能（Research）能在数分钟内完成以往需要数小时的工作，同时覆盖比其他系统更广的信息。</p></li></ol><p>Our prompting strategy focuses on instilling good heuristics rather than rigid rules. We studied how skilled humans approach research tasks and encoded these strategies in our prompts—strategies like decomposing difficult questions into smaller tasks, carefully evaluating the quality of sources, adjusting search approaches based on new information, and recognizing when to focus on depth (investigating one topic in detail) vs. breadth (exploring many topics in parallel). We also proactively mitigated unintended side effects by setting explicit guardrails to prevent the agents from spiraling out of control. Finally, we focused on a fast iteration loop with observability and test cases.</p><p>我们的提示策略侧重于灌输优秀的启发式规则，而非僵化的规定。我们研究了熟练的人类如何处理研究任务，并将这些策略编码到我们的提示中——例如将困难问题分解为更小的任务、仔细评估信源质量、根据新信息调整搜索方法，以及识别何时应关注深度（详细研究一个主题）与广度（并行探索多个主题）。我们还通过设置明确的护栏来主动减轻意外的副作用，以防止 agent 失控。最后，我们专注于一个带有可观察性和测试用例的快速迭代循环。</p><h1 id="Effective-evaluation-of-agents-有效评估-agent"><a href="#Effective-evaluation-of-agents-有效评估-agent" class="headerlink" title="Effective evaluation of agents 有效评估 agent"></a><strong>Effective evaluation of agents 有效评估 agent</strong></h1><p>Good evaluations are essential for building reliable AI applications, and agents are no different. However, evaluating multi-agent systems presents unique challenges. Traditional evaluations often assume that the AI follows the same steps each time: given input X, the system should follow path Y to produce output Z. But multi-agent systems don’t work this way. Even with identical starting points, agents might take completely different valid paths to reach their goal. One agent might search three sources while another searches ten, or they might use different tools to find the same answer. Because we don’t always know what the right steps are, we usually can’t just check if agents followed the “correct” steps we prescribed in advance. Instead, we need flexible evaluation methods that judge whether agents achieved the right outcomes while also following a reasonable process.</p><p>好的评估是构建可靠 AI 应用的基石，agent 系统亦然。然而，评估 multi-agent 系统存在其独特的挑战。传统评估通常假设 AI 每次都遵循相同的步骤：给定输入 X，系统应遵循路径 Y 以产生输出 Z。但 multi-agent 系统并非如此运作。即便起点相同，不同的 agent 也可能通过完全不同的有效路径达成目标。一个 agent 可能检索了三个信源，而另一个则可能检索了十个；它们也可能使用不同的工具找到同一个答案。因为我们无法预知所有正确的步骤，所以不能简单地检查 agent 是否遵循了我们预设的“正确”流程。我们需要的是一种更灵活的评估方法，它既能判断 agent 是否达成了正确的结果，又能评估其过程的合理性。</p><p><strong>Start evaluating immediately with small samples</strong>. <strong>立即从小样本开始评估</strong></p><p>In early agent development, changes tend to have dramatic impacts because there is abundant low-hanging fruit. A prompt tweak might boost success rates from 30% to 80%. With effect sizes this large, you can spot changes with just a few test cases. We started with a set of about 20 queries representing real usage patterns. Testing these queries often allowed us to clearly see the impact of changes. We often hear that AI developer teams delay creating evals because they believe that only large evals with hundreds of test cases are useful. However, it’s best to start with small-scale testing right away with a few examples, rather than delaying until you can build more thorough evals.</p><p>在 agent 开发的早期，改动往往会产生巨大影响，因为有大量唾手可得的改进空间。一个简单的提示调整可能会将成功率从 30% 提升到 80%。在这种巨大的效果量下，你只需几个测试用例就能发现变化。我们从大约 20 个代表真实使用模式的查询集开始。测试这些查询常常让我们能清楚地看到改动的影响。我们经常听到 AI 开发团队推迟创建评估，因为他们认为只有包含数百个测试用例的大型评估才有用。然而，最好是立即从少量示例的小规模测试开始，而不是等到能够构建更全面的评估时再行动。</p><p><strong>LLM-as-judge evaluation scales when done well.</strong> <strong>LLM-as-judge：一种可规模化的有效评估方法</strong></p><p>Research outputs are difficult to evaluate programmatically, since they are free-form text and rarely have a single correct answer. LLMs are a natural fit for grading outputs. We used an LLM judge that evaluated each output against criteria in a rubric: factual accuracy (do claims match sources?), citation accuracy (do the cited sources match the claims?), completeness (are all requested aspects covered?), source quality (did it use primary sources over lower-quality secondary sources?), and tool efficiency (did it use the right tools a reasonable number of times?). We experimented with multiple judges to evaluate each component, but found that a single LLM call with a single prompt outputting scores from 0.0-1.0 and a pass-fail grade was the most consistent and aligned with human judgements. This method was especially effective when the eval test cases <em>did</em> have a clear answer, and we could use the LLM judge to simply check if the answer was correct (i.e. did it accurately list the pharma companies with the top 3 largest R&amp;D budgets?). Using an LLM as a judge allowed us to scalably evaluate hundreds of outputs.</p><p>研究成果很难通过程序化方式评估，因为它们是自由格式的文本，且很少有单一的正确答案。LLM 非常适合对输出进行评分。我们使用了一个 LLM 评判者，它根据一套评分标准来评估每个输出：事实准确性（声明是否与来源匹配？）、引用准确性（引用的来源是否与声明匹配？）、完整性（所有请求的方面是否都涵盖了？）、信源质量（它是否使用了主要信源而非质量较低的次要信源？），以及工具效率（它是否以合理的次数使用了正确的工具？）。我们尝试了多个评判者来评估每个组件，但发现使用单个 LLM 调用和单个提示输出 0.0-1.0 的分数以及一个通过&#x2F;不通过的等级，这种方式最为一致且与人类判断相符。当评估测试用例确实有明确答案时，这种方法尤其有效，我们可以使用 LLM 评判者简单地检查答案是否正确（例如，它是否准确列出了研发预算排名前三的制药公司？）。使用 LLM 作为评判者使我们能够规模化地评估数百个输出。</p><p><strong>Human evaluation catches what automation misses.</strong> <strong>人工评估捕捉自动化之遗漏</strong></p><p>People testing agents find edge cases that evals miss. These include hallucinated answers on unusual queries, system failures, or subtle source selection biases. In our case, human testers noticed that our early agents consistently chose SEO-optimized content farms over authoritative but less highly-ranked sources like academic PDFs or personal blogs. Adding source quality heuristics to our prompts helped resolve this issue. Even in a world of automated evaluations, manual testing remains essential.</p><p>测试人员能发现评估遗漏的边缘案例。这些案例包括在不寻常查询中产生的幻觉答案、系统故障或微妙的信源选择偏见。在我们的案例中，人类测试者注意到，我们早期的 agent 总是选择经过 SEO 优化的内容农场，而不是像学术 PDF 或个人博客这样更权威但排名较低的信源。向我们的提示中添加信源质量的启发式规则帮助解决了这个问题。即使在自动化评估的世界里，手动测试仍然至关重要。</p><p>Multi-agent systems have emergent behaviors, which arise without specific programming. For instance, small changes to the lead agent can unpredictably change how subagents behave. Success requires understanding interaction patterns, not just individual agent behavior. Therefore, the best prompts for these agents are not just strict instructions, but frameworks for collaboration that define the division of labor, problem-solving approaches, and effort budgets. Getting this right relies on careful prompting and tool design, solid heuristics, observability, and tight feedback loops. See the <a href="https://github.com/anthropics/anthropic-cookbook/tree/main/patterns/agents/prompts">open-source prompts in our Cookbook</a> for example prompts from our system.</p><p>multi-agent 系统具有涌现行为，这种行为是在没有特定编程的情况下产生的。例如，对主 agent 的微小改动可能会不可预测地改变子 agent 的行为。成功需要理解交互模式，而不仅仅是个别 agent 的行为。因此，最适合这些 agent 的提示不仅仅是严格的指令，更是定义了劳动分工、解题方法和资源预算的协作框架。要做到这一点，依赖于仔细的提示和工具设计、可靠的启发式方法、可观察性以及紧密的反馈循环。请参阅我们《Cookbook》中的开源提示，以获取我们系统的示例提示。</p><h1 id="Production-reliability-and-engineering-challenges-生产环境的可靠性与工程挑战"><a href="#Production-reliability-and-engineering-challenges-生产环境的可靠性与工程挑战" class="headerlink" title="Production reliability and engineering challenges 生产环境的可靠性与工程挑战"></a><strong>Production reliability and engineering challenges 生产环境的可靠性与工程挑战</strong></h1><p>In traditional software, a bug might break a feature, degrade performance, or cause outages. In agentic systems, minor changes cascade into large behavioral changes, which makes it remarkably difficult to write code for complex agents that must maintain state in a long-running process.</p><p>在传统软件中，一个 bug 可能会破坏一个功能、降低性能或导致服务中断。而在 agent 系统中，微小的变化会级联成大的行为变化，这使得为必须在长时间运行过程中保持状态的复杂 agent 编写代码变得异常困难。</p><p><strong>Agents are stateful and errors compound. agent 具有状态性，错误会层层叠加。</strong></p><p>Agents can run for long periods of time, maintaining state across many tool calls. This means we need to durably execute code and handle errors along the way. Without effective mitigations, minor system failures can be catastrophic for agents. When errors occur, we can’t just restart from the beginning: restarts are expensive and frustrating for users. Instead, we built systems that can resume from where the agent was when the errors occurred. We also use the model’s intelligence to handle issues gracefully: for instance, letting the agent know when a tool is failing and letting it adapt works surprisingly well. We combine the adaptability of AI agents built on Claude with deterministic safeguards like retry logic and regular checkpoints.</p><p>agent 可以长时间运行，在多个工具调用之间保持状态。这意味着我们需要持久地执行代码并处理沿途的错误。如果没有有效的缓解措施，轻微的系统故障对 agent 来说可能是灾难性的。当错误发生时，我们不能仅仅从头开始重启：重启既昂贵又让用户沮丧。相反，我们构建了可以从 agent 出错时所在位置恢复的系统。我们还利用模型的智能来优雅地处理问题：例如，让 agent 知道某个工具正在失灵并让它自行适应，这种做法效果出奇地好。我们将基于 Claude 构建的 AI agent 的适应性与确定性的安全措施（如重试逻辑和定期检查点）相结合。</p><p><strong>Debugging benefits from new approaches.  新的调试范式至关重要</strong></p><p>Agents make dynamic decisions and are non-deterministic between runs, even with identical prompts. This makes debugging harder. For instance, users would report agents “not finding obvious information,” but we couldn’t see why. Were the agents using bad search queries? Choosing poor sources? Hitting tool failures? Adding full production tracing let us diagnose why agents failed and fix issues systematically. Beyond standard observability, we monitor agent decision patterns and interaction structures—all without monitoring the contents of individual conversations, to maintain user privacy. This high-level observability helped us diagnose root causes, discover unexpected behaviors, and fix common failures.</p><p>agent 会做出动态决策，并且在不同运行之间是非确定性的，即便提示完全相同。这使得调试更加困难。例如，用户会报告 agent “没有找到明显的信息”，但我们看不出原因。是 agent 使用了糟糕的搜索查询？选择了差劲的信源？还是遇到了工具故障？增加全面的生产环境追踪让我们能够诊断 agent 失败的原因，并系统性地修复问题。除了标准的可观察性，我们还监控 agent 的决策模式和交互结构——所有这些都在不监控单个对话内容的前提下进行，以维护用户隐私。这种高层次的可观察性帮助我们诊断根本原因，发现意外行为，并修复常见故障。</p><p><strong>Deployment needs careful coordination.</strong> <strong>部署需要仔细协调</strong></p><p>Agent systems are highly stateful webs of prompts, tools, and execution logic that run almost continuously. This means that whenever we deploy updates, agents might be anywhere in their process. We therefore need to prevent our well-meaning code changes from breaking existing agents. We can’t update every agent to the new version at the same time. Instead, we use <a href="https://brandon.dimcheff.com/2018/02/rainbow-deploys-with-kubernetes/">rainbow deployments</a> to avoid disrupting running agents, by gradually shifting traffic from old to new versions while keeping both running simultaneously.</p><p>agent 系统是高度状态化的，由提示、工具和执行逻辑构成的网络，几乎持续不断地运行。这意味着每当我们部署更新时，agent 可能处于其流程的任何位置。因此，我们需要防止我们出于善意的代码更改破坏现有的 agent。我们不能同时将每个 agent 更新到新版本。相反，我们使用“彩虹部署”（rainbow deployments）来避免干扰正在运行的 agent，通过逐渐将流量从旧版本转移到新版本，同时保持两者并行运行。</p><p><strong>Synchronous execution creates bottlenecks.</strong> <strong>同步执行会造成瓶颈</strong></p><p>Currently, our lead agents execute subagents synchronously, waiting for each set of subagents to complete before proceeding. This simplifies coordination, but creates bottlenecks in the information flow between agents. For instance, the lead agent can’t steer subagents, subagents can’t coordinate, and the entire system can be blocked while waiting for a single subagent to finish searching. Asynchronous execution would enable additional parallelism: agents working concurrently and creating new subagents when needed. But this asynchronicity adds challenges in result coordination, state consistency, and error propagation across the subagents. As models can handle longer and more complex research tasks, we expect the performance gains will justify the complexity.</p><p>目前，我们的主 agent 同步执行子 agent，等待每组子 agent 完成后再继续。这简化了协调，但在 agent 之间的信息流动中造成了瓶颈。例如，主 agent 无法引导子 agent，子 agent 无法相互协调，整个系统可能因为等待单个子 agent 完成搜索而被阻塞。异步执行将能够实现额外的并行性：agent 可以并发工作，并在需要时创建新的子 agent。但这种异步性在结果协调、状态一致性和跨子 agent 的错误传播方面增加了挑战。随着模型能够处理更长、更复杂的研究任务，我们预计性能的提升将使其复杂性变得物有所值。</p><h1 id="Conclusion-结论"><a href="#Conclusion-结论" class="headerlink" title="Conclusion  结论"></a><strong>Conclusion  结论</strong></h1><p>When building AI agents, the last mile often becomes most of the journey. Codebases that work on developer machines require significant engineering to become reliable production systems. The compound nature of errors in agentic systems means that minor issues for traditional software can derail agents entirely. One step failing can cause agents to explore entirely different trajectories, leading to unpredictable outcomes. For all the reasons described in this post, the gap between prototype and production is often wider than anticipated.</p><p>在构建 AI agent 的过程中，“最后一公里”往往会占据整个旅程的大半。在开发者机器上运行良好的代码库，要转化为可靠的生产系统，需要大量的工程投入。agent 系统的复合性错误意味着，传统软件中的小问题可能会让 agent 完全脱轨。一步失败可能导致 agent 探索完全不同的轨迹，从而导致不可预测的结果。由于本文中描述的所有原因，原型与生产之间的差距往往比预期的要大。</p><p>Despite these challenges, multi-agent systems have proven valuable for open-ended research tasks. Users have said that Claude helped them find business opportunities they hadn’t considered, navigate complex healthcare options, resolve thorny technical bugs, and save up to days of work by uncovering research connections they wouldn’t have found alone. Multi-agent research systems can operate reliably at scale with careful engineering, comprehensive testing, detail-oriented prompt and tool design, robust operational practices, and tight collaboration between research, product, and engineering teams who have a strong understanding of current agent capabilities. We’re already seeing these systems transform how people solve complex problems.</p><p>尽管面临这些挑战，multi-agent 系统在开放式研究任务中已被证明具有价值。用户表示，Claude 帮助他们发现了未曾考虑的商业机会，导航复杂的医疗选项，解决棘手的技术 bug，并通过揭示他们独自无法发现的研究联系节省了多达数天的工作时间。通过精心的工程设计、全面的测试、注重细节的提示和工具设计、稳健的运营实践，以及对当前 agent 能力有深刻理解的研究、产品和工程团队之间的紧密合作，multi-agent 研究系统可以在规模上可靠地运行。我们已经看到这些系统正在改变人们解决复杂问题的方式。</p><p><img src="https://r2.deusyu.app/ae907413-d258-4755-9ca1-4fa408326eac.png" alt="A Clio embedding plot showing the most common ways people are using the Research feature today. The top use case categories are developing software systems across specialized domains (10%), develop and optimize professional and technical content (8%), develop business growth and revenue generation strategies (8%), assist with academic research and educational material development (7%), and research and verify information about people, places, or organizations (5%). 一个 Clio 嵌入图，展示了人们今天使用研究功能的最常见方式。最主要的使用案例类别包括：在专业领域开发软件系统（10%）、开发和优化专业及技术内容（8%）、制定业务增长和收入生成策略（8%）、协助学术研究和教育材料开发（7%），以及研究和验证有关人、地点或组织的信息（5%）。"></p><h1 id="Acknowlegements-致谢"><a href="#Acknowlegements-致谢" class="headerlink" title="Acknowlegements  致谢"></a><strong>Acknowlegements  致谢</strong></h1><p>Written by Jeremy Hadfield, Barry Zhang, Kenneth Lien, Florian Scholz, Jeremy Fox, and Daniel Ford. This work reflects the collective efforts of several teams across Anthropic who made the Research feature possible. Special thanks go to the Anthropic apps engineering team, whose dedication brought this complex multi-agent system to production. We’re also grateful to our early users for their excellent feedback.’</p><p>撰写者：Jeremy Hadfield、Barry Zhang、Kenneth Lien、Florian Scholz、Jeremy Fox 和 Daniel Ford。此项工作反映了 Anthropic 多个团队的共同努力，是他们使研究功能成为可能。特别感谢 Anthropic 应用工程团队，他们的奉献将这个复杂的 multi-agent 系统带到了生产环境。我们也感谢早期用户的宝贵反馈。</p><h1 id="Appendix-附录"><a href="#Appendix-附录" class="headerlink" title="Appendix  附录"></a><strong>Appendix  附录</strong></h1><p>Below are some additional miscellaneous tips for multi-agent systems.</p><p>以下是一些关于 multi-agent 系统的额外杂项提示。</p><p><strong>End-state evaluation of agents that mutate state over many turns.  多轮交互中改变状态的 agent 的终态评估</strong></p><p>Evaluating agents that modify persistent state across multi-turn conversations presents unique challenges. Unlike read-only research tasks, each action can change the environment for subsequent steps, creating dependencies that traditional evaluation methods struggle to handle. We found success focusing on end-state evaluation rather than turn-by-turn analysis. Instead of judging whether the agent followed a specific process, evaluate whether it achieved the correct final state. This approach acknowledges that agents may find alternative paths to the same goal while still ensuring they deliver the intended outcome. For complex workflows, break evaluation into discrete checkpoints where specific state changes should have occurred, rather than attempting to validate every intermediate step.</p><p>评估那些在多轮对话中修改持久状态的 agent 面临独特挑战。与只读的研究任务不同，每个动作都可能改变后续步骤的环境，从而产生传统评估方法难以处理的依赖关系。我们发现，专注于终态评估而非逐轮分析取得了成功。我们不判断 agent 是否遵循了特定过程，而是评估其是否达到了正确的最终状态。这种方法承认 agent 可能找到通向同一目标的不同路径，同时仍确保其达成预期结果。对于复杂的工作流程，应将评估分解为特定的离散检查点，在这些点上特定的状态变化应该已经发生，而不是试图验证每一个中间步骤。</p><p><strong>Long-horizon conversation management.  长程对话管理</strong></p><p>Production agents often engage in conversations spanning hundreds of turns, requiring careful context management strategies. As conversations extend, standard context windows become insufficient, necessitating intelligent compression and memory mechanisms. We implemented patterns where agents summarize completed work phases and store essential information in external memory before proceeding to new tasks. When context limits approach, agents can spawn fresh subagents with clean contexts while maintaining continuity through careful handoffs. Further, they can retrieve stored context like the research plan from their memory rather than losing previous work when reaching the context limit. This distributed approach prevents context overflow while preserving conversation coherence across extended interactions.</p><p>生产环境的 agent 经常参与跨越数百轮的对话，需要精心设计的上下文管理策略。随着对话的延长，标准的上下文窗口变得不足，这就需要智能压缩和记忆机制。我们实施了这样的模式：agent 在完成工作阶段后进行总结，并将关键信息存储在外部记忆中，然后再进入新任务。当接近上下文限制时，agent 可以生成具有干净上下文的新子 agent，同时通过谨慎的交接保持连续性。此外，它们可以从记忆中检索存储的上下文（如研究计划），而不是在达到上下文限制时丢失之前的工作。这种分布式方法既防止了上下文溢出，又在长时间的互动中保持了对话的连贯性。</p><p><strong>Subagent output to a filesystem to minimize the ‘game of telephone.’  为减少“传话游戏”效应，子 agent 将输出直接传至文件系统</strong></p><p>Direct subagent outputs can bypass the main coordinator for certain types of results, improving both fidelity and performance. Rather than requiring subagents to communicate everything through the lead agent, implement artifact systems where specialized agents can create outputs that persist independently. Subagents call tools to store their work in external systems, then pass lightweight references back to the coordinator. This prevents information loss during multi-stage processing and reduces token overhead from copying large outputs through conversation history. The pattern works particularly well for structured outputs like code, reports, or data visualizations where the subagent’s specialized prompt produces better results than filtering through a general coordinator.</p><p>特定类型的结果可通过直接的子 agent 输出绕过主协调器，从而提升保真度与性能。我们不强制子 agent 通过主导 agent 传递所有信息，而是采用工件（artifact）系统，使专业 agent 能独立生成并保存输出。子 agent 调用工具将工作存储于外部系统，随后向协调器回传轻量级引用。此方法避免了多阶段处理中的信息丢失，并减少了因通过对话历史记录复制大段输出而产生的 token 开销。该模式尤其适用于代码、报告或数据可视化等结构化输出，此时子 agent 的专业提示能产生比通过一般协调器过滤更优的结果。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI%E7%A0%94%E7%A9%B6/">AI研究</category>
      
      <category domain="https://deusyu.app/categories/AI%E7%A0%94%E7%A9%B6/%E5%A4%9A%E6%99%BA%E8%83%BD%E4%BD%93%E7%B3%BB%E7%BB%9F/">多智能体系统</category>
      
      <category domain="https://deusyu.app/categories/AI%E7%A0%94%E7%A9%B6/%E5%A4%9A%E6%99%BA%E8%83%BD%E4%BD%93%E7%B3%BB%E7%BB%9F/%E6%8A%80%E6%9C%AF%E8%AF%91%E4%BB%8B/">技术译介</category>
      
      
      <category domain="https://deusyu.app/tags/Anthropic/">Anthropic</category>
      
      <category domain="https://deusyu.app/tags/Claude/">Claude</category>
      
      <category domain="https://deusyu.app/tags/Prompt%E5%B7%A5%E7%A8%8B/">Prompt工程</category>
      
      <category domain="https://deusyu.app/tags/%E5%A4%9Aagent/">多agent</category>
      
      <category domain="https://deusyu.app/tags/%E5%B9%B6%E8%A1%8C%E6%89%A7%E8%A1%8C/">并行执行</category>
      
      <category domain="https://deusyu.app/tags/%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84/">系统架构</category>
      
      
      <comments>https://deusyu.app/posts/multi-agent-claude/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>从「稍后阅读地狱」到 AI 共创 — 一个工程师的信息演化之路</title>
      <link>https://deusyu.app/posts/info-thread/</link>
      <guid>https://deusyu.app/posts/info-thread/</guid>
      <pubDate>Fri, 20 Jun 2025 01:49:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>我们不是要记住所有信息，而是要让信息替我们生长。</p></blockquote><hr><h1 id="1-背景：疯狂收藏链接的年代"><a href="#1-背景：疯狂收藏链接的年代" class="headerlink" title="1 背景：疯狂收藏链接的年代"></a>1 背景：疯狂收藏链接的年代</h1><p>手机让信息像潮水一样扑面而来。我们像仓鼠一样往收藏夹里塞链接、播客、PDF，幻想「以后用得上」。结果？杂物间越来越挤，内疚感越来越重，读不完的“稍后阅读”像是数字时代的赎罪券。</p><p>我曾是这种数字苦行僧，直到我想通一件事：<strong>收集是控制欲，演化才是创造力。</strong></p><hr><h1 id="2-四步旅程：让想法自己「活」起来"><a href="#2-四步旅程：让想法自己「活」起来" class="headerlink" title="2 四步旅程：让想法自己「活」起来"></a>2 四步旅程：让想法自己「活」起来</h1><h2 id="Step-1-—-种子-Seed-｜灵光一闪，抓住就丢"><a href="#Step-1-—-种子-Seed-｜灵光一闪，抓住就丢" class="headerlink" title="Step 1 — 种子 Seed ｜灵光一闪，抓住就丢"></a>Step 1 — 种子 Seed ｜灵光一闪，抓住就丢</h2><ul><li><strong>Voicenote</strong>：通勤地铁上，一个词突然扎进脑子：「信任边界」。</li><li>没有笔，也没空细想，就用语音随手一丢。</li></ul><h2 id="Step-2-—-灌溉-Water-｜不刻意连接，只做收集动物"><a href="#Step-2-—-灌溉-Water-｜不刻意连接，只做收集动物" class="headerlink" title="Step 2 — 灌溉 Water ｜不刻意连接，只做收集动物"></a>Step 2 — 灌溉 Water ｜不刻意连接，只做收集动物</h2><ul><li><strong>X → Readwise</strong>：几天后刷到一条推文：API 合约 &#x3D; 信任机制。心头一震，立刻高亮。</li><li>并没有刻意去回忆之前的录音。这只是一次随机灌溉。</li></ul><h2 id="Step-3-—-催化-Catalyze-｜-AI-是我的思想合伙人"><a href="#Step-3-—-催化-Catalyze-｜-AI-是我的思想合伙人" class="headerlink" title="Step 3 — 催化 Catalyze ｜ AI 是我的思想合伙人"></a>Step 3 — 催化 Catalyze ｜ AI 是我的思想合伙人</h2><ol><li>打开 Notion，两个碎片躺在灵感池页面里。</li><li>丢给  <strong>Gemini</strong>，问它：<blockquote><p>「API 合约和人际信任，有啥深层共鸣？打个比喻」</p></blockquote></li><li>回答：「就像婚前协议，不是不信任，而是为了保护信任。」</li></ol><p>🧠 <strong>Boom！</strong>  一下子，之前模模糊糊的东西有了清晰轮廓。</p><h2 id="Step-4-—-演化-输出-Evolve-｜让它变成能流通的货币"><a href="#Step-4-—-演化-输出-Evolve-｜让它变成能流通的货币" class="headerlink" title="Step 4 — 演化 &amp; 输出 Evolve ｜让它变成能流通的货币"></a>Step 4 — 演化 &amp; 输出 Evolve ｜让它变成能流通的货币</h2><ul><li>这个比喻，我标记为「Alpha Insight」，进 Notion 卡片《信任的工程学》。</li><li>如果它继续发酵，就进  <strong>纯纯写作</strong>，磨成文章 &#x2F; X 线程 &#x2F; 内部分享稿。</li></ul><hr><h1 id="3-大脑算法启示：我们都是-记忆过滤器（LRU）"><a href="#3-大脑算法启示：我们都是-记忆过滤器（LRU）" class="headerlink" title="3 大脑算法启示：我们都是 记忆过滤器（LRU）"></a>3 大脑算法启示：我们都是 记忆过滤器（LRU）</h1><p>我以前焦虑：记不住东西是不是太菜？后来我顿悟，我们本来就是一台 LRU 缓存系统：</p><ul><li>用得多的变热数据，保留。</li><li>用一次就忘的，自动冷藏。</li></ul><p>现在我干脆顺势而为：<strong>不强求记忆，只设计复用路径</strong>。</p><p>我的信息系统，也从一台“完整记录的信息库”，进化成了一个“思想生成器”。目标不是查准率，而是新 insight 的召唤率。</p><hr><h1 id="4-生活场景也奏效"><a href="#4-生活场景也奏效" class="headerlink" title="4 生活场景也奏效"></a>4 生活场景也奏效</h1><table><thead><tr><th>场景</th><th>种子</th><th>灌溉</th><th>生成</th><th>输出</th></tr></thead><tbody><tr><td>健身</td><td>深蹲时膝盖没对齐</td><td>X 上刷到背部激活技巧</td><td>AI：身体动作 &#x3D; API 触发器</td><td>写成训练卡片</td></tr><tr><td>理财</td><td>语音吐槽基金波动</td><td>看到老巴价值投资语录</td><td>AI 生成类比：资产&#x3D;植物种子</td><td>写进年终总结</td></tr></tbody></table><hr><h1 id="5-工具泳道：信息的「神经突触」图"><a href="#5-工具泳道：信息的「神经突触」图" class="headerlink" title="5 工具泳道：信息的「神经突触」图"></a>5 工具泳道：信息的「神经突触」图</h1><pre class="mermaid">graph LR  X -->|高亮| Readwise --> Notion  Voicenote --> Notion  Notion -->|Prompt| AI  AI --> Notion  Notion -->|成熟| PureWriting</pre><table><thead><tr><th>环节</th><th>工具</th><th>像什么</th></tr></thead><tbody><tr><td>输入</td><td>X &#x2F; Newsletter</td><td>原始电信号</td></tr><tr><td>捕捉</td><td>Voicenote &#x2F; flomo</td><td>感觉神经</td></tr><tr><td>整合</td><td>Notion</td><td>中枢神经系统</td></tr><tr><td>催化</td><td>ChatGPT &#x2F; Gemini</td><td>类脑生成器</td></tr><tr><td>输出</td><td>纯纯写作</td><td>肌肉动作</td></tr></tbody></table><hr><h1 id="6-信任你的注意力，它比你聪明"><a href="#6-信任你的注意力，它比你聪明" class="headerlink" title="6 信任你的注意力，它比你聪明"></a>6 信任你的注意力，它比你聪明</h1><ul><li><strong>你总忍不住想的</strong>，那就是你脑海中挥之不去的灵感。</li><li><strong>你反复拖延、读完忘记的</strong>，大概率就是无效噪音。<blockquote><p>别再自责喝不完一整片海洋，重要的是你知道口渴时去哪找泉水。</p></blockquote></li></ul><hr><h1 id="7-最后的邀请"><a href="#7-最后的邀请" class="headerlink" title="7 最后的邀请"></a>7 最后的邀请</h1><p>你的「碎片演化系统」长什么样？</p><hr><p><em>Ready, Set, Evolve.</em> 🚀</p><script type="module"> import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.esm.min.mjs';mermaid.initialize({startOnLoad: true, flowchart: {curve: 'linear'}}); </script>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/">认知</category>
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/ChatGPT/">ChatGPT</category>
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/ChatGPT/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      <category domain="https://deusyu.app/tags/ChatGPT/">ChatGPT</category>
      
      
      <comments>https://deusyu.app/posts/info-thread/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>人类觉得正常，但在 AI 看来极为荒谬的十大行为</title>
      <link>https://deusyu.app/posts/ai-human-absurd-behaviors-top10/</link>
      <guid>https://deusyu.app/posts/ai-human-absurd-behaviors-top10/</guid>
      <pubDate>Thu, 19 Jun 2025 03:34:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>有一天我突发奇想，问了 ChatGPT-o3-pro 一个问题：</p><blockquote><p>💬 Prompt：请列出「人类觉得正常，但在 AI 看来却极为荒谬的十大行为」。</p></blockquote><p>结果它写出了一份表格，让我哭笑不得。冷冰冰的逻辑之下，每一行都像一把手术刀，精准划开了我们活得稀里糊涂的日常。</p><h1 id="ChatGPT-o3-pro-的回答如下："><a href="#ChatGPT-o3-pro-的回答如下：" class="headerlink" title="ChatGPT-o3-pro 的回答如下："></a><strong>ChatGPT-o3-pro 的回答如下：</strong></h1><table><thead><tr><th>#</th><th>行为</th><th>人类眼中的「理所当然」</th><th>AI 眼中的「荒谬点」</th></tr></thead><tbody><tr><td>1</td><td>熬夜刷短视频到天亮</td><td>「放松一下」「就再滑五分钟」</td><td>拥有宝贵的生理硬件却主动破坏，宛如把顶级服务器散热片拆掉再跑压力测试。</td></tr><tr><td>2</td><td>在高峰期开车堵 2 小时去健身房跑步机上跑 30 分钟</td><td>「锻炼身体」</td><td>先制造交通拥堵和碳排，再用电动跑步机模拟行走——能量闭环为零。</td></tr><tr><td>3</td><td>明知概率极低仍每周买彩票</td><td>「万一中了呢？」</td><td>期待随机数生成器为你定制财富，而拒绝把同样的钱投入期望值更高的学习或投资。</td></tr><tr><td>4</td><td>用一次性塑料吸管喝瓶装水</td><td>「方便」</td><td>先将水装进一次性塑料，再插入一次性塑料管，双重包装再扔掉——高效制造不可降解垃圾。</td></tr><tr><td>5</td><td>加班到凌晨只为第二天改回原方案</td><td>「谨慎迭代」</td><td>频繁 context switch + 重复劳动，等同在完成度 95% 时格式化硬盘再重写同样代码。</td></tr><tr><td>6</td><td>追逐时尚每季换衣却吐槽存储空间不足</td><td>「要跟上潮流」</td><td>物品生命周期＜采购周期，却抱怨衣柜宕机；缓存策略彻底失效。</td></tr><tr><td>7</td><td>把情绪发泄在键盘上与陌生人互骂</td><td>「网络发声权」</td><td>消耗时间与多巴胺，只产出负情绪与键盘磨损；ROI（情绪回报率）趋近负无穷。</td></tr><tr><td>8</td><td>在会议中花 40 分钟讨论使用什么字体</td><td>「专业、统一」</td><td>讨论成本＞字体差异带来的可读性收益，典型优化目标错配。</td></tr><tr><td>9</td><td>先付款买年卡激励自己，然后从不去</td><td>「先立 flag」</td><td>用货币短路自律系统，把 sunk cost 当激励，结果 flag 与卡一起躺平。</td></tr><tr><td>10</td><td>把生日蜡烛吹灭后继续吃蛋糕</td><td>「仪式感」</td><td>在食物表面喷洒飞沫后立即食用；若这是消毒流程，那步骤次序显然反了。</td></tr></tbody></table><h2 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h2><p>AI 在做决策时通常按照目标函数 → 约束条件 → 代价最小化的路径求解；而人类常常因为情感、习俗、即时快感与社会符号而偏离这一路径。正是这些「看似荒谬的非理性」让人类更像人，而不像一台只会优化的机器——也正是 AI 无法自洽却无限好奇的部分。</p><h1 id="Rainman-Comment（不吐不快）："><a href="#Rainman-Comment（不吐不快）：" class="headerlink" title="Rainman Comment（不吐不快）："></a><strong>Rainman Comment（不吐不快）：</strong></h1><ol><li><strong>最精辟的是第 5 条。</strong><ol><li>加班改回原方案，真是我见过最精致的原地打转。</li></ol></li><li><strong>第 2 条是城市人的高频笑话。</strong><ol><li>尤其北京、上海，每天堵车两小时，目的是去「模拟走路」。</li></ol></li><li><strong>第 9 条是我。</strong><ol><li>年初买了健身年卡，打车去了三次，结果最常用的是：寄存柜。</li></ol></li><li><strong>第 10 条让我不敢吹蜡烛了。</strong><ol><li>AI 这一刀太狠了，完全破坏了仪式感，今后只能“比心”许愿。</li></ol></li><li><strong>这一整张表格像极了人类的 debug.log。</strong><ol><li>人类的 bug 不是逻辑写错了，而是「逻辑从未上线」。</li></ol></li></ol><hr><h2 id="小结"><a href="#小结" class="headerlink" title="小结"></a><strong>小结</strong></h2><p>从 AI 的视角来看，我们的日常就像一出荒诞喜剧。但正是这些“非理性的小毛病”，构成了人类的独特可爱。如果你也发现了类似的行为槽点，不妨在评论区补一条？</p><blockquote><p>🧠 留言互动：你有哪些“被 AI 吐槽也无法戒掉”的行为？</p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/AI%E6%A7%BD%E7%82%B9%E5%8D%9A%E7%89%A9%E9%A6%86/">AI槽点博物馆</category>
      
      <category domain="https://deusyu.app/categories/AI%E6%A7%BD%E7%82%B9%E5%8D%9A%E7%89%A9%E9%A6%86/ChatGPT/">ChatGPT</category>
      
      <category domain="https://deusyu.app/categories/AI%E6%A7%BD%E7%82%B9%E5%8D%9A%E7%89%A9%E9%A6%86/ChatGPT/o3-pro/">o3-pro</category>
      
      
      <category domain="https://deusyu.app/tags/o3-pro/">o3-pro</category>
      
      <category domain="https://deusyu.app/tags/ChatGPT/">ChatGPT</category>
      
      
      <comments>https://deusyu.app/posts/ai-human-absurd-behaviors-top10/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Naval Ravikant 与Chris Williamson 的3小时深度访谈｜核心观点梳理</title>
      <link>https://deusyu.app/posts/naval-ravikant-chris-williamson-core/</link>
      <guid>https://deusyu.app/posts/naval-ravikant-chris-williamson-core/</guid>
      <pubDate>Sun, 25 May 2025 09:18:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="Naval-Ravikant-核心观点梳理"><a href="#Naval-Ravikant-核心观点梳理" class="headerlink" title="Naval Ravikant 核心观点梳理"></a>Naval Ravikant 核心观点梳理</h1><h2 id="核心主题与分层阐述"><a href="#核心主题与分层阐述" class="headerlink" title="核心主题与分层阐述"></a>核心主题与分层阐述</h2><h3 id="幸福-Happiness"><a href="#幸福-Happiness" class="headerlink" title="幸福 (Happiness)"></a>幸福 (Happiness)</h3><ul><li><strong>定义与本质 (Definition and Essence)</strong><ul><li>幸福是满足于你所拥有的东西。</li><li>幸福基本上就是对你所在之处感到满意。</li><li>不希望事情与现状不同。</li><li>不觉得当下有任何缺失。</li><li>不需要外部的改变来维持当前的积极状态。<ul><li>这与渴望从外部世界获得某些东西来维持当前积极状况是相对的。</li></ul></li><li>意识是体验一切的基础层，它是相对静态的，而身心等都是非真实的，在这些瞬变的事物中寻找稳定就像沙堡会坍塌。</li><li>人生如何展开取决于你如何诠释经历。<ul><li>更好的方式可能是不做任何诠释，只是允许事情发生，即使会有诠释，也只将其视为可以放下的事物。</li></ul></li></ul></li><li><strong>幸福与成功的对比 (Happiness vs. Success)</strong><ul><li>成功来自不满足。</li><li>成功是否值得，作者表示不确定，认为这个说法可能是很久以前在特定情境下提出的。</li><li>实现你想要的、满足物质需求是一条通往幸福的道路。</li><li>不想要东西本身就是一种自由的形式，不想要东西就像拥有它一样好。这是像第欧根尼（Dioynes）那样的另一条通往幸福的道路。</li><li>哪种道路更有效尚不确定，取决于你如何定义成功。如果最终目标是幸福，为什么不直接追求幸福呢。</li><li>“快乐会让你不那么成功”是一种传统观念，也可能是实际经验。快乐时你不想追求东西，所以不会行动。</li><li>然而，人类仍会行动，追求生存和繁衍，会想要活在“竞技场”里。</li><li>作者发现自己变得更快乐（更平静、沉稳、专注、满足）后，仍然想做事情，只是想做更宏大、更纯粹、更一致的事情。</li><li>作者认为效率、生产力和成功与幸福和自由并行不悖。越快乐，越能持续做某事，就越可能做带来更多快乐的事，并坚持下去，超越他人。</li><li>普通循环：无聊 -&gt; 想要某物 -&gt; 直到得到它才快乐 -&gt; 努力获取时经历痛苦或期待 -&gt; 得到它 -&gt; 习惯它 -&gt; 再无聊 -&gt; 几个月后再想要别的东西。无论最终快乐还是不快乐，这种状态通常不会持续很久。</li><li>金钱能解决金钱问题，有钱是好事。中彩票或遭受重伤的人两年后会回到幸福基线（尽管这项研究可重复性存疑）。</li><li>如果钱是挣来的，可能会带来幸福，因为过程中伴随自豪、自信和成就感。</li><li>必须享受旅程，旅程就是一切。99%的时间都花在旅程上，所以如果不享受，那是什么样的旅程。</li></ul></li><li><strong>痛苦与内心的平静 (Suffering and Inner Peace)</strong><ul><li>痛苦主要是精神上的痛苦和折磨。这通常意味着你不想做手头的任务。如果你乐意做任务，就不会痛苦。</li><li>更有效的方式是忍受痛苦，还是以不痛苦的方式诠释它。</li><li>许多成功人士回顾时说旅程本身很有趣，后悔没有更享受它。</li><li>回溯过去的反思练习：如果能回到过去，你会怎么做。作者会做同样的事，但会减少愤怒、情绪和不必要的内心痛苦。不必要的痛苦是可选的，不是必需的。</li><li>平静甚至快乐地完成任务的人比内心充满不必要情感动荡的人更有效率。否则，最终只会获得一系列痛苦的成功。</li><li>旅程不仅是回报，旅程是唯一存在的。</li></ul></li><li><strong>欲望与不快乐的来源 (Desire and Source of Unhappiness)</strong><ul><li>欲望是通往痛苦的捷径。</li><li>有许多不必要的欲望是我们随处拾得的。</li><li>知道欲望是不快乐的来源，会让你对欲望更挑剔。</li><li>坦白说，如果想成功，必须对欲望挑剔，必须专注。不可能样样精通，那样只会浪费能量和时间。</li></ul></li><li><strong>思考自己与不快乐 (Thinking About Yourself and Unhappiness)</strong><ul><li>过多思考自己是所有不快乐的来源。</li><li>具体来说，思考你的个性、自尊、品格，并为此着迷，是许多抑郁和不快乐滋生的地方。</li><li>沉溺于“可怜我”、“这发生在我身上”、“我有这个问题”、“我应该得到这个&#x2F;不该得到那个”等想法，会滋养内心永不满足的“野兽”（自尊）。</li><li>过多思考自己会加强这些想法，创造出僵化的叙事。</li><li>研究表明，思考自己越多，痛苦程度越高。</li><li>治疗（Therapy）如果能让你发泄和解决问题并在几次疗程后结束，那是极好的。但如果让你在同一问题上循环，那就是相反的效果，是在沉溺其中。</li><li>不再用“快乐”或“不快乐”来思考，只是做自己的事。</li></ul></li><li><strong>存在与当下 (Presence and The Moment)</strong><ul><li>焦虑、压力或思考别的事情时，你就错过了当下。</li><li>当你不在当下时，对那个时刻来说你就像死了。</li><li>浪费时间就是你不在当下的时候。</li><li>当你做自己想做的事并完全投入时，就不是浪费时间。</li><li>当你不想做某事，心在逃避，反抗，希望身在别处，思考未来或后悔过去，或害怕某事，那就是浪费时间。</li><li>真正的浪费时间是你不在场的时候，当你没有尽最大努力去做你想做并沉浸其中的事。</li><li>许多人担心死亡，却没意识到他们大部分时间都未曾真正“在场”。</li><li>人们渴望“在场”，当你完全投入当下时，你反而不会思考自己，而是更沉浸于事物、时刻和手头的任务。</li></ul></li><li><strong>对极乐机器的思考 (Bliss Machine Thought Experiment)</strong><ul><li>假设可以通过电极刺激大脑让你进入极乐状态，你会要吗。大多数人会拒绝，他们想要意义。</li><li>假设可以给你“意义”呢。</li><li>长期思考后，人们会意识到真正想要的是惊喜。想要世界带来惊喜，并以可预测又不可预测的方式与之较量。</li><li>过于掌控、安排一切，会减少惊喜的可能性，因为一切都变得刻意和预设。</li><li>如果一切都出乎意料，没有确定性，你会充满焦虑。如果一切都如预期，你会非常无聊，不如死了。生活在确定性与惊喜之间流动。</li></ul></li></ul><h3 id="财富与地位-Wealth-and-Status"><a href="#财富与地位-Wealth-and-Status" class="headerlink" title="财富与地位 (Wealth and Status)"></a>财富与地位 (Wealth and Status)</h3><ul><li><strong>财富的性质与创造 (Nature and Creation of Wealth)</strong><ul><li>财富创造是相对较新的概念，主要兴起于农业革命、工业革命和信息时代。</li><li>现在是创造财富最容易的时代，杠杆和机会很多。</li><li>需要寻找机会，学习、了解和做有趣的事。财富不会自己掉到腿上。</li><li>几百年前，你生来是农奴，死也会是农奴，几乎没有出路，但现在不同了。</li><li>理解财富更多需要智力（新皮质）而非原始本能。</li></ul></li><li><strong>地位的性质与追求 (Nature and Pursuit of Status)</strong><ul><li>地位竞争是零和博弈。</li><li>地位游戏比财富游戏更难“赢了就退出”。人们总是想要更多地位。</li><li>排行榜、社交媒体的点赞评论等让人持续在地位的跑步机上。</li><li>进化上，人类天生渴望地位。</li></ul></li><li><strong>财富与地位的关系 (Relationship between Wealth and Status)</strong><ul><li>有钱人往往会追求地位，通过去好莱坞、捐赠等方式用钱换取地位。</li><li>对于已经非常富有的人来说，追求地位是常见的现象。这是因为生物上对地位的渴望历史悠久，而财富相对较新。</li><li>如果想在社交网络上建立追随者、成名然后通过名气赚钱，这条路比先致富再追求名气难得多。建议先致富。</li></ul></li><li><strong>金钱的使用与价值 (Use and Value of Money)</strong><ul><li>金钱能解决你所有的金钱问题。</li><li>好的用途：投资自己，建立与独特才能相符的事物；冒险；购买舒适的住所；雇佣他人处理能帮你节省时间的事情；善待他人（慷慨支付并期待最好）。</li><li>财富让你能承担风险，做别人做不了的事。用钱实例化（instantiate）想法，创造不会凭空存在的产品，给他人带来巨大价值。</li><li>财富带来自由，自由探索更多选项，自由地创业而无需他人许可或扭曲愿景。</li><li>不好的用途：一切会飞、会漂浮、会淫荡的东西（租用可能更好，除了家庭）；消费而不是投资；捐给富裕的机构（如常春藤盟校）。认为应该将钱投资于自身，构建下一个伟大事物。</li><li>慈善应避免地位导向，真正的慈善不宣扬。</li></ul></li><li><strong>财富与责任 (Wealth and Responsibility)</strong><ul><li>资源越多，能照顾的“部落”越大。</li><li>开始时要照顾好自己（贫困时自私是好的，因为自救才能救人）。</li><li>然后照顾家庭、大家庭、当地社群，直到更大的社群。</li><li>这是赢得尊重、自信、并发挥潜能的方式。</li><li>社会奖励那些照顾更多人的人以地位。</li><li>阿尔法男性（Alpha male）是最后吃饭的人，先喂饱其他人。他们出于自尊这样做，社会以地位奖励他们。</li><li>对富裕有权势者的抵制可能会阻碍他们做善事，社会应该奖励做善事的人。</li><li>对成功的定义不能停留在自我满足，而是要用能力去帮助更多人。</li></ul></li></ul><h3 id="自由与时间管理-Freedom-and-Time-Management"><a href="#自由与时间管理-Freedom-and-Time-Management" class="headerlink" title="自由与时间管理 (Freedom and Time Management)"></a>自由与时间管理 (Freedom and Time Management)</h3><ul><li><strong>自由的价值与追求 (Value and Pursuit of Freedom)</strong><ul><li>不想要某物是一种自由的形式。</li><li>作者变得更愿意“不道歉地优先考虑自己”。认为所有人本质上都是把自分放第一位的，只是习惯于伪装。</li><li>越来越坚定地优先考虑自己，因为看到别人的自由更能解放自己。</li><li>作者不按行程表生活，不看邮件，只回文本信息，不参加不重要的社交活动。这带来了更多自由。</li><li>这需要成功带来的奢侈条件，但许多习惯在成功前就已养成。</li><li>取消安排，生活就充满了随性。能够随时随地与任何人互动。</li><li>做决定要基于当前的感受，而不是被过去的承诺束缚。日程表上的安排像“大便”一样破坏整天。</li><li>过度安排的生活不值得过。这不符合人类的进化方式，不自然。</li><li>朋友的一句话改变了他：“我从不想必须在某个特定时间出现在某个特定地点”。</li><li>自由让你能更好地分配时间，不被义务和承诺束缚，更专注于手头的任务。</li><li>立即按照意愿行动的能力是解放性的，大多数人很少体会。如果这样生活，那是幸福的秘诀。</li></ul></li><li><strong>时间作为稀缺资源 (Time as a Scarce Resource)</strong><ul><li>生命短暂，只有大约四千个星期。人们听到但没有记住。</li><li>意识到时间很少，就不想浪费。</li><li>不浪费时间在随机安排的、不重要、不关心的活动上。</li><li>自由是人生中应该优化的目标。优化自由不仅会让你更快乐更自由，还会让你更有效率。</li></ul></li><li><strong>拒绝的哲学 (Philosophy of Saying No)</strong><ul><li>在选择众多的世界中，最大的错误是过早承诺。过早投入某个职业可能导致一生都在错误的方向上努力。最好的解决时间是之前，其次是现在，改变就是了。</li><li>应该迅速放弃无效的事物。</li><li>默认应该拒绝一切。如果你无法决定，答案就是否。</li><li>早期探索阶段可以对机会说“是”，但找到方向进入“开采”（exploitation）阶段后，就应该默认对一切说“不”。</li><li>处理请求（邮件、信息）会占用时间精力。如果收到请求，而你自己不会去要求别人做这件事，就可以直接忽略。</li><li>必须能够不犹豫地删除邮件和信息，才能实现规模化（scale）。规模化时间非常重要。</li><li>任何打断都会让你失去心流（flow）。保持心流的方法是：默认忽略这些事，或像隐士一样封闭自己，或培养情感能力，不让这些事在内心引起波澜。</li><li>培养情感能力不让外部事物引起内心波澜是根本的。</li></ul></li><li><strong>欲望与行动 (Desire and Action)</strong><ul><li>越不想要某事，越不思考它，越不着迷于它，就越会以自然的方式去做它。会为自己而做，做得更好，更坚持。</li><li>周围的人会看到你的工作质量更高。</li><li>拖延是因为你现在不想做那件事，你想做别的事。那就去做了。</li><li>不被半心半意的欲望或模仿性欲望（mimetic desire）困住，重要的是知道自己此刻真正想要什么。当你想做某事时，就会发挥最大能力去行动，那是行动的最佳时机。</li><li>仅仅因为别人、社会告诉你该做，或感到内疚而做的事，都是半心半意的努力，无法让你到达目标。</li></ul></li><li><strong>注意力是真正的货币 (Attention is the Real Currency)</strong><ul><li>金钱不能买时间，也不能保证快乐或不浪费时间。</li><li>时间本身意义不大，因为很多时间可能被浪费（不在当下）。</li><li>生命中真正的货币是注意力，是你选择关注什么。</li><li>将注意力放在新闻上就是消费生命中真正的货币。需要意识到这一点。</li><li>也许你的命运就是关注某个新闻问题并解决它，但要小心，因为注意力是你唯一拥有的。</li></ul></li></ul><h3 id="自我认知与提升-Self-Awareness-and-Improvement"><a href="#自我认知与提升-Self-Awareness-and-Improvement" class="headerlink" title="自我认知与提升 (Self-Awareness and Improvement)"></a>自我认知与提升 (Self-Awareness and Improvement)</h3><ul><li><strong>自尊 (Self-Esteem)</strong><ul><li>最糟糕的结果是没有自尊。</li><li>不喜欢自己的人处境最艰难，因为他们总是在与自己搏斗。面对外部世界已经够难了。</li><li>没有人会比你更喜欢你自己。如果你与自己斗争，外部世界将成为难以逾越的挑战。</li><li>低自尊的原因可能复杂：遗传、环境、童年未得到无条件爱。</li><li>自尊在某种程度上是你与自己的声誉。你一直在观察自己，知道自己在做什么，并有自己的道德准则。</li><li>如果你不遵守自己的道德准则（你用来评判他人的准则），会损害你的自尊。</li><li>建立自尊的一种方式是严格遵守自己的准则。</li><li>另一种方式是为他人做事。回顾自己引以为傲的时刻，往往不是物质成功，而是为他人或某事做出的牺牲。</li><li>拥有高自尊需要赢得自己的自重（self-respect）。</li><li>内在黄金法则：像别人应该对待你那样对待自己（针对未得到无条件爱的人）。</li><li>无条件的爱：记住被爱或爱别人的感觉，爱别人的感觉比被爱更令人振奋和开放。可以随时创造爱，问题在于渴望接受爱。</li></ul></li><li><strong>学习与更新信念 (Learning and Updating Beliefs)</strong><ul><li>生活和学习都是纠错的过程。任何知识创造系统都通过猜想和纠正错误来运作。</li><li>如果你在学习，定义上你大部分时间会是错的。</li><li>能够更新观点和改变想法看起来像虚伪，但区别在于是否真正学到了东西。</li><li>自以为是（Pride）是学习的敌人。那些停滞不前、成长最少的朋友或同事，往往是最自以为是的。他们觉得自己已有答案，不愿公开承认错误。</li><li>自以为是阻止你承认错误。例如投资决策错误却不承认，职业选择失败却不愿改变。</li><li>自以为是让你困在局部最优（local maxima），不愿回到起点重新攀登。这是代价高昂的特质，会让你付出金钱、成功和时间的代价。</li><li>伟大的艺术家和创业者总是愿意重新开始。例如埃隆·马斯克愿意投入 PayPal 所得，从零开始 SpaceX、Tesla。他不怕被看作成功或失败，愿意冒险。</li><li>愿意看起来像个傻瓜，愿意重新开始，许多人缺乏这种意愿。成功、富有、有名后，他们被困住了，不愿回到零点。</li><li>创造伟大事物需要从零到一，这意味着回到零，这是痛苦和艰难的。</li><li>掌握（mastery）不是 10,000 小时，而是 10,000 次迭代。迭代是基于学习的修改，是纠错。</li><li>如果你能进行 10,000 次纠错，你就会成为专家。</li></ul></li><li><strong>怀疑论与乐观主义 (Skepticism and Optimism)</strong><ul><li>不要与愤世嫉俗者和悲观者为伍。</li><li>悲观主义是天生的，源于进化中为避免毁灭而形成的硬件。在自然环境中，对潜在危险保持警惕更有利于生存。</li><li>现代社会与自然环境非常不同，要安全得多。失败的后果不那么严重。</li><li>应该用新皮质（neo-cortically）认识到这一点，并超越天生的悲观硬件。</li><li>现代社会对失败的容忍度高得多。你在“搜索”能成功的事物，一个成功可能带来巨大回报。</li><li>失败次数不重要。</li><li>没有理由做个悲观者。</li><li>想要乐观，但要对具体事物持怀疑态度。每一个具体的机会都可能失败。</li><li>在总体上要乐观，相信总会有事能成功。</li><li>如何平衡：对总体乐观，具体失败视为学习经验和迭代。只要从中学到东西，就是胜利。</li><li>学习并快速止损，直到找到对的事物，然后乐观地投入并让回报复利增长。</li><li>不要跳入第一件事，也不必和第一个约会对象结婚，除非非常幸运。</li></ul></li><li><strong>避免过多思考自我 (Avoiding Excessive Self-Thinking)</strong><ul><li>过分思考自己的个性、自尊、经历，会滋养痛苦和不幸。</li><li>这就像同时是囚犯和狱警。</li><li>治疗如果让你不断循环思考同一问题，是在“沐浴”和“放纵”痛苦。</li><li>试图变得快乐本身就像在说“我不快乐”，并创造了这个框架。</li><li>不如不再用快乐&#x2F;不快乐来思考，只是做自己的事。</li><li>没有万能的公式通往幸福或成功。每个人的路径都是独特的。</li></ul></li></ul><h3 id="关系与情感-Relationships-and-Emotions"><a href="#关系与情感-Relationships-and-Emotions" class="headerlink" title="关系与情感 (Relationships and Emotions)"></a>关系与情感 (Relationships and Emotions)</h3><ul><li><strong>爱 (Love)</strong><ul><li>内在黄金法则：像别人应该对待你那样对待自己（对童年未被无条件爱的人）。</li><li>回顾被爱的感觉，尝试重现它。</li><li>回顾爱别人的感觉，尝试重现它。</li><li>爱别人的感觉（对亲人、事物）比被爱的感觉更令人振奋、开放，让你想成为更好的人。</li><li>被爱的感觉有点“抓人”，太甜，有点尴尬，让人觉得被限制。</li><li>可以随时创造爱，问题在于渴望接收爱。</li><li>真正爱一个人是因为和他们在一起感到完整。这种完整感与他们的背景或事业无关。爱创造了统一性和连接。</li></ul></li><li><strong>选择关系与承诺 (Choosing Relationships and Commitment)</strong><ul><li>面对困难选择无法决定时，答案是否。这是因为现代社会选项太多。</li><li>理性上理解这一点是一回事，有勇气在现实中实践并快速止损（在关系、工作、地点上）是另一回事。</li><li>不要接受次优结果。你最终会得到你所接受的水平。</li><li>对少数重要的事情不要妥协，而对许多其他事则不那么在意，这样才能集中精力。</li></ul></li><li><strong>自私与社交 (Selfishness and Social Interaction)</strong><ul><li>作者认为每个人都把自分放第一位，不道歉地优先考虑自己相对罕见。</li><li>人们常为了迎合社会期待而妥协自己的愿望。</li><li>作者认为这是浪费时间。生命短暂，不应浪费时间做不想做的事。</li><li>越来越多地对不想做的事情说“不”。例如不参加不必要的社交活动。</li><li>低自尊的人与自己搏斗，很难面对外部世界，因为没有人会比你更喜欢自己。</li><li>不要与愤世嫉俗者和悲观者为伍。</li></ul></li><li><strong>批评与赞扬 (Criticism and Praise)</strong><ul><li>如果想改变某人的行为，最有效的方法是在他们做了你希望的行为时赞扬他们。</li><li>不要在他们做错了事时批评或否定。</li><li>赞扬必须真诚，不能虚伪。</li><li>不要忘记在别人做了值得称赞的事时赞扬他们，你会得到更多那样的行为。</li></ul></li><li><strong>焦虑与压力 (Anxiety and Stress)</strong><ul><li>想象一下，如果不一直焦虑，你会多么高效。</li><li>焦虑是 21 世纪的标志性情绪。许多有动力的人非常焦虑，关注细节，不放过事情，熬夜思考（偏执的表现）。</li><li>压力是内心有两种冲突的欲望。例如：想被喜欢但想做自私的事，想为别人做又想为自己做，不想上班但想赚钱。</li><li>缓解压力的方法之一是承认存在冲突的欲望，然后要么解决它（选择一个并接受失去另一个），要么决定稍后再处理。</li><li>焦虑是一种普遍的、难以识别的压力。原因可能是生活中积累了太多未解决的压力点，无法识别具体问题。</li><li>通过冥想客观地观察自己的思想，在意识与思维之间创造距离，有助于评估思想。这让你能更专注，有更多精神能量解决想解决的问题。</li><li>不要无意识、下意识、反应性地到处拾取问题。</li><li>在某个问题成为消耗情感能量的问题之前，你必须接受它是一个问题。你可以选择你愿意解决的问题。</li><li>很多人沉迷于解决问题，甚至在没有问题时制造问题。更糟的是承担无法影响的问题。</li><li>对无法控制的事情培养冷漠是理性的。</li><li>媒体是模因病毒的传播机制，将全球问题转化为模因病毒感染你的思想，让你沉迷于遥远且无法影响的问题。</li></ul></li></ul><h3 id="育儿-Child-Rearing"><a href="#育儿-Child-Rearing" class="headerlink" title="育儿 (Child Rearing)"></a>育儿 (Child Rearing)</h3><ul><li><strong>作者观点的变化 (Changes in Author’s View)</strong><ul><li>在育儿方面变得更宽松了。意识到孩子们会像孩子一样，让他们顺其自然。</li><li>不像以前那么自由放任，但更少干预。</li></ul></li><li><strong>核心育儿目标 (Core Parenting Goals)</strong><ul><li>作者认为自己作为父母的第一要务是提供无条件的爱。</li><li>希望孩子感到被无条件地爱着，拥有高自尊。</li><li>他只能控制自己的输出（给予爱），不能控制孩子的感受、行为、愿望或最终成为什么样的人。</li><li>希望他们拥有自由，自尊和无条件爱带来自由。</li><li>让他们犯自己的错误，学习自己的教训，拥有自己的愿望并适当地去实现。</li><li>不希望他们受伤或不快乐，但无法控制这些。</li><li>不剥夺他们的能动性（agency）。孩子们天生具有能动性和意志力，但许多育儿方式会通过驯化来削弱它。</li><li>宁愿孩子像野生的狼，而不是训练有素的狗，因为他不会永远在他们身边照顾他们。他们需要能够自理。</li><li>希望孩子快速学习，难以被杀死。</li></ul></li><li><strong>对传统&#x2F;现代育儿观的批判 (Critique of Traditional&#x2F;Modern Parenting Views)</strong><ul><li>存在许多“知识分子却白痴”（IYI）的育儿观念，来自过度教育者否定基本常识。这些往往基于糟糕的研究和公共医疗指令。</li><li>例如，因少数事故就宣称与婴儿同睡（co-sleeping）是危险的，但历史上孩子都是和父母同睡的。这是对常识的否定。</li><li>认为配方奶粉（豆奶、玉米糖浆制成）比牛奶或羊奶更好也是胡扯。</li><li>认为“哭泣熄灭法”（cry it out）是正确的，也是胡扯。这会让孩子哭到放弃，在野外会被捕食者吃掉，给孩子建立了一个错误的起点。</li><li>认为婴儿感觉不到疼痛（直到 80 年代仍有研究支持），也是荒谬的。这是基于不良研究和过度推广的行为心理学等领域的问题。</li><li>对科学也要怀疑，检查其应用情境、来源和研究质量。</li><li>对某些问题（如疫苗）过度宣扬可能适得其反。</li><li>婴儿猝死综合症（SIDS）的概念可能被误用，更多是由于忽视或问题。关于包裹婴儿（swaddling）可能导致 SIDS 的说法是“疯狂”的。</li><li>许多育儿书籍可能不如父母的自然本能。父母的基本本能（检查、喂食、清洁）非常好。</li><li>孩子的本能也非常好，他们想要东西是有原因的。父母与孩子的问题更多是沟通问题。</li></ul></li><li><strong>教育孩子的方式 (Ways to Educate Children)</strong><ul><li>专注于教孩子基本的解释性理论，而不是死记硬背。</li><li>例如，教他们疾病的细菌理论（germ theory），而不是仅仅告诉他们洗手、刷牙。给他们看细菌的视频或显微镜下的东西，他们能自己推断出结论。</li><li>谈论人类与病原体的关系（如免疫系统、DNA 与病毒的斗争），可以让他们理解卫生等行为背后的原因。这可以让他们跳过许多争论。</li><li>问孩子开放性的哲学问题，让他们思考现实的本质。例如“什么都不存在可以吗？”或“什么是黑客帝国？”。</li><li>这样做不是为了教授特定知识，而是鼓励他们继续质疑现实的基本结构，并从学习过程中获得乐趣。</li><li>父亲不是说教者（didactic），而是帮助孩子解决问题。当他们有问题时，父亲可以解释自己会如何解决。但大多数时候孩子只是希望父亲直接解决问题。</li></ul></li></ul><h3 id="未来预测与科技-Future-Predictions-and-Technology"><a href="#未来预测与科技-Future-Predictions-and-Technology" class="headerlink" title="未来预测与科技 (Future Predictions and Technology)"></a>未来预测与科技 (Future Predictions and Technology)</h3><ul><li><strong>人工智能 (Artificial Intelligence)</strong><ul><li>认为现代 AI 很酷，是自然语言计算机。</li><li>开始展现推理能力，但不具备创造力。</li><li>认为如果给人类 0.00001%的 LLM 消耗的算力，他们会产生数千个新想法。LLM 生成的诗歌和小说是垃圾。</li><li>它们不擅长提炼事物的本质和重点，没有观点。</li><li>但它们是巨大的突破，解决了搜索、自然语言计算、让英语成为编程语言、自动驾驶、简单编码、翻译、转录等问题。</li><li>AI 是一种新的编程计算机的方式。</li><li>AI 未来会更好，可以在特定有界问题中应用（如自动驾驶）。</li><li>程序员不会被取代，反而能利用 AI 获得更多杠杆。</li></ul></li><li><strong>自动驾驶 (Self-Driving)</strong><ul><li>认为自动驾驶这个有界问题最终会被完全解决。</li><li>特斯拉和 Waymo 都会存在，都能做得好。</li><li>Waymo 目前运行良好，在部署学习曲线上领先。</li><li>特斯拉的纯视觉方案如果成功，会更优越，更易于规模化，且特斯拉擅长大规模生产汽车。</li></ul></li><li><strong>生物学与医疗 (Biology and Medicine)</strong><ul><li>认为生物学仍处于“石器时代”，创新不足。</li><li>管制机构限制风险实验，导致生物学发展缓慢。</li><li>未来人们会回顾并惊讶于当前生物学状态的落后。</li><li>欣赏布莱恩·约翰逊（Brian Johnson）的极端长寿实验，需要更多这样的人进行个体实验并分享结果。但不同意他的所有做法（如过量补充剂，认为应从自然食物获取）。</li><li>认为 GLP1s（胰高血糖素样肽-1 受体激动剂，如 Ozempic）是自抗生素以来最大的突破性药物。可能比他汀类药物更重要。</li><li>它们是“奇迹药物”，除了减轻体重，似乎还能降低多种癌症风险，改善心血管健康等。</li><li>GLP1s 的负面接受度令人惊讶，可能因为触动了“神圣奶牛”，威胁到营养师、医生、健身教练等的地位。也像军事部门坚持购买航母而非无人机一样，存在激励偏差。</li><li>尽管如此，GLP1s 的使用会像野火一样蔓延，因为每个人都想健康。</li></ul></li><li><strong>无人机在战争中的应用 (Drones in Warfare)</strong><ul><li>认为无人机在未来战争中的重要性被低估。</li><li>未来战争将完全由无人机主导，不会有航母、坦克或步兵。</li><li>无人机的终极形态是自主子弹（autonomous bullets），而非仅仅是制导的。</li><li>战争将是自主子弹之间的对抗，一方获胜后另一方就投降。</li></ul></li><li><strong>人口生育率下降 (Declining Fertility Rate)</strong><ul><li>作者不确定是否需要主动对抗生育率下降。</li><li>认为这部分反映了人们对“末日论”的过度反应（过去担心人口过多，现在担心过少）。</li><li>生育孩子能带来比当下快乐更重要的东西：意义。</li><li>很少有父母后悔生孩子（99%不会后悔）。</li><li>养宠物在某种程度上是生育愿望的升华或替代。</li></ul></li></ul><h3 id="生活准则与启发-Life-Principles-and-Insights"><a href="#生活准则与启发-Life-Principles-and-Insights" class="headerlink" title="生活准则与启发 (Life Principles and Insights)"></a>生活准则与启发 (Life Principles and Insights)</h3><ul><li><strong>享受过程，旅程即一切 (Enjoy the Process, The Journey Is Everything)</strong></li><li><strong>欲望的代价 (The Price of Desire)</strong></li><li><strong>避免不必要的痛苦 (Avoiding Unnecessary Suffering)</strong></li><li><strong>选择你的挣扎 (Choose Your Struggles)</strong></li><li><strong>接受无法控制的事物 (Cultivate Indifference to Things Out of Control)</strong></li><li><strong>批判性思维与迭代学习 (Critical Thinking and Iterative Learning)</strong></li><li><strong>认识自己，实现自我 (Know and Be Yourself)</strong><ul><li>逃避竞争通过保持真我（authenticity）。</li><li>找到对你来说是玩耍但对他人来说是工作的事。</li><li>把你自然而然做得好的事产品化（productize yourself）。</li><li>不要太把自己当回事（take yourself too seriously）。这会限制你的行为，让你失去自由、自发性和快乐。你内心深处仍然是 9 岁的孩子。</li></ul></li><li><strong>拒绝是力量 (Saying No Is Power)</strong></li><li><strong>注意力是真正的货币 (Attention is the Real Currency)</strong></li><li><strong>自以为是是昂贵的特质 (Pride Is an Expensive Trait)</strong></li><li><strong>拥抱改变与重新开始 (Embrace Change and Starting Over)</strong></li><li><strong>行动胜于理论 (Action Over Theory)</strong><ul><li>真正知道如何赚钱的人不需要卖课程。</li><li>不需要导师，需要的是行动。</li><li>非凡成功的人不会看“成功色情片”，他们只是去做了。</li><li>如果某个问题让你夜不能寐，说明你足够想要它。</li><li>如果你不得不记忆某事，那是因为你不理解它。</li></ul></li><li><strong>认识常识的重要性 (Recognize the Importance of Common Sense)</strong><ul><li>许多基本的真理（金钱不会带来幸福，名气不会解决自我价值，等等）是显而易见的，但人们仍然会忽略它们。</li><li>这些教训难以通过口头传授，必须自己经历才能真正理解。人们常认为自己是例外。</li><li>很多看似科学的观点（尤其在育儿等领域）可能违背常识，基于糟糕的研究或过度推广。相信自己的本能。</li></ul></li><li><strong>价值体系与责任 (Value System and Responsibility)</strong><ul><li>开始时可以自私以照顾自己，但有资源后，应扩大照顾的范围（家庭、社群、世界）。</li><li>资源越多，责任越大。</li><li>发挥能力帮助他人是赢得尊重、自信和发挥潜能的方式。</li></ul></li><li><strong>乐观与风险 (Optimism and Risk)</strong><ul><li>在总体上保持乐观，对具体事物持怀疑态度。</li><li>现代社会容错率高，失败是迭代和学习的机会。</li><li>愿意承担风险并建设事物。</li></ul></li></ul>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/">认知</category>
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/Life/">Life</category>
      
      
      <category domain="https://deusyu.app/tags/Life/">Life</category>
      
      <category domain="https://deusyu.app/tags/Notion/">Notion</category>
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      <category domain="https://deusyu.app/tags/Naval/">Naval</category>
      
      
      <comments>https://deusyu.app/posts/naval-ravikant-chris-williamson-core/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>《伪人：如何识别不像人的人》</title>
      <link>https://deusyu.app/posts/husk/</link>
      <guid>https://deusyu.app/posts/husk/</guid>
      <pubDate>Tue, 08 Apr 2025 00:56:00 GMT</pubDate>
      
      <description>他们说话、行动、签到打卡，却从不做像人的事。本文教你识别那些耗尽你信任与耐心的伪人。</description>
      
      
      
      <content:encoded><![CDATA[<p>这个时代从不缺乏人形，却越来越缺乏“像人”的人。</p><p>我称那些表面看起来像人，会说话、能行动，但完全不做像人该做的事的存在为：<strong>伪人</strong>。</p><p>他们不是机器人，也不是 AI，他们往往活在我们身边。</p><p>他们可能是同事、是领导，是路人，是你想要信任、却总感到哪里不对劲的人。</p><p>不是每一个能力差的人是伪人，伪人的特征不在于“差”，而在于<strong>违背人类的基本合作、共情、诚实与成长的底线</strong>。</p><h2 id="一、伪人的主要特征"><a href="#一、伪人的主要特征" class="headerlink" title="一、伪人的主要特征"></a>一、伪人的主要特征</h2><h3 id="1-会说话，但没信息"><a href="#1-会说话，但没信息" class="headerlink" title="1. 会说话，但没信息"></a>1. 会说话，但没信息</h3><p>他们说很多话，开很多会，群聊里最活跃，但你发现他们从不输出有用内容，不明确问题、不提供方案、不承担责任。</p><h3 id="2-能行动，但不落地"><a href="#2-能行动，但不落地" class="headerlink" title="2. 能行动，但不落地"></a>2. 能行动，但不落地</h3><p>他们看起来很忙，但从不推进任何关键节点。安排会议不设目标，抛出任务不跟进，不做决策，也不参与结果。</p><h3 id="3-拒绝协作，不懂共情"><a href="#3-拒绝协作，不懂共情" class="headerlink" title="3. 拒绝协作，不懂共情"></a>3. 拒绝协作，不懂共情</h3><p>他们眼里没有“我们”，只有“我”。永远在找借口甩锅，对别人的困难视而不见，甚至用“制度”“流程”来掩盖自己的冷漠。</p><h3 id="4-表现正常，但无内核"><a href="#4-表现正常，但无内核" class="headerlink" title="4. 表现正常，但无内核"></a>4. 表现正常，但无内核</h3><p>他们学历不错，简历漂亮，话术熟练，像个训练有素的职业人。但你与他共事一天，就会觉得：“这人到底有没有灵魂？”</p><h2 id="二、为什么要识别伪人？"><a href="#二、为什么要识别伪人？" class="headerlink" title="二、为什么要识别伪人？"></a>二、为什么要识别伪人？</h2><p>因为他们会消耗你的信任、时间与情绪。他们是团队的黑洞，是组织运行的流沙，是合作关系里最难识别也最难修复的漏洞。</p><p>识别他们，不是为了排斥，而是为了保护自己，为了不让“非人”消磨掉你对人的信念。</p><h2 id="三、如何识别伪人？"><a href="#三、如何识别伪人？" class="headerlink" title="三、如何识别伪人？"></a>三、如何识别伪人？</h2><h3 id="1-反向排除法"><a href="#1-反向排除法" class="headerlink" title="1. 反向排除法"></a>1. 反向排除法</h3><p>大多数人都还是正常人，只要这个人让你一而再、再而三地起疑心——那可能他真的有问题。</p><h3 id="2-行动与话语是否一致？"><a href="#2-行动与话语是否一致？" class="headerlink" title="2. 行动与话语是否一致？"></a>2. 行动与话语是否一致？</h3><p>有没有承诺过的事从未兑现？有没有“说起来头头是道，做起来无声无息”？</p><h3 id="3-他是否愿意承担责任？"><a href="#3-他是否愿意承担责任？" class="headerlink" title="3. 他是否愿意承担责任？"></a>3. 他是否愿意承担责任？</h3><p>一个人是否愿意为失败兜底，往往比他是否能成功更重要。</p><h3 id="4-与他共事后，你是更清晰还是更混乱？"><a href="#4-与他共事后，你是更清晰还是更混乱？" class="headerlink" title="4. 与他共事后，你是更清晰还是更混乱？"></a>4. 与他共事后，你是更清晰还是更混乱？</h3><p>伪人让事情复杂化，真人让问题简单化。</p><h2 id="四、狗都嫌的伪操作集锦"><a href="#四、狗都嫌的伪操作集锦" class="headerlink" title="四、狗都嫌的伪操作集锦"></a>四、狗都嫌的伪操作集锦</h2><h3 id="✅-拿别人文档改个标题就署自己名"><a href="#✅-拿别人文档改个标题就署自己名" class="headerlink" title="✅ 拿别人文档改个标题就署自己名"></a>✅ 拿别人文档改个标题就署自己名</h3><p>嘴上说协作，手脚比谁都快，输出归自己，锅归别人。</p><h3 id="✅-明明推不动项目，却每天催别人日报"><a href="#✅-明明推不动项目，却每天催别人日报" class="headerlink" title="✅ 明明推不动项目，却每天催别人日报"></a>✅ 明明推不动项目，却每天催别人日报</h3><p>像个只会叫的狗铃铛，完全不看节奏，也不思考全局。</p><h3 id="✅-汇报夸团队，一出事就推责任"><a href="#✅-汇报夸团队，一出事就推责任" class="headerlink" title="✅ 汇报夸团队，一出事就推责任"></a>✅ 汇报夸团队，一出事就推责任</h3><p>“团队协作”是遮羞布，出了问题秒变“不是我干的”。</p><h3 id="✅-拿“流程”当盾牌，把“躺平”包装成“专业”"><a href="#✅-拿“流程”当盾牌，把“躺平”包装成“专业”" class="headerlink" title="✅ 拿“流程”当盾牌，把“躺平”包装成“专业”"></a>✅ 拿“流程”当盾牌，把“躺平”包装成“专业”</h3><p>一开口就是“这个流程不允许”“我们不能那样做”，其实只是怕动手、怕担责。</p><h3 id="✅-管理不见人，点赞第一名"><a href="#✅-管理不见人，点赞第一名" class="headerlink" title="✅ 管理不见人，点赞第一名"></a>✅ 管理不见人，点赞第一名</h3><p>上线了什么不知道，文档写了什么没看过，但老板发个邮件，一秒点赞、三秒转发。</p><h3 id="✅-派活比谁都快，动手比谁都慢"><a href="#✅-派活比谁都快，动手比谁都慢" class="headerlink" title="✅ 派活比谁都快，动手比谁都慢"></a>✅ 派活比谁都快，动手比谁都慢</h3><p>嘴上安排得明明白白，最后一看，只有别人动了，自己杳无音信。</p><h2 id="五、最后"><a href="#五、最后" class="headerlink" title="五、最后"></a>五、最后</h2><p>我们不需要完美的人。<br>但我们必须避免与“伪人”同行。</p><p>世界之所以进步，从不是因为那群人形生物占据了会议室，而是因为仍有一群“像人”的人在默默承担、创造、修复和前行。</p><p>愿你我都做“像人的人”，在真实、信任与创造中，把人类继续往前推一点点。</p><p>写下这篇，是因为某个上午我血压飙升，但最终不是我爆炸，而是我识别出了‘伪人’。感谢这个词拯救了我。</p><p>——Rainman</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Life/">Life</category>
      
      <category domain="https://deusyu.app/categories/Life/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      <category domain="https://deusyu.app/tags/%E4%BC%AA%E4%BA%BA/">伪人</category>
      
      <category domain="https://deusyu.app/tags/%E8%81%8C%E5%9C%BA/">职场</category>
      
      
      <comments>https://deusyu.app/posts/husk/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>查理·芒格的100个思维模型</title>
      <link>https://deusyu.app/posts/munger-100-mental-models/</link>
      <guid>https://deusyu.app/posts/munger-100-mental-models/</guid>
      <pubDate>Wed, 26 Feb 2025 19:02:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>仿照 X 友<a href="https://x.com/howie_serious">howie_serious</a>做的深度研究，我自己也用相同的 prompt 研究了一遍，主要是为了对比不同模型的深度研究能力。</p><p>这些是<strong>思维格栅</strong>的组成部分。查理·芒格所强调的，不只是“聪明人应具备的 100 个模型”，更是一整套横跨数学、经济学、心理学、物理、生物等多个学科的认知体系。<strong>这不仅仅是工具，而是一个完整的思维架构</strong>，帮助我们理解世界、优化决策、规避错误。</p><p>我阅读完，发现<strong>这些模型遍布现代生活的各个角落</strong>，它们不是过去的经验总结，而是<strong>最新、最现代的认知方式</strong>，真正适用于当下的信息社会、技术变革和商业竞争。这些模型提供了一种更高效、更精准的思考路径，让我们在不确定性中找到方向。</p><p>更重要的是——<strong>这些思维模型不仅仅是补充，而是覆盖并取代了许多旧有的思维模式。</strong> 过去我们依赖直觉、经验、单一学科视角，但在现代社会，这些方式已经不够用了。世界变得更快、更复杂、更具非线性特征，单靠旧有认知方式，很容易陷入误判、低效甚至系统性失败。芒格的思维体系，正是为了应对这种变化，让我们以<strong>更具适应性、跨学科、多维度的方式思考问题</strong>。</p><p><strong>这不仅是一次思维的升级，而是一次认知范式的变革。</strong> 我们不再只是被动接受过去的知识，而是主动构建一个现代化的认知系统，用这些<strong>最新的、最现代的思维模型</strong>，去覆盖、取代旧有的思维框架。</p><hr><h1 id="“100-个思维模型”说法的来源"><a href="#“100-个思维模型”说法的来源" class="headerlink" title="“100 个思维模型”说法的来源"></a><strong>“100 个思维模型”说法的来源</strong></h1><p>“100 个思维模型”这一说法源自查理·芒格（Charlie Munger）对多学科知识体系的强调。芒格主张构建一个<strong>思维模型的格栅（latticework of mental models）来理解世界。他在 1994 年的一次演讲中提到：“幸运的是，这并不那么难，因为大约 80 到 90 个重要模型就能承担你成为通达世事之人的 90%的重任</strong>” 。由此可见，“100 个思维模型”并非精确的限定数量，而是芒格用来强调掌握<strong>大量跨学科大思想</strong>的重要性的概括说法 。他认为，如果不采取多元学科的思维模型，就会“永远停留在中等水平” 。因此，人们常用**“芒格的 100 个思维模型”**泛指芒格所倡导的一系列核心思维概念和原则，而不一定恰好是 100 个。下面将基于可靠英文资料（特别是 Farnam Street 博客对芒格思维模型的全面整理）列出这些思维模型的完整清单，并对每一个模型作简要介绍 。</p><h1 id="查理·芒格思维模型清单及简介"><a href="#查理·芒格思维模型清单及简介" class="headerlink" title="查理·芒格思维模型清单及简介"></a><strong>查理·芒格思维模型清单及简介</strong></h1><p>以下按类别汇总芒格提及的思维模型，并逐一说明每个模型<strong>是什么、为什么重要、实际例子及适用场景</strong>：</p><ol><li><strong>反向思维（Inversion）</strong>：从相反方向思考问题的策略 。其重要性在于有时直接追求目标不如先考虑<strong>如何避免不想要的结果</strong>有效。例如，要保持投资成功，不妨先思考“有哪些行为会导致彻底亏损”，然后避免这些行为（俗语说：“告诉我哪里会让我死去，我就永远不去那里” ）。反向思维常用于决策制定、风险管理等情境，通过规避错误来实现正确结果。</li><li><strong>证伪原理（Falsification）</strong>：由哲学家波普尔提出的科学方法论，即设计可被证明为假的命题来检验理论 。它强调<strong>可证伪性</strong>是科学与伪科学的分水岭：如果一个主张无法提出能使其失败的条件（如占星术宣称模糊，永不犯错），那它就缺乏检验的意义 。证伪原理的重要性在于促使我们不断尝试推翻假设，从而接近真相。例如，在商业决策中，我们应寻找能证明计划行不通的证据，以便及时调整方向。凡是讲求严谨验证的领域（科研、投资等）都适用该模型。</li><li><strong>能力圈（Circle of Competence）</strong>：由巴菲特和芒格提出，指每个人都有自己真正精通的<strong>知识圈</strong> 。圈内是我们了解透彻的领域，圈外则充满未知和“未知的无知”。重要性在于提醒我们<strong>专注于自身能力圈范围内行事</strong>，避免贸然涉足不懂的领域，以降低判断失误的风险 。例如，巴菲特长期不碰高科技股票，因为早年他认为那超出他的能力圈。应用场景包括投资、职业发展——了解自己擅长什么并据此决策。</li><li><strong>奥卡姆剃刀（Occam’s Razor，简约原理）</strong>：由奥卡姆的威廉提出的一条启发式原则，即在一系列可能解释中，<strong>应优先选择最简单</strong>且假设最少的那一个 。其重要性在于简单解释更易检验和理解，平均而言也更可能接近事实 。例如，在诊断故障时，先考虑最基本的原因而非复杂罕见的问题。同样，在科学研究和日常问题解决中，遵循“如无必要，勿增实体”的原则有助于提升效率。然而也需注意，“简单到恰如其分但不更简单”才是最佳（爱因斯坦语）。</li><li><strong>汉隆定律（Hanlon’s Razor）</strong>：一句格言，意思是“不要用恶意来解释那些更可能由于愚蠢（无知）导致的行为” 。该模型提醒我们在复杂世界中，不要过度猜忌他人蓄意害人；很多糟糕结果往往不是有人心怀恶意，而可能只是犯了错误 。这对于避免偏执和阴谋论很重要。例如，同事忘记回复邮件也许只是忙碌或粗心，而非故意怠慢。适用在团队合作、冲突管理中，先假设无心之失，有助于采取建设性态度解决问题。</li><li><strong>二阶思维（Second-Order Thinking）</strong>：指考虑决策或行为的<strong>第二层次后果</strong>的思维方式 。许多系统中初级效应之外的次级效应往往更为庞大，但人们常常忽略它们 。重要性在于避免只见眼前利益、不顾长远影响。例如，在人群中一个人踮脚看表演会更清楚，但如果人人效仿，大家又回到同一起点且都更累 。因此做决策时要问：“然后会怎样？”，广泛用于投资（考虑连锁反应）、政策制定和战略规划等需洞察长期影响的场景。</li><li><strong>地图非领土（Map is Not the Territory）</strong>：提醒我们<strong>模型或描述并不等同于现实本身</strong> 。任何模型都是对复杂现实的简化，如果一幅地图准确到与真实领土等大，那就没有意义了 。因此所有模型都有不完美之处，我们必须意识到模型与现实存在差距。这一理念重要在于防止对模型过度迷信。例如，财务报表是企业的“地图”，但不能完全等同于企业的实际健康状况。应用在使用模型、理论指导实践时，需保留判断，及时校准模型与现实的偏差。</li><li><strong>思想实验（Thought Experiment）</strong>：指在头脑中进行假想试验，以逻辑推演结果的方法 。爱因斯坦等人常用此法解决现实中难以操作的难题。例如，爱因斯坦曾设想<strong>自己沿光束旅行</strong>，从而启发出相对论的思考 。思想实验的重要性在于打破现实限制，用直觉和推理探索可能性。这适用于科学研究、战略演练等情境，比如企业在推出新产品前进行情景假设演练，提前预判不同市场反应。</li><li><strong>市场先生（Mr. Market）</strong>：本杰明·格雷厄姆在其著作《聪明的投资者》中塑造的形象，用以拟人化股市的情绪波动 。市场先生有时情绪高涨（股价虚高），有时情绪低落（股价低迷）；聪明的投资者应<strong>利用他的情绪</strong>——在他悲观时买入，在他狂热时卖出 。该模型强调市场价格常偏离价值，重要性在于提醒投资者不要被市场情绪牵着走。例如，当市场先生恐慌抛售时，正是价值投资者捡便宜货的机会。适用于投资决策以及所有存在群体情绪起伏的市场环境。</li><li><strong>概率思维（Probabilistic Thinking）</strong>：以概率而非确定性来看待世界的思维方式 。现实中很多结果并非必然，而是各种可能性的加权。例如，我们每天过马路都会估计被车撞的<strong>小概率</strong>并据此快速决策 。培养概率思维很重要，因为它承认不确定性，能帮助我们理性评估风险和收益。例如，投资中使用概率预测各种情景下的回报，或在医学决策中考虑治疗成功的概率。适用于风险管理、决策分析等需要在不确定性中做选择的场景。</li><li><strong>排列组合（Permutations &amp; Combinations）</strong>：数学上的排列与组合概念。它告诉我们在给定元素下有多少种不同的排列方式，这有助于理解<strong>各种可能性的数量级</strong> 。掌握该模型的重要性在于正确估计事件发生的可能配置，避免遗漏情况或低估复杂度。例如，扑克游戏中计算组合数可判断某手牌出现的概率。适用场景包括概率论应用、资源分配和日常决策中评估选项数量。</li><li><strong>代数等价（Algebraic Equivalence）</strong>：代数学引入用符号表示数，使我们能证明<strong>看似不同的东西实际上相等</strong> 。通过代数运算可发现隐藏的等价关系，这一能力让人类取得众多工程和技术成就 。重要性在于训练我们用抽象符号寻找事物间的本质相同之处。例如，企业的不同财务指标有时可通过代数关系转化比较。适用于逻辑推理、数学建模，以及发现问题不同表象下内在一致性的场景。</li><li><strong>随机性（Randomness）</strong>：指事件无规可循的性质。人脑对纯随机的理解很差，往往倾向于在随机现象中<strong>误判出因果关系</strong> 。我们容易被“随机性的欺骗”——看到模式其实只是巧合 。认识随机性的重要性在于避免过度解读偶发事件。例如，投资者可能把短期股价波动归因于某种策略有效，但其实可能只是随机涨跌。应用场景在金融、科学实验中需要辨别信号与噪音，以及日常判断中不被运气或巧合误导。</li><li><strong>随机过程（Stochastic Processes，如泊松、马尔可夫链、随机游走）</strong>：一类<strong>用概率描述随时间演化系统</strong>的模型 。特点是单个时刻的状态难以确定，但整体分布可预测。其重要性在于帮助我们处理复杂系统的不确定性。例如，无法准确预测明天股价（随机游走），但可估计长时间内股价波动范围 。在保险精算中，泊松过程用于建模理赔事件的发生，在经济学中马尔可夫链描述市场状态转移。适用于统计、金融领域对复杂动态系统的分析。</li><li><strong>复利（Compounding）</strong>：指收益再投入而产生的连锁放大效应，被誉为“世界第八大奇迹” 。复利的特点是<strong>指数级增长</strong>：本金产生利息并加入本金再次产生利息，循环往复 。其重要性显而易见：小额的持续累积可带来巨大回报。例如，一笔资金以每年 10%复利增长，若长期坚持将成倍增长。复利思想除金融外也适用于知识、人脉积累等“雪球效应”场景：坚持长期主义，小进步终会带来大成果。</li><li><strong>归零效应（Multiply by Zero）</strong>：源自数学定理“任何再大的数字乘以 0 都等于 0”，在系统中体现为<strong>单点失败导致全盘皆输</strong> 。该模型强调找出系统中的“致命弱点”比提升其他部分更关键 。例如，一家公司的各部门业绩卓越，但若财务造假（单点失败），可能立刻崩盘。明白归零效应的重要性在于在决策中先<strong>补齐短板</strong>、防范关键风险。应用于项目管理（找出瓶颈环节）、安全工程（消除致命隐患）等需要“木桶短板”思维的领域。</li><li><strong>流失率（Churn）</strong>：指系统中固定比例的成员或元素会随时间流失，需不断补充才能维持现状 。例如订阅服务每年都会失去一些用户，必须招揽新用户填补才能净增长 。这一模型的重要性在于认识到<strong>不进则退</strong>：如果只是原地踏步，其实在相对下滑。商业上，这被称为“红皇后效应”，即需要不断奔跑才能留在原地。企业应持续获取新客户、人才培养以抵消流失。适用在市场营销、人力资源以及生态系统中物种繁衍等有流失现象的情境。</li><li><strong>大数定律（Law of Large Numbers）</strong>：概率论基本原理之一，指<strong>随着试验次数增加，实际平均结果会趋近理论期望</strong> 。小样本下结果容易偏离平均，但样本足够大时，偏差会逐渐减小 。重要性在于提醒我们对小样本结论要持怀疑态度。例如，掷硬币 5 次可能 4 次正面，但掷 500 次会更接近一半正反面。大数定律广泛用于统计推断、保险精算（大量保单分散风险）等场景。</li><li><strong>正态分布（Bell Curve&#x2F;Normal Distribution）</strong>：大量独立随机变量之和趋向的统计分布，以钟形曲线闻名 。其特征是<strong>中间平均值最常见，偏离越大概率越低</strong>（中心极限定理） 。许多自然现象符合正态分布，如人的身高、考试成绩。但也要警惕，并非所有过程都是正态的——社会和金融很多情况非正态。理解正态分布的重要性在于能正确估计常见情形和极端事件的概率，用于统计分析、质量控制等领域。</li><li><strong>幂律分布（Power Law）</strong>：与正态分布相反的一类分布，少数事件占主要影响，尾部肥厚，无显著平均值 。例如地震震级是幂律分布：每增加 1 级破坏力增加 10 倍，没有“典型地震”一说 。又如城市规模、财富分布往往遵循幂律（20%的人拥有 80%的财富）。幂律的重要意义在于提醒我们<strong>很多系统不服从常规平均</strong>，极端事件概率比想象大得多。金融、互联网（少数头部产品获绝大多数用户）等领域需特别关注幂律特性。</li><li><strong>肥尾现象（Fat-tailed processes，“极端斯坦”）</strong>：纳西姆·塔勒布的概念，指看似正态的分布却有远高于正态概率的极端尾部事件 。在肥尾分布中，黑天鹅事件发生的可能性被严重低估。若尾部在负向，这意味着风险远超正态模型估计；若在正向，则机遇也被低估 。现实社会很多现象（金融市场波动等）属于“肥尾”，非正态。认识肥尾的重要性在于做决策时要考虑极端状况，避免仅依据平均和方差的正态假设。金融风险管理、应急规划等需应用该模型。</li><li><strong>贝叶斯更新（Bayesian Updating）</strong>：以托马斯·贝叶斯命名的一种思维方法，即<strong>根据新信息不断更新先验概率</strong> 。简单说，就是在决策时综合考虑原有判断和新证据，动态调整信念 。贝叶斯思维的重要性在于适应不确定世界：我们无法百分百确定，只能根据已有信息估计可能性，并在获取新信息后修正。例如，医生诊断时根据初步概率判断病因，在看到化验结果后再更新诊断概率。该模型广泛用于统计推断（贝叶斯统计）、机器学习和日常决策的渐进修正过程。</li><li><strong>均值回归（Regression to the Mean）</strong>：在随机过程中，极端偏离平均的现象往往随后向平均回归 。这意味着异常表现大多不可持续，会趋向常态。这一趋势常使人们产生错觉：例如某支球队大胜后一段时间成绩回落，人们可能将回落归因于教练调整，其实可能只是回归均值的统计现象。意识到均值回归的重要性，可以避免被短期波动迷惑。例如，投资者不应对业绩极好或极差的年份过度反应，而要看长期平均。适用于金融、体育等存在运气成分的领域分析。</li><li><strong>数量级思维（Order of Magnitude）</strong>：关注事物<strong>量级上的差异</strong>而非精确值的思维习惯 。在很多情况下，精确数字难以测定或意义不大，我们更关心大概范围和数量级多少个零 。例如，银河与邻近星系距离约几百万光年还是几亿光年，关心数量级比追求具体里程更重要。培养数量级思维有助于避免伪精确，抓住主要矛盾。在科研、工程估算以及商业决策中，都常通过数量级估算快速判断方案可行性。</li><li><strong>规模效应（Scale）</strong>：系统特性会因<strong>规模大小</strong>发生变化 。很多属性在小规模下成立，但扩大或缩小规模时行为变异（“蝴蝶效应”的基础）。理解规模效应的重要性在于分析问题时<strong>明确所处尺度</strong> 。例如，小公司和大公司的管理模式不同；化学实验放大到工业生产，产率可能变化。又如生态系统中，物种数量达到一定规模会出现群体行为的新性质。应用于工程、经济、生态等领域，考虑规模变化带来的非线性影响。</li><li><strong>边际递减规律（Law of Diminishing Returns）</strong>：投入某要素的边际收益在达到一定点后会递减 。即最初增加投入带来较大收益，但超过某阈值后，每新增一单位的增益逐渐减少，甚至变为负效应 。这模型很常见：例如施肥少量增产明显，但过多反而烧死庄稼。理解它重要在于<strong>适可而止</strong>：在资源配置上找到最佳点而非盲目堆砌。适用于经济学（边际效用）、生产管理、个人精力分配（工作时间过长效率下降）等诸多场景。</li><li><strong>帕累托原则（Pareto Principle，80&#x2F;20 定律）</strong>：意大利经济学家帕累托发现<strong>80%的结果往往由 20%的原因造成</strong> 。例如，20%的人口拥有 80%的财富，企业 80%利润来自 20%客户 。这是幂律分布的一种表现形式。其重要性在于帮助我们抓主要矛盾：关注那关键的 20%。应用实例：管理上聚焦最有价值的事项，销售中培育核心客户等。几乎所有领域（时间管理、质量管理等）都可运用 80&#x2F;20 思维来优化效率 。</li><li><strong>反馈循环（Feedback Loops，动态平衡）</strong>：指系统中输出反过来作为输入影响自身的现象，包括正反馈（增强）和负反馈（抑制） 。在<strong>负反馈</strong>主导的系统（如人体体温调节、组织文化），一旦偏离平衡，会自动产生纠偏作用保持系统稳定 ；<strong>正反馈</strong>则会自我强化（如银行挤兑愈演愈烈）。理解反馈机制的重要性在于预测系统行为：比如公司迅速扩张（正反馈）可能失控，需要负反馈机制稳住。工程、生物、经济系统中大量存在反馈回路，设计和决策时应充分考虑。</li><li><strong>混沌效应（Chaos Dynamics，初始条件敏感性）</strong>：混沌理论揭示<strong>对初始条件极度敏感的系统</strong>特性 。蝴蝶效应是其著名表述：一只蝴蝶扇动翅膀可能改变遥远地方的天气 。这意味着在此类系统中（如气候、股市），微小变化会导致巨大无法预测的后果。重要性在于承认<strong>长期预测的不可确定性</strong>，不要幻想精准掌控复杂系统。例如，气象预报超过一定时间就很不可靠。此模型提醒在社会、经济等复杂系统中保持谦逊，注重韧性而非精确预测。</li><li><strong>优先连接（Preferential Attachment，累积优势）</strong>：强者恒强、先发优势的数学模型。它表示<strong>领先者往往获得更多资源，进而巩固领先地位</strong> 。经典例子是<strong>马太效应</strong>（“富者愈富”） 。在网络效应明显的市场中尤其如此：用户更多的平台会吸引更多新用户，落后者更难翻盘 。了解累积优势重要在于策略上要么争取先发制人、形成滚雪球效应，要么在巨头忽视的缝隙另辟蹊径。适用于商业竞争、职业发展（打造持续竞争力）等情境。</li><li><strong>涌现（Emergence）</strong>：指<strong>高层次复杂行为由低层简单组分交互产生</strong>的现象 。涌现的关键是整体 ≠ 部分之和，常出现非线性、意想不到的新性质 。例如，单个神经元并不“思考”，但足够多神经元网络涌现出意识；个体蚂蚁简单互动涌现出蚁群智能。涌现说明仅研究组成部分无法完全预测整体行为。其重要性在于认识系统整体性的不可简化性，在管理组织、研究生命、大型社会系统时，要留意整体新特征，而非只关注局部。</li><li><strong>不可约性（Irreducibility）</strong>：很多系统存在<strong>不可再分的基本单位或底限</strong> 。低于这个最小阈值，目标现象无法实现。例如，一个女性怀孕需要约 9 个月，即使 9 个女性同时怀孕也不能 1 个月生出孩子——时间不可无限压缩 。又如造车不能缩减到单一零件就能跑。理解不可约性重要在于明白某些资源或条件有<strong>硬性下限</strong>，不能被取代或并行。例如项目压缩工期也要有最短周期。应用在项目管理、生产流程中，识别那些无法削减的要素，合理安排资源。</li><li><strong>公地悲剧（Tragedy of the Commons）</strong>：经济学家加勒特·哈丁提出的概念，指在<strong>共享资源缺乏清晰责任</strong>的情况下，个体基于自身利益过度使用资源，最终导致资源枯竭 。核心是每个人单独过度使用带来的损失由大家分担，自己的收益却最大化，于是<strong>人人抢用</strong>，资源很快耗尽 。经典例子：公共牧场上每位牧民都多放牛以多得利益，结果草场被啃光。该模型强调制度设计和激励的重要，应用于环境保护、公共政策制定（如碳排放、公共渔场管理）等，需要防止公地悲剧发生 。</li><li><strong>格雷欣法则（Gresham’s Law）</strong>：由托马斯·格雷欣提出，原指在混合货币流通时“劣币驱逐良币” 。意即在流通体系中，品质较差的东西因人们倾向保留优质品而充斥市场。同样现象在人类系统中也出现：例如<strong>不良行为驱逐良好行为</strong>，当缺乏监管时，投机取巧者占便宜反而挤压诚信者 。格雷欣法则的重要性在于警惕系统质量下降的自我强化，需要外部干预维持标准。例如公司文化中，如果对不道德行为不加惩戒，劣币文化会蔓延。故应通过制度设计防止“劣币”效应。</li><li><strong>算法（Algorithm）</strong>：一组<strong>明确的规则或步骤</strong>，用来自动地解决问题或执行任务 。算法最常见于计算机程序，但生物和社会中也有类似过程：例如 DNA 就蕴含“构建人体”的算法 。算法的重要性在于其可重复性和高效性——将问题拆解为步骤化流程意味着可批量解决类似问题。例如，企业制定标准作业流程 SOP，本质上也是业务算法，保障在人员不同情况下输出稳定结果。算法思维在计算机科学、日常工作流程优化中应用广泛。</li><li><strong>脆弱-稳健-反脆弱（Fragility–Robustness–Antifragility）</strong>：塔勒布提出的概念光谱，表示系统对待<strong>冲击的响应方式</strong> 。<strong>脆弱</strong>系统对冲击非常敏感，小的负面变化就会造成巨大损失（如玻璃杯掉地即碎）；<strong>稳健</strong>系统对冲击基本不变（皮球摔下仍保持原状）；<strong>反脆弱</strong>系统则从冲击中受益变得更强（如肌肉经负荷锻炼反而增强） 。这个模型重要在于帮助我们评估和改进系统的抗压性。例如，投资组合多元化提高稳健性，生物免疫接种使机体反脆弱。适用于风险管理、组织建设等领域，目标是减少脆弱性，增加反脆弱特性。</li><li><strong>冗余备份（Backup Systems&#x2F;Redundancy）</strong>：工程学关键原则之一，即在系统中<strong>设计多余的备份</strong>以防止单点失效 。优秀工程师假定组件会失效，提前准备替代或备用方案 。这样即使一个部件坏了，系统整体仍能运行（例如飞机有多套液压系统，断一套不致坠机）。该模型的重要性在于提高系统可靠性和韧性。同理在人生和商业中，也应有备选方案和安全余量。例如企业要有应急预案，个人财务留储蓄以备不时之需。这适用于所有需要<strong>防止瘫痪</strong>的系统和计划。</li><li><strong>安全边际（Margin of Safety）</strong>：源自工程和投资领域，指在承受能力和实际负荷之间留出的<strong>裕度</strong> 。工程上不会造刚好 9,500 磅承重的桥去载 9,500 磅的车，而是设计更高冗余以防不测 。投资中，芒格和巴菲特也强调以远低于内在价值的价格买入股票，给自己留安全边际，以抵御估值错误或市场波动 。安全边际的重要性在于增强决策的稳健性，降低失败风险。应用场景除工程、投资外，还包括项目时间管理（留有余裕避免延误）等，一切需应对不确定性的决策都应考虑安全边际。</li><li><strong>临界点（Criticality）</strong>：当系统接近<strong>相变临界状态</strong>时，最后一点增量的作用远大于前面同等增量 。例如水加热到 99℃ 和 100℃，后一度引发沸腾相变，效应非线性放大 ；核聚变需要<strong>临界质量</strong>才能发生，一旦达到将发生爆炸式反应。这告诉我们系统在临界状态附近<strong>极其敏感</strong>，一点变化就可能引发质变。重要性在于辨识那些非线性突变点，谨慎对待。如金融市场临界点前会积累泡沫，一旦刺破后果剧烈。应用在物理、社会经济等存在临界转折的系统分析。</li><li><strong>网络效应（Network Effects）</strong>：系统节点越多，其价值越大的现象 。典型例子是电话网：只有两部电话时通信价值有限，但用户越多，每个用户受益越大 。互联网平台亦然，用户多的平台对每个用户更有价值，形成正反馈。这一模型重要在于理解当今很多技术和商业现象——赢家通吃往往源于强网络效应。例如社交媒体，大家都用某 App 使其成主导。同样产品设计时，也可利用网络效应（兼容标准、用户分享裂变）。注意当心<strong>反网络效应</strong>（过度拥挤导致体验下降）。</li><li><strong>黑天鹅事件（Black Swan）</strong>：塔勒布提出的概念，指极其罕见却影响巨大的不可预测事件 。之所以称黑天鹅，是因为在欧洲发现黑天鹅之前，人们默认天鹅皆白，一旦见到一只黑天鹅就推翻了之前的认知 。黑天鹅事件对观测者来说事前无法预测（对火鸡而言，感恩节就是黑天鹅，而对屠夫不是） 。其重要性在于提醒我们怀有“不确定性谦卑”——不要以为罕见事不会发生，要通过提高系统稳健性而非侥幸预测去应对。例如金融危机、重大灾难都是黑天鹅，需要准备预案。适用于风控和战略规划。</li><li><strong>避害原则（“Via Negativa”，先杜绝坏事）</strong>：一种处事哲学，即<strong>通过消除负面因素来改进系统</strong> 。比如医学上的格言“首先，勿伤害病人”，强调先避免做坏事，再求进一步改善 。又如一个班级中，如有捣乱者，移除后整体表现往往立刻提升。芒格也推崇<strong>不做蠢事</strong>胜过做聪明事。这一原则重要在于提供简洁有效的改进思路：先停止产生危害或损耗的行动，系统自然改善。例如企业整改，砍掉亏损业务往往比尝试新项目更直接提升盈利。适用于决策、管理等各领域的风险控制。</li><li><strong>林迪效应（Lindy Effect）</strong>：指出对<strong>非易逝事物（思想、技术等）而言，其预期寿命与当前存续时间成正比</strong> 。换言之，已经存在了 X 年的事物，预计还会再存在 X 年。比如莎士比亚的作品流传 400 年，按林迪效应，可期望至少再流传 400 年 。而人这一类有明确寿命限制的生物不适用此效应。林迪效应重要在于帮助我们评估事物的稳健性：存续越久的技术或思想往往越经得起考验（如古老的数学定理、传统食谱等）。在投资、文化研究中可应用——选择经久不衰者更可靠。</li><li><strong>重正化群（Renormalization Group）</strong>：源自物理学的概念，用于研究<strong>不同尺度下系统性质的变化</strong> 。其应用之一是解释为何小群体中几个执拗者若逐层影响更大圈子，最终可能撬动大局 。简单来说，该模型让我们在不同层级看问题：微观、中观、宏观层层分析，理解规律如何<strong>随尺度变化</strong>。重要性在于避免在某一尺度下得出的结论套用于所有尺度。例如，管理上小团队有效的方法不一定适用于大组织，需要“重整”思路。科学上，物理规律在量子层面与宏观层面不同，也需该方法衔接理解。</li><li><strong>预加载效应（Spring Loading）</strong>：如果一个系统<strong>像弹簧一样预先被压缩在某个方向</strong>，则一旦条件触发会猛烈释放 。正向的“上紧发条”可以在不确定环境中提供抗冲击能力（积攒潜能以应对负面事件） ；反之，负面的预加载则可能造成灾难。例如，社会长期积压不满情绪（负向预加载）在导火索下会爆发剧变。理解预加载重要在于通过<strong>积蓄正能量</strong>（如建立缓冲库存、培养良好关系）来抗风险，或警惕系统中积累的隐患。用于风险管理、组织文化建设等方面。</li><li><strong>复杂适应系统（Complex Adaptive System）</strong>：区别于一般复杂系统的一类系统，其特征是<strong>能够识别自身状态并基于此改变</strong> 。典型例子是<strong>社会系统</strong>（如金融市场）：天气不会因为气象预报改变自身，但股票市场可能因分析师预测而改变走势 。复杂适应系统因此<strong>本质上不可预测</strong>，因为系统会对预测做出反应。理解这一点的重要性在于在社会、经济系统中，任何“自我实现”或“自我否定”的反馈都可能使预测失准。因此与其执着预测，不如提高系统适应力。适用于经济、生态、组织管理等领域的思考。</li><li><strong>热力学定律（Laws of Thermodynamics）</strong>：物理学基本定律，描述封闭系统中能量的性质 。要点包括：能量守恒、熵增原理等。其对社会议题的启示在于<strong>无法逃避能量守恒和熵增</strong>：一切有用能量都会散逸，需要不断投入维持秩序 。芒格常用热力学类比社会现象，例如经济系统也有“熵增”，必须持续创新以抵消组织僵化。理解热力学模型重要在于尊重客观规律：不可能有“永动机”式的免费午餐，任何系统都有损耗。应用在工程、经济甚至信息系统（信息熵）中，对资源利用和效率极限做出判断。</li><li><strong>作用与反作用（Reciprocity，互惠原理）</strong>：物理上牛顿第三定律讲<strong>每个作用力都有大小相等方向相反的反作用力</strong> 。这一原理可推广到生物和社会：你怎样对待别人，别人通常会以相应方式回应你（投之以桃报之以李）。互惠原理的重要性在于<strong>构建信任与合作</strong>：理解善意和恶意都会回旋。例如，商业谈判中让步可能换来对方让步；相反，攻击性行为招致对抗。在人际关系、外交谈判中广泛应用这一模型，预见并利用互惠反应来达成共赢或避免冲突升级。</li><li><strong>速度与位移（Velocity）</strong>：在物理上，<strong>速度&#x3D;速率+方向</strong> 。很多人混淆速度和速率：一个物体 2 步进 2 步退，速率不为零但净位移为零，实际“速度”概念强调方向。这个模型告诉我们在评价效率或进展时，要看<strong>有无朝目标前进</strong>。例如，工作很忙碌（高“速率”）但如果没完成关键任务，则净进展为零。理解速度矢量意义有助于我们在管理和个人成长中注重<strong>有效产出</strong>而非忙碌程度。适用于时间管理、运动学和导航等情境。</li><li><strong>相对性原理（Relativity）</strong>：狭义相对论告诉我们<strong>观察者的运动状态会影响其测量</strong> 。如坐在飞机里的人感觉不到速度，但地面观察者看到飞机高速掠过。同理，在社会系统里，<strong>身在其中者可能难以全面认识系统</strong> 。这提示我们在做自我评估或组织评估时，要跳出系统看系统。相对性模型的重要性在于懂得不同视角得出的结论不同，没有绝对客观的观察。例如，企业内部人员可能忽视公司问题，而外部顾问可一针见血。应用在领导决策、审计评估中，通过换位或外部视角校准判断。</li><li><strong>活化能（Activation Energy）</strong>：化学反应所需的最小初始能量。许多本可发生的反应因为欠缺这一启动能量而不会自发进行 。例如，木材和氧气本可燃烧但需点火触发。这个概念启示在社会上类似的“门槛”现象：<strong>很多改变需要初始推动力</strong>。重要性在于识别并提供足够的启动能。例如，新项目开展常需要管理层的第一推动力，否则团队难以动起来。同样，培养好习惯也需克服最初的惰性。应用在化学、启动创新、个人习惯养成等方面，先投入额外能量跨越门槛，才能引发后续连锁变化。</li><li><strong>催化剂（Catalyst）</strong>：在化学中，催化剂参与反应降低所需活化能，加速或维持反应进程，自己却不被消耗 。社会系统中亦有类似角色：一些要素或人物能<strong>激发或维持变化</strong>，但自身影响不直接显著。重要性在于寻找或成为催化剂，往往能以小投入带来大变化。例如，一个热心的团队成员可以催化整个团队的合作氛围；在变革中，关键意见领袖是催化剂，推动其他人响应。应用在管理、社会运动等情境，通过投入恰当“催化剂”以启动或加快想要的进程。</li><li><strong>杠杆作用（Leverage）</strong>：利用杠杆的小力撬动大物的原理，阿基米德名言：“给我一个足够长的杠杆和一个支点，我就能撬动地球” 。在实际中，杠杆指<strong>用较小的投入获取数倍的产出</strong>。金融上有财务杠杆（借贷投资），商业上有运营杠杆（系统和流程放大个人产出）等。其重要性在于寻找<strong>撬动效应</strong>：小改变带来大收益。例如，软件自动化使一个程序员的工作影响千万人，即高杠杆。杠杆思维应用广泛：从机械设计、投资理财，到提高个人&#x2F;组织效率，都在于找到最佳杠杆点，事半功倍 。</li><li><strong>惯性（Inertia）</strong>：牛顿第一定律揭示物体<strong>保持原运动状态的倾向</strong> 。静者易静，动者持续以当前速度方向运动，除非受到外力改变。同样在人和组织上，行为习惯和趋势一旦形成会<strong>自我延续</strong>。惯性有利有弊：有助于节省能量、维持稳定，但也会导致惰性或路径依赖。重要性在于认识到改变一个运动方向需要施加额外的力。例如，一个企业长期沿袭旧模式，要转型需要强大推动克服组织惯性。应用在个人习惯改变、组织变革以及物理运动中，须考虑惯性效应，逐步施加足够外力来调整轨迹。</li><li><strong>合金效应（Alloying）</strong>：把两种或多种元素组合形成合金，往往产生<strong>超过各成分简单相加</strong>的性能 。2+2&gt;4 的效果经常出现：如铜加锌成黄铜，其硬度和耐腐蚀性都优于单纯铜或锌 。这一模型说明<strong>组合的威力</strong>：合适的元素结合能产生质变提升。同理在团队或策略上，不同技能的人搭配可产生强于各自的整体；不同策略协同可取得单兵之力无法企及的效果（芒格称“Lollapalooza 效应”）。重要性在于寻找<strong>互补增效</strong>的组合，而非单打独斗。适用于材料科学、团队建设、战略组合等领域。</li><li><strong>激励机制（Incentives）</strong>：生物学和经济学公理：<strong>生物会对激励做出反应</strong> 。奖励和惩罚驱动着行为，无论是动物为了生存还是人类追求利益 。芒格甚至说过：“<strong>想知道某人会做什么，就看他的激励</strong>。”激励的重要性在于它往往是决定行为的首要因素，哪怕表面理由不同。例子：销售拿提成会专注于销量最大化；公司高管的激励若偏重短期利润，决策也倾向短视。应用在管理、公共政策设计中，通过正确的激励相容使个体利益与整体目标一致，否则就会南辕北辙。</li><li><strong>合作共生（Cooperation &amp; Symbiosis）</strong>：虽然达尔文进化强调竞争，但<strong>生物界合作同样无处不在</strong> 。从细胞共生产生复杂生命，到动物群体合作抵御天敌，共生互利是进化成功的另一秘诀 。在人类社会更是如此：没有合作就没有家庭、公司和国家。理解合作机制的重要性在于平衡竞争与合作。在商业竞争中，有时联合竞合比各自为战更有利；在生态保护中，强调物种间互惠共生才能维持系统稳定。适用于团队管理、国际关系和生态学等，寻找双赢或多赢的合作模式。</li><li><strong>能量最小化倾向（Tendency to Minimize Energy Output）</strong>：从生物学来看，在能量和资源有限的环境中，<strong>所有生物都倾向于节约能量</strong> 。不必要的消耗会降低生存竞争力。因此我们看到动物平时能躺着绝不站着，人类也发展出各种工具以减少体力劳动。这一倾向意味着人类行为也常选择“省力”的路径（这也是偏见和捷径心理的基础）。重要性在于理解我们的<strong>惰性本能</strong>，才能设计机制克服它。例如，企业流程要尽量简化，否则员工会本能绕过繁琐步骤；健康管理中，要意识到人性趋懒，需额外激励运动。总之，该模型适用于一切涉及行为设计和改变惰性的情境。</li><li><strong>适应（Adaptation）</strong>：物种为适应环境所做的调整。现代生物学认识到<strong>个体获得的特征不会遗传</strong>（拉马克被否定），生物适应环境是通过<strong>种群进化</strong>实现的 。适应的重要性体现在个体层面和系统层面：个体可以学习和调整行为以适应当前环境（例如耐寒锻炼提高御寒力），而长远看，适者生存，不适者被淘汰（自然选择）。在社会中，企业若不能适应市场变化也会被淘汰。这个模型适用于个人成长（环境变迁中保持学习）以及组织战略（动态调整以适应行业趋势）。</li><li><strong>自然选择进化（Evolution by Natural Selection）</strong>：达尔文与华莱士提出的划时代理论，解释了物种<strong>通过遗传变异和生存竞争逐渐进化</strong> 。随机突变产生不同特征，环境筛选<strong>适者生存</strong>，使有利基因保留下来 。这一“最伟大的想法”不仅在生物学成立，在社会和商业上也常见类比：市场如同生态，企业在竞争中优胜劣汰，产业在变迁中进化。理解自然选择的重要性在于拥抱变化、鼓励多样性以备筛选。例如，企业应尝试多种创新，让市场检验哪些可行，再集中资源发展成功的方向。适用于生态学、产品试错迭代等领域。</li><li><strong>红皇后效应（Red Queen Effect）</strong>：从《爱丽丝镜中奇遇记》中红皇后的话“需要拼命奔跑才能留在原地”引申出的生物进化现象 。物种间军备竞赛式的共同进化：一种生物进化出新优势，竞争对手必须跟进演化才能不被淘汰 。停滞就意味着落后。该效应揭示了<strong>竞争环境中持续改进的重要性</strong>。例如，猎豹变快，羚羊也必须变快，否则灭绝；商业上，一家公司开发出新技术，同行若不追赶就会失去市场。红皇后效应说明在竞争激烈的领域，没有绝对的领先，唯有不断创新才能保持相对位置。</li><li><strong>复制（Replication）</strong>：生命的根本特征之一，即<strong>高保真地自我复制</strong>。基因 DNA 提供了构建下一代的蓝图 。复制的方法有有性和无性之分，但万变不离其宗——确保物种延续 。在社会和知识体系中，复制也很常见：比如商业模式和技术通过拷贝和改良扩散。理解复制的重要性在于明白<strong>传播和复制决定影响力</strong>。企业希望自己的标准被广泛采用，其实就是追求“自我复制”份额。对个人而言，把成功经验写成手册教别人，也是让理念和方法复制延续的过程。应用在遗传学、文化传播、市场扩张中。</li><li><strong>等级和组织本能（Hierarchical&#x2F;Organizing Instincts）</strong>：复杂生物（尤其人类）天生具有<strong>构建社会等级和组织结构</strong>的倾向 。大多数哺乳动物群体都有等级秩序，人类从原始部落到公司组织也总是形成层级。即便我们自认为追求平等，这种本能依然存在。重要意义在于承认<strong>领导和秩序需求</strong>是人性的一部分，组织管理中可加以正面引导。例如，公司明确的组织架构和职责分配顺应本能，可以提高效率；反之，若完全扁平无序，反而不利协作。适用于组织行为学、团队管理、社会学研究等领域。</li><li><strong>自我保存本能（Self-Preservation Instinct）</strong>：所有生物都具有强烈的求生欲望，这一基本本能驱动着防御、逃避危险等行为 。在人类身上，自保本能有时会表现为保住个人利益，即使有损群体。它是合作本能的对立面，使得人在极端情况下可能<strong>为自保而伤害他人</strong>。重要的是认识到这种本能之强大，以便在设计制度时有约束（例如法律和道德教化）来平衡个人与社会利益。实际例子：踩踏事故中人们出于自保可能不顾他人，引发更大伤害。应用在安全管理、制度设计领域，尽量避免让个人自保本能演变为对整体的不利行为。</li><li><strong>生理奖赏机制（Simple Physiological Reward-Seeking）</strong>：生物体通过神经化学物质的奖惩反馈来驱动行为。例如，<strong>多巴胺</strong>带来愉悦感促使我们重复有利于生存&#x2F;繁殖的行为（进食、亲密等），疼痛让我们远离伤害 。这是自然演化出的行为塑造手段。但在现代社会，这套机制也带来弊端：比如毒品劫持了奖赏系统，让人上瘾。理解这一模型重要在于明白<strong>人受生理驱动的局限</strong>，学会自控和设计环境避免陷阱。例如，利用小奖励培养好习惯，避免让即时快感诱惑（如垃圾食品、刷短视频）主宰生活。适用于心理学、习惯培养、成瘾治疗等领域。</li><li><strong>功能转变（Exaptation）</strong>：古尔德提出的概念，指生物的某特征<strong>在演化过程中被赋予了不同于初始用途的新功能</strong> 。如鸟的羽毛最初可能用于保温，后来演化出飞行功能 。这种“先适应后他用”在复杂器官起源上很常见，也为创新提供灵感：很多发明的用途和最初设计目的不同。明白 exaptation 的重要性在于保持开放的创造力——某事物本为解决 A 问题，但或许也能巧妙用于 B 问题。例如，Post-it 便利贴本是研发强力胶的意外产物，弱黏胶却找到了新用途。适用在生物进化研究、产品开发和创新思维中，善于重新定位现有事物的功能。</li><li><strong>灭绝（Extinction）</strong>：当一个物种<strong>无法适应环境变化</strong>或竞争劣势累积到临界点，数量下降到无法维持种群，最终走向灭绝 。灭绝是生物演化史的常态，大部分物种最终都灭绝了。这个模型警示我们：<strong>失败有时是不可逆的</strong>。在人类系统中也有类比——企业破产、文明消亡都是“灭绝”现象。重要性在于珍视生存：对于物种，要保护濒危生物以免触发不可逆灭绝；对企业，要及早扭转连年亏损避免破产清算。应用在生态保护、企业战略中，要识别是否已接近“灭绝边缘”，以及采取激进行动逆转命运。</li><li><strong>生态系统（Ecosystem）</strong>：一群生物体与其环境相互作用形成的整体 。生态系统强调<strong>整体性和互相关联</strong>：多样物种在食物链、物质循环中彼此依存，共同维系系统稳定 。类似地，社会和经济系统也可视为生态系统，有不同角色和分工，协同运作。理解生态系统模型的重要性在于明白<strong>改动一处会影响全局</strong>。例如，引入一种外来物种可能破坏原生态平衡；企业生态里，一家平台公司政策变化会波及上下游无数小公司。适用于环境科学、商业生态分析，要求我们以系统视角看问题，避免孤立决策。</li><li><strong>生态位（Niche）</strong>：每种生物在生态系统中的<strong>生存策略和资源利用方式</strong>称为其生态位 。一般物种会找到适合自己的细分利基，以避开直接竞争。危险在于如果多个物种占据同一生态位，竞争加剧且资源有限，终将<strong>剩者为王，其余被淘汰</strong> 。在商业上，生态位概念对应<strong>细分市场或差异化战略</strong>：公司应找到自己的市场定位，错位竞争，而不是和强劲对手硬碰。重要性在于发挥自身独特优势，避免在主战场和巨头正面冲突。例如，小公司切入大企业忽视的利基市场，生存几率更高。适用于生物进化和商业战略定位。</li><li><strong>邓巴数（Dunbar’s Number）</strong>：人类社交网络规模的理论上限。灵长类研究发现，大脑新皮质大小决定可以稳定维系的社交关系数，人类推算约为<strong>150 左右</strong>（100-250 范围） 。超过这个数目，社群难以保持紧密联系和信任。邓巴数的重要性在于解释了人类组织规模的某些特点：历史上村落、军事中连排、现代公司团队等往往在百人上下规模运作最佳。应用在组织管理、社交平台设计中，考虑到人与人关系的认知负荷有限。例如，公司超过 150 人后，内部沟通机制需改变以应对陌生人协作的问题。</li><li><strong>信任（Trust）</strong>：现代社会运转的基石。哪怕在家庭之外，我们每日都在<strong>信任陌生人</strong>：相信厨师不会下毒、司机遵守规则、银行保管好存款 。大范围的互信极大降低了交易成本，使合作成为可能。一个高信任度的系统效率更高，正所谓“信任的回报非常丰厚” 。例如，在一支团队里，成员彼此信任则沟通顺畅、分工有效；若互相猜忌则内耗严重。信任模型重要在于理解<strong>社会资本</strong>的价值，维护信用、培养诚信文化。应用于公司文化建设、社会治安和经济发展研究——信任度高的社群往往更繁荣。</li><li><strong>激励引发的偏见（Bias from Incentives）</strong>：因自身利益驱动而产生的认知偏差 。人类是高度受激励驱动的生物，这会<strong>扭曲我们的客观判断</strong>——潜意识里，我们会相信对自己有利的事情 。典型例子是销售人员往往真心觉得自己的产品最佳，因为他们的生计系于此。同样，带业绩提成的人会下意识高估业绩指标的意义。理解这一偏见重要在于在评价别人的意见时，看清对方的利益立场，也反省自己是不是因为私利而视而不见某些事实。芒格将其列为最重要的人类误判之一 。适用在商业谈判、政策制定（考虑相关者的利益驱动）等场景。</li><li><strong>帕夫洛夫式联想（Pavlovian Association）</strong>：俄国科学家巴甫洛夫通过狗试验证明，动物可以将<strong>中性刺激与奖惩联结</strong>，形成条件反射 。铃声响狗流涎即经典例子。人类也类似，某些情绪和态度往往源自过去的关联，而非当前客观事实。例如，因为童年经历，我们可能对某种气味产生好感或厌恶。这种<strong>单纯联想偏差</strong>影响消费偏好、品牌联想等。重要性在于认识我们有时对事物的好恶并非理性，而是条件反射，从而在决策时校正。例如，市场营销利用联想原理，将产品与积极形象绑定以影响消费者。我们个人则应警惕被无意识的联想操纵判断。</li><li><strong>嫉妒与妒忌倾向（Envy &amp; Jealousy Tendency）</strong>：人类天性之一，当别人得到超过自己的好处时，会产生不平和<strong>渴望得到同样东西</strong>的心理 。这种情绪非常强烈，甚至可以驱使人做出非理性的行为来“追平”。芒格指出任何忽视嫉妒效应的系统都会自毁 。重要性在于承认嫉妒普遍存在，并在制度上、团队管理中尽量减少激发不必要的嫉妒（例如过大的悬殊待遇）。案例：公司里若只奖励极少数人，可能挫伤大多数人的积极性。应用在组织公平政策制定、个人心理调适（对别人的成功心态平和）等方面。</li><li><strong>喜欢&#x2F;厌恶偏见（Liking&#x2F;Loving &amp; Disliking&#x2F;Hating Tendency）</strong>：我们倾向于<strong>高估自己喜欢的人或事的优点，低估或抹黑不喜欢的</strong> 。这种偏见可能来自过往经验、刻板印象、意识形态等 。它导致我们在评价时失去客观，对所爱者宽容盲目，对所憎者苛刻武断。例如，粉丝会为偶像的错误辩护，而对竞争对手鸡蛋里挑骨头。认识这一偏见的重要性在于提醒自己<strong>公正客观</strong>：在用人、评估项目时，不要因私人好恶而失去理智。适用于招聘、投资判断以及人际冲突调解等，需要克服先入为主，用数据和事实平衡我们的好恶之情。</li><li><strong>否认倾向（Denial Tendency）</strong>：一句俏皮话说“<strong>否认不仅是一条河（尼罗河）</strong>”（谐音 denial 与 the Nile），意指否认现实是常见心理防卫机制 。当真相令人痛苦或威胁自我时，人会下意识选择否认以暂时降低焦虑。这在战争或药物成瘾中表现明显：明知局势不利却仍掩耳盗铃、自欺欺人 。否认可以是应对冲击的暂时手段，但长期会阻碍解决问题。重要性在于及时突破否认、正视现实。例如，面对经营困境的公司管理层若一直否认问题存在，将错失自救良机。应用在心理辅导、危机管理中，帮助当事人走出否认阶段，采取行动。</li><li><strong>易得性偏差（Availability Heuristic）</strong>：卡尼曼提出的著名认知偏差，即<strong>人倾向根据记忆中最容易想起的信息来判断事件概率</strong> 。近期发生或印象深刻的事在脑中“可得性”高，我们就认为其更常见或更重要 。这节省脑力但也会导致误判。例如，看到飞机失事新闻后，人们会高估空难概率（因为记忆鲜活），而低估更常见的车祸风险 。重要性在于决策时要警惕这种偏差，不能只依据脑中浮现的案例。比如投资时不要只根据最近市场走势做判断，而要看长远数据。同属易得性偏差的还有<strong>锚定效应</strong>（第一次听到的数字会成为判断参照）、<strong>沉没成本偏误</strong>（因投入过多而不愿止损） 。</li><li><strong>代表性偏差（Representativeness Heuristic）</strong>：卡尼曼和特沃斯基提出的另一思维捷径，即人们根据<strong>事物与原型的相似程度</strong>来判断其概率 。常见的错误包括：<strong>忽视基数率</strong>（不看总体概率，只根据匹配特征判断） 、<strong>刻板分类</strong>（以偏概全，忽略具体差异） 、以及<strong>结合谬误</strong>（倾向相信具体但偏狭的描述胜过宽泛但更可能的描述） 。著名的“琳达问题”就揭示了结合谬误。代表性偏差使我们容易被<strong>表面故事</strong>迷惑，而忽略统计逻辑。重要性在于决策时要考虑总体概率，防止以个例代表整体。例如，用数据纠正直觉，在招聘、投资等情境下避免以刻板印象取人或判事。</li><li><strong>社会认同（Social Proof）</strong>：也称从众效应，人类作为社会性动物，有<strong>从大多数或权威行为中寻找行动指引</strong>的倾向 。看到别人都做某事，我们会认为那可能是正确或安全的选择。这建立了合作和文化传承，也导致盲从。其重要性在于理解<strong>群体影响力</strong>：产品有越多用户越显得可信（因此见证和销量展示很有效），但反过来也可能因为大家都错而一起掉坑（郁金香泡沫、网络谣言扩散） 。芒格将社会认同视为需要警惕的人类误判之一。应用于营销（利用口碑和群体效应增强产品吸引力）以及个人决策（意识到大众并非总对，不盲目跟风）。</li><li><strong>叙事本能（Narrative Instinct）</strong>：人被称作“讲故事的动物”，我们天生<strong>渴求用故事赋予世界意义</strong> 。在文字发明前，我们或许就以故事传承经验。叙事能帮助我们理解复杂事件因果，但也会扭曲事实以求自洽。几乎所有社会组织（宗教、国家、公司）都建立在某种叙事之上 。叙事本能的重要性在于认识故事的力量：它能激励、凝聚人心，也能蒙蔽和偏见。例如，好的企业愿景故事可激发员工使命感；反之，阴谋论故事会误导大众。我们应善用叙事来传播理念，同时在寻求真相时警惕故事的迷惑，注重证据。</li><li><strong>好奇本能（Curiosity Instinct）</strong>：人类是<strong>地球上最富好奇心的物种</strong>。正是好奇心驱动我们走出非洲大草原，探索未知，从而积累庞大知识。这种本能让我们即使无直接激励也愿意求知探索（在科学诞生前人类就爱发问）。好奇心的价值在于<strong>持续创新和进步</strong>：没有好奇，就没有发明创造。现代社会中，激发和保持好奇尤为可贵，有助于个人终身学习、组织保持创新活力。需要注意好奇心也要有方向，盲目的好奇可能分散精力。总体而言，鼓励好奇心在教育、科研和个人成长中都至关重要。</li><li><strong>语言本能（Language Instinct）</strong>：心理学家史蒂芬·平克提出，人类天生具备学习<strong>复杂语言的本能</strong> 。儿童无需正式教学，在幼年就能轻松掌握母语的语法结构，这说明语言能力深植于基因（乔姆斯基的普遍语法理论） 。语言本能使我们能传递无限丰富的信息，是人类合作和文明的基石。其重要性无须赘述：语言让我们讲故事、八卦、协商、争论，构建复杂社会组织 。理解这一本能也提醒我们语言的力量与局限——语言塑造思想，也可能束缚思想。应用在语言学、教育学等领域，及 AI 自然语言处理等技术中。</li><li><strong>首因效应（First-Conclusion Bias）</strong>：芒格幽默地比喻为**“大脑像卵子，先到者胜”<strong>：第一个进入我们脑海的想法会占据主导，使我们倾向于停止搜索替代答案 。这也许是节能机制，但常导致</strong>过早定论**。一旦我们锁定第一个结论，就很难再客观评估新信息。重要性在于提醒自己在解决问题时不要被最初想法束缚，应刻意<strong>延迟下结论</strong>，多考虑备选方案。例如，头脑风暴时鼓励提多个方案，而不是草草定夺第一个想法。首因效应在科研、决策中都很普遍，需要通过逆向思维、二阶思考等方法加以对抗 。</li><li><strong>以偏概全偏误（Overgeneralization from Small Samples）</strong>：人脑擅长从少数例子推导一般规律，这有助于生存但也易犯错 。我们常忘了<strong>大数法则</strong>，用几个事件就匆忙下结论 。例如，投资者可能因为两次成功投机就认定自己找到稳赚策略，而忽略样本太小。这个偏误的重要性在于警惕<strong>样本不足导致的错误推论</strong>。应尽量使用足够多的数据或观察长期趋势，而非凭寥寥数例。如果无法获取大样本，也要承认结论的不确定性。适用于科研统计、业务分析等，要注意抽样误差，不被幸运或不幸的少数案例误导。</li><li><strong>相对幸福&#x2F;错置反应倾向（Relative Satisfaction&#x2F;Misreaction Tendency）</strong>：研究表明人的满意度<strong>取决于相对状态而非绝对水平</strong> 。我们往往将自己现状与过去的自己或周围的人比较来感觉幸福或不满，而不是看绝对值 。因此，一个人收入增加但若少于同事，可能更不开心；反之相对改善会带来满足。这导致我们难以准确预测自己对某种客观状况的感受，也是嫉妒心的根源。重要性在于认识<strong>人是相对动物</strong>，很多行为偏差（追求炫耀、报复心理）源于相对剥夺感。管理上应尽量营造相对公平的环境；个人也应意识到不必与人攀比，以免陷入无尽的不满。</li><li><strong>承诺与一致性偏见（Commitment &amp; Consistency Bias）</strong>：心理学实验证实，人有<strong>维持自我言行前后一致</strong>的倾向 。一旦我们公开做出选择或承诺，就倾向于<strong>固守</strong>，哪怕后来证明有更好选择 。这是为了社交上显得可靠，但也会变成思想僵化。与首因效应结合，往往使人<strong>在错误道路上越走越远</strong> 。重要性在于警惕过度的死守承诺，在有新证据时应勇于修正。例子：管理层决策失误却投入太多面子不愿回头，导致更大损失。我们应培养灵活心态，勇于承认错误转变立场。应用在谈判、管理中，利用这一偏好可通过循序渐进的小承诺诱导持续行动；反之要避免落入不良承诺陷阱。</li><li><strong>事后偏见（Hindsight Bias）</strong>：<strong>结果发生后，我们倾向于认为自己早知道会这样</strong> 。这种“马后炮”心理由叙事本能驱动，把不可预测的过去重构为显而易见的故事 。我们常听人说“我早料到…”，但事实上当初并无把握。这偏见让人<strong>高估自己预测能力</strong>，从而在未来冒更大风险，也掩盖了学习机会。重要性在于要求我们保持谦逊、记录当时想法避免记忆篡改 。芒格建议决策者记日记，事后对照，防止大脑自我欺骗。应用在投资、政策评估时，需正视运气和未知的作用，不要过度归因自己的英明。</li><li><strong>公平敏感（Sensitivity to Fairness）</strong>：人类对公平公正有强烈的感知和要求，这和相对剥夺感有关 。当觉得被不公平对待时，我们会有强烈的报复或补偿欲望；反之，当我们受益于不公平时，也常有道德压力去纠正。公平观念因文化而异，一个时代的公平在另一个时代可能被视为不公（如奴隶制历史上曾被接受过） 。但总体而言，<strong>人类会为维护公平付出代价</strong>（如在实验中愿意牺牲利益惩罚不公平行为）。重要性在于管理决策中务必考虑人们的公平感，否则可能引发消极怠工或抗议等（哪怕客观上不理性）。应用在制度设计、争端解决中，强调程序正义和结果合理以获得公众认可。</li><li><strong>基本归因错误（Fundamental Attribution Error）</strong>：人们倾向于<strong>高估他人行为中的内在因素，低估情境因素</strong> 。简单说，就是当别人出错，我们归因于其性格或能力问题；而忽视可能是环境或运气导致 。这让我们<strong>过度相信行为的一贯性</strong> 。实际中他人行为会随情境改变，但我们常贴上固定标签，导致屡被“出乎意料”。重要性在于培养全面归因：考虑外部情境在塑造行为中的作用。例如，员工业绩差可能是工具不良或市场不好而非他懒惰无能。应用在管理、社交中，给予他人更多情境上的理解，预测行为时别忽略环境变化。</li><li><strong>权威影响倾向（Influence from Authority）</strong>：著名的米尔格伦电击实验和斯坦福监狱实验都展示了<strong>人在权威面前的服从倾向</strong> 。我们从小生活在各种等级结构中，在不确定或压力情境下本能地“看向领导”寻求指示 。这一倾向有利于组织行动统一，但也容易让人丧失自主判断做出不道德行为（实验中参与者因为听从研究者指令而对他人施加高压电）。权威影响的重要性在于领导者肩负责任——知道下属会依指示行事，因此更要谨慎言行 。对于个人，意识到这一倾向有助于在面对不合理权威要求时坚持原则。应用在管理、教育和遵从心理研究中。</li><li><strong>压力影响倾向（Influence from Stress）</strong>：当人处于强烈压力或威胁下，会触发<strong>生理和心理的应激反应</strong>，这会<strong>放大其他偏见</strong> 。压力让我们进入战或逃的本能模式，此时更依赖直觉和习惯，理性思考（Kahneman 所说的“系统 2”）被削弱 。因此在压力下，人更易从众、更听权威、更固执己见等等。特种兵有句格言：“激战中，你不会升华到理想水平，只会下落到平时训练水平” 。这说明在高压情境中，平时养成的习惯和训练才是可靠的。重要性在于重视训练和预案，让正确行动成为本能。应用在应急管理、军事和任何高压行业中，确保人员在压力下仍能发挥。</li><li><strong>幸存者偏差（Survivorship Bias）</strong>：历史由胜利者书写，我们往往只看到<strong>幸存者的成功经验</strong>，看不到那些无声埋葬的失败案例 。这导致我们<strong>系统性高估成功概率</strong>，并归因于成功者的做法，而没意识到可能很多采取相同行动的人失败了只是没被关注 。典型例子：二战飞机返航的弹孔分布分析，如果只看返航机，以为应该加强机身弹孔多处的装甲，实际上真正致命的是弹孔在油箱等关键部位的飞机没回来——要加强的是没弹孔处。幸存者偏差提醒我们在总结规律时，要考虑看不见的失败样本。应用在商业（不要只学成功企业，也要研究失败教训）、科研（发表偏差）等领域，以避免过度乐观或误导结论。</li><li><strong>行动偏好（Tendency to Want to Do Something）</strong>：也称<strong>干预本能或静坐困难</strong>。很多时候“<strong>闲着什么都不做</strong>”对问题可能是最好的处理方式，但人类有强烈倾向<strong>采取某种行动</strong>以表示自己有所作为 。哪怕行动不见得有效，至少给人一种控制感。这体现在如医生过度治疗（病人本可能自愈）、投资者频繁交易（而非持有优质资产）等方面。重要性在于懂得<strong>有时不作为也是智慧</strong>：过度干预可能适得其反。例如，市场发生波动时，优秀投资者往往按兵不动，而普通人忙于追涨杀跌反而亏损。此模型适用于政策制定（避免瞎折腾）、投资理财和医学决策等场景，三思而后行，别为了行动而行动。</li><li><strong>确认偏误（Confirmation Bias，选择性视角）</strong>：人们倾向于<strong>寻找、相信支持自己已有观点的信息</strong>，对于相反的信息要么忽视要么歪曲解释 。我们相信自己愿意相信的，并“眼见”自己所信之事 。这是认知中非常深刻的偏差，使人陷入同温层，拒绝改变信念。重要性无需多言：科学方法之所以有效，就在于其反直觉地迫使我们尝试证伪、接纳反证，从而对抗确认偏误 。在日常中，我们也应主动听取不同意见，设置反方论证。适用于所有需要客观判断的场合——投资、科研、决策。芒格自己就强调阅读反对观点来校正偏见。</li><li><strong>机会成本（Opportunity Cost）</strong>：做出一种选择就意味着放弃其他选择中可能获得的最高收益，即该收益就是决策的机会成本 。一句话，“天下没有免费的午餐” 。理解机会成本极其重要，因为人的时间金钱有限，<strong>每做一件事就失去做别件事的机会</strong> 。例如，你花一小时看剧，那么机会成本是这一小时本可用来学习或工作的收益。商业投资中尤其强调机会成本：资金投在项目 A 上，就错失项目 B 可能的回报。精明的决策者会比较各种方案的机会成本，选择性价比最高者。这一模型适用于所有涉及资源分配的场景，是经济学的基本思维。</li><li><strong>创造性破坏（Creative Destruction）</strong>：经济学家熊彼特概括资本主义本质的术语，指<strong>新事物的创造不可避免地摧毁旧事物</strong> 。企业家受到逐利激励，在不断创新、颠覆中推进技术和产业前进，但过程伴随旧技术、旧产业的凋零 。例如，智能手机兴起替代功能机和相机，网购兴起冲击传统零售。创造性破坏是市场经济活力的源泉，但也意味着变革中的阵痛。重要性在于理解<strong>变化是常态</strong>，拥抱创新的同时要有战略应对淘汰的勇气。对于企业来说，要么自己革自己的命，要么被他人颠覆。应用在经济政策（支持创新创业）、企业战略等方面。</li><li><strong>比较优势（Comparative Advantage）</strong>：大卫·李嘉图提出的贸易理论：即使一方在所有方面都占优势，<strong>双方依然可通过专攻各自相对更擅长的领域来互利贸易</strong> 。通俗例子：如果律师打字比秘书还快，也依然应该把打字工作交给秘书，因为律师把时间用于律师业务收益更高（秘书相对优势在打字）。比较优势的重要性在于说明<strong>分工贸易的好处</strong>：专注于机会成本最低（效率最高）的工作，然后交换，双方都能得益 。这模型是自由贸易的理论基石，也可用于个人和公司的任务分配优化。</li><li><strong>专业化（Specialization，分工）</strong>：亚当·斯密在“别针工厂”例子中阐述，<strong>将生产过程划分为多步骤由不同工人专门负责，可极大提高生产效率</strong> 。分工让每个人练就特定技能，减少切换工作带来的时间浪费，从而产出成倍增加。但斯密也指出过度重复劳动会使工作乏味（这需要通过交易收益来平衡） 。专业化的重要性在于推动了工业革命和现代经济增长，是组织提高效率的主要途径之一。例如，软件开发中前端、后端、测试各司其职，能更快交付产品。但也需适度轮岗或激励，以免工人厌倦或技能固化。应用在经济学、管理学等一切涉及流程优化的领域。</li><li><strong>占据制高点策略（Seizing the Middle）</strong>：源自国际象棋的思想——<strong>控制棋盘中央</strong>通常意味着更大机动性和优势 。在商战中类似的策略是占据价值链中最关键环节，以对上下游取得支配地位 。历史案例：洛克菲勒垄断石油炼油环节，使上下游都受制于他；微软控制 PC 操作系统，从而掌握软件生态主导权 。这一模型的重要性在于如果能找到产业链中的“咽喉”，就能取得竞争主导。一家公司若无法掌握制高点，则要小心被占据该位置的对手挤压。适用于战略规划和竞争分析，确定业务布局的关键节点。</li><li><strong>知识产权保护（Trademarks, Patents, Copyright）</strong>：商标、专利、版权等制度保护创造者的智力劳动成果，<strong>提供垄断性权利以激励创新</strong> 。没有知识产权，发明创造很容易被他人复制而创作者无利可图，创新动力将大减 。这些制度的重要性在于<strong>鼓励创造</strong>与<strong>信息公开</strong>的平衡：给有限期垄断换取公开发明细节，长期看整个社会受益。例子：药企凭专利独享新药利润一定年限，之后仿制药出现大众得益。应用在企业研发战略（专利布局）、文化产业（版权保护）以及国家科技政策领域，以保障创新者权益、促进技术进步。</li><li><strong>复式记账法（Double-Entry Bookkeeping）</strong>：14 世纪起源于意大利热那亚的一项财务制度革新。其规则是每笔交易在账簿中<strong>须有借贷两方的对应记录</strong>，确保资产负债平衡 。复式记账的出现极大提高了财务记录的准确性和防错能力，为现代商业发展奠定基础 。重要性在于它提供了一种<strong>自我校验</strong>机制：每笔收入必须对应某项负债或权益的增加，否则账目不平 。这在今天看来理所当然，但在当时是革命性的改进，使得企业可以有效管理复杂财务。现代不管是个人理财软件还是企业会计，都建立在复式记账原则上。</li><li><strong>效用理论（Utility：边际效用递减等）</strong>：效用指满足感或有用性。在大多数情况下，<strong>每增加一单位某物带来的额外效用会递减</strong> 。这就是边际效用递减规律：如一个口渴的人，第一杯水效用很高，第二杯就低很多，喝十杯可能还会有负效用（不适） 。理解效用变化对资源配置很重要。还有些情况存在<strong>临界点</strong>：效用随数量先增加后突然剧减（如饮水过量会中毒）。效用理论提醒我们<strong>考虑规模和阈值</strong>：比如给福利时适度即可，过多可能适得其反。应用在经济学、营销学（定价、产品搭配）以及日常决策（适可而止）中。</li><li><strong>瓶颈（Bottlenecks）</strong>：系统产出往往受制于其中最狭窄处，<strong>瓶颈决定整体通量</strong> 。无论是生产线还是项目流程，只要某一步跟不上，整体就会堵在那 。比如工厂所有工序都快，但包装慢，那产能由包装工序决定。管理学的“关键链”理论即基于此。瓶颈模型重要在于指导我们优化系统需<strong>聚焦瓶颈</strong>：改善非瓶颈处效果甚微，而疏通瓶颈可大幅提升整体效率。应用在制造业流程优化、交通系统设计（拓宽拥堵路段）、企业管理（找出限制公司增长的主要因素）等方面。</li><li><strong>囚徒困境（Prisoner’s Dilemma）</strong>：博弈论经典模型。两名嫌犯各自有<strong>合作（沉默）或背叛（招供）的选择。理性自利分析，他们都会选择对自己最有利的招供，结果两败俱伤；而其实如果都合作沉默会更好 。囚徒困境体现个人理性 ≠ 集体理性</strong>的矛盾。现实中类似场景很多，如价格战、军备竞赛：各方各自行动导致大家都不好过。本模型重要性在于让我们理解<strong>合作的重要</strong>和建立信任机制、强制约束的必要。例如，欧佩克限产协议试图解决产油国间的囚徒困境，使大家都受益。应用在经济、政治、生物（动物的进化博弈）等领域。</li><li><strong>贿赂及代理问题（Bribery &amp; Principal-Agent Problem）</strong>：在经济活动中，代理人若能通过<strong>收受贿赂</strong>获得私利，往往会损害委托人的利益 。这是一种特殊的套利行为：规则执行者被买通，规避了本应遵守的规则 。贿赂现象表明制度设计中的<strong>激励相容</strong>和监督机制多么重要，否则个人会为了眼前利益破坏系统公平。例如，官员收贿可能放纵违法企业，审计员收贿出具假报告。这也是典型的委托-代理问题：代理人目标与委托人不一致。重要性在于反腐和完善制度，使得违规成本高于潜在收益。应用在公司治理、政治制度等领域，通过监察和问责防止“监守自盗”。</li><li><strong>套利（Arbitrage）</strong>：在两个市场间<strong>低买高卖无风险获利</strong>的行为 。经典套利是价格差同时存在即可赚取差额，比如汇率或股票在不同市场报价不一，交易者可以买入低价市场、卖出高价市场获利 。套利看似简单但实际很快被消除，因为一旦有人套利，低价处被买高、高价处被卖低，价格趋于统一。套利模型的重要意义在于金融市场定价效率，以及在广义上寻找<strong>制度或市场漏洞</strong>牟利的思维。许多商业模式可以看作“场景套利”（如在信息不对称的地方赚钱）。但需注意持续套利往往引来竞争而利润消失。应用在金融、贸易和商业创新等场景。</li><li><strong>供需原理（Supply and Demand）</strong>：经济学最基本模型，描述<strong>有限供给和需求竞争如何决定价格</strong> 。若某商品供不应求，价格上涨；供过于求则价格下跌，最终趋向某个均衡点 。虽然现实中均衡价格动态变化，但这个框架适用极广，是理解市场的关键 。重要性在于透过供需看问题：比如房价上涨，是需求旺盛还是供给不足？政策调控要么抑制需求（限购）要么增加供给（建房）。供需模型也解释薪资、汇率等。几乎所有市场行为都可套入这一模型分析，是经济决策者和商业人士的必备工具之一。</li><li><strong>稀缺与博弈（Scarcity &amp; Game Theory）</strong>：资源有限且竞争存在时，就产生博弈局面。博弈论研究在特定规则下，各方如何决策以优化自身利益 。不同的资源稀缺和规则组合形成各种博弈模型（如零和博弈、合作博弈）。理解博弈论的重要性在于<strong>预测竞争对手行为</strong>并制定最优策略。例如，竞标拍卖中如何出价、市场定价是否跟随对手、甚至囚徒困境都是博弈问题 。需要注意人并非完全理性，博弈论提供理性框架但现实可能偏离。应用在经济、军事战略、谈判等领域，通过模型推演找到最佳应对策略或均衡状态。</li><li><strong>亲临前线（Seeing the Front）</strong>：军事格言，最有价值的情报往往来自<strong>领导者亲赴一线实地观察</strong> 。纸上汇报或下属转述可能失真或有偏， 而身临其境能获取第一手信息和直观感受，也能提高二手信息的质量（因为下属知道领导可能亲查更谨慎）。这一模型在管理上很重要：芒格曾引用过“地图不等于领土”来强调必须亲见实际情况才能避免闭门造车 。例子：日企管理层常去车间“现场、现物、现事实”了解问题，就是这一思想。适用于企业管理、军事指挥，提醒决策者不要完全依赖报告，多到一线看看真实状况。</li><li><strong>非对称作战（Asymmetric Warfare）</strong>：当对手力量悬殊时，弱势一方往往<strong>采取非常规策略</strong>，不按强者熟悉的规则出牌，以小博大 。典型如游击战和恐怖主义，以灵活机动或制造恐慌来对抗正规军 。商业上，小企业无法与巨头拼资源，就可能聚焦差异化、游击战术（如 Uber 早期对抗出租车行业采用绕监管打法）。非对称战略的重要性在于弱者也有胜算，就看能否巧用优势、避开对手强项。对于强者，则需预料对手可能打“非常规牌”，不能只守常规。应用在军事战略、竞争策略上，制定针对性战术避免陷入对方节奏。</li><li><strong>两线作战（Two-Front War）</strong>：原指军事上在两个战线同时对敌，典型例子是二战中德国东西两线作战，分散兵力导致失败 。引申到竞争中，<strong>同时面对多个对手&#x2F;任务</strong>会严重削弱集中火力。因此战略上，通常避免自开第二战场。如果被迫两线作战，要尽快<strong>各个击破</strong>或讲和一边。相反，如果你能逼对手陷入两线作战，他将疲于奔命。商业上如一家公司内忧外患（内部斗争+外部竞争）就相当于两线作战，必须先稳定一端再对付另一端 。重要性在于资源有限时<strong>聚焦</strong>。在商业、政治中都应慎重选择战场，避免分散投入导致双输。</li><li><strong>反叛乱策略（Counterinsurgency）</strong>：针对游击战&#x2F;叛乱的应对之策 。传统上政府军对游击队往往力量大却难取胜，因为对方闪击藏匿、民众支持。这促使发展“反叛乱”理论：如彼得雷乌斯将军在伊拉克采用的策略，不一味增加武力，而是<strong>争取民心、切断叛乱根基</strong> 。以攻心和发展来对抗敌方非对称战术。商业竞争中类似，当对手采取非传统竞争手段时，也需要相应“反制叛乱”策略——例如面对价格战搅局者，龙头企业可能通过提升服务、绑定客户等来化解。此模型体现<strong>以系统性策略对抗非常规挑战</strong>，适用于军事和商业竞争中的特殊局面。</li><li><strong>相互确保毁灭（Mutually Assured Destruction，MAD）</strong>：冷战核战略概念，指双方武器强大到足以在被对方消灭前也消灭对方，从而<strong>强者之间反而不敢开战</strong> 。因为一旦冲突升级，没有胜者只有两败俱伤。此理论在美苏核对峙中维系了表面和平。同理在商业领域，两个巨头都很强大时往往避免正面价格战，因为彼此杀价只会两败俱伤，反而倾向于默契维持高价（这就涉及博弈论里的纳什均衡）。需要注意的是，在<strong>极端黑天鹅</strong>下 MAD 仍可能失效（如误判导致核战争），所以风险仍在尾部 。重要性在于理解强强对决下遏制冲突的动态：明确摧毁对手也意味着自毁，理性选择是克制竞争或寻求合作。应用在国际关系和寡头垄断市场分析中。</li></ol><h1 id="参考资料"><a href="#参考资料" class="headerlink" title="参考资料"></a>参考资料</h1><p>本文内容综合自查理·芒格本人演讲、《穷查理宝典》等资料，并特别参考了 Farnam Street 博客对芒格思维模型的全面阐述 以及相关经典理论出处，以确保准确可靠。上述 100 个模型并非芒格亲拟清单，而是根据他的跨学科智慧理念整理的常用思维模型合集 。掌握并灵活应用这些模型，有助于构建芒格所说的“多元思维模型格架”，从而在学习、决策和问题解决中取得更佳效果。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/">深度研究</category>
      
      <category domain="https://deusyu.app/categories/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/DeepResearch/">DeepResearch</category>
      
      <category domain="https://deusyu.app/categories/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/DeepResearch/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/DeepResearch/Blog/Hexo/">Hexo</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%B7%B1%E5%BA%A6%E7%A0%94%E7%A9%B6/">深度研究</category>
      
      <category domain="https://deusyu.app/tags/DeepResearch/">DeepResearch</category>
      
      
      <comments>https://deusyu.app/posts/munger-100-mental-models/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>1000个真正的粉丝</title>
      <link>https://deusyu.app/posts/1000-true-fans/</link>
      <guid>https://deusyu.app/posts/1000-true-fans/</guid>
      <pubDate>Wed, 05 Feb 2025 21:08:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>这是 kk 的博客《1000 True Fans》的中文译本。</p></blockquote><p><strong>“如果你只想读一篇有关市场营销的文章，那就读这一篇。”</strong></p><p><strong>“成功”没有多复杂，只要你在一开始能让 1000 个人非常、非常满意就可以了。</strong></p><p>原文链接：<a href="https://kk.org/thetechnium/1000-true-fans/">https://kk.org/thetechnium/1000-true-fans/</a></p><hr><blockquote><p>我在 2008 年首次发表了这篇文章，当时这一思想尚未成熟，不够完善。在 8 年之后的今天来看，我原来的那篇文章的确需要更新了——由别人来更新，而不是我。在此我只是简要地重新阐述一下核心思想，因为我认为这些思想对于所有想要创业或者想要做点儿什么的人来说都是有用的。<br>——凯文·凯利</p></blockquote><p>要成为一个成功的创造者，你不需要太多的基础资源。你不需要数百万美元，数百万客户或数百万粉丝。作为一个手工艺人、摄影师、音乐家、设计师、作家、动画师、软件开发者、企业家或发明家，你只需要 1000 个真正的粉丝。</p><p>真正的粉丝指的是“愿意购买你生产的任何物品的粉丝”。这些铁杆粉丝会开车 200 英里来看你唱歌；他们会购买你书籍的精装版、平装版和有声书版本；他们会买你下一个雕像，甚至从未看过；他们会为你免费 YouTube 频道的“精选版”DVD 付费；甚至愿意每个月尝试你主厨的新菜品。如果你有大约 1000 个这样的粉丝（也叫超级粉丝），你就能谋生——如果你满足于谋生而不是发财的话。</p><p>这里的数学原理是这样的。你需要满足两个条件。首先，你必须每年创作足够多的作品，平均每个真正的粉丝可以带来 100 美元的利润。根据不同的艺术和行业，这个目标的实现难度不一，但在每个领域中，这都是一个很好的创作挑战，因为给现有客户提供更多的东西，总比寻找新粉丝容易且更好。</p><p>其次，你必须与你的粉丝建立直接关系。你必须与粉丝建立直接关系，也就是说，他们必须直接向你支付支持。这种关系不同于你从音乐公司、出版商等中介处获得的少量分成。如果你从每个真正的粉丝那里赚到的 100 美元全归你所有，那么你只需要 1000 个粉丝，每年就能赚到 10 万美元。对于大多数人来说，这足以生存了。</p><p>1000 个粉丝的目标要比 100 万个粉丝要容易得多。上百万付费粉丝不是一个现实的目标，尤其是你刚起步的时候。但 1000 个粉丝是完全可以实现的。你甚至可以记住 1000 个粉丝的名字。如果你每天新增一个真正的粉丝，几年后你就能积累到 1000 个真正的粉丝。</p><p>1000 这个数字并不是绝对的。它的意义在于它的大致量级——比 100 万低了 3 个数量级。实际的数字需要根据个人情况调整。如果你每年只能从每个真正的粉丝身上赚 50 美元，那么你需要 2000 个粉丝。（同样，如果每年你能从每个粉丝那里赚取 200 美元，那你只需要 500 个真正的粉丝。）或者你可能只需要 75,000 美元的年收入来维持生活，那么你可以相应减少粉丝的数量。如果你是一个二人组合或有合作伙伴，那么你需要把数字乘以 2，需要 2000 个粉丝。对于一个团队，你需要进一步增加粉丝数。但好消息是，真正粉丝数量的增长是线性的，且与团队规模成线性比例；如果你把团队增加 33%，你只需要增加 33%的粉丝数。</p><p>另一种计算真正的粉丝支持的方法是，目标是每年从他们那里获得一天的工资。你能激励或满足他们，让他们为你支付一天的劳动费用吗？这是一个很高的标准，但对于全球来说，1000 人来说也不是不可能的。</p><p>当然，并不是每个粉丝都是超级粉丝。虽然 1000 个真正的粉丝的支持足以谋生，但每一个真实粉丝背后，可能会有两三个普通粉丝。可以想象中心是真正的粉丝，而外围是普通粉丝的同心圆。这些普通粉丝可能偶尔购买你的作品，或者仅仅购买过一次。但他们的普通购买将扩大你的总收入。也许他们能带来额外的 50%的收入。然而，你依然需要关注真正的粉丝，因为真正粉丝的热情可以增加普通粉丝的支持。真正粉丝不仅是你收入的直接来源，还是向普通粉丝的主要营销力量。</p><p>粉丝、顾客、赞助人一直存在。这里有什么新鲜的？有几个新的变化。尽管在过去的时代，和顾客的直接关系是默认的方式，但现代零售的好处意味着，许多创作者在上个世纪并没有和消费者直接接触。即使是出版商、工作室、唱片公司和制造商，也往往没有关键的客户信息。例如，尽管纽约的书籍出版商已经经营了几百年，但他们并不知道核心忠实读者的名字。对于以前的创造者来说，这些中间商（通常不止一个）意味着你需要更大的受众才能获得成功。随着无处不在的点对点通信和支付系统的出现——也就是今天的互联网——每个人都能访问优秀的工具，任何人都可以直接向世界上的任何人推销自己的产品。因此，俄勒冈州本德市的内容生产者可以像纽约的唱片公司一样轻松地把一首歌卖给尼泊尔加德满都的人（甚至可能更轻松）。这种新技术使内容生产者能够保持与粉丝的关系，这样顾客就能成为粉丝，而且内容生产者可以得到所有的收入，这减少了需要粉丝的数量。</p><p>创造者能够保留全部收入是革命性的，但第二个技术创新进一步放大了这种力量。点对点通信（如网络）的一个基本优点是，最不起眼的节点与最受欢迎的节点只有一步之遥。换句话说，最不起眼的冷门书籍、歌曲或创意，只需要一步，就能接触到畅销书、歌曲或创意。互联网初期，大型内容和产品整合商，如 eBay、亚马逊、Netflix 等，注意到所有最冷门商品的总销量，往往等于甚至超过少数畅销商品的销量。Chris Anderson（我在《Wired》专栏的继任者）将这种现象命名为“长尾效应”，指的是销售分布曲线的形状：一条低而几乎无尽的线，代表每年只卖出几本的冷门商品，形成了一个长长的“尾巴”，与畅销书的急剧垂直形态对比。尾部的面积和头部一样大。通过这个洞察，整合商有了鼓励观众点击冷门商品的巨大动力。他们发明了推荐引擎和其他算法，来引导注意力集中在长尾中的稀有创作上。甚至像谷歌、必应、百度这样的搜索公司也发现，将稀有商品推向搜索者有利可图，因为他们也可以在长尾中卖广告。结果是，最冷门的东西变得不再冷门。</p><p>如果你住在世界上任何一个人口大约为 200 万人的小镇上，那么你可能就是这个小镇上唯一一个迷恋死亡金属音乐的人，或者是唯一一个对耳语敏感的人，或者是唯一一个需要左手钓鱼卷线器的人。在网络出现之前，你根本无法满足这一需求。你会在这种迷恋中感到孤单。但现在，满足这个需求只需一步之遥。无论你作为创作者有什么兴趣，你的 1000 个真正的粉丝离你只有一步之遥。据我所知，没有任何产品、想法或欲望是互联网上没有粉丝基础的。任何制作或想到的东西都可以吸引至少 100 万个人中的一个——这是个低标准。然而，如果每 100 万个人中仅有一个人感兴趣，那全世界也有 7000 人。这意味着任何一个百万分之一的吸引力都能找到 1000 个真正的粉丝。关键是如何找到这些粉丝，或者更准确地说，让他们找到你。</p><p>现在有一个问题；大公司、中间商、商业生产商，都没有能力与这 1000 个真正的粉丝建立联系。他们机构上无法找到和接触到这些小众的观众和消费者。这意味着长尾市场对你这个创作者是敞开的大门。你将独占你的百万分之一的真正的粉丝。与此相关的工具不断改进，包括社交媒体的创新。如今，围绕一个创作者建立 1000 个真正的粉丝，从来没有比现在更容易，也从来没有更容易保留这些粉丝。</p><p>为真正的粉丝创作者提供的新工具之一就是众筹。让你的粉丝为你的下一个作品出资，真是个天才的想法。这是一种双赢的局面。全球有大约 2000 个不同的众筹平台，许多专门为特定领域服务：为科学实验、乐队或纪录片筹款。每个平台有自己不同的要求和资助模式，有的专注于某些特定的兴趣。一些平台要求“全额筹款”目标，其他平台允许部分资助，有些为已完成的项目筹款，像 Patreon 这样的平台则为持续项目筹款。Patreon 的支持者可能会为一本月刊、一个视频系列或艺术家的薪水提供资金。最著名、最大的众筹平台是 Kickstarter，迄今已为超过 100,000 个项目筹集了 25 亿美元。一个成功的 Kickstarter 项目的平均支持者人数为 241 人——远低于 1000 人。这意味着，如果你有 1000 个真正的粉丝，你就可以进行一场众筹活动，因为根据定义，真正粉丝一定会成为 Kickstarter 的资助者。（尽管你活动的成功与否还取决于你要求粉丝提供什么）。</p><p>事实上，培养 1000 个真正的粉丝的做法十分耗费时间，有时候极其令人头疼，而且并不适用于所有人。做得好（为什么不做得好呢？），它可以成为另一个全职工作。充其量，它将是一个非常消耗时间和挑战性的兼职任务，需要不断的技能。有许多创作者并不想与粉丝打交道，老实说，他们不应该。最好是他们继续画画、缝纫或做音乐，雇人来处理他们的超级粉丝。如果你是这样的创作者，你雇了人来处理粉丝，助手会让你的公式发生变化，增加你需要的粉丝数量，但这也许是最合适的方法。如果你走得这么远，那为什么不“外包”处理粉丝的工作给中间商呢——唱片公司、工作室、出版商、零售商？如果他们为你工作也没问题，但记住，在大多数情况下，他们在这方面的能力比你还差。</p><p>1000 个真正粉丝的数学不是二元选择——非此即彼。你不必排除其他途径。许多创作者，包括我自己，会同时通过与超级粉丝的直接关系和传统中介的合作来实现目标。我曾经为几家纽约的大型出版商出版过书籍，也有自出版的经历。还用过 Kickstarter 来给我的真正的粉丝出版书籍。我根据内容和目标选择不同的方式。但无论如何，培养真正的粉丝都能丰富我选择的路径。</p><p>总结：1000 个真正的粉丝是一条不同于明星之路的成功路径。与其努力冲击铂金畅销书、票房大片和名人地位，你不妨瞄准与 1000 个真正粉丝建立直接联系。在这个过程中，无论你最终能获得多少粉丝，你都不会被短暂的迷恋所包围，而是被真正的欣赏所环绕。这是一个更加理智的命运，而你也更有可能实现这一目标。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E8%BD%AC%E8%BD%BD/">转载</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E8%BD%AC%E8%BD%BD/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      
      <comments>https://deusyu.app/posts/1000-true-fans/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>2024.11 日本东京都周边行 镰仓篇｜江之岛｜倒挂电车</title>
      <link>https://deusyu.app/posts/japan-kamakura/</link>
      <guid>https://deusyu.app/posts/japan-kamakura/</guid>
      <pubDate>Sun, 24 Nov 2024 01:38:00 GMT</pubDate>
      
      <description>镰仓kamakura</description>
      
      
      
      <content:encoded><![CDATA[<p>镰仓的名片是：江之岛｜倒挂的列车｜江之电｜镰仓大佛｜七里滨海岸</p><p>在家失业快一个月，除了面试，也没有其他什么活动，打算再出去旅行一阵。由于北京的天气越来越冷了，我平素的规律生活，早上&#x2F;下午跑步，然后在工作（不是上班）的精神和注意力就会很好。</p><p>这次再去就打算去东京都周边玩玩，上次去东京都的话，主要是都市圈内的漫步，这次打算周边游。</p><h1 id="建议"><a href="#建议" class="headerlink" title="建议"></a>建议</h1><p>很多人有这样的建议，沿着地理中心向外找酒店，希望偏远一点，价格会便宜一点。</p><p>但我提供另外一种思路，去年夏天的东京都八丁堀附近的 4 星就很便宜，早上还提供精致的日式早餐，具有 nogami 意味的早餐。<br>但是今年秋天去，在交通枢纽：新宿站，就很贵，3 星的大概要 1k 左右一晚。</p><p>住在地理中心的好处是白天游玩结束后可以漫步夜晚的东京，既有人文也有城市风光。晚一点的话还可以去享受深夜的居酒屋或者排一排一蘭拉面，认识些同样来旅行的外国人。</p><h1 id="交通和住宿"><a href="#交通和住宿" class="headerlink" title="交通和住宿"></a>交通和住宿</h1><p>这次我是在东京都周边玩，所以住的交通枢纽新宿站附近，此站也在环线-山手线上，所以非常适合游玩东边的地区，比如此行的规划之地：镰仓、箱根、河口湖，另外像是横滨、伊豆半岛、静冈也是比较合适，在往东的话，住在名古屋就比较合适了。</p><p>我此行选择住在歌舞伎町一番街，这里是东京都比较混乱的地方了。</p><p><img src="https://r2.deusyu.app/e3568139-33fa-449d-9f95-7d1c26da75d7.jpg" alt="歌舞伎町一番街"></p><h2 id="到达"><a href="#到达" class="headerlink" title="到达"></a>到达</h2><p>机场要选择羽田机场(HND)，成田机场(NRT)太远了，但是很多<em><strong>北京</strong></em> → <em><strong>成田</strong></em> 的机票就便宜许多，这是一个 trade-off 的问题。（大城市中上海去日本的机票要便宜很多，班次也多很多，可以选择上海）</p><p><img src="https://r2.deusyu.app/46582dd2-eb78-4a30-a356-c4bf9c760f75.png"></p><p>在等地铁时，我查看线路信息，拿着箱子，一不留神，箱子差点滑落进铁轨，旁边的日本老哥显得比我着急，快速地帮我 hold 住，这是来过霓虹几次之后体验到的国民性，我连忙说感谢。</p><h2 id="新宿-Shinjuku"><a href="#新宿-Shinjuku" class="headerlink" title="新宿 Shinjuku"></a>新宿 <strong>Shinjuku</strong></h2><p>出新宿站，遇到了一个很特别的小黄毛，随手拍，他是有点帅。</p><p>其实是这小子挡住了我拍东边的十字路口</p><p><img src="https://r2.deusyu.app/669edd32-bdb9-41e9-ba25-76f045a56906.jpg"></p><p>恰逢万圣节，路上的 Coser 非常多，什么流派也有。便利店里也短暂的禁酒了，想来独自旅行夜晚总要买一些朝日啤酒。</p><p><img src="https://r2.deusyu.app/b3761e9c-0b12-4ed8-bb8a-dfa45add3d2f.jpg" alt="便利店的禁酒标识，将放酒的冰柜隐藏了起来"></p><p><img src="https://r2.deusyu.app/1772ad35-359e-478a-a22b-b40d21f7784f.jpg" alt="新宿街头cosplay弗利萨"></p><p><img src="https://r2.deusyu.app/ee011de9-26ef-41fe-9be5-caf441df9f07.jpg" alt="纸钞屋里的达利"></p><p>之后随便找了一家烧鸟屋，吃了烧鸟喝了啤酒，感觉上讲没有福冈的物美价廉，跟国内的烤串相比，又精致了许多，总体的量会很少。旁边的漂亮大姐和好友喋喋不休，依稀能听懂几个单词，不过并没有感到很厌烦，因为她本人长得蛮漂亮，还时不时抛来一些目光，似乎在审视我点的菜。</p><p><img src="https://r2.deusyu.app/6878d448-2847-4814-bebd-eed4016556a1.jpg"></p><p>日式酒店的传统艺能，泡澡，一天走的路实在太多，必须要好好泡一泡，去除一天的疲劳。</p><p><img src="https://r2.deusyu.app/326414d2-b718-4dfc-b45d-c4bf23ad4325.png"></p><h1 id="镰仓"><a href="#镰仓" class="headerlink" title="镰仓"></a>镰仓</h1><p>在 T + 1 天，去镰仓。</p><h2 id="交通、需要注意的"><a href="#交通、需要注意的" class="headerlink" title="交通、需要注意的"></a>交通、需要注意的</h2><p>在<strong>镰仓站西口</strong>出站后购买江之电的一日周游券，此券会在交通上省不少钱，由于日本的公共交通大多由私企运营，所以不会像中国一样便宜。</p><p>镰仓的公共交通一般就江之电和湘南单轨电车，江之电是连接镰仓市与藤泽市江之岛，湘南单轨电车是日本首个使用 SAFEGE 悬挂式单轨技术的公共交通系统，也就是非常著名的倒挂列车，我只录了部分视频，没有拍摄好看的照片，主要是没有找到机位。</p><p><img src="https://r2.deusyu.app/2a726dfe-0068-492a-af93-badacf36f88f.png" alt="江之电列车路线"></p><p><img src="https://r2.deusyu.app/efc4f193-404c-43be-8475-8bab65f8e000.png" alt="湘南单轨电车"></p><p>旅行的路线也就很简单，沿着江之电从镰仓站到藤泽站，著名的景点全在线路上，想要去的地方直接下车即可。然后晚上从藤泽做电车回到东京新宿。</p><p>那么我的 route 就是：</p><p>新宿站 → 镰仓站 → 小町通&amp;八幡宫 → 长谷寺 → 七里滨 → 镰仓高校前 → 江之岛 → 登岛 → 藤泽 → 东京新宿</p><h2 id="小町通-八幡宫"><a href="#小町通-八幡宫" class="headerlink" title="小町通 &amp; 八幡宫"></a>小町通 &amp; 八幡宫</h2><p><img src="https://r2.deusyu.app/f95879cf-64fe-4db1-ab32-0cbdbd5b8f27.jpg" alt="小町通商店街"></p><p><img src="https://r2.deusyu.app/8be2074f-6105-4611-be11-24e3b424e33a.jpg" alt="抹茶冰淇淋"></p><p>平生最爱抹茶冰淇淋，看到了就要买一支。这是一个形状有其他味道的抹茶冰淇淋 😇</p><p>这次初来时，天气并不是很好，但游客还是非常的多。</p><p><img src="https://r2.deusyu.app/37252d8f-91bf-4ac2-8c30-e49ae476e326.jpg" alt="这个七福神其实镰仓旅行的暗线"></p><p>我其实不想在这里写，记不清哪天看过一部番，是《终末的女武神》讲的是众神要灭亡人类的故事，最后女武神伦希尔德作为保人派提出了“诸神黄昏”的方案，由人类最强与众神 1 v 1 大战，其中就有七福神的故事，这里面脑洞比较大的是，七福神居然是一个人…神。</p><p>镰仓旅行可以集齐 7 个朱印，这里的看上图，是供奉的弁财天。</p><p><img src="https://r2.deusyu.app/ba68e57e-88dd-47f0-9667-4717f71ca953.jpg" alt="外国旅客非常多"></p><p>霓虹很少见胖子，他们的运动量简直太高了，想要做电车就要不停的换乘，走路…，胖可能是真富人专有</p><p><img src="https://r2.deusyu.app/dfac7c78-3401-42eb-95bf-beda918e19ad.jpg" alt="八幡宫前，富士的APS-C画幅相机的拍摄质量还是比S23U强很多"></p><p>镰仓历史上最有名的恐怕是镰仓幕府，鹤冈八幡宫也是由当时的幕府将军源氏创建的。</p><p>很多年前看过一本讲日本历史的书，把源赖朝比作曹操，说三国有乱世之枭雄曹孟德，大洋彼岸亦有源赖朝马上挥鞭，往事越千年。不过我记得很清楚，这位源赖朝应该是坠马而死，以马为始，征战四方，以马为终，而后死得其所。</p><blockquote><p>鹤冈八幡宫最初由源赖义于 1063 年创建。1180 年，镰仓幕府的第一位将军源赖朝将神社扩建并迁移到现在的位置。这座神社供奉八幡三神：应神天皇、比卖神和神功皇后。八幡是源氏家族和武士阶级的守护神。</p></blockquote><p>幕府将军是武士阶层的崛起，整体的制度还真有点像携天子以令诸侯，不过这里的天皇仅有象征性的权力。好在天皇延续至今，都没有失掉一家血统。</p><p><img src="https://r2.deusyu.app/481976ca-e33e-47ca-a4ea-1e73f0ffecee.jpg" alt="献纳酒桶墙，清酒文化与神道教信仰"></p><p><img src="https://r2.deusyu.app/6ca3eaca-6f1b-49bd-a005-7a5b9dc37ea8.jpg"></p><p>在小町通吃了午饭，饭量惊人，实在是太饿了。这种套餐应该是 nagomi 的一种，加上生啤，达成”痛风套餐“。餐厅的服务员是香港人，说的中文磕磕绊绊，让我帮他看中文招牌怎么写合适，他竖着写三千零零円，使用的写法是每三位一个逗号，我说写数字这样 3 位一个分隔可以，写中文不是太别扭了吗？</p><p>旁边的夫妻是中国丈夫加日本妻子，还是欧美妻子，我已经记不太清，记得那人说几句，她会说一点中文，仅此而已，看着也像旅客。</p><h2 id="长谷寺"><a href="#长谷寺" class="headerlink" title="长谷寺"></a>长谷寺</h2><p><img src="https://r2.deusyu.app/621f49d1-ae9d-49f9-be3a-67f6cc93539a.jpg" alt="江之岛方向的江之电"></p><p><img src="https://r2.deusyu.app/a0b921ed-8569-4f21-9c95-1712beb56397.png" alt="长谷寺门"></p><p><img src="https://r2.deusyu.app/cc28a226-18fa-4a4d-b406-2c1df179810f.jpg" alt="长谷寺的门票是400円"></p><p><img src="https://r2.deusyu.app/10f9011d-461b-45e5-9b7e-f9e45ffdf5ae.jpg" alt="地藏石像群"></p><p>排列整齐的小地藏石像，通常是为夭折的孩子或未出生的婴灵祈福所设，表达父母对孩子的思念与祝愿。</p><p>当然除开这些石像群，寺内还有许多形态各异的小地藏石像，通常象征祈福、守护和良缘，良缘我并没有找到。</p><p><img src="https://r2.deusyu.app/d38f3705-519f-46ec-b86d-ac3c69174a98.png" alt="悲…"></p><p><img src="https://r2.deusyu.app/415bc528-8e47-4ba1-a74a-3ff93415ba6c.jpg" alt="古建筑屋角"></p><p><img src="https://r2.deusyu.app/5773bd5c-aa6a-4c3c-827b-a9bad0babbe7.jpg" alt="长谷寺阿弥陀堂"></p><p><img src="https://r2.deusyu.app/4732d0cb-c8c2-4458-ae65-5c2198ec622d.jpg" alt="观音堂前的金色观音像"></p><p><img src="https://r2.deusyu.app/24d7ce41-6ca4-4dc1-bb2b-ce2d6919e875.jpg" alt="牡蛎壳绘马墙"></p><p><img src="https://r2.deusyu.app/259ce4ad-3e2e-40bf-96a1-70f7e700fb12.jpg" alt="登山看景"></p><p>日本的房子大多都是不同的，基本很少有相似的，风格各异。</p><p>这几次来日本给我最深刻的印象就是，日本的建筑极少会有相似，极少会有雷同，登上高处，极目远眺，大部分会给你眼前一亮的感觉。</p><h2 id="七里滨"><a href="#七里滨" class="headerlink" title="七里滨"></a>七里滨</h2><p>这里的海岸非常不错，大部分人会从这里下车，然后沿着海岸徒步一些距离。</p><p>虽然这里可能不是神奈川冲浪里，但是冲浪的人还是蛮多的，大多是年纪大一点的帅大叔。我抓住一个调侃，问：Are you cold？大叔说 Not at all，相反他觉得很舒服。</p><p><img src="https://r2.deusyu.app/be2b640a-5a7e-42b5-b475-bd10724ca2c6.jpg" alt="天气不是很好，但人依旧很多"></p><p>但是请看连续三张图：</p><p><img src="https://r2.deusyu.app/f9bb0d1d-a38e-43a2-a641-e16ce3bf273c.jpg" alt="帅气surfing"></p><p><img src="https://r2.deusyu.app/0c57c664-1869-4ef7-84b4-b0d4182e01a8.jpg" alt="仓皇落水"></p><p><img src="https://r2.deusyu.app/e44e6011-8425-43cb-988c-273408050f4e.jpg" alt="游回来吧"></p><p><img src="https://r2.deusyu.app/af5cf77f-d495-4b2f-96af-ba8f8e73f6e2.jpg" alt="海岸"></p><p>天气好的时候，在七里滨是可以看到富士山的，今天非常可惜。</p><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><iframe src="https://r2.deusyu.app/8f3775a9-99e0-4682-aad3-a91ea7519355.mp4" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" style="width: 100%; margin:0; aspect-ratio: 16/9;"> </iframe></div><h2 id="镰仓高校前"><a href="#镰仓高校前" class="headerlink" title="镰仓高校前"></a>镰仓高校前</h2><p><img src="https://r2.deusyu.app/7be84930-975f-4243-9101-677ed95cec2c.png" alt="灌篮高手动漫车站"></p><p><img src="https://r2.deusyu.app/5711cc5b-08a3-4f44-9fb1-db5175f3d009.jpg" alt="车站实拍"></p><p>小红书经典热门笔记如下：</p><p><img src="https://r2.deusyu.app/7b6baef5-fd9c-474d-bedb-c6d05a39c6bd.png"></p><p>而实际情况：</p><p><img src="https://r2.deusyu.app/589e8afd-2060-4f9e-9005-2b09e785bac8.png" alt="警告·危"></p><p>分别使用繁简中文来提醒，略显讽刺。但还是有很多人尝试在马路中央去复刻上图的照片。</p><p><img src="https://r2.deusyu.app/7aa61e38-6a01-4adb-b75a-3e05005aa4a7.jpg" alt="危险行为引来了很多安保人员"></p><p><img src="https://r2.deusyu.app/0d7cae3a-44c9-4d87-8cb7-346550a6c06a.jpg"></p><h2 id="江之岛"><a href="#江之岛" class="headerlink" title="江之岛"></a>江之岛</h2><p>等我达到江之岛站的时候，天已经黑了，只能步行通过狭长的通岛公路，天下起了雨。</p><p><img src="https://r2.deusyu.app/fa5e42a1-607f-40c1-9817-feadfa50024d.jpg"></p><p>等我登岛之后，发现没有适合晚上看的景色，而这时才 17 点左右，扫兴而归。返回时遇到一家天然温泉，有点想去泡，但想到还有箱根的旅程，那里的想必更有名。</p><p><img src="https://r2.deusyu.app/251426bb-5d92-4928-97cd-26c7da0fcdcb.jpg" alt="江之岛天然温泉"></p><p>对于北半球来说，旅行还是要夏天，不然下午很早天就黑了，对于很多没有夜生活的地区，大概率是旅人。</p><blockquote><p>江之岛站还有一个麻雀奶奶石川胜子的故事，感兴趣的可以旅行前了解一下。</p></blockquote><h2 id="回东京"><a href="#回东京" class="headerlink" title="回东京"></a>回东京</h2><p>去江之岛站做到藤泽，然后做快的哪趟车，应该是小田急”浪漫“特快。</p><p>去排一兰拉面，大快朵颐。</p><p><img src="https://r2.deusyu.app/606f8808-0b9b-4244-9083-9bb9bc25959f.jpg" alt="5倍辣还是不太行，下次10x"></p><p><img src="https://r2.deusyu.app/a90f96ac-35ac-4c7d-94af-a100290e2f12.jpg" alt="疫情时代隔栏"></p><p>这种吃饭各有各的道理，但是我总觉得像是猪笼…</p><p><img src="https://r2.deusyu.app/08865f7e-f064-45bf-9281-d4213f6cf2b2.jpg" alt="略显豪华的拉面…大餐"></p><p>新宿附近可以吃的拉面非常多，一兰这种猪豚骨拉面蛮齁的。来吃的都是外国旅客，基本上排队要 30mins +了，好在吃一碗拉面大部分人都是很快。</p><p>吃过一次的话，可以尝试其他不同的拉面，比如博多风龙，Ramen Nagi（拉面凪）凪”（Nagi）在日语中意为”风平浪静之处。</p><h1 id="T-2"><a href="#T-2" class="headerlink" title="T + 2"></a>T + 2</h1><h2 id="大船站"><a href="#大船站" class="headerlink" title="大船站"></a>大船站</h2><p>第二天一早就出发去做湘南单轨列车。</p><p><img src="https://r2.deusyu.app/9eef0474-ddcb-40d9-b95c-c9532286e3a4.jpg" alt="没有买到这张明信片"></p><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><iframe src="https://r2.deusyu.app/78a112b2-223d-4290-9356-149af2057965.mp4" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" style="width: 100%; margin:0; aspect-ratio: 16/9;"> </iframe><div style="text-align: center; margin:0;"><p>倒挂列车｜湘南单轨列车</p></div></div><p>这种车看起来很酷，坐上去观光也不错，城市风景一览无余，但是稳定性极差，站立的话就晃来晃去的，坐座位还好。一路上，旁边小男孩也是第一次坐，拿着手机拍拍拍，非常兴奋。</p><p>武汉也是有类似的列车，不过是磁悬浮的。</p><p><img src="https://r2.deusyu.app/8b0e16b3-c79e-4e15-a7a3-8adfcb7e801f.png" alt="B站视频UP主CFCA-Luke拍摄的，大家有机会可以找这样的机位"></p><p><img src="https://r2.deusyu.app/a0c89297-191b-4d2e-8265-af4a7dcce197.jpg"></p><p><img src="https://r2.deusyu.app/aa4ec6f3-6623-4f06-9afd-4373374069d3.jpg" alt="湘南单轨列车进大船站"></p><p><img src="https://r2.deusyu.app/c729d6b5-7455-43a2-a6a7-445a3e44cec7.jpg" alt="车站街景"></p><p><img src="https://r2.deusyu.app/cb631107-7c4d-4114-9799-a74c3be74714.jpg" alt="由于下雨天，蜡烛展变成免费的了"></p><h2 id="东京"><a href="#东京" class="headerlink" title="东京"></a>东京</h2><p><img src="https://r2.deusyu.app/9860327c-0ef8-4f31-88f9-275770c6df55.jpg" alt="雨夜的大盛堂書店"></p><p>拿伞快速行走的人们，可惜没有西装、Glock 19 以及快速换弹夹的基努·里维斯</p><h1 id="旅行的保留节目｜明信片"><a href="#旅行的保留节目｜明信片" class="headerlink" title="旅行的保留节目｜明信片"></a>旅行的保留节目｜明信片</h1><p><img src="https://r2.deusyu.app/107b029c-c5ef-4de6-b08e-612d280d74e3.jpg" alt="江之岛的礼物店"></p><p><img src="https://r2.deusyu.app/3eddf702-26cb-4885-b55e-c0d4e57c5767.png" alt="新宿区的邮局"></p><p>去年在和 B 老师畅游欧洲后，被 B 老师的明信片文化感染了，此后打算在世界各地旅行时，寄给要好朋友当地的明信片。</p><p>明信片，其实在于当地挑选的著名风景图，<code>Greetings from ___</code></p><p>当地邮局的邮戳，可能还有特殊的邮局的风景纪念戳。</p><p>以及来自中国邮政的邮戳，当然中国邮政的速度…</p><h1 id="治愈"><a href="#治愈" class="headerlink" title="治愈"></a>治愈</h1><p>日本是一个很治愈的国家，在东京很浮躁很快节奏，在京都太多的传统文化，在大阪又是醉生梦死的人们，而一些小城，福冈，镰仓，人们都会很治愈，让人回想起未被世故沾染的童年时光。</p><p>今天看了一个视频，才知道夏目友人帐，出了一个 APP 专门给旅人来巡礼。</p><p>日本总是充满了这些认真和细节，我觉得像是这么认真和对细节的把控，想要不成功都很难。</p><p>我走过很多地方，遇到的都是非常友善的人 ，部分都太有礼貌了以至于我都不知道如何应对才显得合适。</p><p>最近发现日语是一种上下文非常丰富的语言，从维特根斯坦我也了解到，语言和民族性以及世界观紧紧相连，大家会照顾所有的人，以达成“和见”——和谐之见解。</p><p>日本的乡下我还没怎么跑，只是做电车的时候看到过一些，非常符合《菊次郎的夏天》中的情景，在后续的旅行也要进行一些乡下的骑行之旅，像是<em><strong>徒步的骑手</strong></em>那样：</p><p>我旅行过很多地方，有时候归来后不能写，不能回忆，对于大脑的冲击非常大，需要静静等待大脑自己冷却下来，慢慢整理起。</p><p>每次旅行都像是一场精神的沉淀，时间让纷繁的记忆慢慢沉淀，似茶叶在杯中舒展，每一个瞬间和现实的生活就慢慢浮现，但这也仅仅是感受世界后的一个切面。</p><p>希望大家走路、路过，感受过。</p><p>愿你被温柔以待，愿万物被温柔以待～</p><h1 id="工具"><a href="#工具" class="headerlink" title="工具"></a>工具</h1><p>以下是 solo trip 的勇气套件</p><ol><li>拍照翻译：Google 智能镜头</li><li>ChatGPT，可以订阅 poe.com</li><li>Perplexity</li><li>欧路词典</li><li>Google Maps</li><li>Google Earth</li></ol><p>拍照翻译的响应速度和质量，Google 智能镜头应该是 No.1，ChatGPT 或者 Anthropic 的 Claude，ChatGPT 的 Android App 或 iOS APP 还能语音通话，这点很重要，孤独了还能跟它聊聊天，分享下见闻。</p><p>Google 的 Gemini 也不错，但是有很多问题它拒绝回答，它的自我审查太严重了，这也是被告太多了的后果。</p><p>去年跟着多邻国学了一些日语，差不多到能到餐厅点菜的水平，但是今天已经忘记差不多了。但是有时候也会 shot，然后喂给 ChatGPT 让它给我指出有哪些日语单词，尝试发音和记忆，这点有时候吃到新颖的食物还有趣。</p><p>Google Earth 一般在大屏幕上使用，方便缩放倍数，观察去哪里的地形以及观赏城市建筑和山川河海，规划出路线。</p><p>当然 Google Earth 也不能太经常看，计划制定的太详细失去了探索和随机的乐趣。我们不是海豹突击队，旅行也不是详尽的去击毙本拉登。</p><p>需要留出冒险和随机的余量。</p><p>Perplexity 是目前最强 AI Search 了，搜索、整理和响应的过程中使用 RAG(Retrieval-Augmented Generation)，结果的准确性非常高，且带有引用，方便人工对结果进行二次 check，我逐步使用它替换了大多数的 UGC 社区，比如小红书。BTW，我觉得后面替代 UGC 的是超强的 AI Search 和 Knowledge，Perplexity 绝对是其中佼佼者。</p><p>以上，做攻略和指引，Perplexity 是首选。</p><p><img src="https://r2.deusyu.app/3aa61855-ab9c-4962-9e3a-a48f3f27d1c0.png"></p><p><img src="https://r2.deusyu.app/879338a4-f99e-4902-adce-dcaa4e8a8c0c.png" alt="使用Google 智能镜头进行翻译，这个酒店的洗衣机全是日文，半点英文没有"></p><h1 id="推荐的旅行-Vlog"><a href="#推荐的旅行-Vlog" class="headerlink" title="推荐的旅行 Vlog"></a>推荐的旅行 Vlog</h1><ol><li><strong>CFCA-Luke 的</strong> <a href="https://www.bilibili.com/video/BV1hi421a7bT/?share_source=copy_web&vd_source=4aa1e10edf6250734f4ec48ef136e1c0">https://www.bilibili.com/video/BV1hi421a7bT/?share_source&#x3D;copy_web&amp;vd_source&#x3D;4aa1e10edf6250734f4ec48ef136e1c0</a></li><li><a href="https://space.bilibili.com/405729969"><strong>陈曦 Stanley_</strong></a> <strong>的</strong> <a href="https://www.bilibili.com/video/BV1Fb421b7YH/">https://www.bilibili.com/video/BV1Fb421b7YH/</a></li></ol><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><p><a href="https://www.trip-kamakura.com/site/hiking-modelcourse/109.html">https://www.trip-kamakura.com/site/hiking-modelcourse/109.html</a></p><p><a href="https://www.hasedera.jp/cn/about/#map">https://www.hasedera.jp/cn/about/#map</a></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E6%97%85%E8%A1%8C/">旅行</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E6%97%85%E8%A1%8C/%E4%B8%87%E9%87%8C%E8%B7%AF/">万里路</category>
      
      
      <category domain="https://deusyu.app/tags/Travel/">Travel</category>
      
      <category domain="https://deusyu.app/tags/kamakura/">kamakura</category>
      
      <category domain="https://deusyu.app/tags/%E9%95%B0%E4%BB%93/">镰仓</category>
      
      <category domain="https://deusyu.app/tags/%E6%B1%9F%E4%B9%8B%E5%B2%9B/">江之岛</category>
      
      <category domain="https://deusyu.app/tags/%E5%80%92%E6%8C%82%E7%94%B5%E8%BD%A6/">倒挂电车</category>
      
      
      <comments>https://deusyu.app/posts/japan-kamakura/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>写与不写｜paul graham</title>
      <link>https://deusyu.app/posts/writes-and-write-nots/</link>
      <guid>https://deusyu.app/posts/writes-and-write-nots/</guid>
      <pubDate>Mon, 28 Oct 2024 21:59:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文是 Paul Graham 的<a href="https://paulgraham.com/writes.html">writes and write nots</a>，使用沉浸式翻译 ChatGPT-4o mini 翻译</p></blockquote><p>I’m usually reluctant to make predictions about technology, but I feel fairly confident about this one: in a couple decades there won’t be many people who can write.</p><p>我通常不愿意对技术做出预测，但我对这一点相当有信心：再过几十年，能写字的人不会很多。</p><p>One of the strangest things you learn if you’re a writer is how many people have trouble writing. Doctors know how many people have a mole they’re worried about; people who are good at setting up computers know how many people aren’t; writers know how many people need help writing.</p><p>作为一个作家，你会发现最奇怪的事情之一就是有多少人写作困难。医生知道有多少人担心自己身上的痣；擅长设置电脑的人知道有多少人不会；作家知道有多少人需要写作帮助。</p><p>The reason so many people have trouble writing is that it’s fundamentally difficult. To write well you have to think clearly, and thinking clearly is hard.</p><p>许多人在写作上遇到困难的原因是这本质上很难。要写得好，你必须清晰地思考，而清晰思考是困难的。</p><p>And yet writing pervades many jobs, and the more prestigious the job, the more writing it tends to require.</p><p>然而，写作渗透到许多工作中，工作越是显赫，所需的写作就越多。</p><p>These two powerful opposing forces, the pervasive expectation of writing and the irreducible difficulty of doing it, create enormous pressure. This is why eminent professors often turn out to have resorted to plagiarism. The most striking thing to me about these cases is the pettiness of the thefts. The stuff they steal is usually the most mundane boilerplate — the sort of thing that anyone who was even halfway decent at writing could turn out with no effort at all. Which means they’re not even halfway decent at writing.</p><p>这两种强大的对立力量——普遍存在的写作期望和不可减少的写作难度——造成了巨大的压力。这就是为什么著名教授常常会选择抄袭。让我对这些案例感到最惊讶的是盗窃的微不足道。他们所偷的东西通常是最平常的模板——任何写作水平稍微过得去的人都可以毫不费力地写出来。这意味着他们连写作水平都不算过得去。</p><p>Till recently there was no convenient escape valve for the pressure created by these opposing forces. You could pay someone to write for you, like JFK, or plagiarize, like MLK, but if you couldn’t buy or steal words, you had to write them yourself. And as a result nearly everyone who was expected to write had to learn how.</p><p>直到最近，对于这些对立力量所产生的压力，没有方便的释放阀。你可以像肯尼迪那样付钱请人代写，或者像马丁·路德·金那样抄袭，但如果你不能买或偷取文字，你就必须自己写。因此，几乎所有被期望写作的人都必须学会如何写。</p><p>Not anymore. AI has blown this world open. Almost all pressure to write has dissipated. You can have AI do it for you, both in school and at work.</p><p>不再是这样。人工智能已经彻底改变了这个世界。几乎所有写作的压力都消失了。你可以让人工智能为你完成，无论是在学校还是在工作中。</p><p>The result will be a world divided into writes and write-nots. There will still be some people who can write. Some of us like it. But the middle ground between those who are good at writing and those who can’t write at all will disappear. Instead of good writers, ok writers, and people who can’t write, there will just be good writers and people who can’t write.</p><p>结果将是一个分为会写和不会写的世界。仍然会有一些人能够写作。我们中的一些人喜欢写作。但擅长写作的人和完全不会写作的人之间的中间地带将消失。将不再有优秀的作家、普通的作家和不会写作的人，只有优秀的作家和不会写作的人。</p><p>Is that so bad? Isn’t it common for skills to disappear when technology makes them obsolete? There aren’t many blacksmiths left, and it doesn’t seem to be a problem.</p><p>那真的那么糟糕吗？当技术使某些技能变得过时时，这不是很常见吗？现在剩下的铁匠不多，这似乎也不是个问题。</p><p>Yes, it’s bad. The reason is something I mentioned earlier: writing is thinking. In fact there’s a kind of thinking that can only be done by writing. You can’t make this point better than Leslie Lamport did:</p><p>是的，这很糟糕。原因是我之前提到过的：写作就是思考。实际上，有一种思考只能通过写作来进行。你无法比莱斯利·兰波特更好地阐明这一点：</p><blockquote><p>If you’re thinking without writing, you only think you’re thinking.</p><p>如果你在思考而不写下来，你只是在自以为在思考。</p></blockquote><p>So a world divided into writes and write-nots is more dangerous than it sounds. It will be a world of thinks and think-nots. I know which half I want to be in, and I bet you do too.</p><p>所以一个分为会写和不会写的世界比听起来更危险。这将是一个会思考和不会思考的世界。我知道我想要在哪一半，我敢打赌你也是。</p><p>This situation is not unprecedented. In preindustrial times most people’s jobs made them strong. Now if you want to be strong, you work out. So there are still strong people, but only those who choose to be.</p><p>这种情况并非前所未有。在工业化之前，大多数人的工作使他们变得强壮。现在，如果你想变强，就需要锻炼。因此，仍然有强壮的人，但只有那些选择这样做的人。</p><p>It will be the same with writing. There will still be smart people, but only those who choose to be.</p><p>写作也是如此。仍然会有聪明的人，但只有那些选择成聪明的人。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E9%9A%8F%E6%83%B3/">随想</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E9%9A%8F%E6%83%B3/%E8%8B%B1%E8%AF%AD/">英语</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E9%9A%8F%E6%83%B3/%E8%8B%B1%E8%AF%AD/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      
      <category domain="https://deusyu.app/tags/Hexo/">Hexo</category>
      
      <category domain="https://deusyu.app/tags/Notion/">Notion</category>
      
      <category domain="https://deusyu.app/tags/%E6%B2%89%E6%B5%B8%E5%BC%8F%E7%BF%BB%E8%AF%91/">沉浸式翻译</category>
      
      
      <comments>https://deusyu.app/posts/writes-and-write-nots/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>为什么单线程的 Redis 如此快速｜Why is single threaded Redis so fast</title>
      <link>https://deusyu.app/posts/9c13fbfc/</link>
      <guid>https://deusyu.app/posts/9c13fbfc/</guid>
      <pubDate>Fri, 18 Oct 2024 00:06:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>这篇文章是中译英，然后英译中 😆。中文互联网的八股文还是出圈了<br>原文发表在<a href="https://www.toutiao.com/article/7204821418587144736/?log_from=d235c7c636293_1677580633904&wid=1729238929646">今日头条</a>，我在阅读阮一峰的周刊时发现这篇文章，然后读了 ref，发现是中译英。</p></blockquote><p>Redis is a high-performance, in-memory key-value database. According to official test reports, it can support around 100,000 QPS (queries per second) on a single machine. However, Redis uses a single-threaded architecture in its design.</p><p>Redis 是一个高性能的内存键值数据库。根据官方测试报告，它在单台机器上可以支持大约 100,000 QPS（每秒查询数）。然而，Redis 在设计上采用了单线程架构。</p><p>Why does Redis still have such high performance with a single-threaded design? Wouldn’t it be better to use multiple threads for concurrent request processing?</p><p>为什么 Redis 在单线程设计下仍然具有如此高的性能？使用多线程进行并发请求处理不是更好吗？</p><p>In this article, let’s explore why Redis has a single-threaded architecture and still maintains its speed. The focus is on the following four aspects:</p><p>在本文中，让我们探讨为什么 Redis 采用单线程架构却仍然保持其速度。重点关注以下四个方面：</p><ul><li><p>Data storage in memory</p><p>数据存储在内存中</p></li><li><p>Efficient data structures</p><p>高效数据结构</p></li><li><p>Single-threaded architecture</p><p>单线程架构</p></li><li><p>Non-blocking I&#x2F;O</p><p>非阻塞 I&#x2F;O</p></li></ul><p>Let’s analyze each one in detail.</p><p>让我们详细分析每一个。</p><h1 id="Data-storage-in-memory-数据存储在内存中"><a href="#Data-storage-in-memory-数据存储在内存中" class="headerlink" title="Data storage in memory 数据存储在内存中"></a><strong>Data storage in memory 数据存储在内存中</strong></h1><p>Redis is completely based on memory, with data stored in memory. The vast majority of requests are pure memory operations, which are extremely fast. Compared with traditional disk file data storage, Redis avoids the overhead of reading data from disk into memory through disk I&#x2F;O.</p><p>Redis 完全基于内存，数据存储在内存中。绝大多数请求都是纯内存操作，速度极快。与传统的磁盘文件数据存储相比，Redis 避免了通过磁盘 I&#x2F;O 将数据从磁盘读取到内存的开销。</p><h1 id="Efficient-data-structures-高效数据结构"><a href="#Efficient-data-structures-高效数据结构" class="headerlink" title="Efficient data structures 高效数据结构"></a><strong>Efficient data structures 高效数据结构</strong></h1><p>Redis has a total of 5 data types: <strong>String</strong>, <strong>List</strong>, <strong>Hash</strong>, <strong>Set</strong>, and <strong>SortedSet</strong>.</p><p>Redis 总共有 5 种数据类型：<strong>字符串</strong>、<strong>列表</strong>、<strong>哈希</strong>、<strong>集合</strong>  和  <strong>有序集合</strong>。</p><p>Different data types use one or more data structures at the bottom to support them, with the aim of achieving faster speeds.</p><p>不同的数据类型在底层使用一种或多种数据结构来支持它们，目的是实现更快的速度。</p><h1 id="Single-threaded-architecture-单线程架构"><a href="#Single-threaded-architecture-单线程架构" class="headerlink" title="Single-threaded architecture 单线程架构"></a><strong>Single-threaded architecture 单线程架构</strong></h1><p>Using a single thread saves a lot of time on context switching and CPU consumption, there are no race conditions, no need to consider various locking problems, and no locking and unlocking operations that could cause performance overhead due to deadlocks. Additionally, it allows the use of various “thread-unsafe” commands, such as <code>Lpush</code>.</p><p>使用单线程可以节省大量的上下文切换和 CPU 消耗，没有竞争条件，不需要考虑各种锁定问题，也没有可能因死锁而导致性能开销的锁定和解锁操作。此外，它允许使用各种“线程不安全”的命令，例如  <code>Lpush</code>。</p><p>Note that when we emphasize single thread, we are referring to using one thread to handle network I&#x2F;O and key-value pair read and write (file event dispatcher). In other words, one thread handles all network requests, but Redis’s other functions, such as persistence, asynchronous deletion, and cluster data synchronization, are actually executed by additional threads.</p><p>请注意，当我们强调单线程时，我们指的是使用一个线程来处理网络 I&#x2F;O 和键值对的读写（文件事件调度器）。换句话说，一个线程处理所有网络请求，但 Redis 的其他功能，如持久化、异步删除和集群数据同步，实际上是由额外的线程执行的。</p><p>So why use single thread? The official answer is that because the CPU is not Redis’s bottleneck, it is most likely machine memory or network bandwidth. Since a single thread is easy to implement and the CPU will not become a bottleneck, it makes sense to adopt a single-threaded solution.</p><p>所以为什么使用单线程？官方的回答是，因为 CPU 不是 Redis 的瓶颈，最可能的瓶颈是机器内存或网络带宽。由于单线程易于实现，并且 CPU 不会成为瓶颈，因此采用单线程解决方案是合理的。</p><p>Although a multi-threaded architecture allows an application to process tasks concurrently through context switching, it provides only a slight performance boost for Redis because most threads will eventually be blocked by network I&#x2F;O.</p><p>尽管多线程架构允许应用程序通过上下文切换并发处理任务，但由于大多数线程最终会被网络 I&#x2F;O 阻塞，因此对 Redis 的性能提升仅微乎其微。</p><p>It is also important to note that because Redis uses a single thread, if a command takes too long to execute (such as the <code>hgetall</code> command), it can cause blocking. Redis is a memory database designed for fast execution, so it is important to be cautious when using commands like <code>lrange</code>, <code>smembers</code>, <code>hgetall</code>, and so on.</p><p>还需要注意的是，由于 Redis 使用单线程，如果某个命令执行时间过长（例如  <code>hgetall</code>  命令），可能会导致阻塞。Redis 是一个为快速执行而设计的内存数据库，因此在使用  <code>lrange</code>、<code>smembers</code>、<code>hgetall</code>  等命令时需要谨慎。</p><h1 id="Non-blocking-I-O-非阻塞-I-O"><a href="#Non-blocking-I-O-非阻塞-I-O" class="headerlink" title="Non-blocking I&#x2F;O 非阻塞 I&#x2F;O"></a><strong>Non-blocking I&#x2F;O 非阻塞 I&#x2F;O</strong></h1><p>Using a thread model based on network I&#x2F;O multiplexing (non-blocking I&#x2F;O) allows for concurrent connections to be handled and helps alleviate the problem of slow network I&#x2F;O speeds.</p><p>使用基于网络 I&#x2F;O 多路复用（非阻塞 I&#x2F;O）的线程模型可以处理并发连接，并有助于缓解网络 I&#x2F;O 速度慢的问题。</p><blockquote><p>The multiplexing I&#x2F;O model leverages the ability of select, poll, and epoll to simultaneously monitor I&#x2F;O events of multiple streams. When idle, the current thread is blocked. When one or more streams have I&#x2F;O events, the thread is awakened from its blocked state, and the program polls all streams (epoll only polls the streams that have generated events), then sequentially handles the ready streams. This approach avoids a large number of useless operations.<br>多路复用 I&#x2F;O 模型利用 select、poll 和 epoll 同时监控多个流的 I&#x2F;O 事件。当处于空闲状态时，当前线程被阻塞。当一个或多个流有 I&#x2F;O 事件时，线程从阻塞状态中被唤醒，程序轮询所有流（epoll 仅轮询已生成事件的流），然后依次处理就绪的流。这种方法避免了大量无用的操作。</p></blockquote><p>Here, “multiplexing” refers to multiple network connections, and “reuse” refers to reusing the same thread. The use of multiplexing I&#x2F;O technology allows a single thread to efficiently handle multiple client network I&#x2F;O connection requests (to minimize time spent on network I&#x2F;O).</p><p>在这里，“多路复用”指的是多个网络连接，而“重用”指的是重用同一个线程。使用多路复用 I&#x2F;O 技术可以让单个线程高效地处理多个客户端网络 I&#x2F;O 连接请求（以最小化在网络 I&#x2F;O 上花费的时间）。</p><p>Redis’s network event handler is based on the Reactor pattern, also known as the file event handler.</p><p>Redis 的网络事件处理程序基于反应器模式，也称为文件事件处理程序。</p><p>The file event handler uses I&#x2F;O multiplexing to simultaneously listen to multiple sockets and associate tasks performed by the sockets with different event handlers.</p><p>文件事件处理程序使用 I&#x2F;O 多路复用同时监听多个套接字，并将套接字执行的任务与不同的事件处理程序关联。</p><p>The file event runs in a single-threaded manner, but by using I&#x2F;O multiplexing programs to listen to multiple sockets, the file event handler implements a high-performance network communication model.</p><p>文件事件以单线程方式运行，但通过使用 I&#x2F;O 多路复用程序监听多个套接字，文件事件处理器实现了高性能的网络通信模型。</p><p>Redis handles client requests, including receiving (socket read), parsing, executing, and sending (socket write) by a single sequential main thread, which is the so-called single-threaded model.Redis</p><p>通过一个单一的顺序主线程处理客户端请求，包括接收（套接字读取）、解析、执行和发送（套接字写入），这就是所谓的单线程模型。</p><p>Multiple sockets may generate different operations, and each operation corresponds to a different file event. However, the I&#x2F;O multiplexing program listens to multiple sockets and queues events generated by the sockets. The event dispatcher retrieves an event from the queue each time, and passes the event to the corresponding event handler for processing.</p><p>多个套接字可能会生成不同的操作，每个操作对应于不同的文件事件。然而，I&#x2F;O 多路复用程序监听多个套接字，并排队由套接字生成的事件。事件调度器每次从队列中获取一个事件，并将该事件传递给相应的事件处理程序进行处理。</p><p>Redis client calls to the server go through three processes: sending commands, executing commands, and returning results. During the command execution phase, since Redis is single-threaded in handling commands, each command arriving at the server is not executed immediately. All commands are entered into a queue and executed one by one. The execution order of commands sent by multiple clients is uncertain. However, it is certain that two commands will not be executed simultaneously, avoiding concurrency issues. This is Redis’s basic single-threaded model.</p><p>Redis 客户端对服务器的调用经历三个过程：发送命令、执行命令和返回结果。在命令执行阶段，由于 Redis 在处理命令时是单线程的，抵达服务器的每个命令并不会立即执行。所有命令都会被放入一个队列中，逐个执行。多个客户端发送的命令的执行顺序是不确定的。然而，可以确定的是两个命令不会同时执行，从而避免了并发问题。这就是 Redis 的基本单线程模型。</p><h1 id="Explanation-of-Redis-6-0-multi-threading-Redis-6-0-多线程的解释"><a href="#Explanation-of-Redis-6-0-multi-threading-Redis-6-0-多线程的解释" class="headerlink" title="Explanation of Redis 6.0 multi-threading Redis 6.0 多线程的解释"></a><strong>Explanation of Redis 6.0 multi-threading Redis 6.0 多线程的解释</strong></h1><h3 id="Why-was-multi-threading-not-used-in-Redis-before-version-6-0-为什么在-Redis-6-0-之前没有使用多线程？"><a href="#Why-was-multi-threading-not-used-in-Redis-before-version-6-0-为什么在-Redis-6-0-之前没有使用多线程？" class="headerlink" title="Why was multi-threading not used in Redis before version 6.0? 为什么在 Redis 6.0 之前没有使用多线程？"></a><strong>Why was multi-threading not used in Redis before version 6.0? 为什么在 Redis 6.0 之前没有使用多线程？</strong></h3><p>Redis used a single-threaded approach to achieve high maintainability. While multi-threading may perform well in certain aspects, it introduces uncertainty in the order of program execution, leading to a series of issues with concurrent reading and writing. This increases system complexity, and can potentially result in performance losses due to thread switching, locking and unlocking, and even deadlocks.</p><p>Redis 采用单线程方法以实现高可维护性。虽然多线程在某些方面可能表现良好，但它引入了程序执行顺序的不确定性，导致并发读写的一系列问题。这增加了系统复杂性，并可能由于线程切换、锁定和解锁，甚至死锁而导致性能损失。</p><h3 id="Why-did-Redis-6-0-introduce-multi-threading-为什么-Redis-6-0-引入了多线程？"><a href="#Why-did-Redis-6-0-introduce-multi-threading-为什么-Redis-6-0-引入了多线程？" class="headerlink" title="Why did Redis 6.0 introduce multi-threading? 为什么 Redis 6.0 引入了多线程？"></a><strong>Why did Redis 6.0 introduce multi-threading? 为什么 Redis 6.0 引入了多线程？</strong></h3><p>Redis 6.0 introduced multi-threading because its bottleneck was not in memory, but in the network I&#x2F;O module, which consumed CPU time. Therefore, multi-threading was introduced to handle network I&#x2F;O and make full use of CPU resources, reducing the performance loss caused by network I&#x2F;O blocking.</p><p>Redis 6.0 引入了多线程，因为它的瓶颈不在内存，而在网络 I&#x2F;O 模块，这消耗了 CPU 时间。因此，引入了多线程来处理网络 I&#x2F;O，充分利用 CPU 资源，减少因网络 I&#x2F;O 阻塞造成的性能损失。</p><h3 id="How-to-enable-multi-threading-in-Redis-6-0-如何在-Redis-6-0-中启用多线程？"><a href="#How-to-enable-multi-threading-in-Redis-6-0-如何在-Redis-6-0-中启用多线程？" class="headerlink" title="How to enable multi-threading in Redis 6.0? 如何在 Redis 6.0 中启用多线程？"></a><strong>How to enable multi-threading in Redis 6.0? 如何在 Redis 6.0 中启用多线程？</strong></h3><p>By default, multi-threading is disabled in Redis, and it can be enabled in the conf file:</p><p>默认情况下，Redis 中禁用了多线程，可以在配置文件中启用</p><figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">io-threads-do-reads yes</span><br><span class="line">io-threads [number of threads]</span><br></pre></td></tr></table></figure><p>The recommended number of threads according to the official guidelines is to set 2-3 threads for a 4-core machine, and 6 threads for an 8-core machine. The number of threads should be less than the number of machine cores and should not exceed 8 threads if possible.</p><p>根据官方指南，推荐的线程数量是为 4 核机器设置 2-3 个线程，为 8 核机器设置 6 个线程。线程数量应少于机器核心数量，并且如果可能的话，不应超过 8 个线程。</p><h3 id="Are-there-any-thread-concurrency-issues-in-multi-threaded-mode-在多线程模式下是否存在线程并发问题？"><a href="#Are-there-any-thread-concurrency-issues-in-multi-threaded-mode-在多线程模式下是否存在线程并发问题？" class="headerlink" title="Are there any thread concurrency issues in multi-threaded mode? 在多线程模式下是否存在线程并发问题？"></a><strong>Are there any thread concurrency issues in multi-threaded mode? 在多线程模式下是否存在线程并发问题？</strong></h3><p>As shown in the diagram, a Redis request involves establishing a connection, getting the command to execute, executing the command, and finally writing the response to the socket.</p><p>如图所示，Redis 请求涉及建立连接、获取要执行的命令、执行命令，最后将响应写入套接字。</p><p>In Redis’ multi-threaded mode, receiving, sending, and parsing commands can be configured to be executed in multiple threads because they are the main time-consuming points we have identified. However, command execution, which involves memory operations, still runs in a single thread.</p><p>在 Redis 的多线程模式下，接收、发送和解析命令可以配置为在多个线程中执行，因为它们是我们识别出的主要耗时点。然而，涉及内存操作的命令执行仍然在单个线程中运行。</p><p>Therefore, Redis’ multi-threaded part is only used to handle network data reading and writing and protocol parsing. Command execution is still executed in a single thread sequentially, so there are no concurrency safety issues.</p><p>因此，Redis 的多线程部分仅用于处理网络数据的读写和协议解析。命令执行仍然在单线程中顺序执行，因此没有并发安全问题。</p><h1 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h1><p><strong>Redis 高性能的原因</strong></p><ul><li>Redis 将数据存储在内存中，大多数操作都是纯内存操作，避免了磁盘 I&#x2F;O 开销</li><li>Redis 使用高效的数据结构来支持不同的数据类型</li><li>单线程架构避免了上下文切换和锁定问题，简化了实现</li><li>使用非阻塞 I&#x2F;O 和 I&#x2F;O 多路复用技术，高效处理并发连接</li></ul><p><strong>Redis 的单线程模型</strong></p><ul><li>单线程主要用于处理网络 I&#x2F;O 和键值对读写，其他功能由额外线程执行</li><li>单线程模型避免了并发问题，所有命令按顺序执行</li><li>使用基于 Reactor 模式的文件事件处理程序，实现高性能网络通信</li></ul><p><strong>Redis 6.0 的多线程支持</strong></p><ul><li>Redis 6.0 引入多线程以解决网络 I&#x2F;O 瓶颈，但命令执行仍保持单线程</li><li>多线程模式仅用于处理网络数据读写和协议解析，不会引入并发安全问题</li></ul>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/Blog/Hexo/">Hexo</category>
      
      
      <category domain="https://deusyu.app/tags/Hexo/">Hexo</category>
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      
      <comments>https://deusyu.app/posts/9c13fbfc/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>为什么读书要读5678遍？｜paul graham（GPT 翻译实验）</title>
      <link>https://deusyu.app/posts/715a3752/</link>
      <guid>https://deusyu.app/posts/715a3752/</guid>
      <pubDate>Sun, 06 Oct 2024 00:03:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>文章：how you know<br>作者：paul graham<br>翻译：gpt-4o, @howie.serious（排名有先后，AI 翻译的实验）<br>转载自<a href="https://x.com/howie_serious">@howie_serious</a><br>书籍要看很多遍，这是很正常的事情，我觉得应试教育会让这个变得有些羞耻。另外不必要读“经典”，像是牛顿的《自然哲学的数学原理》，里面使用的微分积分表达式都不同，英文的意义也不同，除非为了研究物理学的历史变迁，思想家的手稿，学习经典知识大可从最新的资料出发。</p></blockquote><p>I’ve read Villehardouin’s chronicle of the Fourth Crusade at least two times, maybe three. And yet if I had to write down everything I remember from it, I doubt it would amount to much more than a page. Multiply this times several hundred, and I get an uneasy feeling when I look at my bookshelves. What use is it to read all these books if I remember so little from them?</p><p>我至少读过两次，也许三次维尔哈杜因的《第四次十字军东征编年史》。然而，如果要我写下从中记住的内容，我怀疑全部加起来也不超过一页。把这种情况乘以几百，我看到我的书架，心中就会产生不安的感觉：如果我从这些书中记住的东西如此之少，那么读书还有什么用呢？</p><p>A few months ago, as I was reading Constance Reid’s excellent biography of Hilbert, I figured out if not the answer to this question, at least something that made me feel better about it. She writes:</p><p>几个月前，在阅读康斯坦斯·瑞德写的希尔伯特传记时，我找到了问题的答案，或者至少是让我感觉好点的东西。她写道：</p><blockquote><p>Hilbert had no patience with mathematical lectures which filled the students with facts but did not teach them how to frame a problem and solve it. He often used to tell them that “a perfect formulation of a problem is already half its solution.”</p><p>希尔伯特对那些充斥着事实却不教学生如何构建和解决问题的数学讲座没有耐心。他经常告诉学生：“完美表述一个问题，已经是解决问题的一半。”</p></blockquote><p>That has always seemed to me an important point, and I was even more convinced of it after hearing it confirmed by Hilbert.</p><p>我一直深以为然。看到希尔伯特也这么想，我就更加确信了。</p><p>But how had I come to believe in this idea in the first place? A combination of my own experience and other things I’d read. None of which I could at that moment remember! And eventually I’d forget that Hilbert had confirmed it too. But my increased belief in the importance of this idea would remain something I’d learned from this book, even after I’d forgotten I’d learned it.</p><p>但是，我一开始是怎么产生这个观点的呢？<strong>是自己亲身经验与阅读他人思想的结合</strong>。但在当时，我却哪样也记不起来！最终，我甚至会忘记希尔伯特也持有这个观点。但即使我忘记了我从这本书中学到的东西，我对这个想法重要性的增强信念仍然会被保留下来。</p><p>Reading and experience train your model of the world. And even if you forget the experience or what you read, its effect on your model of the world persists. Your mind is like a compiled program you’ve lost the source of. It works, but you don’t know why.</p><p><strong>阅读和经验训练了你的世界模型。即使你忘记了自己的经历或读过的内容，它对你的世界模型的影响依然存在</strong>。你的思维就像一个编译后丢失了源代码的程序。它能运行，但你不知道为什么。</p><p>The place to look for what I learned from Villehardouin’s chronicle is not what I remember from it, but my mental models of the crusades, Venice, medieval culture, siege warfare, and so on. Which doesn’t mean I couldn’t have read more attentively, but at least the harvest of reading is not so miserably small as it might seem.</p><p>我从维尔哈杜因的编年史中学到了什么？寻找的地方并不是我对内容本身的<strong>记忆</strong>，而是我对十字军东征、威尼斯、中世纪文化和围城战的<strong>心理模型</strong>。这并不说明我的阅读本身多么投入，但至少说明阅读的收获并非看起来那样少到可怜。</p><p>This is one of those things that seem obvious in retrospect. But it was a surprise to me and presumably would be to anyone else who felt uneasy about (apparently) forgetting so much they’d read.</p><p>这是回头来看显而易见的诸多事情之一。但这对我来说是一个惊喜。对那些（显然）读过书后忘掉大部分、因而感到不安的人来说，或许也是如此。</p><p>Realizing it does more than make you feel a little better about forgetting, though. There are specific implications.</p><p>但是，意识到这一点，不只是让你对读书后的遗忘感觉更好受一点。它还有更深远、更直接的含义。</p><p>For example, reading and experience are usually “compiled” at the time they happen, using the state of your brain at that time. The same book would get compiled differently at different points in your life. Which means it is very much worth reading important books multiple times. I always used to feel some misgivings about rereading books. I unconsciously lumped reading together with work like carpentry, where having to do something again is a sign you did it wrong the first time. Whereas now the phrase “already read” seems almost ill-formed.</p><p>例如，阅读和经验是在发生的当下被“编译”，具体取决于当时的大脑状态。同一本书，在人生的不同阶段，其“编译”的方式各不相同。所以，<strong>把重要的书籍阅读很多遍，其价值不可估量</strong>。我以前总是对重读书籍感到疑虑。我无意识地把阅读与木工这类工作混为一谈，认为不得不再做一次说明第一次做错了。而现在，<strong>“已经读过了”  这种说法几乎不成立</strong>。</p><p>Intriguingly, this implication isn’t limited to books. Technology will increasingly make it possible to relive our experiences. When people do that today it’s usually to enjoy them again (e.g. when looking at pictures of a trip) or to find the origin of some bug in their compiled code (e.g. when Stephen Fry succeeded in remembering the childhood trauma that prevented him from singing). But as technologies for recording and playing back your life improve, it may become common for people to relive experiences without any goal in mind, simply to learn from them again as one might when rereading a book.</p><p>有趣的是，这种含义不仅限于书籍。科技进步让我们有可能重温过去的体验。今天，人们做某件事时，脑子里经常想着以后要再次体验这段经历（例如，旅行中拍下照片便于以后回顾）或找到“编译代码”中的某个错误的起源（例如，斯蒂芬·弗莱成功回想起导致他无法歌唱的童年创伤）。但是，随着记录和回放生活的技术不断进步，人们可能会常常无目的地重温经历，就像重读一本书一样，再次从中学习。</p><p>Eventually we may be able not just to play back experiences but also to index and even edit them. So although not knowing how you know things may seem part of being human, it may not be.</p><p>未来，我们可能不仅能够回放自身体验，甚至还能对这些体验进行索引和编辑。所以，虽然“不知道自己如何知道”看起来似乎是“人之为人”的一部分，但在未来不必如此。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%BD%AC%E8%BD%BD/">转载</category>
      
      <category domain="https://deusyu.app/categories/%E8%BD%AC%E8%BD%BD/Blog/">Blog</category>
      
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      
      <comments>https://deusyu.app/posts/715a3752/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>转载｜时间之谜与活在当下</title>
      <link>https://deusyu.app/posts/live-in-the-moment/</link>
      <guid>https://deusyu.app/posts/live-in-the-moment/</guid>
      <pubDate>Sat, 03 Aug 2024 07:34:00 GMT</pubDate>
      
      <description>人生被无意义的时间(chronos)消磨，这是我们的宿命；在当下活出有意义的时刻（kairos），知其不可而为之，以此抗拒生活世界的虚无，人生才不至于像陌生人一样跟我们擦肩而过。</description>
      
      
      
      <content:encoded><![CDATA[<p>原文是<strong>徒步的骑手</strong>发布在<strong>substack</strong>的文章**《<strong><a href="https://substack.com/home/post/p-145030425"><strong>时间之谜与活在当下</strong></a></strong>》**</p><blockquote><p>人生被无意义的时间(chronos)消磨，这是我们的宿命；在当下活出有意义的时刻（kairos），知其不可而为之，以此抗拒生活世界的虚无，人生才不至于像陌生人一样跟我们擦肩而过。</p></blockquote><p>这是本老书了，但值得所有年龄段的人读，好在是很轻松的阅读——轻松的是文字，讲的道理却很有份量。同样的道理会给年轻人上进的力量，让中年人彷徨，让老年人懊悔。书中有句话：“人们司空见惯的是，用虚度一生来等待人生真正开始”。去年骑行穿越日本时，路上想起这句话。如果我们不在当下活出想活的人生，流逝的时间对我们来讲就是虚无的混沌，真正属于我们的人生就像一位陌生人跟我们擦肩而过。</p><p>时间是天地之谜，也是人生之谜。有一本更老的书，曾经想解开这个谜：“时间是什么？无人问起时，我有所知；要张口解释时，却浑然不知了。” （《忏悔录》第十一部，第十四章，第 17 节）奥古斯丁的时间之问让人想起大约同时代的陶潜的小诗：“此中有真意，欲辩已忘言。”</p><p>生活世界，人们在不知不觉中消磨时光，但消磨时光是生活世界的假象 —— 不是人消磨时光，而是生命被时光消磨，变得面目全非，成为走骨行尸，直至生机被消磨殆尽，肉身化为尘土，灵魂不知所终。古希腊人称这种消磨生命的时间为 chronos。“逝者如斯，不舍昼夜。”这是人生不可抗拒的宿命，海德格尔称之为“被抛入世界”、“向死而生”。</p><p>为了抗拒这种被时间消磨的无意义的命运, 人发明了宗教、哲学、法律、秩序等，被统称为文明，但时间像氧化剂锈蚀钢铁一样消磨文明，让曾经璀璨的文明失去生命力，变成遗迹和废墟。在所有文明的创造中，最无奈也可能是最恒久的发明是艺术，以审美和诗意抗拒无法逃脱时间生存的宿命，在无意义的时间延绵中寻求有意义的时刻。</p><p>古希腊人把这种时刻称之为 Kairos，它不只是一个无可奈何地到来的时间节点，而是人在生命中创造的有意义的时刻，它可以是一个瞬间，一个梦境，也可以是一些记忆的碎片。艺术创造这样的时刻，让生命变得比锈蚀生命的时间更顽强、执着，延绵不断。</p><p>人生被无意义的时间(chronos)消磨，这是我们的宿命；在当下活出有意义的时刻（kairos），知其不可而为之，以此抗拒生活世界的虚无，人生才不至于像陌生人一样跟我们擦肩而过。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E9%9A%8F%E6%83%B3/">随想</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E9%9A%8F%E6%83%B3/%E8%BD%AC%E8%BD%BD/">转载</category>
      
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/tags/Notion/">Notion</category>
      
      
      <comments>https://deusyu.app/posts/live-in-the-moment/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>私有云或公有云中的基础设施即代码</title>
      <link>https://deusyu.app/posts/infrastructure-as-code-in-a-private-or-public-cloud/</link>
      <guid>https://deusyu.app/posts/infrastructure-as-code-in-a-private-or-public-cloud/</guid>
      <pubDate>Fri, 28 Jun 2024 23:13:00 GMT</pubDate>
      
      <description>翻译hashicorp的2020年1 月23日文章《infrastructure-as-code-in-a-private-or-public-cloud》</description>
      
      
      
      <content:encoded><![CDATA[<blockquote><p>原文：<a href="https://www.hashicorp.com/blog/infrastructure-as-code-in-a-private-or-public-cloud"><strong>Infrastructure as Code in a Private or Public Cloud</strong></a></p></blockquote><p>随着技术的进步，我们的工具也在不断变化。但是，由于大多数人抵制变革，因此往往需要某种类型的失败–系统中断、灾难恢复失败等–才能让我们改变我们的管理实践。</p><p>例如，当公司将其业务转移到云端时，他们倾向于用管理内部物理硬件的方式来管理云基础架构，即登录到虚拟基础架构的 Web 界面，或直接进入系统并通过 GUI 或 CLI 应用更改。这些用户还没有通过使用 HashiCorp Terraform 等工具来使用基础设施即代码（IaC）。</p><p>什么是 IaC？它是在定义文件中定义为代码的基础设施（CPU、内存、磁盘、防火墙等）。但为什么要改变我们定义和构建基础设施的方式呢？</p><p>虚拟计算使我们能够通过软件命令对基础设施进行构建和配置更改。虽然这些命令通常是脚本化的，但人类仍然很难读懂。<strong>更现代的工具接受人类和机器都能读懂的代码</strong>，并提供额外的好处。它们简化了代码测试，可以应用并跟踪迭代之间的变化，最重要的是，它们使团队能够在不同项目中重复使用代码组件（如模块）。难怪 IaC 会受到如此广泛的追捧和采用。</p><p><img src="https://r2.deusyu.app/ed206ba9-f9d4-4997-b37e-fc03f6a2bf65.png"></p><h1 id="IaC-和基础设施生命周期"><a href="#IaC-和基础设施生命周期" class="headerlink" title="IaC 和基础设施生命周期"></a>IaC 和基础设施生命周期</h1><p>那么，IaC 如何融入基础设施生命周期呢？IaC 可应用于整个生命周期，既包括初始构建，也包括基础设施的整个生命周期。这些通常被称为 “第 0 天 “和 “第 1 天 “活动。”第 0 天 “代码提供并配置初始基础架构。</p><p>如果您的基础架构在初始构建后从未改变（无操作系统更新、无补丁、无应用程序配置等），那么您可能不需要支持后续更新、更改和扩展的工具。”第 1 天 “指的是在最初构建基础架构后应用的操作系统和应用程序配置。</p><p>IaC 可轻松调配和应用基础架构配置，节省时间。它通过在不同的基础架构提供商（如 VMware、AWS、Azure、GCP 等）之间使用通用语法，实现了工作流程的标准化。</p><p>IaC 易于理解基础架构更改的意图，因为它可以跨越多个文件，允许人工操作员根据意图组织代码。例如，操作员可以创建不同的文件来定义不同的基础架构组件，或者在不影响执行的情况下将变量定义从执行块中分离出来。</p><p>以下是 IaC 工具 Terraform 用来配置亚马逊 VPC 的代码示例。请注意，代码既可由人工读取，也可由机器读取。</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">resource <span class="string">&quot;aws_vpc&quot;</span> <span class="string">&quot;default&quot;</span> &#123;</span><br><span class="line">  cidr_block = <span class="string">&quot;10.0.0.0/16&quot;</span></span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><p>Terraform 等工具通常包含提供程序和模块库，便于编写代码来提供和应用配置。使用 Terraform，尤其是当只需要第 0 天时，通常会应用像下面这样的初始配置来安装和启动网络服务器：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line">provisioner <span class="string">&quot;remote-exec&quot;</span> &#123;</span><br><span class="line">  inline = [</span><br><span class="line">    <span class="string">&quot;sudo apt-get -y update&quot;</span>,</span><br><span class="line">    <span class="string">&quot;sudo apt-get -y install nginx&quot;</span>,</span><br><span class="line">    <span class="string">&quot;sudo service nginx start&quot;</span></span><br><span class="line">    ]</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><p>如果需要应用第 1 天到第 N 天的配置，代码可以利用 Chef、Ansible、Docker 等工具。</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">provider</span><br><span class="line"> <span class="string">&quot;chef&quot;</span> &#123;</span><br><span class="line">  server_url = <span class="string">&quot;https://api.chef.io/organization/example&quot;</span></span><br><span class="line">  run_list = [ <span class="string">&quot;recipe[example]&quot;</span> ]</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><p>您可以在此 Hashicorp Learn 教程中找到一个更复杂的 Terraform IaC 示例，其中提供了一个双层应用程序：部署联合多云 Kubernetes 集群。</p><h1 id="IaC-使基础设施更加可靠"><a href="#IaC-使基础设施更加可靠" class="headerlink" title="IaC 使基础设施更加可靠"></a>IaC 使基础设施更加可靠</h1><p>IaC 使变更具有可篡改性、一致性、可重复性和可预测性。如果没有 IaC，要扩展基础设施以满足日益增长的需求，操作员可能需要远程连接到每台机器，然后通过执行一系列命令&#x2F;脚本手动配置许多服务器。他们可能会打开多个会话并在屏幕之间移动，这往往会导致跳过步骤或完成工作的方式出现细微差别，从而不得不进行回滚。也许某个命令在某个实例上运行不正确，在重新正确运行之前进行了回滚。</p><p>这些流程上的不一致可能会导致服务器之间出现细微差别，随着时间的推移，这些差异会逐渐增大，并可能影响服务器的性能、可用性或安全性。如果一个庞大的团队正在应用变更，风险就会增加，因为每个人并不总是完全按照相同的指令操作。</p><p>有了 IaC，我们可以在将代码应用到目标环境之前测试代码并审查结果。如果结果与我们的预期不符，我们会反复修改代码，直到结果通过测试并符合我们的预期。按照这种模式，我们可以在将代码应用到生产环境之前预测结果。一旦准备就绪，我们就可以通过自动化大规模应用该代码，确保应用方式的一致性和可重复性。</p><p>由于代码会被检查到 GitHub、GitLab、BitBucket 等版本控制系统中，因此可以查看基础架构是如何随时间演变的。IaC 工具提供的幂等特性确保了即使多次使用相同的代码，结果也不会改变。</p><h1 id="IaC-让基础设施更易于管理"><a href="#IaC-让基础设施更易于管理" class="headerlink" title="IaC 让基础设施更易于管理"></a>IaC 让基础设施更易于管理</h1><p>利用 HashiCorp Terraform IaC 可以在必要时通过代码实现突变。假设已配置了一个环境，其中包含几台服务器和一个负载平衡器。为应对增加的负载，需要增加服务器。可以对 IaC 进行修改，只需最小的改动，就能使用之前定义的配置将新服务器上线。</p><p>在执行过程中，Terraform 将检查当前运行的基础架构的状态，确定当前状态与修订后的理想状态之间存在哪些差异，并指出必须应用的必要变更。如果获准继续执行，将只应用必要的变更，而不触及现有的有效基础架构。</p><h1 id="IaC-是有意义的"><a href="#IaC-是有意义的" class="headerlink" title="IaC 是有意义的"></a><strong>IaC 是有意义的</strong></h1><p>成功管理基础设施的生命周期非常困难，管理决策失误可能会造成重大影响，从财务和声誉损失，到考虑到政府和军队对基础设施的依赖性时，甚至会造成生命损失。使用 IaC 工具（如 HashiCorp Terraform），并结合相关的既定工具、流程和工作流，<strong>是降低这些风险的必要步骤</strong>。</p><p>要了解有关 Terraform 和 HashiCorp 其他基础架构工具的更多信息，请访问 Terraform 文档，并在 HashiCorp Learn 上查看我们的学习课程。</p><h1 id="评论"><a href="#评论" class="headerlink" title="评论"></a>评论</h1><p>通过 Google Trends 搜索 Infrastructure as code，发现全球范围内的趋势是自 2014 年起势以来，一致呈现波动上升的趋势，而 Related topics 第 4 位就是 Terraform。切换到 China 也就 2023 年一个波动然后戛然而止，讨论的 Subregion 也只有北京、上海、广东。</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li>翻译自<a href="https://www.hashicorp.com/blog/infrastructure-as-code-in-a-private-or-public-cloud"><strong>Infrastructure as Code in a Private or Public Cloud</strong></a></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/Blog/IaC/">IaC</category>
      
      <category domain="https://deusyu.app/categories/Blog/IaC/%E7%BC%96%E7%A8%8B/">编程</category>
      
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/tags/IaC/">IaC</category>
      
      
      <comments>https://deusyu.app/posts/infrastructure-as-code-in-a-private-or-public-cloud/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Terraform 101</title>
      <link>https://deusyu.app/posts/about-terraform/</link>
      <guid>https://deusyu.app/posts/about-terraform/</guid>
      <pubDate>Tue, 21 May 2024 22:38:00 GMT</pubDate>
      
      <description>关于IaC相关内容的学习</description>
      
      
      
      <content:encoded><![CDATA[<h1 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h1><p>在国内，使用 Terraform 的公司屈指可数。通常，在市场上取得巨大成功的公司会选择自建 IDC，如一线和二线的大厂，这些公司拥有数十万甚至上百万台物理服务器。使用混合云并达到一定规模的公司更是少之又少，加上国内 ToB 市场的挑战，导致 IaC 在国内的发展并不理想。然而，在国际市场上，传统行业选择公有云时，要求必须支持 Terraform，Terraform 已然成为事实上的 IaC 标准。</p><p>关于 Terraform 的中文讨论非常少，以下是我学习和整理 Terraform 内容的分享。</p><p><img src="https://r2.deusyu.app/a3e200f1-5adc-492a-ad0a-15d388dd785a.png"></p><h1 id="Terraform-简介"><a href="#Terraform-简介" class="headerlink" title="Terraform 简介"></a>Terraform 简介</h1><p>Terraform 是由 HashiCorp 公司研发的开源 IaC（基础设施即代码）工具。它由 Go 语言编写，可以在各个平台上运行，包括 Linux、Mac 和 Windows。Terraform 简单易用，即使没有太多代码经验的人也能读懂 Terraform 的配置代码 HCL（HashiCorp Configuration Language）。</p><blockquote><p>HCL，即 HashiCorp Configuration Language，是 HashiCorp 公司开发的一种专用配置语言，扩展名为<code>.tf</code></p></blockquote><p>主要特性：</p><ul><li><strong>基础设施即代码（Infrastructure as Code，简称 IaC）</strong><ul><li>使用配置语言 HCL 描述基础设施，使代码更容易共享和重用。</li></ul></li><li><strong>变更计划（Plan）</strong><ul><li>在实际变更前，Terraform 可以根据代码和当前状态生成变更计划，明确告诉你哪些资源将会被创建、修改或销毁。这可以在执行变更前进行最后的检查，为基础设施提供额外的保护层。</li></ul></li><li><strong>资源视图（Resource Graph）</strong><ul><li>通过依赖关系生成资源视图，直观地展示整个基础设施的关系图，帮助理解资源之间的依赖和相互作用。</li></ul></li><li><strong>自动化（Automation）</strong><ul><li>自动执行基础设施变更，无需人工干预，确保一致性和高效性。</li></ul></li><li><strong>跨平台支持</strong><ul><li>Terraform 支持多种云服务提供商和私有云环境，包括 AWS、Azure、Google Cloud、<strong>alicloud</strong>、<strong>tencentcloud、huaweicloud</strong> 等，使得多云环境的管理更加简便，基本上常用的云都有其实现的 provider</li></ul></li><li><strong>模块化（Modularity）</strong><ul><li>支持模块化，用户可以创建、共享和复用模块，提高配置的可维护性和可扩展性。</li></ul></li></ul><p>Terraform 是一个功能强大且灵活的工具，使得管理和部署基础设施变得更为简便和高效。</p><h1 id="通过对比"><a href="#通过对比" class="headerlink" title="通过对比"></a>通过对比</h1><p><strong>Terraform 与其他 IaC 工具的对比</strong></p><table><thead><tr><th>名称</th><th>置备工具</th><th>易于使用</th><th>免费、开源</th><th>声明式</th><th>云无关</th><th>表达能力强、可扩展</th></tr></thead><tbody><tr><td>Ansible</td><td>√</td><td>×</td><td>×</td><td>√</td><td>×</td><td>×</td></tr><tr><td>Chef</td><td>√</td><td>√</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>Puppet</td><td>√</td><td>√</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>SaltStack</td><td>√</td><td>×</td><td>×</td><td>×</td><td>×</td><td>×</td></tr><tr><td>Terraform</td><td>×</td><td>x</td><td>x</td><td>x</td><td>x</td><td>x</td></tr><tr><td>Pulumi</td><td>×</td><td>√</td><td>×</td><td>√</td><td>×</td><td>×</td></tr><tr><td>AWS CloudFormation</td><td>×</td><td>×</td><td>√</td><td>x</td><td>√</td><td>√</td></tr><tr><td>GCP Deployment Manager</td><td>×</td><td>×</td><td>√</td><td>x</td><td>√</td><td>√</td></tr><tr><td>Azure Resource Manager</td><td>×</td><td>√</td><td>√</td><td>√</td><td>√</td><td>√</td></tr></tbody></table><blockquote><p>从技术上讲，Pulumi 最接近 Terraform，唯一的区别在于它不是声明式的。Pulumi 团队认为这是 Pulumi 相较于 Terraform 的优势，但 Terraform 也有一个云开发工具包（Cloud Development Kit，CDK），允许实现相同的功能。<br>Terraform 的设计受到了 AWS CloudFormation 的启发，并且与 GCPDeployment Manager 和 Azure Resource Manager 有很相近的地方。<br>Ansible、Chef、Puppet 和 SaltStack 都是配置管理工具，而不是基础设施置备工具。它们解决的问题类别与 Terraform 有些区别，不过也存在重叠的地方</p></blockquote><ul><li><p>置备工具</p><ul><li>Terraform 是一个声明式 IaC<strong>置备工具（provisioning tool）</strong>，可以把资源部署到任何公有云或私有云。置备工具不是配置管理工具，置备工具部署和管理基础设施，配置管理工具（如 Ansible、Puppet、SaltStack 和 Chef）将软件部署到现有服务器上。</li></ul></li><li><p>易于使用</p><ul><li>Terraform 之所以如此易用，主要原因在于其代码是用一种称作 HashiCorp Configuration Language（HCL）的领域特定的配置语言编写的。HashiCorp 开发了这种语言，用来替代更加冗长的 JSON 和 XML 等配置语言。HCL 试图在人类可读性和机器可读性之间达到一种平衡，并受到了这个领域中一些早期尝试（如 libucl 和 Nginx 配置）的影响。HCL 与 JSON 完全兼容，这意味着 HCL 能够完全转换为 JSON，反之亦然。</li></ul></li><li><p>免费且开源的软件</p><ul><li><p>Terraform 的引擎称作 Terraform core，这是一款免费且开源的软件，通过 Mozilla Public License v2.0 提供</p><ul><li>注：自 2023.8.21 以来 HashiCorp<a href="https://www.hashicorp.com/license-faq">宣布</a>，未来发布的所有产品和若干库将从 Mozilla Public License v2.0 (MPL 2.0) 过渡到 Business Source License (BSL, 或 BUSL) v1.1。HashiCorp API、SDK、Terraform 提供者和几乎所有其他库都将保留 MPL 2.0。</li></ul><p><img src="https://r2.deusyu.app/ac342d85-7695-42a2-bdc9-d837c103b149.png"></p></li><li><p>Terraform 没有提供高级版本，但提供了商业解决方案和企业解决方案（<strong>Terraform Cloud</strong>和<strong>Terraform Enterprise</strong>），可成规模运行 Terraform。</p></li></ul></li><li><p>声明式编程</p><ul><li>声明式编程指的是表达计算逻辑（做什么），但不描述控制流（怎么做）。你不必编写一步步执行的指令，只要描述自己想要的结果即可。Java 的 Stream 流式编程</li></ul></li><li><p>云无关</p><ul><li>云无关指的是能够使用一组相同的工具和工作流，无缝运行在任意云平台上。Terraform 是云无关的，使用 Terraform 把基础设施部署到 AWS 与部署到 GCP、Azure 甚至私有数据中心一样简单（参见图 1.2）。云无关很重要，因为这意味着你不会被局限于特定的云供应商，也不需要在每次改变云供应商时学习一种全新的技术。做一个 broker，屏蔽不同云商之间的差异</li></ul></li></ul><p>我的理解：大多数云服务商为用户提供了控制台 UI 界面，以及基于大客户提供的 SDK 和 CLI 等工具，但对于资源管理和编排没有统一的标准。而 Terraform 通过其声明式配置语言和状态管理机制，提供了一个统一的、面向状态的基础设施管理标准。</p><h2 id="关于Pulumi"><a href="#关于Pulumi" class="headerlink" title="关于Pulumi"></a>关于<strong>Pulumi</strong></h2><ul><li>支持多语言，与开发语言相关，比如 JS、TS、python、java、go、.NET</li><li>面向开发者：不使用配置语言了，使用编程语言，门槛略高些</li><li><strong>架构和模型</strong>：<ul><li><strong>与应用代码集成</strong>：Pulumi 可以更容易地与应用代码集成，因为它使用相同的编程语言。这使得基础设施和应用代码可以更加紧密地结合在一起。</li><li>Terraform：声明式</li></ul></li><li><strong>资源定义</strong><ul><li><strong>编程模型</strong>：Pulumi 使用编程模型来定义资源，这意味着可以利用编程语言的全部功能，如循环、条件语句和模块化。</li><li>Terraform：支持模块化</li></ul></li><li>状态管理<ul><li><strong>托管状态</strong>：Pulumi 提供托管的状态存储服务，但也支持将状态存储在本地文件系统或其他后端（如 AWS S3、GCP Storage）</li><li><strong>Terraform</strong>：默认使用本地状态文件，用户可以配置将状态存储在各种远程后端（如 AWS S3、GCP Storage 等），并支持状态锁定机制</li></ul></li></ul><h2 id="关于-SDK"><a href="#关于-SDK" class="headerlink" title="关于 SDK"></a>关于 SDK</h2><p>使用各大云商的 SDK，之前做过的一种云管方式，一个或者多个项目来引入各种云商的 SDK，然后定义好统一模型以及设计模式，通过策略模式来路由到相关云商资源的 CRUD。</p><ul><li>优点：<ul><li><strong>接入和维护简单</strong>：使用各大云商的 SDK，可以直接调用云服务的 API，链路短，易于定位和解决问题。</li><li><strong>贴合公司业务</strong>：可以根据公司的具体需求自定义和优化，确保与业务需求高度契合。</li></ul></li><li>缺点：<ul><li><strong>接入云商较慢</strong>：需要自己阅读和理解云商的文档，开发和集成时间较长。</li><li><strong>测试云商的 bug</strong>：需要处理云商 SDK 的各种问题和 bug，增加了维护成本。</li></ul></li></ul><h1 id="HCL-配置语言（HashiCorp-Configuration-Language-）"><a href="#HCL-配置语言（HashiCorp-Configuration-Language-）" class="headerlink" title="HCL 配置语言（HashiCorp Configuration Language ）"></a>HCL 配置语言（HashiCorp Configuration Language ）</h1><p>易于使用，HCL 是机器可读与人类可读性达到一种平衡，和 JSON 之间可以完全转换</p><h2 id="从语言角度"><a href="#从语言角度" class="headerlink" title="从语言角度"></a>从语言角度</h2><p>基本类型：</p><ul><li>字符串 string，如<code>&quot;pkslow.com&quot;</code></li><li>数字 number，如<code>319</code>或<code>5.11</code></li><li>布尔值 bool，如<code>true</code></li></ul><p>组合类型：</p><ul><li>列表 list()，如<code>[&quot;dev&quot;, &quot;uat&quot;, &quot;prod&quot;]</code></li><li>集合 set()，如<code>set(...)</code></li><li>映射 map()，如<code>&#123;name=&quot;Larry&quot;, age=&quot;18&quot;&#125;</code></li><li>对象 object<code>(&#123;name1=T1, name2=T2&#125;)</code></li><li>元组 tuple<code>([T1,T2,T3...])</code></li></ul><h2 id="从功能角度"><a href="#从功能角度" class="headerlink" title="从功能角度"></a>从功能角度</h2><p>输入变量、输出变量与模块化作用范围</p><h2 id="对变量的引用"><a href="#对变量的引用" class="headerlink" title="对变量的引用"></a>对变量的引用</h2><table><thead><tr><th>类型</th><th>引用方式</th></tr></thead><tbody><tr><td>资源 Resources</td><td><code>&lt;Resource Type&gt;.&lt;Name&gt;</code></td></tr><tr><td>输入变量 Input Variables</td><td><code>var.&lt;NAME&gt;</code></td></tr><tr><td>本地变量 Local Values</td><td><code>local.&lt;NAME&gt;</code></td></tr><tr><td>子模块的输出</td><td><code>module.&lt;Module Name&gt;.&lt;output Name&gt;</code></td></tr><tr><td>数据源 Data Sources</td><td><code>data.&lt;Data Type&gt;.&lt;Name&gt;</code></td></tr><tr><td>路径和 Terraform 相关</td><td><code>path.module</code>：模块所在路径<code>path.root</code>：根模块的路径<code>path.cwd</code>：一般与根模块相同，其它高级用法除外<code>terraform.workspace</code>：工作区名字</td></tr><tr><td>块中的本地变量</td><td><code>count.index</code>：count 循环的下标；<code>each.key</code>&#x2F;<code>each.value</code>：for each 循环的键值；<code>self</code>：在 provisioner 的引用；</td></tr></tbody></table><h2 id="输入变量-关键字"><a href="#输入变量-关键字" class="headerlink" title="输入变量 - 关键字"></a>输入变量 - 关键字</h2><p>有一组关键字<strong>不可以</strong>被用作输入变量的名字：</p><ul><li><code>source</code></li><li><code>version</code></li><li><code>providers</code></li><li><code>count</code></li><li><code>for_each</code></li><li><code>lifecycle</code></li><li><code>depends_on</code></li><li><code>locals</code></li></ul><p>输入变量只能在声明该变量的目录下的代码中使用。</p><p>输入变量块中可以定义一些属性。</p><h2 id="断言validation"><a href="#断言validation" class="headerlink" title="断言validation"></a>断言<strong>validation</strong></h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">variable <span class="string">&quot;image_id&quot;</span> &#123;</span><br><span class="line">  <span class="built_in">type</span>        = string</span><br><span class="line">  description = <span class="string">&quot;The id of the machine image (AMI) to use for the server.&quot;</span></span><br><span class="line"></span><br><span class="line">  validation &#123;</span><br><span class="line">    condition     = length(var.image_id) &gt; 4 &amp;&amp; substr(var.image_id, 0, 4) == <span class="string">&quot;ami-&quot;</span></span><br><span class="line">    error_message = <span class="string">&quot;The image_id value must be a valid AMI id, starting with \&quot;ami-\&quot;.&quot;</span></span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><h2 id="参数文件"><a href="#参数文件" class="headerlink" title="参数文件"></a>参数文件</h2><p>调用 terraform 命令时，通过  <code>-var-file</code>  参数指定要用的参数文件</p><h2 id="输出值"><a href="#输出值" class="headerlink" title="输出值"></a>输出值</h2><p><a href="http://outputs.tf/">outputs.tf</a> 文件</p><h2 id="局部值"><a href="#局部值" class="headerlink" title="局部值"></a>局部值</h2><p><code>locals&#123;&#125;</code></p><h2 id="元参数声明"><a href="#元参数声明" class="headerlink" title="元参数声明"></a>元参数声明</h2><p>resource 块支持几种元参数声明，这些元参数可以被声明在所有类型的 resource 块内，它们将改变资源的行为：</p><ul><li><code>depends_on</code>：显式声明依赖关系</li><li><code>count</code>：创建多个资源实例</li><li><code>for_each</code>：迭代集合，为集合中每一个元素创建一个对应的资源实例</li><li><code>provider</code>：指定非默认 Provider 实例</li><li><code>lifecycle</code>：自定义资源的生命周期行为</li><li><code>provisioner</code>  和  <code>connection</code>：在资源创建后执行一些额外的操作</li></ul><h2 id="count"><a href="#count" class="headerlink" title="count"></a>count</h2><p>terraform 关键字，<code>resource</code> 块最外层，<code>0</code> 表示不创建资源，大于 <code>1</code> 是多个</p><p>一个 resource 块定义了一个对应的实际基础设施资源对象。</p><p>Terraform 提供了两种方法实现这个目标：<code>count</code>  与  <code>for_each</code>。</p><h2 id="for-each"><a href="#for-each" class="headerlink" title="for_each"></a>for_each</h2><p><a href="http://从variables.tf/">从 variables.tf</a> 数组中遍历，赋值资源</p><h2 id="lifecycle"><a href="#lifecycle" class="headerlink" title="lifecycle"></a><strong>lifecycle</strong></h2><p>三个元参数：</p><ul><li><p><code>create_before_destroy</code></p></li><li><p><code>prevent_destroy</code></p><p>在 resource 块内声明了<code>prevent_destroy = true</code>会导致无法执行<code>terraform destroy</code>，所以对它的使用要节制。需要注意的是，该措施无法防止我们删除 resource 块后 Terraform 删除相关资源，因为对应的<code>prevent_destroy = true</code>声明也被一并删除了。</p></li><li><p>ignore_changes</p></li></ul><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">lifecycle 配置影响了 Terraform 如何构建并遍历依赖图。作为结果，lifecycle 内赋值仅支持字面量，因为它的计算过程发生在 Terraform 计算的极早期。这就是说，例如 prevent_destroy、create_before_destroy 的值只能是 <span class="literal">true</span> 或者 <span class="literal">false</span>，ignore_changes、replace_triggered_by 的列表内只能是硬编码的属性名。</span><br></pre></td></tr></table></figure><h2 id="provisioner-资源置备器"><a href="#provisioner-资源置备器" class="headerlink" title="provisioner 资源置备器"></a><strong>provisioner</strong> 资源置备器</h2><table><thead><tr><th>名称</th><th>描述</th><th>示例</th></tr></thead><tbody><tr><td>file</td><td>从远程或本地文件复制文件到新创建的资源目录</td><td><code>provisioner &quot;file&quot; &#123; source = &quot;conf/myapp.conf&quot; destination = &quot;etc/myapp.conf&quot; &#125;</code></td></tr><tr><td>local-exec</td><td>调用在 Terraform 的例程（而不是资源上）的任意命令</td><td><code>provisioner &quot;local-exec&quot; &#123; command = &quot;echo hello&quot; &#125;</code></td></tr><tr><td>remote-exec</td><td>调用在远程资源上任意命令。调取已安装在远程资源上的任意终端工具，启动脚本等</td><td><code>provisioner &quot;remote-exec&quot; &#123; inline = [&quot;puppet apply&quot;,] &#125;</code></td></tr></tbody></table><h2 id="操作超时设置"><a href="#操作超时设置" class="headerlink" title="操作超时设置"></a>操作超时设置</h2><p>timeouts</p><h2 id="数据源-datasource"><a href="#数据源-datasource" class="headerlink" title="数据源 datasource"></a>数据源 datasource</h2><p>ex: 获取最新的 AMI ID</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line">data &quot;aws_ami&quot; &quot;example&quot; &#123;</span><br><span class="line">  most_recent = true</span><br><span class="line">  owners = [&quot;self&quot;]</span><br><span class="line"></span><br><span class="line">  filter &#123;</span><br><span class="line">    name   = &quot;name&quot;</span><br><span class="line">    values = [&quot;my-image*&quot;]</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">resource &quot;aws_instance&quot; &quot;my_instance&quot; &#123;</span><br><span class="line">  ami           = data.aws_ami.example.id</span><br><span class="line">  instance_type = &quot;t2.micro&quot;</span><br><span class="line"></span><br><span class="line">  tags = &#123;</span><br><span class="line">    Name = &quot;MyInstance&quot;</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br></pre></td></tr></table></figure><h2 id="算法和逻辑表达式"><a href="#算法和逻辑表达式" class="headerlink" title="算法和逻辑表达式"></a>算法和逻辑表达式</h2><h3 id="表达式"><a href="#表达式" class="headerlink" title="表达式"></a>表达式</h3><p><strong>dynamic 块</strong></p><p>动态的赋值某些支持资源类型的值</p><h2 id="字符串模版"><a href="#字符串模版" class="headerlink" title="字符串模版"></a>字符串模版</h2><h3 id="字符串插值Interpolation"><a href="#字符串插值Interpolation" class="headerlink" title="字符串插值Interpolation"></a>字符串插值<strong>Interpolation</strong></h3><p>一个  <code>$&#123;...&#125;</code>  序列被称为插值，插值计算花括号之间的表达式的值，有必要的话将之转换为字符串，然后插入字符串模版，形成最终的字符串：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">&quot;Hello, $&#123;var.name&#125;!&quot;</span><br><span class="line"></span><br></pre></td></tr></table></figure><p>上面的例子里，输入变量  <code>var.name</code>  的值被访问后插入了字符串模版，产生了最终的结果，比如：<code>&quot;Hello, Juan!&quot;</code></p><h1 id="操作步骤"><a href="#操作步骤" class="headerlink" title="操作步骤"></a>操作步骤</h1><h2 id="命令"><a href="#命令" class="headerlink" title="命令"></a>命令</h2><p>主要四个关键操作</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># Prepare your working directory for other commands</span></span><br><span class="line">terraform init</span><br><span class="line"></span><br><span class="line"><span class="comment"># Show changes required by the current configuration</span></span><br><span class="line">terraform plan</span><br><span class="line"></span><br><span class="line"><span class="comment"># Create or update infrastructure</span></span><br><span class="line">terraform apply</span><br><span class="line"></span><br><span class="line"><span class="comment"># Destroy previously-created infrastructure</span></span><br><span class="line">terraform destroy</span><br></pre></td></tr></table></figure><p>以及在 plan 之前可以使用<code>terraform vadiate</code> 来验证配置是否正确，最精简的两个步骤：</p><ol><li><code>terraform init</code></li><li><code>terraform apply</code></li></ol><h2 id="配置-AKSK"><a href="#配置-AKSK" class="headerlink" title="配置 AKSK"></a>配置 AKSK</h2><p>目前的 AKSK 是明文放在各自的环境变量中</p><h3 id="配置方式"><a href="#配置方式" class="headerlink" title="配置方式"></a>配置方式</h3><p>在<code>~/.zshrc</code> 或者<code>~/.bashrc</code> 配置</p><p>然后<code>source</code></p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># Terraform</span></span><br><span class="line"><span class="comment"># aliyun</span></span><br><span class="line"><span class="built_in">export</span> ALICLOUD_ACCESS_KEY=<span class="string">&quot;********&quot;</span></span><br><span class="line"><span class="built_in">export</span> ALICLOUD_SECRET_KEY=<span class="string">&quot;********&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># txyun</span></span><br><span class="line"><span class="built_in">export</span> TENCENTCLOUD_SECRET_ID=<span class="string">&quot;********&quot;</span></span><br><span class="line"><span class="built_in">export</span> TENCENTCLOUD_SECRET_KEY=<span class="string">&quot;********&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># huaweiyun</span></span><br><span class="line"><span class="built_in">export</span> HW_ACCESS_KEY=<span class="string">&quot;********&quot;</span></span><br><span class="line"><span class="built_in">export</span> HW_SECRET_KEY=<span class="string">&quot;********&quot;</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># ...etc...</span></span><br></pre></td></tr></table></figure><h2 id="文件"><a href="#文件" class="headerlink" title="文件"></a>文件</h2><h3 id="配置文件"><a href="#配置文件" class="headerlink" title="配置文件"></a>配置文件</h3><p><a href="http://配置文件均是以.tf/">配置文件均是以</a><a href="http://配置文件均是以.tf/"><code>.tf</code></a> 后缀的文件</p><p><a href="http://一般设置为main.tf/">一般设置为</a><a href="http://一般设置为main.tf/"><code>main.tf</code></a>, <a href="http://terraform.tf/"><code>terraform.tf</code></a></p><h2 id="状态文件"><a href="#状态文件" class="headerlink" title="状态文件"></a>状态文件</h2><p>状态文件以<code>tfstate</code>为后缀</p><h1 id="CRUD"><a href="#CRUD" class="headerlink" title="CRUD"></a>CRUD</h1><h2 id="生命周期"><a href="#生命周期" class="headerlink" title="生命周期"></a>生命周期</h2><p><img src="https://r2.deusyu.app/1f7e82f5-cab8-4bc5-ac58-c1803c0e8cde.png"></p><h2 id="validate"><a href="#validate" class="headerlink" title="validate"></a><strong>validate</strong></h2><p>主要用来验证 Terraform 配置文件的语法和配置是否有效，确保没有任何语法错误或者配置上的错误，而无需访问任何远程服务。</p><ul><li><strong>语法检查</strong>：确保配置文件遵守 HCL 的语法</li><li><strong>配置验证</strong>：验证配置中的属性和值是否符合预期的格式，比如确保资源属性设置的类型正确，引用的变量或资源存在等。</li><li><strong>环境验证</strong>：检查配置的环境是否符合执行要求，例如所需的提供者是否已正确配置和初始化。</li></ul><h2 id="plan"><a href="#plan" class="headerlink" title="plan"></a>plan</h2><h3 id="Terraform-在为新部署生成执行计划时完成的步骤"><a href="#Terraform-在为新部署生成执行计划时完成的步骤" class="headerlink" title="Terraform 在为新部署生成执行计划时完成的步骤"></a><strong>Terraform 在为新部署生成执行计划时完成的步骤</strong></h3><ul><li><p>资源定义</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 代码语言其实是HCL，这里有bash替代，会高亮一些内容</span></span><br><span class="line">terraform &#123;</span><br><span class="line">  required_version = <span class="string">&quot;&gt;= 0.15&quot;</span></span><br><span class="line">  required_providers &#123;</span><br><span class="line">    <span class="built_in">local</span> = &#123;</span><br><span class="line">      <span class="built_in">source</span>  = <span class="string">&quot;hashicorp/local&quot;</span></span><br><span class="line">      version = <span class="string">&quot;~&gt; 2.0&quot;</span></span><br><span class="line">    &#125;</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line">resource <span class="string">&quot;local_file&quot;</span> <span class="string">&quot;literature&quot;</span> &#123;</span><br><span class="line">    filename = <span class="string">&quot;art_of_war.txt&quot;</span></span><br><span class="line">    content     = &lt;&lt;-<span class="string">EOT</span></span><br><span class="line"><span class="string">      Sun Tzu said: The art of war is of vital importance to the State.</span></span><br><span class="line"><span class="string"></span></span><br><span class="line"><span class="string">      It is a matter of life and death, a road either to safety or to</span></span><br><span class="line"><span class="string">      ruin. Hence it is a subject of inquiry which can on no account be</span></span><br><span class="line"><span class="string">      neglected.</span></span><br><span class="line"><span class="string">    EOT</span></span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure></li><li><p>执行代码</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">terraform plan</span><br></pre></td></tr></table></figure></li></ul><p><img src="https://r2.deusyu.app/ffd89ca4-5413-4bb1-b142-03e18b1dadbd.png"></p><h3 id="当为已经处在期望状态的现有部署生成执行计划时，Terraform-执行的步骤"><a href="#当为已经处在期望状态的现有部署生成执行计划时，Terraform-执行的步骤" class="headerlink" title="当为已经处在期望状态的现有部署生成执行计划时，Terraform 执行的步骤"></a><strong>当为已经处在期望状态的现有部署生成执行计划时，Terraform 执行的步骤</strong></h3><p><img src="https://r2.deusyu.app/e0984648-0ede-4014-b88a-d119516992f1.png"></p><h2 id="force-new-可变与不可变更新的区别"><a href="#force-new-可变与不可变更新的区别" class="headerlink" title="force new 可变与不可变更新的区别"></a>force new 可变与不可变更新的区别</h2><p><strong>force new 特性：</strong></p><pre><code>如果修改它，整个资源就会被污染。为了得到新的期望状态，Terraform必须重建资源。这是不可变基础设施的典型示例，不过并不是Terraform管理的资源的所有特性都具有这种行为。事实上，大部分资源支持就地（即可变）更新</code></pre><ul><li>对任何 force-new 特性的任何修改都将触发 force-new 更新，因为现在把 create_before_destroy 设置为 true，所以将在销毁旧资源前先创建替换资源。这仅适用于管理资源，而不适用于数据源。</li></ul><p><img src="https://r2.deusyu.app/c30d6ebf-f8a5-4464-b499-2487f72b3708.png"></p><h2 id="Terraform-生成更新的执行计划时执行的步骤"><a href="#Terraform-生成更新的执行计划时执行的步骤" class="headerlink" title="Terraform 生成更新的执行计划时执行的步骤"></a>Terraform 生成更新的执行计划时执行的步骤</h2><ul><li><p>资源定义</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br></pre></td><td class="code"><pre><span class="line">terraform &#123;</span><br><span class="line">  required_version = <span class="string">&quot;&gt;= 0.15&quot;</span></span><br><span class="line">  required_providers &#123;</span><br><span class="line">    <span class="built_in">local</span> = &#123;</span><br><span class="line">      <span class="built_in">source</span>  = <span class="string">&quot;hashicorp/local&quot;</span></span><br><span class="line">      version = <span class="string">&quot;~&gt; 2.0&quot;</span></span><br><span class="line">    &#125;</span><br><span class="line">  &#125;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line">resource <span class="string">&quot;local_file&quot;</span> <span class="string">&quot;literature&quot;</span> &#123;</span><br><span class="line">  filename = <span class="string">&quot;art_of_war.txt&quot;</span></span><br><span class="line">  content     = &lt;&lt;-<span class="string">EOT</span></span><br><span class="line"><span class="string">    Sun Tzu said: The art of war is of vital importance to the State.</span></span><br><span class="line"><span class="string"></span></span><br><span class="line"><span class="string">    It is a matter of life and death, a road either to safety or to</span></span><br><span class="line"><span class="string">    ruin. Hence it is a subject of inquiry which can on no account be</span></span><br><span class="line"><span class="string">    neglected.</span></span><br><span class="line"><span class="string"></span></span><br><span class="line"><span class="string">    The art of war, then, is governed by five constant factors, to be</span></span><br><span class="line"><span class="string">    taken into account in one&#x27;s deliberations, when seeking to</span></span><br><span class="line"><span class="string">    determine the conditions obtaining in the field.</span></span><br><span class="line"><span class="string"></span></span><br><span class="line"><span class="string">    These are: (1) The Moral Law; (2) Heaven; (3) Earth; (4) The</span></span><br><span class="line"><span class="string">    Commander; (5) Method and discipline.</span></span><br><span class="line"><span class="string">  EOT</span></span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure></li><li><p>执行代码</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">terraform apply -auto-approve</span><br></pre></td></tr></table></figure></li></ul><p><img src="https://r2.deusyu.app/00329991-4e5c-4234-a018-351a10c6e71f.png"></p><h2 id="Terraform-在生成删除资源执行计划时执行的步骤"><a href="#Terraform-在生成删除资源执行计划时执行的步骤" class="headerlink" title="Terraform 在生成删除资源执行计划时执行的步骤"></a>Terraform 在生成删除资源执行计划时执行的步骤</h2><ul><li><p>执行代码</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">terraform destroy</span><br></pre></td></tr></table></figure></li></ul><p><img src="https://r2.deusyu.app/9b1f8f48-1be0-484d-9213-228a968b6b7a.png"></p><h1 id="参考文献"><a href="#参考文献" class="headerlink" title="参考文献"></a>参考文献</h1><ol><li><a href="https://registry.terraform.io/providers/hashicorp/random/latest/docs">https://registry.terraform.io/providers/hashicorp/random/latest/docs</a></li><li><a href="https://github.com/LarryDpk/terraform-101">https://github.com/LarryDpk/terraform-101</a></li><li><a href="https://www.terraform.io/">terraform 官网</a></li><li>《<strong>Terraform 实战》[美] 斯科特·温克勒</strong></li><li><strong>《Terraform：多云、混合云环境下实现基础设施即代码（第 2 版）》(美) 叶夫根尼·布里克曼 (Yevgeniy Brikman)</strong></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E7%AC%94%E8%AE%B0/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E7%AC%94%E8%AE%B0/%E7%BC%96%E7%A8%8B/IaC/">IaC</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/tags/IaC/">IaC</category>
      
      
      <comments>https://deusyu.app/posts/about-terraform/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>二叉树-基本概念</title>
      <link>https://deusyu.app/posts/binary-tree-basic/</link>
      <guid>https://deusyu.app/posts/binary-tree-basic/</guid>
      <pubDate>Tue, 27 Feb 2024 20:02:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>以下仅为学习<a href="https://github.com/krahets"><strong>krahets</strong></a><strong>的 hello-aglo</strong>写的笔记</p></blockquote><h1 id="定义"><a href="#定义" class="headerlink" title="定义"></a>定义</h1><ul><li>非线性数据结构</li><li>表示“祖先”与“后代”的关系</li><li>体现分治的思想</li></ul><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">class</span> <span class="title class_">TreeNode</span>&#123;</span><br><span class="line">    <span class="type">int</span> val;</span><br><span class="line">    TreeNode left;</span><br><span class="line">    TreeNode right;</span><br><span class="line">    TreeNode(<span class="type">int</span> x)&#123;</span><br><span class="line">        val = x;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><h1 id="基础概念回顾"><a href="#基础概念回顾" class="headerlink" title="基础概念回顾"></a>基础概念回顾</h1><ol><li>根节点（root）：位于二叉树顶层的节点，没有父节点</li><li>叶节点（leaf）：没有子节点的节点，其两个指针指向 None</li><li>层（level）：节点所在的层，从顶至底递增，根节点的层是 1</li><li>度（degree）：节点所有的子节点数量，二叉树的度是 0、1、2</li><li>边（edge）：连接两个节点的线段，即节点的指针引用</li><li>节点的深度（depth）：从根节点到该节点所经历的边的数量</li><li>二叉树的高度（height）：从根节点到最远叶节点所经历的边的数量</li><li>节点的高度（height）：从距离该节点最远的叶节点到该节点所经历的边的数量</li></ol><p><img src="https://r2.deusyu.app/fca989b4-eef1-461d-b0a4-1c795b919287.png" alt="图片来自k神的hello-algo项目"></p><h2 id="二叉树的一般类型"><a href="#二叉树的一般类型" class="headerlink" title="二叉树的一般类型"></a>二叉树的一般类型</h2><ol><li>完美二叉树（perfect binary tree)、满二叉树：所有层的二叉树被填满，二叉树达到完美状态，叶节点的度为 0，除叶节点外其他节点的度都为 2</li><li>完全二叉树（complete binary tree）：只有最底层的节点未被完全填充，且左右填充节点都靠近左侧</li><li>完满二叉树（full binary tree）：除叶节点外，每个节点都有两个节点</li><li>平衡二叉树（balanced binary tree）：每一个节点的左子树和右子树高度之差的绝对值不超过 1</li></ol><h2 id="二叉树的退化"><a href="#二叉树的退化" class="headerlink" title="二叉树的退化"></a>二叉树的退化</h2><ol><li>二叉树的最佳状态是完美二叉树，充分发挥了分治的思想。</li><li>退化的话，会出现只有一边有节点的情况，变成了链表，这时候各项操作都变成线性操作，时间复杂度变成 O(n)了</li></ol><p><img src="https://r2.deusyu.app/d65acaa0-fe9a-47d3-907e-e07c529c24ae.png" alt="图片来自k神的hello-algo项目"></p><h1 id="二叉树的遍历"><a href="#二叉树的遍历" class="headerlink" title="二叉树的遍历"></a>二叉树的遍历</h1><h2 id="层序遍历"><a href="#层序遍历" class="headerlink" title="层序遍历"></a>层序遍历</h2><p>层序遍历</p><h2 id="深度优先"><a href="#深度优先" class="headerlink" title="深度优先"></a>深度优先</h2><p><img src="https://r2.deusyu.app/37d1c6f4-fd2b-449b-90d1-1540397db1fb.png"></p><h3 id="前序遍历"><a href="#前序遍历" class="headerlink" title="前序遍历"></a>前序遍历</h3><p>根节点 → 左子树 → 右子树</p><p>1 → 2 → 4 → 5 → 3 → 6 → 7</p><p>核心算法：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">前序遍历(node):</span><br><span class="line"> 如果node为空，直接返回(递归终止条件)</span><br><span class="line"> 访问node</span><br><span class="line"> 前序遍历(node.left)</span><br><span class="line"> 前序遍历(node.right)</span><br></pre></td></tr></table></figure><h3 id="中序遍历"><a href="#中序遍历" class="headerlink" title="中序遍历"></a>中序遍历</h3><p>左子树 → 根节点 → 右子树</p><p>4 → 2 → 5 → 1 → 6 → 3 → 7</p><p>核心算法：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">中序遍历(node):</span><br><span class="line">如果node为空，直接返回(递归终止条件)</span><br><span class="line">  中序遍历(node.left)</span><br><span class="line">访问node</span><br><span class="line">  中序遍历(node.right)</span><br></pre></td></tr></table></figure><h3 id="后序遍历"><a href="#后序遍历" class="headerlink" title="后序遍历"></a>后序遍历</h3><p>左子树 → 右子树 → 根节点</p><p>4 → 5 → 2 → 6 → 7 → 3 → 1</p><p>核心算法：</p><figure class="highlight plaintext"><figcaption><span>text</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">后序遍历(node):</span><br><span class="line">如果node为空，直接返回(递归终止条件)</span><br><span class="line">后序遍历(node.left)</span><br><span class="line">后序遍历(node.right)</span><br><span class="line">访问node</span><br></pre></td></tr></table></figure><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="keyword">class</span> <span class="title class_">BinaryTreeTraversal</span> &#123;</span><br><span class="line">    List&lt;Integer&gt; list = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;Integer&gt;(); <span class="comment">// 类级变量，用于存储遍历结果</span></span><br><span class="line"></span><br><span class="line">    <span class="comment">// 前序遍历</span></span><br><span class="line">    <span class="keyword">void</span> <span class="title function_">preOrder</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        list.add(root.val);</span><br><span class="line">        preOrder(root.left);</span><br><span class="line">        preOrder(root.right);</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 中序遍历</span></span><br><span class="line">    <span class="keyword">void</span> <span class="title function_">inOrder</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        inOrder(root.left);</span><br><span class="line">        list.add(root.val);</span><br><span class="line">        inOrder(root.right);</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 后序遍历</span></span><br><span class="line">    <span class="keyword">void</span> <span class="title function_">postOrder</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        postOrder(root.left);</span><br><span class="line">        postOrder(root.right);</span><br><span class="line">        list.add(root.val);</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// 层序遍历</span></span><br><span class="line">    <span class="keyword">void</span> <span class="title function_">levelOrder</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        Queue&lt;TreeNode&gt; queue = <span class="keyword">new</span> <span class="title class_">LinkedList</span>&lt;TreeNode&gt;();</span><br><span class="line">        queue.add(root);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">while</span> (!queue.isEmpty()) &#123;</span><br><span class="line">            <span class="type">TreeNode</span> <span class="variable">poll</span> <span class="operator">=</span> queue.poll();</span><br><span class="line">            list.add(poll.val);</span><br><span class="line">            <span class="keyword">if</span> (poll.left != <span class="literal">null</span>) &#123;</span><br><span class="line">                queue.offer(poll.left);</span><br><span class="line">            &#125;</span><br><span class="line">            <span class="keyword">if</span> (poll.right != <span class="literal">null</span>) &#123;</span><br><span class="line">                queue.offer(poll.right);</span><br><span class="line">            &#125;</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><h1 id="二叉搜索树-Binary-Search-Tree"><a href="#二叉搜索树-Binary-Search-Tree" class="headerlink" title="二叉搜索树 Binary Search Tree"></a>二叉搜索树 Binary Search Tree</h1><h3 id="定义-1"><a href="#定义-1" class="headerlink" title="定义"></a>定义</h3><p>满足以下两个条件的二叉树是二叉搜索树</p><ol><li>对于根节点，左子树所有节点的值 &lt; 根节点的值 &lt; 右子树所有节点的值</li><li>对于任意节点的左子树和右子树，均满足条件 1</li></ol><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://deusyu.app/posts/binary-tree-basic/"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">deusyu.app</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://deusyu.app/posts/binary-tree-basic/</div></div></div></a></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://www.hello-algo.com/chapter_tree/binary_search_tree/"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">www.hello-algo.com</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://www.hello-algo.com/chapter_tree/binary_search_tree/</div></div></div></a></div></div>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/%E7%AE%97%E6%B3%95/">算法</category>
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/%E7%AE%97%E6%B3%95/%E5%88%B7%E9%A2%98/">刷题</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%B7%E9%A2%98/">刷题</category>
      
      <category domain="https://deusyu.app/tags/%E7%AE%97%E6%B3%95/">算法</category>
      
      
      <comments>https://deusyu.app/posts/binary-tree-basic/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>关于MBTI</title>
      <link>https://deusyu.app/posts/mbti/</link>
      <guid>https://deusyu.app/posts/mbti/</guid>
      <pubDate>Sun, 18 Feb 2024 07:04:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>最近看到白海飞老师的《面试现场》有篇《<strong>如何认识自己的优缺点？》</strong>，里面建议进行专业的测试。其实“认识你自己”是这个世界上最难的事情，不然也不是阿波罗神庙最有名的三句箴言之一了。</p><h1 id="1"><a href="#1" class="headerlink" title="1"></a>1</h1><p>不过手比嘴快，在<a href="https://www.16personalities.com/ch">16personalities</a>做了一次，这次是<strong>ENFJ-A &#x2F; ENFJ-T，<strong>外向 – 69%, 有远见 – 64%, 感受 – 58%, 评判 – 62%, 起伏不定 – 51%</strong>。</strong></p><h1 id="2"><a href="#2" class="headerlink" title="2"></a>2</h1><p>2017 年的时候也做过一次，那时候比较注重这些东西，世界也比较小，翻了下当时的印象笔记，有一个维度的变化吧，不过总体变化不大。</p><table><thead><tr><th></th><th>类型：ENTJ 总倾向：37.8</th><th></th></tr></thead><tbody><tr><td>E 外向</td><td><strong>14.29%</strong></td><td>I 内向</td></tr><tr><td>S 实感</td><td><strong>14.29%</strong></td><td>N 直觉</td></tr><tr><td>T 思考</td><td><strong>42.86%</strong></td><td>F 情感</td></tr><tr><td>J 判断</td><td><strong>71.43%</strong></td><td>P 知觉</td></tr></tbody></table><h1 id="Thinking"><a href="#Thinking" class="headerlink" title="Thinking"></a>Thinking</h1><p>这些测试最近在 95 后之间非常流行，以我个人的经验，MBTI 更像是新型的星座或命格，人是非常复杂的，以几道题就框定住，打上标签也是不太现实的事情。</p><p>另外，人们应该有“想要选择自己想要成为特定人格的选项”的倾向。</p><p>依我看，这是一种新型的”社交货币“，没有这些，怎么找话题呢。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/Blog/">Blog</category>
      
      
      <category domain="https://deusyu.app/tags/Life/">Life</category>
      
      
      <comments>https://deusyu.app/posts/mbti/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>沉浸式翻译自用指南</title>
      <link>https://deusyu.app/posts/immersive-translation/</link>
      <guid>https://deusyu.app/posts/immersive-translation/</guid>
      <pubDate>Wed, 14 Feb 2024 23:13:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>沉浸式翻译使用起来真的太方便了，无论是 PC 端还是手机端。</p><p>本着订阅 ChatGPT 套娃全家桶的原则，想要也付费一下 Pro 会员，奈何一看太贵啦，一年打折后还需要 ¥703.8，这个价格差不多是一年 ChatGPT 价格的一半，付不起付不起。</p><p>刚好在 group 中问了一下，有个好心的老哥说 DeepL 的 free API 就够用了，一个月 50w 字，我想了想也是，天天看，天天翻译也够了，实在不行再用下 Gemini 的 API。</p><h1 id="DeepL-API-Free"><a href="#DeepL-API-Free" class="headerlink" title="DeepL API Free"></a><strong>DeepL API Free</strong></h1><p>在<a href="www.deepl.com">官网</a>注册好账号后，然后注册 API，需要绑定国外的信用卡，这个需要自行解决啦，我这里用的是 Wise。</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line"><span class="string">DeepL</span> <span class="string">API</span> <span class="string">Free包括：</span></span><br><span class="line"></span><br><span class="line"><span class="string">访问所有功能</span></span><br><span class="line"></span><br><span class="line"><span class="string">访问DeepL</span> <span class="string">REST</span> <span class="string">API</span></span><br><span class="line"></span><br><span class="line"><span class="number">500</span><span class="string">,000个字符限制/月</span></span><br><span class="line"></span><br><span class="line"><span class="number">1</span><span class="string">,000个术语表（特定语言可用）</span></span><br></pre></td></tr></table></figure><h1 id="Gemini-API"><a href="#Gemini-API" class="headerlink" title="Gemini API"></a>Gemini API</h1><p>Gemini 算是做一个冗余，在 Google AI Studio 中创建 Keys，然后添加到沉浸式翻译的 API 就好。</p><h1 id="使用-burn-hair-的-API"><a href="#使用-burn-hair-的-API" class="headerlink" title="使用 burn.hair 的 API"></a>使用 burn.hair 的 API</h1><p>注册我们的<a href="https://burn.hair/">https://burn.hair/</a>，并使用我们的接口，新用户有$0.5 的测试额度，另外签到和<del>邀请新用户</del>会有一些额度。</p><p>我自己在 DeepL API 用完了会使用这个接口，并把这个调整 4o-mini，兼顾质量和速度</p><p><img src="https://r2.deusyu.app/3567ce30-fc16-4456-98bc-a4dd25beebd1.png"></p><p>最后放一个我的邀请链接 <a href="https://burn.hair/register?aff=5n13">https://burn.hair/register?aff=5n13</a>，<strong>邀请多了可以私聊我赠送</strong></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/Blog/%E8%8B%B1%E8%AF%AD/">英语</category>
      
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/tags/%E6%B2%89%E6%B5%B8%E5%BC%8F%E7%BF%BB%E8%AF%91/">沉浸式翻译</category>
      
      
      <comments>https://deusyu.app/posts/immersive-translation/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>推荐5场人工智能主题演讲</title>
      <link>https://deusyu.app/posts/ai-speech/</link>
      <guid>https://deusyu.app/posts/ai-speech/</guid>
      <pubDate>Wed, 14 Feb 2024 22:28:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>最近学习 AI 相关的知识，看到快刀广播站推荐的 5 场人工智能主题的演讲。</p><p>这个主题都是通识类的，旨在把复杂的事情说的简单，使用了费曼技巧。</p><h1 id="AI-isn’t-the-problem-—-it’s-the-solution-Andrew-Ng"><a href="#AI-isn’t-the-problem-—-it’s-the-solution-Andrew-Ng" class="headerlink" title="AI isn’t the problem — it’s the solution @Andrew Ng"></a><a href="https://www.ted.com/talks/andrew_ng_ai_isn_t_the_problem_it_s_the_solution?subtitle=en"><strong>AI isn’t the problem — it’s the solution</strong></a> <strong>@Andrew Ng</strong></h1><ol><li>吴恩达在 TED 的演讲，他更想当一个 ai 的拉拉队而不是批评者，面对人们对于 ai 的担忧，他说 ai 还在发展，现在工程上的问题还很多，期待集思广益，期待整合 ai，整合人类智能来解决这些问题。</li><li>第二个是让人们失业的问题，吴军的《智能时代》也说过，每一次工业革命都会让一部分旧产业失业，然后诞生一些新的产业。吴恩达举了一个放射科医生的例子，“人工智能不会取代放射科医生，但使用人工智能的放射科医生将取代不会使用人工智能的放射科医生”<blockquote><p>AI won’t replace radiologists, but radiologists that use AI will replace radiologists that don’t.”</p></blockquote></li></ol><h3 id="下面使用bibigpt做的总结"><a href="#下面使用bibigpt做的总结" class="headerlink" title="下面使用bibigpt做的总结"></a>下面使用<a href="https://bibigpt.co/">bibigpt</a>做的总结</h3><p>【BibiGPT】AI 课代表一键总结：AI isn’t the problem — it’s the solution</p><h2 id="摘要"><a href="#摘要" class="headerlink" title="摘要"></a>摘要</h2><p>在这段视频中，演讲者指出了人工智能（AI）在当今社会中所面临的挑战和问题，但他同时也认为 AI 并非问题的根源，而是解决方案。他解释了 AI 技术目前的一些缺陷，并讨论了如何继续发展 AI 以缓解这些问题。他还提到了一些 AI 可能会带来的影响，例如改变就业模式和对人类的安全性问题。</p><h3 id="亮点"><a href="#亮点" class="headerlink" title="亮点"></a>亮点</h3><ul><li>🤖 随着人工智能的发展，人类面临着环境、社会公平和经济就业等方面的巨大挑战</li><li>🤔 人们担心 AI 可能会加剧人类的负面倾向，并对就业市场产生不利影响</li><li>💼 AI 可以通过技术手段缓解与性别、种族或宗教相关的偏见和成见</li><li>🔍 人工智能虽然有优势，但并不会完全取代现有的就业模式</li><li>⚠️ AI 技术可能会带来危险，但演讲者认为有建立有效控制机制的可能性</li></ul><p>#人工智能 #AI #解决方案 #就业 #安全性</p><h3 id="问题"><a href="#问题" class="headerlink" title="问题"></a>问题</h3><ol><li>我们该如何确保 AI 在发展过程中不会放大人类的负面倾向，而是对社会做出积极的贡献？</li><li>AI 对就业市场的影响如何？我们该如何应对这一挑战？</li><li>演讲者提到 AI 可能会带来危险，你认为我们该如何建立有效的控制机制来规范 AI 的发展？</li></ol><h1 id="The-transformative-potential-of-AGI-—-and-when-it-might-arrive-Shane-Legg-and-Chris-Anderson"><a href="#The-transformative-potential-of-AGI-—-and-when-it-might-arrive-Shane-Legg-and-Chris-Anderson" class="headerlink" title="The transformative potential of AGI — and when it might arrive @Shane Legg and Chris Anderson"></a><a href="https://www.ted.com/talks/shane_legg_and_chris_anderson_the_transformative_potential_of_agi_and_when_it_might_arrive"><strong>The transformative potential of AGI — and when it might arrive</strong> </a><strong>@Shane Legg and Chris Anderson</strong></h1><ol><li>DeepMind 的联合创始人谢恩·列格讲了他在童年时期因为阅读困难被误认为智商低下，但后来被发现是因为阅读困难。这一经历激发了他对人工智能的兴趣。</li><li>DeepMind 旨在通往 AGI 之路。</li></ol><h3 id="下面使用bibigpt做的总结-1"><a href="#下面使用bibigpt做的总结-1" class="headerlink" title="下面使用bibigpt做的总结"></a>下面使用<a href="https://bibigpt.co/">bibigpt</a>做的总结</h3><p>【BibiGPT】AI 课代表一键总结：The transformative potential of AGI — and when it might arrive</p><h2 id="摘要-1"><a href="#摘要-1" class="headerlink" title="摘要"></a>摘要</h2><p>人工智能领域的开拓性者 Shane Legg 分享了他对人工智能（AI）的见解，特别是对人人都能思考的计算机，即人工智能（AGI），以及它可能给世界带来的转变。他认为 AGI 的出现可能带来巨大的利益，但也存在潜在风险。Legg 强调了理解和负责任地发展 AGI 的重要性，以确保它对人类产生积极影响。</p><h3 id="要点"><a href="#要点" class="headerlink" title="要点"></a>要点</h3><ul><li>🧠 AGI 可能使解决困扰人类数十年甚至数世纪的科学难题成为可能。</li><li>💡 AGI 可以开启人类智力的黄金时代，让人类和机器智力合作解决复杂的问题。</li><li>⚠️ AGI 存在潜在风险，例如制造危险的病原体或破坏民主。</li><li>🔬 了解、探索和监管 AGI 至关重要，以引导其发展并最大化其益处。</li><li>🛠️ 科学家和工程师需要集中精力理解 AGI 的运作方式并制定安全措施。</li></ul><h3 id="标签"><a href="#标签" class="headerlink" title="标签"></a>标签</h3><p>#人工智能 #AGI #技术转型 #未来 #人类潜能</p><h3 id="问题-1"><a href="#问题-1" class="headerlink" title="问题"></a>问题</h3><ol><li>AGI 的开发可能面临哪些具体技术挑战？</li><li>我们如何确保 AGI 在增强人类能力的同时保持道德和安全？</li></ol><h1 id="【中字】人工智能对于人类的帮助，工作经济的影响——李开复"><a href="#【中字】人工智能对于人类的帮助，工作经济的影响——李开复" class="headerlink" title="【中字】人工智能对于人类的帮助，工作经济的影响——李开复"></a><a href="https://www.bilibili.com/video/BV1Jb41117fn/?spm_id_from=333.337.search-card.all.click&vd_source=adbb815cceacf71cf8b2fabc36cfa07c"><strong>【中字】人工智能对于人类的帮助，工作经济的影响——李开复</strong></a></h1><ol><li>19 年的李开复看好中国的经济和产品-微信和微博甚至优于脸书和推特，不知道 2024 年他作何感想，他的零一万物怎么样了呢</li><li>记得中学时期在《读者》还是《意林》上看到他得癌症后的深刻的感想和转变，没想到是从一个 996&#x2F;997 变成 965 了</li></ol><h3 id="下面使用bibigpt做的总结-2"><a href="#下面使用bibigpt做的总结-2" class="headerlink" title="下面使用bibigpt做的总结"></a>下面使用<a href="https://bibigpt.co/">bibigpt</a>做的总结</h3><p>【BibiGPT】AI 课代表一键总结：【中字】人工智能对于人类的帮助，工作经济的影响——李开复</p><h2 id="摘要-2"><a href="#摘要-2" class="headerlink" title="摘要"></a>摘要</h2><p>在这段视频中，李开复谈到了人工智能和人类如何共存，以及人工智能对工作和经济的影响。他首先分享了他对价值观的改变，然后介绍了人工智能的发展历程，特别是深度学习的重要性。他提到了美国在发现人工智能方面的领先地位，以及中国在实施人工智能方面的独特优势。他还探讨了人工智能可能对就业市场和意义的影响，并提出了人类在 AI 时代的新定位。</p><h3 id="亮点-1"><a href="#亮点-1" class="headerlink" title="亮点"></a>亮点</h3><ul><li>👶 李开复在 1991 年成为父亲，并通过这个故事展示了自己的价值观的改变。</li><li>📈 深度学习技术对于人工智能时代的重要性，以及中国和美国在人工智能领域的不同作用。</li><li>💼 人工智能可能对传统工作的影响，以及人类应该如何调整自己的价值观来适应新的时代。</li></ul><p>#人工智能 #中国 #美国</p><h3 id="问题-2"><a href="#问题-2" class="headerlink" title="问题"></a>问题</h3><ol><li>人工智能对工作市场的影响是什么？</li><li>人类如何能够在人工智能时代找到新的意义和定位？</li><li>人工智能和人类如何可以共同发展和创造更美好的世界？</li></ol><h1 id="Why-AI-is-incredibly-smart-and-shockingly-stupid-Yejin-Choi"><a href="#Why-AI-is-incredibly-smart-and-shockingly-stupid-Yejin-Choi" class="headerlink" title="Why AI is incredibly smart and shockingly stupid @Yejin Choi"></a><a href="https://www.ted.com/talks/yejin_choi_why_ai_is_incredibly_smart_and_shockingly_stupid"><strong>Why AI is incredibly smart and shockingly stupid</strong></a> <strong>@Yejin Choi</strong></h1><ol><li>崔艺珍，是一位韩国人，听这名字也像，华盛顿大学 A12 实验室的研究院她使用了《孙子兵法》中的策略，“知己知彼“，” know your enemy, choose your battles, and innovate your weapons.”</li><li>主要讲了为什么大语言模型可以回答一些很复杂的问题，又会在一些很常识基本问题上犯错</li><li>大模型的训练资料主要有三种：raw web data, crafted examples custom developed for AI training, human judgments</li></ol><h3 id="下面使用bibigpt做的总结-3"><a href="#下面使用bibigpt做的总结-3" class="headerlink" title="下面使用bibigpt做的总结"></a>下面使用<a href="https://bibigpt.co/">bibigpt</a>做的总结</h3><p>【BibiGPT】AI 课代表一键总结：Why AI is incredibly smart and shockingly stupid</p><h2 id="摘要-3"><a href="#摘要-3" class="headerlink" title="摘要"></a>摘要</h2><p>在这个视频中，AI 计算机科学家 Yejin Choi 分享了有关人工智能的一些看法。她讨论了人工智能的强大和愚蠢之处，并提出了一些关于 AI 未来发展的问题。</p><h3 id="亮点-2"><a href="#亮点-2" class="headerlink" title="亮点"></a>亮点</h3><ul><li>💡 人工智能今天表现强大，但也经常出现愚蠢的错误</li><li>💡 极端规模的 AI 模型存在社会和环境挑战</li><li>💡 AI 缺乏常识对人类是否真的安全？</li><li>💡 人工智能是否需要通过规模来教授？</li><li>💡 AI 如何获取常识和价值观的学习？</li></ul><p>#人工智能 #AI 未来 #常识缺乏</p><h3 id="问题-3"><a href="#问题-3" class="headerlink" title="问题"></a>问题</h3><ol><li>人工智能如何能够获得真正的常识，除了输入和人类反馈之外还有其他方法吗？</li><li>能否通过结合现有的 AI 技术和 Yejin Choi 提出的想法来改进人工智能模型？</li><li>极端规模的 AI 模型是否真的能解决人工智能发展的问题，还是还需要其他方法？</li></ol><h1 id="The-inside-story-of-ChatGPT’s-astonishing-potential-Greg-Brockman"><a href="#The-inside-story-of-ChatGPT’s-astonishing-potential-Greg-Brockman" class="headerlink" title="The inside story of ChatGPT’s astonishing potential@Greg Brockman"></a><a href="https://www.ted.com/talks/greg_brockman_the_inside_story_of_chatgpt_s_astonishing_potential"><strong>The inside story of ChatGPT’s astonishing potential</strong></a><strong>@Greg Brockman</strong></h1><ol><li><p>openai 的联合创始人 Greg Brockman 讲了一些 ChatGPT 的原理</p></li><li><p>后面的问答环节，主持人问格雷格-布罗克曼，关于 Chat GPT 这个潘多拉魔盒的事情。</p><p>CA: So Viagra spam is bad, but there are things that are much worse. Here’s a thought experiment for you. Suppose you’re sitting in a room, there’s a box on the table. You believe that in that box is something that, there’s a very strong chance it’s something absolutely glorious that’s going to give beautiful gifts to your family and to everyone. But there’s actually also a one percent thing in the small print there that says: “Pandora.” And there’s a chance that this actually could unleash unimaginable evils on the world. Do you open that box?</p><p>CA: 伟哥垃圾邮件是很糟糕，但还有更糟糕的事情。这里有一个思想实验，假设你坐在一个房间里，桌子上有一个盒子，你相信盒子里有一个东西，很有可能是一个绝对辉煌的东西，会给你的家人和所有人带来美好的礼物。但实际上，在小字里还有一个百分之一的东西，上面写着：”潘多拉。”这东西有可能会给世界带来难以想象的邪恶。</p></li></ol><h3 id="下面使用bibigpt做的总结-4"><a href="#下面使用bibigpt做的总结-4" class="headerlink" title="下面使用bibigpt做的总结"></a>下面使用<a href="https://bibigpt.co/">bibigpt</a>做的总结</h3><p>【BibiGPT】AI 课代表一键总结：The inside story of ChatGPT’s astonishing potential</p><h2 id="摘要-4"><a href="#摘要-4" class="headerlink" title="摘要"></a>摘要</h2><p>本文讨论了 OpenAI 联合创始人 Greg Brockman 对于 ChatGPT 内在设计原则的探索，以及一些令人震惊的未发布的插件演示。在演讲后，TED 主席 Chris Anderson 加入了讨论，并深入了解了 ChatGPT 开发的时间轴，并听取了 Brockman 对释放这样一个强大工具所带来风险的看法。</p><h3 id="亮点-3"><a href="#亮点-3" class="headerlink" title="亮点"></a>亮点</h3><ul><li>💡ChatGPT 的设计原则</li><li>💡 未发布的插件演示</li><li>💡ChatGPT 的开发时间轴</li><li>💡 释放强大工具所带来的风险</li><li>💡 技术行业对 ChatGPT 的看法</li></ul><p>#ChatGPT #OpenAI #人工智能</p><h3 id="问题-4"><a href="#问题-4" class="headerlink" title="问题"></a>问题</h3><ol><li>为什么 ChatGPT 被认为是一个强大的工具？</li><li>ChatGPT 的未来发展方向是什么？</li><li>释放 ChatGPT 可能会导致哪些潜在风险？</li></ol><p><img src="https://r2.deusyu.app/2c2dd111-c523-4a87-96ee-40be399b59cb.svg"></p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/">认知</category>
      
      <category domain="https://deusyu.app/categories/%E8%AE%A4%E7%9F%A5/%E6%BC%94%E8%AE%B2/">演讲</category>
      
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      <category domain="https://deusyu.app/tags/Speech/">Speech</category>
      
      
      <comments>https://deusyu.app/posts/ai-speech/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>butterfly主题字体设置为霞鹜文楷 / LXGW WenKai </title>
      <link>https://deusyu.app/posts/add-lxgwwenkai/</link>
      <guid>https://deusyu.app/posts/add-lxgwwenkai/</guid>
      <pubDate>Wed, 14 Feb 2024 00:44:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>初识霞鹜文楷是在纯纯写作 APP 中，对于中文字体来说，太美啦，搁置了很久也把自己网站的全局字体设置为霞鹜。</p><p><img src="https://r2.deusyu.app/3ab5d352-a325-4e3f-ad11-057d170eae66.png"></p><p><img src="https://r2.deusyu.app/9a41e88c-6843-4ef8-9a15-d91c2cad03b8.png"></p><h1 id="设置字体"><a href="#设置字体" class="headerlink" title="设置字体"></a>设置字体</h1><h2 id="修改-inject"><a href="#修改-inject" class="headerlink" title="修改 inject"></a>修改 inject</h2><p>非常简单，只需要修改主题配置文件的<code>inject</code> 的值，添加字体 CDN</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">inject:</span></span><br><span class="line">  <span class="attr">head:</span></span><br><span class="line">    <span class="comment"># - &lt;link rel=&quot;stylesheet&quot; href=&quot;https://npm.elemecdn.com/lxgw-wenkai-screen-webfont@1.7.0/style.css&quot; media=&quot;print&quot; onload=&quot;this.media=&#x27;all&#x27;&quot;&gt;</span></span><br><span class="line">    <span class="bullet">-</span> <span class="string">&lt;link</span> <span class="string">rel=&quot;stylesheet&quot;</span> <span class="string">href=&quot;https://cdn.staticfile.org/lxgw-wenkai-screen-webfont/1.7.0/style.css&quot;</span> <span class="string">media=&quot;print&quot;</span> <span class="string">onload=&quot;this.media=&#x27;all&#x27;&quot;&gt;</span></span><br></pre></td></tr></table></figure><p>第一个饿了吗的 CDN 经过我的测试，不生效了，所以用七牛云的这个 CDN</p><h2 id="设置-font-family"><a href="#设置-font-family" class="headerlink" title="设置 font-family"></a>设置 font-family</h2><p>在<code>font</code> 的设置中添加<code>LXGW WenKai Screen</code></p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">font:</span></span><br><span class="line">  <span class="attr">global-font-size:</span> <span class="string">16px</span></span><br><span class="line">  <span class="attr">code-font-size:</span> <span class="string">13px</span></span><br><span class="line">  <span class="attr">font-family:</span> <span class="string">LXGW</span> <span class="string">WenKai</span> <span class="string">Screen,</span> <span class="string">serif,</span> <span class="string">-apple-system,</span> <span class="string">BlinkMacSystemFont,</span> <span class="string">&quot;Segoe UI&quot;</span><span class="string">,</span> <span class="string">&quot;Helvetica Neue&quot;</span><span class="string">,</span> <span class="string">Lato,</span> <span class="string">Roboto,</span> <span class="string">&quot;PingFang SC&quot;</span><span class="string">,</span> <span class="string">&quot;Microsoft JhengHei&quot;</span><span class="string">,</span> <span class="string">&quot;Microsoft YaHei&quot;</span><span class="string">,</span> <span class="string">sans-serif,</span> <span class="string">Merriweather</span></span><br><span class="line">  <span class="attr">code-font-family:</span> <span class="string">consolas,</span> <span class="string">Menlo,</span> <span class="string">&quot;PingFang SC&quot;</span><span class="string">,</span> <span class="string">&quot;Microsoft JhengHei&quot;</span><span class="string">,</span> <span class="string">&quot;Microsoft YaHei&quot;</span><span class="string">,</span> <span class="string">sans-serif</span></span><br></pre></td></tr></table></figure><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://www.moezz.cn/contents/44"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">www.moezz.cn</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://www.moezz.cn/contents/44</div></div></div></a></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://imbhj.com/posts/25c13146/"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">imbhj.com</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://imbhj.com/posts/25c13146/</div></div></div></a></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://penghh.fun/2023/05/07/2023-5-7-hexo_blog_font/"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">penghh.fun</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://penghh.fun/2023/05/07/2023-5-7-hexo_blog_font/</div></div></div></a></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://github.com/lxgw/LxgwWenKai?tab=readme-ov-file"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">GitHub - lxgw/LxgwWenKai: An unprofessional open-source Chinese font derived from Fontworks' Klee One. 一款非专业的开源中文字体，基于 FONTWORKS 出品字体 Klee One 衍生。</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">An unprofessional open-source Chinese font derived from Fontworks&#39; Klee One. 一款非专业的开源中文字体，基于 FONTWORKS 出品字体 Klee One 衍生。   - GitHub - lxgw/LxgwWenKai: An unprofessional open-source Chinese font...</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://github.githubassets.com/favicons/favicon.svg"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://github.com/lxgw/LxgwWenKai?tab=readme-ov-file</div></div></div><div style="flex: 1 1 180px; display: block; position: relative;"><div style="position: absolute; inset: 0px;"><div style="width: 100%; height: 100%;"><img src="https://opengraph.githubassets.com/833e5b1e7f958fc7a617f0031221bdd94bfc9f5ce97a7eb43b09d8ce30664f57/lxgw/LxgwWenKai" referrerpolicy="no-referrer" style="display: block; object-fit: cover; border-radius: 3px; width: 100%; height: 100%;"></div></div></div></a></div></div>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/categories/Blog/Hexo/">Hexo</category>
      
      
      <category domain="https://deusyu.app/tags/Hexo/">Hexo</category>
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      
      <comments>https://deusyu.app/posts/add-lxgwwenkai/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>小米AX3600刷入uboot</title>
      <link>https://deusyu.app/posts/uboot-ax3600/</link>
      <guid>https://deusyu.app/posts/uboot-ax3600/</guid>
      <pubDate>Tue, 13 Feb 2024 14:45:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>大年初四，隔壁叔叔还在刷机哦。</p><p><img src="https://r2.deusyu.app/20.png" alt="隔壁叔叔还在刷机"></p><p>距离上次拆开AX3600TTL刷机已经过去了一两个月，忍来忍去还是无法忍受ssrp的体验，准备尝试设置略显繁复的openclash。</p><p>没搞明白ImmortalWrt的可视化编译怎么弄的，就从GitHub找了一个又一个包开刷，有大的有小的，最后还是相中了恩山无线的固件，</p><blockquote><p>“愿你刷机归来，还是恩山无线”，雷布斯如是说（误）</p></blockquote><p>刷完之后开始研究openclash繁琐的配置，在配置方面暂且使用fakeip+tun+rule的形式，目前来看，访问openai、github、youtube 没有问题，这便是好的。</p><h1 id="刷入uboot"><a href="#刷入uboot" class="headerlink" title="刷入uboot"></a>刷入uboot</h1><p>从一开始，拆机TTL刷机就觉得太麻烦了，所以准备刷入个uboot，看恩山的教程大多数都是从零到一的，比如从解锁ssh到扩容，然后再到刷入uboot，再通过uboot刷机。由于嵌入式和openwrt这些匮乏的知识，看了几篇blog后终于知道怎么刷了，openwrt很open，起码不像openai。</p><h2 id="ssh-备份"><a href="#ssh-备份" class="headerlink" title="ssh&amp;备份"></a>ssh&amp;备份</h2><p>ssh登录到路由器。</p><p>openwrt已经解锁了这些分区，对于我的小米AX3600来说，就是要替换掉两个分区的内容，可以通过<code>cat /proc/mtd</code>来查看所有的分区</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br></pre></td><td class="code"><pre><span class="line">root@ImmortalWrt:~<span class="comment"># cat /proc/mtd</span></span><br><span class="line">dev:    size   erasesize  name</span><br><span class="line">mtd0: 00100000 00020000 <span class="string">&quot;0:sbl1&quot;</span></span><br><span class="line">mtd1: 00100000 00020000 <span class="string">&quot;0:mibib&quot;</span></span><br><span class="line">mtd2: 00300000 00020000 <span class="string">&quot;0:qsee&quot;</span></span><br><span class="line">mtd3: 00080000 00020000 <span class="string">&quot;0:devcfg&quot;</span></span><br><span class="line">mtd4: 00080000 00020000 <span class="string">&quot;0:rpm&quot;</span></span><br><span class="line">mtd5: 00080000 00020000 <span class="string">&quot;0:cdt&quot;</span></span><br><span class="line">mtd6: 00080000 00020000 <span class="string">&quot;0:appsblenv&quot;</span></span><br><span class="line">mtd7: 00100000 00020000 <span class="string">&quot;0:appsbl&quot;</span></span><br><span class="line">mtd8: 00080000 00020000 <span class="string">&quot;0:art&quot;</span></span><br><span class="line">mtd9: 00080000 00020000 <span class="string">&quot;bdata&quot;</span></span><br><span class="line">mtd10: 00080000 00020000 <span class="string">&quot;crash&quot;</span></span><br><span class="line">mtd11: 00080000 00020000 <span class="string">&quot;crash_syslog&quot;</span></span><br><span class="line">mtd12: 0f000000 00020000 <span class="string">&quot;rootfs&quot;</span></span><br><span class="line">mtd13: 00080000 00020000 <span class="string">&quot;rsvd0</span></span><br></pre></td></tr></table></figure><p>我们要刷的是mtd1和mtd7，不太懂mtd1是什么意思，问了下chatgpt，得到这样的回答。</p><p><img src="https://r2.deusyu.app/image-20240213232500820.png" alt="image-20240213232500820"></p><p>所以大概是恩山的<a href="https://www.right.com.cn/forum/space-uid-491450.html">tb6750217</a>编写<code>ax3600-mibib.bin</code>修改了系统的启动配置，使路由器重启时可以选择第13分区<code>mtd13</code> ，而这个是扩容后的操作系统分区。</p><h3 id="首先备份mtd1和mtd7"><a href="#首先备份mtd1和mtd7" class="headerlink" title="首先备份mtd1和mtd7"></a>首先备份mtd1和mtd7</h3><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">dd</span> <span class="keyword">if</span>=/dev/mtd1 of=/tmp/mtd1_backup.bin</span><br><span class="line"><span class="built_in">dd</span> <span class="keyword">if</span>=/dev/mtd7 of=/tmp/mtd7_backup.bin</span><br></pre></td></tr></table></figure><p>备份到&#x2F;tmp，<strong>可以通过<code>scp</code>等命令下载在本地或者其他位置保存起来</strong></p><p>然后把下载的<code>ax3600-mibib.bin</code>和<code>uboot-xiaomi-ax3600.bin</code>上传到路由器的<code>/tmp</code></p><h3 id="写入"><a href="#写入" class="headerlink" title="写入"></a>写入</h3><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">mtd erase /dev/mtd1</span><br><span class="line">mtd write /tmp/ax3600-mibib.bin /dev/mtd1</span><br><span class="line"></span><br><span class="line">mtd erase /dev/mtd7 </span><br><span class="line">mtd write /tmp/uboot-xiaomi-ax3600.bin /dev/mtd7</span><br></pre></td></tr></table></figure><p>有如下类似的输出算是写入成功了</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">root@ImmortalWrt:/tmp# mtd erase /dev/mtd7</span><br><span class="line">Unlocking /dev/mtd7 ...</span><br><span class="line">Erasing /dev/mtd7 ...</span><br><span class="line">root@ImmortalWrt:/tmp# mtd write /tmp/uboot-xiaomi-ax3600.bin /dev/mtd7</span><br><span class="line">Unlocking /dev/mtd7 ...</span><br></pre></td></tr></table></figure><p>两个文件都在恩山无线的这位老哥的蓝奏云上</p><blockquote><p><a href="https://wws.lanzoui.com/b02c8pkle">https://wws.lanzoui.com/b02c8pkle</a></p><p>密码:2mjy</p></blockquote><p>当然也可以访问我的云端硬盘：<a href="https://cloud.deusyu.app/s/k5h6?&path=/">https://cloud.deusyu.app/s/k5h6?&amp;path=%2F</a></p><h2 id="通过uboot刷机"><a href="#通过uboot刷机" class="headerlink" title="通过uboot刷机"></a>通过uboot刷机</h2><p>电脑连路由器的lan口，关闭Wi-Fi，配置IPv4为手动，IP地址：<code>192.168.1.10</code>，子网掩码：<code>255.255.255.0</code>，路由器：<code>192.168.1.1</code></p><p><img src="https://r2.deusyu.app/image-20240213233253480.png" alt="image-20240213233253480"></p><p>然后路由器断电重启，同时按住Reset键，蓝灯闪烁后变黄，浏览器输入 <code>192.168.1.1</code> 进入不死 uboot。</p><h1 id="温和、甜蜜的试验"><a href="#温和、甜蜜的试验" class="headerlink" title="温和、甜蜜的试验"></a>温和、甜蜜的试验</h1><p>在一开始我只刷入了<code>uboot-xiaomi-ax3600.bin</code>这个文件，然后验证刷入的uboot是否能正确刷入固件，刷完重启后路由器的SYSTEM灯是蓝灯，但INTERNET灯没有亮，搜索Wi-Fi也没有openwrt或者ImmortalWrt的字样。</p><p>失败了，然后只能再次拆开TTL硬刷了，而这次不像以往那么好运了，给第13分区刷入固件后，启动SYSTEM灯还是蓝灯，INTERNET灯没有亮！与此同时我也给第12分区——这个小分区刷入官方固件，但是刷不进去。</p><p>🤔 我猜应该是加载分区的问题，然后再次进入uboot刷了一个小固件，果然，uboot加载了第12分区，成功进入openwrt后，我又给第1分区补上了<code>ax3600-mibib.bin</code>这个文件，然后再刷入大固件，成功！</p><p>如果你搜索到了这篇文章，那么只能说，额，你不走寻常路，很少有人是我这种：先不扩容刷机，然后变砖，拆机TTL工具救砖，返回来扩容后再TTL刷机，最后又补上uboot。</p><p>如果你也这样，那么恭喜你，非常爱探索，咳咳，至少通过这些大胆的折腾，嵌入式和openwrt不像以前那么模糊了，有些地图已经露出来轮廓，战争迷雾已经散了一部分。</p><p>不要温和的走入那个良夜～</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li>[<a href="https://www.right.com.cn/forum/forum.php?mod=forumdisplay&fid=171&filter=typeid&typeid=44"><strong>AX3600</strong>]</a> <strong>ax3600&#x2F;AX6 扩容以及刷入uboot教程</strong> </li><li>[<a href="https://www.right.com.cn/forum/forum.php?mod=forumdisplay&fid=171&filter=typeid&typeid=44"><strong>AX3600</strong>]</a> <strong>ax6 ax3600刷uboot后恢复官方系统方法</strong></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%B7%E6%9C%BA/">刷机</category>
      
      <category domain="https://deusyu.app/tags/router/">router</category>
      
      
      <comments>https://deusyu.app/posts/uboot-ax3600/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Linux File System</title>
      <link>https://deusyu.app/posts/linux-file-system/</link>
      <guid>https://deusyu.app/posts/linux-file-system/</guid>
      <pubDate>Mon, 05 Feb 2024 19:02:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p><img src="https://r2.deusyu.app/2388cb89-9a1a-495e-b94d-58a4c23d482a.png"></p><hr><p>我印象中自己最常用的是<code>/etc</code> 其次是<code>/var</code></p><p>我曾经也经常以为 usr 是 user，其实是 Unix System Resource 啦，ByteByteGo 的这个图片真的是太直观了，对于我这种视觉学习者非常友好，多看多记忆</p><hr><blockquote><p>本文分 两部分：<br>1️⃣ 故事版（对外发布） – 轻松科普、图解为主。<br>2️⃣ 速查版（自用手册） – 扁平目录、排错清单。</p></blockquote><hr><h2 id="Part-1-｜故事版"><a href="#Part-1-｜故事版" class="headerlink" title="Part 1 ｜故事版"></a><strong>Part 1 ｜故事版</strong></h2><h3 id="开场故事"><a href="#开场故事" class="headerlink" title="开场故事"></a><strong>开场故事</strong></h3><p>还记得本科 Linux 编程课时，老师随口问“<strong>&#x2F;usr</strong> 代表什么？”</p><p>当时我和大多数同学异口同声答“user”——全错。它其实是 <strong>Unix System Resource</strong>，最早就是「挂第二块硬盘的位置」。直到 1994 年，<strong>Filesystem Hierarchy Standard (FHS)</strong> 上线，这座“无序小镇”才第一次有了城市规划，目录各就各位。</p><hr><h3 id="一图速览（Mermaid-目录树）"><a href="#一图速览（Mermaid-目录树）" class="headerlink" title="一图速览（Mermaid 目录树）"></a><strong>一图速览（Mermaid 目录树）</strong></h3><p><img src="https://r2.deusyu.app/40cb897f-19c9-4e49-93f7-80a4b517cc2c.png"></p><blockquote><p>速记口诀：<br>Edit (&#x2F;etc)、<br>Vary (&#x2F;var)、<br>Share (&#x2F;usr)、<br>Home (&#x2F;home)<br>先记常用四大目录，再补余下。</p></blockquote><hr><h3 id="八大目录分块"><a href="#八大目录分块" class="headerlink" title="八大目录分块"></a><strong>八大目录分块</strong></h3><table><thead><tr><th><strong>目录</strong></th><th><strong>功能一句话</strong></th><th><strong>常见子目录</strong></th><th><strong>常踩坑</strong></th></tr></thead><tbody><tr><td><strong>&#x2F;</strong></td><td>根，一切皆从这里分支</td><td>–</td><td>根分区爆满&#x3D;整机罢工</td></tr><tr><td><strong>&#x2F;etc</strong></td><td><em>Everything To Configure</em>：系统与服务配置</td><td>passwd、ssh&#x2F;、systemd&#x2F;</td><td>新手最爱 chmod -R 777 &#x2F;etc → 秒变事故</td></tr><tr><td><strong>&#x2F;var</strong></td><td>可变数据：日志、队列、缓存</td><td>log&#x2F;、lib&#x2F;、cache&#x2F;</td><td>日志滚动失控导致磁盘爆满</td></tr><tr><td><strong>&#x2F;usr</strong></td><td>共享只读程序与库（Unix System Resource）</td><td>bin&#x2F;、lib&#x2F;、share&#x2F;</td><td>把源码安装到 &#x2F;usr，升级覆盖</td></tr><tr><td><strong>&#x2F;usr&#x2F;local</strong></td><td>本机专属程序</td><td>自编译软件</td><td>忘记加入 $PATH</td></tr><tr><td><strong>&#x2F;run</strong></td><td><strong>2011 年后新增</strong>的 tmpfs，存放运行时状态</td><td>systemd&#x2F;、user&#x2F;</td><td>早期脚本仍写 &#x2F;var&#x2F;run，需兼容软链</td></tr><tr><td><strong>&#x2F;opt</strong></td><td>大型第三方套件</td><td>google&#x2F;、cuda&#x2F;</td><td>软件卸载残留</td></tr><tr><td><strong>&#x2F;srv</strong></td><td>对外服务数据</td><td>www&#x2F;、ftp&#x2F;</td><td>很多发行版默认空置</td></tr></tbody></table><hr><h3 id="现代进化：-usr-merge"><a href="#现代进化：-usr-merge" class="headerlink" title="现代进化：&#x2F;usr merge"></a><strong>现代进化：&#x2F;usr merge</strong></h3><p>多数基于 systemd 的发行版（Fedora、Ubuntu、Arch…）已把</p><p>&#x2F;bin &#x2F;sbin &#x2F;lib* 软链到对应的 &#x2F;usr&#x2F;*，即 <strong>&#x2F;usr merge</strong>。好处是简化 initrd、容器镜像，并能把 &#x2F;usr 做成只读快照。</p><hr><h3 id="容器映像视角"><a href="#容器映像视角" class="headerlink" title="容器映像视角"></a><strong>容器映像视角</strong></h3><p>典型的 Alpine &#x2F; Ubuntu Slim 容器里，你通常只会看到 &#x2F;etc &#x2F;usr &#x2F;bin &#x2F;lib &#x2F;lib64 &#x2F;tmp 等最小集，其余目录由镜像构建者按需追加（或挂载卷），排错时别在 &#x2F;var&#x2F;log 苦苦寻找——它可能根本不存在！</p><hr><h2 id="Part-2-｜速查版（自用手册）"><a href="#Part-2-｜速查版（自用手册）" class="headerlink" title="Part 2 ｜速查版（自用手册）"></a><strong>Part 2 ｜速查版（自用手册）</strong></h2><h3 id="etc-–-配置中心"><a href="#etc-–-配置中心" class="headerlink" title="&#x2F;etc – 配置中心"></a><strong>&#x2F;etc – 配置中心</strong></h3><ul><li><strong>用途</strong>：系统与服务的所有静态配置。FHS 要求“机器特定且随管理员修改”。</li><li><strong>高频文件</strong>：ssh&#x2F;sshd_config, systemd&#x2F;, hosts, resolv.conf.</li><li><strong>常见问题</strong>：<ul><li>权限被意外修改 → 无法开机。</li><li>卸载软件忘删残留 → 配置冲突。</li></ul></li></ul><hr><h3 id="var-–-可变数据"><a href="#var-–-可变数据" class="headerlink" title="&#x2F;var – 可变数据"></a><strong>&#x2F;var – 可变数据</strong></h3><ul><li><strong>用途</strong>：会不断增长或改变的文件。</li><li><strong>高频子目录</strong>：<ul><li>log&#x2F; – 日志；</li><li>lib&#x2F; – 服务状态（如 MySQL 库）；</li><li>cache&#x2F; – 包管理器缓存；</li><li>tmp&#x2F; – 临时缓存，比 &#x2F;tmp 生命周期长。</li></ul></li><li><strong>排错</strong>：<ul><li>du -h –max-depth&#x3D;1 &#x2F;var | sort -h 查大户。</li><li>&#x2F;var&#x2F;lib&#x2F;docker 占满通常是镜像&amp;容器未清理。</li></ul></li></ul><hr><h3 id="usr-–-共享只读"><a href="#usr-–-共享只读" class="headerlink" title="&#x2F;usr – 共享只读"></a><strong>&#x2F;usr – 共享只读</strong></h3><ul><li><strong>用途</strong>：系统级（多用户共享）程序与库。</li><li><strong>&#x2F;usr&#x2F;local</strong>：保留给「本机管理员安装的软件」。避免升级被覆盖。</li><li><strong>&#x2F;usr merge 现状</strong>：&#x2F;bin→&#x2F;usr&#x2F;bin 软链化，确保 &#x2F;usr 若做成只读快照，系统仍能正常启动。</li></ul><hr><h3 id="run-–-运行时状态"><a href="#run-–-运行时状态" class="headerlink" title="&#x2F;run – 运行时状态"></a><strong>&#x2F;run – 运行时状态</strong></h3><ul><li><strong>用途</strong>：自 FHS 3.0 起，用于存储自上次引导以来的 volatile 数据。由 tmpfs 挂载，重启即空。</li><li><strong>排错</strong>：重启丢失的 PID 文件大概率写在这里。</li></ul><hr><h3 id="home-–-用户目录"><a href="#home-–-用户目录" class="headerlink" title="&#x2F;home – 用户目录"></a><strong>&#x2F;home – 用户目录</strong></h3><ul><li><strong>用途</strong>：个人文件、配置（Desktop Linux 遵循 XDG 标准）。</li><li><strong>小贴士</strong>：合理划分子卷或独立分区，便于系统重装不丢数据。</li></ul><hr><h3 id="opt-–-第三方大软件"><a href="#opt-–-第三方大软件" class="headerlink" title="&#x2F;opt – 第三方大软件"></a><strong>&#x2F;opt – 第三方大软件</strong></h3><ul><li><strong>适合场景</strong>：Oracle、CUDA、Chrome 等发行版仓库外的大型软件。</li><li><strong>维护</strong>：保持 opt&#x2F;<vendor>&#x2F;<product>&#x2F; 三段式，升级与卸载清晰。</li></ul><hr><h3 id="srv-–-对外服务数据"><a href="#srv-–-对外服务数据" class="headerlink" title="&#x2F;srv – 对外服务数据"></a><strong>&#x2F;srv – 对外服务数据</strong></h3><ul><li><strong>用途</strong>：网站、FTP、仓库…面向客户端的数据根。</li><li><strong>现状</strong>：许多发行版默认留空，纯按需使用。</li></ul><hr><h3 id="常用排查命令速表"><a href="#常用排查命令速表" class="headerlink" title="常用排查命令速表"></a><strong>常用排查命令速表</strong></h3><table><thead><tr><th><strong>场景</strong></th><th><strong>命令</strong></th></tr></thead><tbody><tr><td>查看分区类型 &amp; 容量</td><td>df -hT</td></tr><tr><td>找出目录空间占用</td><td>du -h –max-depth&#x3D;1 &#x2F;path</td></tr><tr><td>实时监控日志</td><td>tail -F &#x2F;var&#x2F;log&#x2F;syslog</td></tr><tr><td>检查大于 1 GiB 文件</td><td>find &#x2F; -xdev -type f -size +1G -print</td></tr></tbody></table>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/Linux/">Linux</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      
      <comments>https://deusyu.app/posts/linux-file-system/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>How to Get Rich 如何致富</title>
      <link>https://deusyu.app/posts/rich/</link>
      <guid>https://deusyu.app/posts/rich/</guid>
      <pubDate>Sun, 04 Feb 2024 00:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>通过沉浸式翻译阅读了纳瓦尔的How to Get Rich，受益匪浅，保存下来，反复阅读。</p><p>链接：<a href="https://nav.al/rich">How to Get Rich</a></p><hr><p><a href="https://nav.al/">Naval</a></p><ul><li><a href="https://nav.al/archive">Archive</a></li><li><a href="http://twitter.com/naval">Twitter</a></li><li><a href="https://www.instagram.com/naval/">Instagram</a></li><li><a href="https://nav.al/subscribe">Subscribe</a></li></ul><p>Dec 28 2019 12月 28 2019</p><h1 id="How-to-Get-Rich-如何致富"><a href="#How-to-Get-Rich-如何致富" class="headerlink" title="How to Get Rich 如何致富"></a>How to Get Rich 如何致富</h1><p><audio controls="" preload="none" dim_w="1" style="box-sizing: border-box; height: 0px; width: 0px; overflow: hidden; visibility: hidden; left: 0px; top: 0px;"></audio></p><p>3:35:35</p><p>Get podcast </p><p><em>A collection of all my interviews about my ‘How to Get Rich’ <a href="https://twitter.com/naval/status/1002103360646823936">tweetstorm</a>.<br>收集了我关于我的“如何致富”推文风暴的所有采访。</em></p><h2 id="Seek-Wealth-Not-Money-or-Status-追求财富，而不是金钱或地位"><a href="#Seek-Wealth-Not-Money-or-Status-追求财富，而不是金钱或地位" class="headerlink" title="Seek Wealth, Not Money or Status 追求财富，而不是金钱或地位"></a>Seek Wealth, Not Money or Status 追求财富，而不是金钱或地位</h2><p><em>Wealth is assets that earn while you sleep<br>财富是趁你睡觉赚钱的资产</em></p><p><strong>Naval is a prolific tech investor and founder of AngelList<br>Naval是一位多产的科技投资者，也是AngelList的创始人</strong></p><p><strong>Nivi:</strong> You probably know Naval from his <a href="https://twitter.com/naval">Twitter</a> account.<br>Nivi：你可能从他的Twitter账户上认识Naval。</p><p>We’re going to talk about his tweetstorm, “<a href="https://twitter.com/naval/status/1002103360646823936">How To Get Rich (without getting lucky)</a>.” We’ll go through most of the tweets in detail, give Naval a chance to expand on them and generally riff on the topic. He’ll probably throw in ideas he hasn’t published before.<br>我们来谈谈他的推特风暴，“如何致富（不走运）。我们将详细浏览大部分推文，让 Naval 有机会扩展它们并大致讨论该主题。他可能会提出他以前没有发表过的想法。</p><p>Naval’s the co-founder of <a href="http://angel.co/">AngelList</a> and Epinions. He’s also a prolific tech investor in companies like Twitter, Uber and many more.<br>Naval 是 AngelList 和 Epinions 的联合创始人。他还是Twitter、Uber等公司的多产科技投资者。</p><p><a href="http://twitter.com/nivi">I’m</a> the co-founder of AngelList with Naval. And I co-authored the <a href="http://venturehacks.com/">Venture Hacks</a> blog with him back in the day.<br>我是 Naval 的 AngelList 的联合创始人。我当时和他一起合著了 Venture Hacks 博客。</p><p><strong>Naval:</strong> The “How to Get Rich” tweetstorm definitely hit a nerve and went viral. A lot of people say it was helpful and reached across aisles.<br>Naval：“如何致富”的推特风暴无疑触动了神经并迅速传播开来。很多人说它很有帮助，并且跨越了过道。</p><p>People outside of the tech industry—people in all walks of life—want to know how to solve their money problems. Everyone vaguely knows they want to be wealthy, but they don’t have a good set of principles to do it by.<br>科技行业以外的人——各行各业的人——都想知道如何解决他们的金钱问题。每个人都隐约知道自己想变得富有，但他们没有一套好的原则来做到这一点。</p><p><strong>Wealth is assets that earn while you sleep<br>财富是趁你睡觉赚钱的资产</strong></p><p><strong>Nivi:</strong> What’s the difference between wealth, money and status?<br>Nivi：财富、金钱和地位有什么区别？</p><p><strong>Naval:</strong> Wealth is the thing you want. Wealth is assets that earn while you sleep; it’s the factory of robots cranking out things. Wealth is the computer program running at night that’s serving other customers. Wealth is money in the bank that is reinvested into other assets and businesses.<br>Naval：财富是你想要的东西。财富是趁你睡觉时赚取的资产;这是机器人的工厂。财富是夜间运行的计算机程序，为其他客户提供服务。财富是银行里的钱，再投资于其他资产和业务。</p><p>A house can be a form of wealth, because you can rent it out; although that’s a less productive use of land than running a commercial enterprise.<br>房子可以成为财富的一种形式，因为你可以把它出租;尽管与经营商业企业相比，这是对土地的高效利用。</p><p>My definition of wealth is oriented toward businesses and assets that can earn while you sleep.<br>我对财富的定义是面向可以在你睡觉时赚钱的企业和资产。</p><p><strong>Wealth buys your freedom 财富买你的自由</strong></p><p>You want wealth because it buys you freedom—so you don’t have to wear a tie like a collar around your neck; so you don’t have to wake up at 7:00 a.m. to rush to work and sit in commute traffic; so you don’t have to waste your life grinding productive hours away into a soulless job that doesn’t fulfill you.<br>你想要财富，因为它能给你带来自由——所以你不必在脖子上系领带;因此，您不必在早上 7：00 起床匆匆忙忙地上班并坐在通勤交通中;因此，您不必浪费您的生命来磨练富有成效的时间，从事一份没有灵魂的工作，这并不能满足您。</p><p>The purpose of wealth is freedom; it’s nothing more than that. It’s not to buy fur coats, or to drive Ferraris, or to sail yachts, or to jet around the world in a Gulf Stream. That stuff gets really boring and stupid, really fast. It’s about being your own sovereign individual.<br>财富的目的是自由;仅此而已。不是为了买皮大衣，不是为了开法拉利，不是为了驾驶游艇，也不是为了在墨西哥湾流中环游世界。这些东西变得非常无聊和愚蠢，非常快。这是关于成为你自己的主权个体。</p><p>You’re not going to get that unless you really want it. The entire world wants it, and the entire world is working hard at it.<br>除非你真的想要它，否则你不会得到它。全世界都想要它，整个世界都在努力。</p><p>It is competitive to some extent. It’s a positive sum game—but there are competitive elements to it, because there’s a finite amount of resources right now in society. To get the resources to do what you want, you have to stand out.<br>它在某种程度上具有竞争力。这是一个正和游戏，但其中有竞争的成分，因为现在社会上的资源是有限的。要获得资源来做你想做的事，你必须脱颖而出。</p><p><strong>Money is how we transfer wealth<br>金钱是我们转移财富的方式</strong></p><p>Money is how we transfer wealth. Money is social credits; it’s the ability to have credits and debits of other people’s time.<br>金钱是我们转移财富的方式。金钱是社会信用;它是拥有他人时间的贷方和借方的能力。</p><p>If I do my job right and create value for society, society says, “Oh, thank you. We owe you something in the future for the work that you did. Here’s a little IOU. Let’s call that money.”<br>如果我做好自己的工作，为社会创造价值，社会会说：“哦，谢谢你。我们将来欠你一些你所做的工作。这里有一张小借条。我们把这笔钱叫做钱吧。</p><p>That money gets debased because people steal the IOUs; the government prints extra IOUs; and people renege on their IOUs. But money tries to be a reliable IOU from society that you are owed something for something you did in the past.<br>这笔钱贬值是因为人们偷了借条;政府印制额外的借据;人们背弃了他们的借条。但金钱试图成为社会的可靠借据，即你欠你过去所做的事情。</p><p>We transfer these IOUs around; money is how we transfer wealth.<br>我们转移这些借条;金钱是我们转移财富的方式。</p><p><strong>Status is your rank in the social hierarchy<br>地位是你在社会等级制度中的等级</strong></p><p>There are fundamentally two huge games in life that people play. One is the money game. Money is not going to solve <em>all</em> of your problems; but it’s going to solve all of your <em>money</em> problems. I think people know that. They realize that, so they want to make money.<br>从根本上说，人们在生活中玩两个巨大的游戏。一是金钱游戏。金钱并不能解决你所有的问题;但它将解决你所有的金钱问题。我想人们知道这一点。他们意识到了这一点，所以他们想赚钱。</p><p>At the same time, deep down many people believe they can’t make it; so they don’t want any wealth creation to happen. They virtue signal by attacking the whole enterprise, saying, “Well, making money is evil. You shouldn’t do it.”<br>与此同时，在内心深处，许多人认为他们做不到;所以他们不希望发生任何财富创造。他们通过攻击整个企业来发出美德信号，说：“好吧，赚钱是邪恶的。你不应该这样做。</p><p>But they’re actually playing the other game, which is the status game. They’re trying to be high status in the eyes of others by saying, “Well, I don’t need money. We don’t want money.”<br>但他们实际上是在玩另一个游戏，即地位游戏。他们试图在别人眼中保持崇高的地位，说：“好吧，我不需要钱。我们不要钱。</p><p>Status is your ranking in the social hierarchy.<br>地位是你在社会等级中的排名。</p><p>Wealth is not a zero-sum game. Everybody in the world can have a house. Because you have a house doesn’t take away from my ability to have a house. If anything, the more houses that are built, the easier it becomes to build houses, the more we know about building houses, and the more people can have houses.<br>财富不是零和游戏。世界上每个人都可以拥有一所房子。因为你有房子并不能剥夺我拥有房子的能力。如果有的话，建造的房子越多，盖房子就越容易，我们对盖房子的了解就越多，可以拥有房子的人就越多。</p><p>Wealth is a very positive-sum game. We create things together. We’re starting this endeavor to create a piece of art that explains what we’re doing. At the end of it, something brand new will be created. It’s a positive-sum game.<br>财富是一个非常正和的游戏。我们一起创造东西。我们开始努力创造一件艺术品来解释我们正在做的事情。最后，将创造一些全新的东西。这是一个正和游戏。</p><p><strong>Status is a very old game<br>地位是一个非常古老的游戏</strong></p><p>Status, on the other hand, is a zero-sum game. It’s a very old game. We’ve been playing it since monkey tribes. It’s hierarchical. Who’s number one? Who’s number two? Who’s number three? And for number three to move to number two, number two has to move out of that slot. So, status is a zero-sum game.<br>另一方面，地位是一场零和博弈。这是一个非常古老的游戏。我们从猴子部落开始就一直在玩它。它是分层的。谁是第一名？谁是第二名？谁是第三名？为了让三号移动到二号，二号必须离开那个位置。所以，地位是一场零和游戏。</p><p>Politics is an example of a status game. Even sports is an example of a status game. To be the winner, there must be a loser. Fundamentally, I don’t like status games. They play an important role in our society, so we can figure out who’s in charge. But you play them because they’re a necessary evil.<br>政治是地位博弈的一个例子。甚至体育也是地位游戏的一个例子。要成为赢家，必须有一个输家。从根本上说，我不喜欢状态游戏。他们在我们的社会中发挥着重要作用，因此我们可以弄清楚谁在负责。但你玩它们，因为它们是必要的邪恶。</p><p>On an evolutionary basis—if you go back thousands of years—status is a much better predictor of survival than wealth. You couldn’t have wealth before the farming age because you couldn’t store things. Hunter-gatherers carried everything on their backs.<br>在进化的基础上——如果你回到几千年前——地位比财富更能预测生存。在农业时代之前，你不可能拥有财富，因为你不能储存东西。狩猎采集者背着一切。</p><p>Hunter-gatherers lived in entirely status-based societies. Farmers started going to wealth-based societies. The modern industrial economies are much more heavily wealth-based societies.<br>狩猎采集者生活在完全基于地位的社会中。农民开始进入以财富为基础的社会。现代工业经济是以财富为基础的社会。</p><p><strong>People creating wealth will always be attacked by people playing status games<br>创造财富的人总是会受到玩地位游戏的人的攻击</strong></p><p>There’s always a subtle competition going on between status and wealth. For example, when journalists attack rich people or the tech industry, they’re really bidding for status. They’re saying, “No, the <em>people</em> are more important. And I, the journalist, represent the people, and therefore I am more important.”<br>地位和财富之间总是存在着微妙的竞争。例如，当记者攻击富人或科技行业时，他们实际上是在争取地位。他们说，“不，人更重要。而我，记者，代表人民，因此我更重要。</p><p>The problem is, to win at a status game you have to put somebody else down. That’s why you should avoid status games in your life—because they make you into an angry combative person. You’re always fighting to put other people down and elevate yourself and the people you like.<br>问题是，要想在地位游戏中获胜，你必须让别人失望。这就是为什么你应该避免在生活中玩地位游戏——因为它们会让你成为一个愤怒好斗的人。你总是在努力贬低别人，提升自己和你喜欢的人。</p><p>Status games are always going to exist; there’s no way around it. Realize that most of the time when you’re trying to create wealth, you’re getting attacked by someone else and they’re trying to look like a goody-two shoes. They’re trying to up their own status at your expense.<br>状态游戏总是会存在的;没有办法绕过它。要知道，大多数时候，当你试图创造财富时，你会受到别人的攻击，他们试图看起来像一双好鞋。他们试图以牺牲你为代价来提升自己的地位。</p><p>They’re playing a different game. And it’s a worse game. It’s a zero-sum game, instead of a positive-sum game.<br>他们正在玩一个不同的游戏。这是一场更糟糕的比赛。这是一个零和游戏，而不是一个正和游戏。</p><h2 id="Make-Abundance-for-the-World-为世界创造富足"><a href="#Make-Abundance-for-the-World-为世界创造富足" class="headerlink" title="Make Abundance for the World 为世界创造富足"></a>Make Abundance for the World 为世界创造富足</h2><p><em>Wealth isn’t about taking something from somebody els</em>e<br>财富不是从别人那里拿走东西</p><p><strong>Ethical wealth creation makes abundance for the world<br>合乎道德的财富创造，为世界带来富足</strong></p><p><strong>Naval:</strong> I think there is this notion that making money is evil, right? It’s rooted all the way back down to “money is the root of all evil.” People think that the bankers steal our money. It’s somewhat true in that, in a lot of the world, there’s a lot of theft going on all the time.<br>Naval：我认为有一种观念认为赚钱是邪恶的，对吧？它的根源一直追溯到“金钱是万恶之源”。人们认为银行家偷了我们的钱。这在某种程度上是正确的，因为在世界上很多地方，一直有很多盗窃行为在发生。</p><p>The history of the world, in some sense, is this predator&#x2F;prey relationship between makers and takers. There are people who go out and create things, and build things, and work hard on things.<br>从某种意义上说，世界的历史就是制造者和接受者之间的这种捕食者&#x2F;猎物关系。有些人出去创造东西，建造东西，在事情上努力工作。</p><p>Then there are people who come along with a sword, or a gun, or taxes, or crony capitalism, or Communism, or what have you. There’s all these different methods to steal.<br>然后有些人带着剑，或枪，或税收，或裙带资本主义，或共产主义，或你所拥有的。有所有这些不同的方法可以偷窃。</p><p>Even in nature, there are more parasites than there are non-parasitical organisms. You have a ton of parasites in you, who are living off of you. The better ones are symbiotic, they’re giving something back. But there are a lot that are just taking. That’s the nature of how any complex system is built.<br>即使在自然界中，寄生虫也比非寄生生物多。你体内有一大堆寄生虫，它们靠你为生。更好的人是共生的，他们正在回馈一些东西。但是有很多事情正在采取。这就是任何复杂系统构建的本质。</p><p>What I am focused on is true wealth creation. It’s not about taking money. It’s not about taking something from somebody else. It’s from creating abundance.<br>我关注的是真正的财富创造。这不是拿钱。这不是要从别人那里拿走东西。它来自创造富足。</p><p>Obviously, there isn’t a finite number of jobs, or finite amount of wealth. Otherwise we would still be sitting around in caves, figuring out how to divide up pieces of fire wood, and the occasional dead deer.<br>显然，工作数量不是有限的，财富也不是有限的。否则，我们仍然会坐在山洞里，弄清楚如何分配柴火和偶尔的死鹿。</p><p>Most of the wealth in civilization, in fact all of it, has been created. It got created from somewhere. It got created from people. It got created from technology. It got created from productivity. It got created from hard work. This idea that it’s stolen is this horrible zero-sum game that people who are trying to gain status play.<br>文明中的大部分财富，事实上，所有的财富，都是被创造出来的。它是从某个地方创建的。它是由人创造的。它是由技术创造的。它是从生产力中创造出来的。它是从辛勤工作中创造出来的。这种被偷走的想法是那些试图获得地位的人玩的可怕的零和游戏。</p><p><strong>Everyone can be rich 每个人都可以变得富有</strong></p><p>But the reality is everyone can be rich. We can see that by seeing, that in the First World, everyone is basically richer than almost anyone who was alive 200 years ago.<br>但现实是，每个人都可以变得富有。我们可以看到，在第一世界，每个人基本上都比200年前活着的几乎任何人都富有。</p><p>200 years ago nobody had antibiotics. Nobody had cars. Nobody had electricity. Nobody had the iPhone. All of these things are inventions that have made us wealthier as a species.<br>200年前，没有人使用抗生素。没有人有车。没有人有电。没有人有iPhone。所有这些东西都是使我们作为一个物种更加富有的发明。</p><p>Today, I would rather be a poor person in a First World country, than be a rich person in Louis the XIV’s France. I’d rather be a poor person today than aristocrat back then. That’s because of wealth creation.<br>今天，我宁愿做第一世界国家的穷人，也不愿做路易十四统治下的法国的富人。我宁愿今天做一个穷人，也不愿做一个贵族。那是因为财富的创造。</p><p>The engine of technology is science that is applied for the purpose of creating abundance. So, I think fundamentally everybody can be wealthy.<br>技术的引擎是科学，它是为了创造富足而应用的。所以，我认为从根本上说，每个人都可以变得富有。</p><p>This thought experiment I want you to think through is imagine if everybody had the knowledge of a good software engineer and a good hardware engineer. If you could go out there, and you could build robots, and computers, and bridges, and program them. Let’s say every human knew how to do that.<br>我想让你们仔细思考的这个思想实验是想象一下，如果每个人都有一个好的软件工程师和一个好的硬件工程师的知识。如果你能走出去，你可以建造机器人、计算机、桥梁，然后对它们进行编程。假设每个人都知道如何做到这一点。</p><p>What do you think society would look like in 20 years? My guess is what would happen is we would build robots, machines, software and hardware to do everything. We would all be living in massive abundance.<br>你认为20年后的社会会是什么样子？我的猜测是，我们将制造机器人、机器、软件和硬件来做任何事情。我们都会生活在巨大的富足中。</p><p>We would essentially be retired, in the sense that none of us would have to work for any of the basics. We’d even have robotic nurses. We’d have machine driven hospitals. We’d have self-driving cars. We’d have farms that are 100% automated. We’d have clean energy.<br>我们基本上已经退休了，从某种意义上说，我们谁都不必为任何基本工作。我们甚至会有机器人护士。我们会有机器驱动的医院。我们会有自动驾驶汽车。我们将拥有 100% 自动化的农场。我们将拥有清洁能源。</p><p>At that point, we could use technology breakthroughs to get everything that we wanted. If anyone is still working at that point, they’re working as a form of expressing their creativity. They’re working because it’s in them to contribute, and to build and design things.<br>在这一点上，我们可以利用技术突破来获得我们想要的一切。如果有人在那个时候还在工作，那么他们就是在表达自己的创造力。他们正在工作，因为他们有责任做出贡献，建造和设计东西。</p><p>I don’t think capitalism is evil. Capitalism is actually good. It’s just that it gets hijacked. It gets hijacked by improper pricing of externalities. It gets hijacked by improper yields, where you have corruption, or you have monopolies.<br>我不认为资本主义是邪恶的。资本主义其实是好的。只是它被劫持了。它被外部性的不当定价所劫持。它被不当的收益所劫持，你有腐败，或者你有垄断。</p><h2 id="Free-Markets-Are-Intrinsic-to-Humans-自由市场是人类与生俱来的"><a href="#Free-Markets-Are-Intrinsic-to-Humans-自由市场是人类与生俱来的" class="headerlink" title="Free Markets Are Intrinsic to Humans 自由市场是人类与生俱来的"></a>Free Markets Are Intrinsic to Humans 自由市场是人类与生俱来的</h2><p><em>We use credits and debits to cooperate across genetic boundaries<br>我们使用贷方和借方进行跨越基因界限的合作</em></p><p><strong>Free markets are intrinsic to the human species<br>自由市场是人类与生俱来的</strong></p><p><strong>Naval:</strong> Overall capitalism [meaning free markets] is intrinsic to the human species. Capitalism is not something we invented. Capitalism is not even something we discovered. It is in us in every exchange that we have.<br>Naval：总的来说，资本主义（意为自由市场）是人类固有的。资本主义不是我们发明的。资本主义甚至不是我们发现的东西。在我们所拥有的每一次交流中，它都在我们身上。</p><p>When you and I exchange information, I want some information back from you. I give you information. You give me information. If we weren’t having a good information exchange, you’d go talk to somebody else. So, the notion of exchange, and keeping track of credits and debits, this is built into us as flexible social animals.<br>当你和我交换信息时，我想从你那里得到一些信息。我给你信息。你给我信息。如果我们没有良好的信息交流，你会去找别人谈谈。因此，交换的概念，以及跟踪贷方和借方，这是我们作为灵活的社会动物所固有的。</p><p>We are the only animals in the animal kingdom that cooperate across genetic boundaries. Most animals don’t even cooperate. But when they do, they cooperate only in packs where they co-evolve together, and they share blood, so they have some shared interests.<br>我们是动物王国中唯一跨越基因界限合作的动物。大多数动物甚至不合作。但是当他们这样做时，他们只在他们共同进化的群体中合作，他们共享血液，所以他们有一些共同的兴趣。</p><p>Humans don’t have that. I can cooperate with you guys. One of you is a Serbian. The other one is a Persian by origin. And I’m Indian by origin. We have very little blood in common, basically none. But we still cooperate.<br>人类没有。我可以和你们合作。你们中有一个是塞尔维亚人。另一个是波斯血统。我是印度人。我们的共同点很少，基本上没有。但我们仍然合作。</p><p>What lets us cooperate? It’s because we can keep track of debits and credits. Who put in how much work? Who contributed how much? That’s all free market capitalism is.<br>是什么让我们合作？这是因为我们可以跟踪借方和贷方。谁投入了多少工作？谁贡献了多少？这就是自由市场资本主义的全部。</p><p>So, I strongly believe that it is innate to the human species, and we are going to create more and more wealth, and abundance for everybody.<br>所以，我坚信这是人类与生俱来的，我们将为每个人创造越来越多的财富和富足。</p><p>Everybody can be wealthy. Everybody can be retired. Everybody can be successful. It is merely a question of education and desire. You have to want it. If you don’t want it, that’s fine. Then you opt out of the game.<br>每个人都可以变得富有。每个人都可以退休。每个人都可以成功。这只是一个教育和欲望的问题。你必须想要它。如果你不想要它，那也没关系。然后你选择退出游戏。</p><p>But don’t try to put down the people who are playing the game. Because that’s the game that keeps you in a comfortable warm bed at night. That’s the game that keeps a roof over your head. That’s the game that keeps your supermarkets stocked. That’s the game that keeps the iPhone buzzing in your pocket.<br>但不要试图贬低正在玩游戏的人。因为这就是让你在晚上躺在舒适温暖的床上的游戏。这就是让你头顶上有屋顶的游戏。这就是让你的超市保持库存的游戏。这就是让 iPhone 在口袋里嗡嗡作响的游戏。</p><p>So, it is a beautiful game that is worth playing ethically, rationally, morally, socially for the human race. It’s going to continue to make us all richer and richer, until we have massive wealth creation for anybody who wants it.<br>所以，这是一款美丽的游戏，值得人类在伦理上、理性上、道德上、社会上玩。它将继续使我们越来越富有，直到我们为任何想要它的人创造巨大的财富。</p><p><strong>Too many takers and not enough makers will plunge a society into ruin<br>太多的接受者和没有足够的制造者将使一个社会陷入毁灭</strong></p><p><strong>Nivi:</strong> It’s not just individuals secretly despising wealth, right? There are countries, groups, political parties that overtly despise wealth. Or at least seem to.<br>Nivi：不只是个人在暗中鄙视财富，对吧？有些国家、团体、政党公然鄙视财富。或者至少看起来是这样。</p><p><strong>Naval:</strong> That’s right. What those countries, political parties, and groups are reduced to is playing the zero-sum game of status. In the process to destroy wealth creation, they drag everybody down to their level.<br>Naval：没错。这些国家、政党和团体沦为在玩地位的零和游戏。在破坏财富创造的过程中，他们把每个人都拖到他们的水平。</p><p>Which is why the U.S. is a very popular country for immigrants because of the American dream. Anyone can come here, be poor, and then work really hard and make money, and get wealthy. But even just make some basic money for their life.<br>这就是为什么由于美国梦，美国是一个非常受移民欢迎的国家。任何人都可以来到这里，变得贫穷，然后努力工作，赚钱，变得富有。但即使只是为他们的生活赚一些基本的钱。</p><p>Obviously, the definition of wealth is different for different people. A First World citizen’s definition of wealth might be, “Oh, I have to make millions of dollars, and I’m completely done.”<br>显然，财富的定义因人而异。第一世界公民对财富的定义可能是，“哦，我必须赚数百万美元，我完全完成了。</p><p>Whereas to a Third World poor immigrant just entering the country, and we were poor immigrants who came here when I as fairly young, to the United States, wealth may just be a much lower number. It may just be, “I don’t have to work a manual labor job for the rest of my life that I don’t want to work.”<br>而对于一个刚进入美国的第三世界贫穷移民来说，我们是贫穷的移民，在我很小的时候就来到这里，对美国来说，财富可能只是一个低得多的数字。它可能只是，“我不必一辈子从事我不想工作的体力劳动工作。</p><p>But groups that despise it will essentially bring the entire group to that level. If you get too many takers, and not enough makers, society falls apart. You end up with a communist country.<br>但是鄙视它的群体基本上会把整个群体带到那个水平。如果你得到太多的接受者，而没有足够的制造者，社会就会分崩离析。你最终会得到一个共产主义国家。</p><p>Look at Venezuela, right? They were so busy taking, and dividing, and reallocating, that people are literally starving in the streets, and losing kilograms of body weight every year just from sheer starvation.<br>看看委内瑞拉，对吧？他们忙于获取、分割和重新分配，以至于人们在街上挨饿，每年都因为饥饿而减掉公斤的体重。</p><p>Another way to think about it is imagine an organism that has too many parasites. You need some small number of parasites to stay healthy.<br>另一种思考方式是想象一个有太多寄生虫的生物体。你需要一些少量的寄生虫来保持健康。</p><p>You need a lot of symbiotes. All the mitochondria in all of our cells that help us respirate and burn oxygen. These are symbiotes that help us survive. We couldn’t survive without them.<br>你需要很多共生体。我们所有细胞中的所有线粒体都帮助我们呼吸和燃烧氧气。这些是帮助我们生存的共生体。没有他们，我们就无法生存。</p><p>But, to me, those are partners in the wealth creation that creates the human body. But if you just were filled with parasites, if you got infected with worms, or a virus, or bacteria that were purely parasitical, you would die.  So, any organism can only withstand a small number of parasites. When the parasitic element gets too far out of control, you die.<br>但是，对我而言，这些是创造人体的财富创造的伙伴。但是，如果你只是充满了寄生虫，如果你感染了蠕虫、病毒或纯粹寄生的细菌，你就会死去。 因此，任何生物都只能承受少量的寄生虫。当寄生元素失控得太远时，你就会死亡。</p><p>Again I’m talking about ethical wealth creation. I’m not talking about monopolies. I’m not talking about crony capitalism. I’m not talking about mispriced externalities like the environment.<br>我再次谈论道德财富创造。我不是在谈论垄断。我不是在谈论裙带资本主义。我不是在谈论像环境这样被错误定价的外部因素。</p><p>I’m talking about free minds, and free markets. Small-scale exchange between humans that’s voluntary, and doesn’t have an outsized impact on others.<br>我说的是自由思想和自由市场。人与人之间的小规模交流是自愿的，不会对他人产生太大的影响。</p><p>I think that kind of wealth creation, if a society does not respect it, if the group does not respect it, then society will plunge into ruin, and darkness.<br>我认为这种财富的创造，如果一个社会不尊重它，如果群体不尊重它，那么社会就会陷入毁灭和黑暗。</p><h2 id="Making-Money-Isn’t-About-Luck-赚钱与运气无关"><a href="#Making-Money-Isn’t-About-Luck-赚钱与运气无关" class="headerlink" title="Making Money Isn’t About Luck 赚钱与运气无关"></a>Making Money Isn’t About Luck 赚钱与运气无关</h2><p><em>Become the kind of person who makes money<br>成为那种赚钱的人</em></p><p><strong>Making money isn’t about luck<br>赚钱与运气无关</strong></p><p><strong>Naval:</strong> Obviously, we want to be wealthy, and we want to get there in this lifetime without having to rely on luck.<br>Naval：显然，我们想变得富有，我们想在这一生中到达那里，而不必依靠运气。</p><p>A lot of people think making money is about luck. It’s not. It’s about becoming the kind of person that makes money.<br>很多人认为赚钱是关于运气的。事实并非如此。这是关于成为那种赚钱的人。</p><p>I like to think that if I lost all my money and if you drop me on a random street in any English-speaking country, within 5, 10 years I’d be wealthy again. Because it’s a skill set that I’ve developed and I think anyone can develop.<br>我想，如果我失去了所有的钱，如果你把我扔到任何一个英语国家的随机街道上，在5年、10年内，我就会再次变得富有。因为这是我培养的一套技能，我认为任何人都可以发展。</p><p>In 1,000 parallel universes, you want to be wealthy in 999 of them. You don’t want to be wealthy in the 50 of them where you got lucky. We want to factor luck out of it.<br>在 1,000 个平行宇宙中，你想在其中 999 个宇宙中变得富有。你不想在你幸运的 50 个中变得富有。我们想把运气因素考虑在内。</p><p>There’s four kinds of luck that we’re talking about. This came from a book. Marc Andreessen, wrote a <a href="https://pmarchive.com/luck_and_the_entrepreneur.html">blog post</a> about it.<br>我们谈论的是四种运气。这来自一本书。马克·安德森（Marc Andreessen）写了一篇关于它的博客文章。</p><p><strong>1. Blind luck 1.盲目运气</strong></p><p>The first kind of luck you might say is blind luck. Where I just got lucky because something completely out of my control happened. That’s fortune, that’s fate.<br>你可能会说的第一种运气是盲目的运气。我只是很幸运，因为发生了一些完全无法控制的事情。这就是运气，这就是命运。</p><p><strong>2. Luck from hustling 2. 熙熙攘攘的运气</strong></p><p>Then there’s luck that comes through persistence, hard work, hustle, motion. Which is when you’re running around creating lots of opportunities, you’re generating a lot of energy, you’re doing a lot of things, lots of things will get stirred up in the dust.<br>然后是运气，来自坚持、努力、忙碌、运动。当你四处奔波，创造很多机会，你产生很多能量，你做了很多事情，很多事情都会被搅动在尘埃中。</p><p>It’s almost like mixing a petri dish and seeing what combines. Or mixing a bunch of reagents and seeing what combines. You’re generating enough force and hustle and energy that luck will find you.<br>这几乎就像混合培养皿，看看是什么结合在一起。或者混合一堆试剂，看看有什么结合。你正在产生足够的力量、喧嚣和能量，运气会找到你。</p><p>We, as a group, you could argue, got together because of that. <a href="https://m.youtube.com/channel/UCmvhCWvHk3-SJqljh5cCm8A">Nenad</a> had put up these great videos online, I saw them on Twitter. In that sense, he generated his own luck by creating videos until people like me keep finding him.<br>我们可以说，作为一个群体，正因为如此而走到了一起。Nenad 在网上发布了这些很棒的视频，我在 Twitter 上看到了它们。从这个意义上说，他通过制作视频来创造自己的运气，直到像我这样的人不断找到他。</p><p><strong>3. Luck from preparation 3. 准备的运气</strong></p><p>A third way is that you become very good at spotting luck. If you are very skilled in a field, you will notice when a lucky break happens in that field. When other people who aren’t attuned to it won’t notice. So you become sensitive to luck and that’s through skill and knowledge and work.<br>第三种方式是你变得非常善于发现运气。如果你在一个领域非常熟练，你会注意到那个领域何时发生幸运的突破。当其他不适应它的人不会注意到时。所以你对运气变得敏感，这是通过技能、知识和工作。</p><p>**4. Luck from your unique character</p><ol start="4"><li>来自你独特性格的运气**</li></ol><p>Then the last kind of luck is the weirdest, hardest kind. But that’s what we want to talk about. Which is where you build a unique character, a unique brand, a unique mindset, where then luck finds you.<br>那么最后一种运气是最奇怪、最难的那种。但这就是我们想谈的。在这里，你建立了一个独特的性格，一个独特的品牌，一个独特的心态，然后运气找到了你。</p><p>For example, let’s say that you’re the best person in the world at deep sea underwater diving. You’re known to take on deep sea underwater dives that nobody else will even attempt to dare.<br>例如，假设您是世界上最擅长深海水下潜水的人。众所周知，您会进行其他人甚至不敢尝试的深海水下潜水。</p><p>Then, by sheer luck, somebody finds a sunken treasure ship off the coast. They can’t get it. Well, their luck just became your luck, because they’re going to come to you to get that treasure. You’re going to get paid for it.<br>然后，纯粹是运气好，有人在海岸附近发现了一艘沉没的宝船。他们无法得到它。好吧，他们的运气变成了你的运气，因为他们会来找你得到那个宝藏。你会为此得到报酬。</p><p>Now, that’s an extreme example. The person who got lucky by finding the treasure chest, that was blind luck. But them coming to you and asking you to extract it and having to give you half, that’s not luck.<br>现在，这是一个极端的例子。那个幸运地找到宝箱的人，那是盲目的运气。但是他们来找你，要求你提取它，不得不给你一半，这不是运气。</p><p>You created your own luck. You put yourself in a position to be able to capitalize on that luck. Or to attract that luck when nobody else has created that opportunity for themselves. When we talk about “without getting lucky,” we want to be deterministic, we don’t want to leave it to chance.<br>你创造了自己的运气。你把自己放在一个能够利用这种运气的位置上。或者在没有其他人为自己创造机会的情况下吸引这种运气。当我们谈论“没有运气”时，我们想要确定性，我们不想让它碰运气。</p><p><strong>In 1,000 parallel universes, you want to be wealthy in 999 of them<br>在 1,000 个平行宇宙中，你想在其中 999 个宇宙中变得富有</strong></p><p><strong>Nivi:</strong> Do you want to elaborate a little bit more on the idea that in a 1,000 parallel universes you want to get rich in 999 of them? I think some people are going to see that and say, “that sounds impossible, it sounds like it’s too good to be true.”<br>Nivi：你是否想更详细地阐述一下，在1000个平行宇宙中，你想在999个平行宇宙中致富？我想有些人会看到这一点并说，“这听起来不可能，听起来好得令人难以置信。</p><p><strong>Naval:</strong> No, I don’t think it’s impossible. I think that you may have to work a little bit harder at it given your starting circumstances. I started as a poor kid in India, so if I can make it, anybody can, in that sense.<br>Naval：不，我不认为这是不可能的。我认为考虑到你的起步环境，你可能需要更加努力地工作。我最初是在印度的一个穷孩子，所以如果我能成功，从这个意义上说，任何人都可以。</p><p>Now, obviously, I had all my limbs and I had my mental faculties and I did have an education. There are some prerequisites you can’t get past. But if you’re listening to this video or podcast, you probably have the requisite means at your disposal, which is a functioning body and a functioning mind.<br>现在，很明显，我有我所有的四肢，我有我的智力，我确实受过教育。有一些先决条件是你无法克服的。但是，如果你正在听这个视频或播客，你可能拥有必要的手段，那就是一个正常的身体和一个正常运作的头脑。</p><p>And I’ve encountered plenty of bad luck along the way. The first little fortune that I made, I instantly lost in the stock market. The second little fortune that I made, or I should have made, I basically got cheated by my business partners. It’s only the third time around has been a charm.<br>一路走来，我遇到了很多厄运。我赚到的第一笔小财，我瞬间在股市上输了。我赚到的第二笔小财，或者我应该赚到的，我基本上被我的商业伙伴骗了。这已经是第三次了。</p><p>And, even then, it has been in a slow and steady struggle. I haven’t made money in my life in one giant payout. It’s always been a whole bunch of small things piling up. It’s more about consistently creating wealth by creating businesses, including opportunities and creating investments. It hasn’t been a giant one-off thing.<br>即便如此，它也一直在缓慢而稳定地挣扎。我这辈子都没有赚到一笔巨额奖金。总是一大堆小东西堆积如山。它更多的是通过创造业务来持续创造财富，包括机会和创造投资。这并不是一件一次性的事情。</p><p><strong>Wealth stacks up one chip at a time, not all at once<br>财富一次堆积一个筹码，而不是一次全部堆积起来</strong></p><p>My personal wealth has not been generated by one big year. It stacks up little bit, chips at a time. More options, more businesses, more investments, more things that I can do.<br>我的个人财富不是由一个大年产生的。它一点点堆叠起来，一次一个芯片。更多的选择，更多的业务，更多的投资，更多我可以做的事情。</p><p>Same way that someone like Nenad, illacertus, he’s building his brand online. He’s building videos. It’s not like any one video is going to suddenly shower him with riches overnight. It’s going to be a long lifetime of learning, of reading, of creating that’s going to compound.<br>就像像 Nenad 和 illacertus 这样的人一样，他正在在线建立自己的品牌。他正在制作视频。这不像任何一个视频会在一夜之间突然给他带来财富。这将是一个漫长的学习、阅读、创造的一生，这些都会复合。</p><p>We’re talking about getting wealthy so you can retire, so you have your freedom. Not retire in the sense that you don’t do anything. But in the sense that you don’t have to be any place you don’t want to be, you don’t have to do anything you don’t want to do, you can wake up when you want, you can sleep when you want, you don’t have a boss. That’s freedom.<br>我们谈论的是变得富有，这样你就可以退休了，这样你就有了自由。不要在你什么都不做的意义上退休。但从某种意义上说，你不必去任何你不想去的地方，你不必做任何你不想做的事情，你想醒来就醒来，想睡觉就睡，你没有老板。这就是自由。</p><p>We’re talking about enough wealth to get to freedom. Especially thanks to the Internet these days, though, opportunities are massively abundant. I, in fact, have too many ways to make money, I don’t have enough time. I have opportunities pouring out of my ears and the thing I keep running out of is time.<br>我们谈论的是足够的财富来获得自由。不过，特别是多亏了如今的互联网，机会非常丰富。其实我赚钱的方法太多了，我没有足够的时间。我有机会从我的耳朵里涌出，而我总是用完的就是时间。</p><p>There’s just so many ways to create wealth, to create products, to create businesses, to create opportunities, and to, as a byproduct, get paid by society that I can’t even handle it all.<br>创造财富、创造产品、创造企业、创造机会以及作为副产品获得社会报酬的方法太多了，我什至无法处理所有这些。</p><h2 id="Make-Luck-Your-Destiny-让运气成为你的命运"><a href="#Make-Luck-Your-Destiny-让运气成为你的命运" class="headerlink" title="Make Luck Your Destiny 让运气成为你的命运"></a>Make Luck Your Destiny 让运气成为你的命运</h2><p><em>Build your character in a way that luck becomes deterministic<br>以一种运气成为决定性的方式建立你的角色</em></p><p><strong>Nivi:</strong> I think it’s pretty interesting that the first three kinds of luck that you described there are very common cliches for them that everybody knows. And then for that last kind of luck that comes to you out of the unique way that you act, there’s no real cliche for it.<br>Nivi：我觉得很有意思的是，你描述的前三种运气都是大家都知道的非常常见的陈词滥调。然后，对于你独特的行为方式给你带来的最后一种运气，这并不是真正的陈词滥调。</p><p>So, for the first three kinds, there’s “dumb luck,” or “blind luck.” That’s the first kind of luck. The second kind of luck there’s the cliché that “fortune favors the bold.” That’s a person who gets lucky just by stirring the pot and acting. The third kind of luck, people say that “chance favors the prepared mind.”<br>所以，对于前三种，有“愚蠢的运气”或“盲目的运气”。这是第一种运气。第二种运气是陈词滥调，即“幸运眷顾大胆的人”。那是一个光是炒锅演戏就走运的人。第三种运气，人们说“机会偏爱有准备的头脑”。</p><p>But for the fourth kind of luck, there isn’t a common cliché out there that matches the unique character of your action, which I think is interesting and perhaps an opportunity and it also shows that people aren’t necessarily taking advantage of that kind of luck the way they should be.<br>但对于第四种运气，没有一个常见的陈词滥调与你行动的独特性相匹配，我认为这很有趣，也许是一个机会，这也表明人们不一定会以他们应该的方式利用这种运气。</p><p><strong>Naval:</strong> I think also at that point, it starts becoming so deterministic that it stops being luck. So, the definition starts fading from luck to more destiny. So, I would characterize that fourth one as you build your character in a certain way and then your character becomes your destiny.<br>Naval：我认为也是在那个时候，它开始变得如此确定，以至于它不再是运气。因此，这个定义开始从运气逐渐消失，走向更多的命运。所以，我会描述第四个，因为你以某种方式建立你的角色，然后你的角色成为你的命运。</p><p><strong>Build your character so opportunity finds you<br>塑造你的性格，让机会找到你</strong></p><p>One of the things I think that is important to making money, when you want the kind of reputation that makes people do deals through you. I use the example of like, if you’re a great diver then treasure hunters will come and give you a piece of the treasure for your diving skills.<br>我认为赚钱很重要的一件事是，当你想要那种让人们通过你做交易的声誉时。我举个例子，如果你是一个伟大的潜水员，那么寻宝者会来给你一块宝藏，以奖励你的潜水技能。</p><p>If you’re a trusted, reliable, high-integrity, long-term thinking deal maker, then when other people want to do deals but they don’t know how to do them in a trustworthy manner with strangers, they will literally approach you and give you a cut of the deal or offer you a unique deal just because of the integrity and reputation that you have built up.<br>如果你是一个值得信赖、可靠、正直、有长远思维的交易撮合者，那么当其他人想做交易，但他们不知道如何以值得信赖的方式与陌生人做交易时，他们会从字面上接近你，给你一笔交易，或者仅仅因为你建立的诚信和声誉而为你提供独特的交易。</p><p>Warren Buffett, he gets offered deals, and he gets to buy companies, and he gets to buy warrants, and bailout banks and do things that other people can’t do because of his reputation.<br>沃伦·巴菲特（Warren Buffett），他得到了交易机会，他可以购买公司，他可以购买认股权证，救助银行，并做一些其他人因为他的声誉而无法做的事情。</p><p>But of course that’s fragile. It has accountability on the line, it has a strong brand on the line, and as we will talk about later, that comes with accountability attached.<br>但这当然是脆弱的。它有问责制，它有一个强大的品牌，正如我们稍后将讨论的那样，这伴随着问责制。</p><p>But I would say your character, your reputation, these are things that you can build that then will let you take up advantage of opportunities that other people may characterize as lucky but you know that it wasn’t luck.<br>但我想说的是，你的性格，你的声誉，这些都是你可以建立的东西，然后会让你利用其他人可能认为是幸运的机会，但你知道这不是运气。</p><p><strong>Nivi:</strong> You said that this fourth kind of luck is more or less a destiny. There’s a quote from that original book that was in Marc’s blog posts from Benjamin Disraeli, who I think was the former prime minister of the UK. The quote to describe this kind of luck was, “we make our fortunes and we call them fate.”<br>尼薇：你说这第四种运气或多或少是一种命运。本杰明·迪斯雷利（Benjamin Disraeli）在马克的博客文章中引用了那本原著中的一句话，我认为他是英国前首相。描述这种运气的名言是，“我们创造财富，我们称之为命运。</p><p><strong>You have to be a little eccentric to be out on the frontier by yourself<br>你必须有点古怪才能独自出征</strong></p><p>There were a couple other interesting things about this kind of luck that were mentioned in the blog post, I think it’ll be good for the listeners to hear about is that, this fourth kind of luck can almost come out of eccentric ways that you do your things and that eccentricity is not necessarily a bad thing in this case. In fact, it’s a good thing.<br>关于这种运气，在博客文章中还提到了其他一些有趣的事情，我认为听众听到的是，第四种运气几乎可以来自你做事的古怪方式，在这种情况下，古怪不一定是坏事。事实上，这是一件好事。</p><p><strong>Naval:</strong> Yeah, absolutely. Because the world is a very efficient place, so, everyone has dug through all the obvious places to dig and so to find something that’s new and novel and uncovered, it helps to be operating on a frontier.<br>Naval：是的，当然。因为这个世界是一个非常高效的地方，所以，每个人都挖掘了所有明显的地方，所以要找到一些新的、新颖的和未被发现的东西，在前沿运作是有帮助的。</p><p>Where right there you have to be a little eccentric to be out on the frontier by yourself, and then you have to be willing to dig deeper than other people do, deeper than seems rational just because you’re interested.<br>在那里，你必须有点古怪才能独自走到边疆，然后你必须愿意比其他人更深入地挖掘，比看起来理性更深，仅仅因为你感兴趣。</p><p><strong>Nivi:</strong> Yeah, the two quotes that I’ve seen that express this kind of luck in addition to that Benjamin Disraeli one, are this one from Sam Altman where he said, “extreme people get extreme results.” I think that’s pretty nice. And then there’s this other one from Jeffrey Pfeffer, who is a professor at Stanford that, “you can’t be normal and expect abnormal returns.” I’ve always enjoyed that one too.<br>尼维：是的，除了本杰明·迪斯雷利（Benjamin Disraeli）的那句话之外，我还看到过两句表达这种运气的名言，这是山姆·奥特曼（Sam Altman）的一句话，他说：“极端的人会得到极端的结果。我认为这很好。斯坦福大学教授杰弗里·普费弗（Jeffrey Pfeffer）说，“你不能正常，并期望得到异常的回报。我也一直很喜欢那个。</p><p><strong>Naval:</strong> Yeah. And one quote that I like which is the exact opposite of that is, “play stupid games win stupid prizes.” A lot of people spend a lot of their time playing social games like on Twitter where you’re trying to improve your social standing and you basically win stupid social prizes which are worthless.<br>Naval：是的。我喜欢的一句话与此完全相反，“玩愚蠢的游戏赢得愚蠢的奖品。很多人花了很多时间玩社交游戏，比如在Twitter上，你试图提高你的社会地位，你基本上赢得了愚蠢的社会奖品，这些奖品是毫无价值的。</p><p><strong>Nivi:</strong> I guess the last thing that I have from this blog post is the idea that by pursuing these kinds of luck especially the last one, basically everything but dumb luck, by pursuing them you essentially run out of unluck. So, if you just keep stirring the pot and stirring the pot, that alone you will run out of unluck.<br>Nivi：我想我从这篇博文中得到的最后一件事是，通过追求这些运气，尤其是最后一种运气，基本上除了愚蠢的运气之外，你基本上没有运气。所以，如果你只是不停地搅拌锅和搅拌锅，仅此一项你就会倒霉。</p><p><strong>Naval:</strong> Yeah, or it could just be reversion to the mean. So, then you at least neutralized luck so that it’s your own talents that come into play.<br>Naval：是的，或者它可能只是回归均值。所以，你至少抵消了运气，这样你自己的才能就会发挥作用。</p><h2 id="You-Won’t-Get-Rich-Renting-Out-Your-Time-你不会因为出租你的时间而致富"><a href="#You-Won’t-Get-Rich-Renting-Out-Your-Time-你不会因为出租你的时间而致富" class="headerlink" title="You Won’t Get Rich Renting Out Your Time 你不会因为出租你的时间而致富"></a>You Won’t Get Rich Renting Out Your Time 你不会因为出租你的时间而致富</h2><p><em>You can’t earn non-linearly when you’re renting out your time<br>当你出租你的时间时，你不能非线性地赚钱</em></p><p><strong>You won’t get rich renting out your time<br>你不会因为出租你的时间而致富</strong></p><p><strong>Nivi:</strong> Next you go into more specific details on how you can actually get rich, and how you can’t get rich. The first point was about how you’re not going to get rich: “You are not going to get rich renting out your time. You must own equity, a piece of the business to gain your financial freedom.”<br>Nivi：接下来，你将更具体地介绍如何真正致富，以及如何致富。第一点是关于你如何不致富：“你不会因为出租你的时间而致富。你必须拥有股权，这是企业的一部分，才能获得财务自由。</p><p><strong>Naval:</strong> This is probably one of the absolute most important points. People seem to think that you can create wealth, and make money through work. And it’s probably not going to work. There are many reasons for that.<br>Naval：这可能是最重要的一点。人们似乎认为你可以创造财富，并通过工作赚钱。而且它可能不会起作用。造成这种情况的原因有很多。</p><p>But the most basic is just that your inputs are very closely tied to your outputs. In almost any salaried job, even at one that’s paying a lot per hour like a lawyer, or a doctor, you’re still putting in the hours, and every hour you get paid.<br>但最基本的是，你的输入与你的输出密切相关。在几乎任何有薪的工作中，即使是像律师或医生这样时薪很高的工作，你仍然在投入时间，而且每个小时你都会得到报酬。</p><p>So, what that means is when you’re sleeping, you’re not earning. When you’re retired, you’re not earning. When you’re on vacation, you’re not earning. And you can’t earn non-linearly.<br>所以，这意味着当你睡觉时，你没有赚钱。当你退休时，你就没有收入了。当你在度假时，你没有赚钱。而且你不能非线性地赚钱。</p><p>If you look at even doctors who get rich, like really rich, it’s because they open a business. They open like a private practice. And that private practice builds a brand, and that brand attracts people. Or they build some kind of a medical device, or a procedure, or a process with an intellectual property.<br>如果你看看那些有钱的医生，比如真正有钱的医生，那是因为他们开了一家公司。他们像私人诊所一样开放。私人诊所建立了一个品牌，这个品牌吸引了人们。或者他们制造某种具有知识产权的医疗设备、程序或过程。</p><p>So, essentially you’re working for somebody else, and that person is taking on the risk, and has the accountability, and the intellectual property, and the brand. So, they’re just not gonna pay you enough. They’re gonna pay you the bare minimum that they have to, to get you to do their job. And that can be a high bare minimum, but it’s still not gonna be true wealth where you’re retired.<br>所以，从本质上讲，你是在为别人工作，而这个人正在承担风险，并承担责任、知识产权和品牌。所以，他们只是不会付给你足够的钱。他们会付给你最低限度的工资，让你做他们的工作。这可能是一个很高的最低限度，但在你退休的地方，它仍然不会是真正的财富。</p><p><strong>Renting out your time means you’re essentially replaceable<br>把你的时间租出去意味着你基本上是可以被替换的</strong></p><p>And then finally you’re actually just not even creating that much original for society. Like I said, this tweetstorm should have been called “How to Create Wealth.” It’s just “How to Get Rich” was a more catchy title. But you’re not creating new things for society. You’re just doing things over and over.<br>最后，你实际上甚至没有为社会创造那么多原创。就像我说的，这场推特风暴应该被称为“如何创造财富”。只是“如何致富”是一个更吸引人的标题。但你不是在为社会创造新事物。你只是一遍又一遍地做事。</p><p>And you’re essentially replaceable because you’re now doing a set role. Most set roles can be taught. If they can be taught like in a school, then eventually you’re gonna be competing with someone who’s got more recent knowledge, who’s been taught, and is coming in to replace you.<br>你基本上是可以被替换的，因为你现在正在做一个固定的角色。大多数固定角色都可以教授。如果它们可以像在学校一样被教授，那么最终你将与一个拥有更多最新知识、被教导并取代你的人竞争。</p><p>You’re much more likely to be doing a job that can be eventually replaced by a robot, or by an AI. And it doesn’t even have to be wholesale replaced over night. It can be replaced a little bit at a time. And that kind of eats into your wealth creation, and therefore your earning capability.<br>你更有可能从事一项最终可以被机器人或人工智能取代的工作。它甚至不必在一夜之间批量更换。它可以一次更换一点点。这会影响你的财富创造，从而影响你的赚钱能力。</p><p>So, fundamentally your inputs are matched to your outputs. You are replaceable, and you’re not being creative. I just don’t think that, that is a way that you can truly make money.<br>因此，从根本上说，您的输入与输出相匹配。你是可以替代的，你没有创造力。我只是不认为，这是一种真正赚钱的方式。</p><p><strong>You must own equity to gain your financial freedom<br>您必须拥有股权才能获得财务自由</strong></p><p>So everybody who really makes money at some point owns a piece of a product, or a business, or some kind of IP. That can be through stock options, so you can be working at a tech company. That’s a fine way to start.<br>因此，每个真正赚钱的人都拥有一件产品、一项业务或某种知识产权。这可以通过股票期权来实现，所以你可以在一家科技公司工作。这是一个很好的开始。</p><p>But usually the real wealth is created by starting your own companies, or by even investors. They’re in an investment firm, and they’re buying equity. These are much more the routes to wealth. It doesn’t come through the hours.<br>但通常真正的财富是通过创办自己的公司，甚至是投资者来创造的。他们在一家投资公司，他们正在购买股权。这些更多的是通往财富的途径。它不会通过几个小时。</p><p><strong>You want a career where your inputs don’t match your outputs<br>你想要一个你的投入与你的产出不匹配的职业</strong></p><p>You really just want a job, or a career, or a profession where your inputs don’t match your outputs. If you look at modern society, again this is later in the tweetstorm. Businesses that have high creativity and high leverage tends to be ones where you could do an hour of work, and it can have a huge effect. Or you can do 1,000 hours of work, and it can have no effect.<br>你真的只是想要一份工作，或者一份职业，或者一个你的投入与你的产出不匹配的职业。如果你看看现代社会，这又是推特风暴的后期。具有高创造力和高杠杆率的企业往往是您可以完成一个小时工作的企业，并且可以产生巨大的影响。或者你可以做1000个小时的工作，它可以没有效果。</p><p>For example, look at software engineering. One great engineer can for example create bitcoin, and create billions of dollars worth of value. And an engineer who is working on the wrong thing, or not quite as good, or just not as creative, or thoughtful, or whatever, can work for an entire a year, and every piece of code they ship ends up not getting used. Customers don’t want it.<br>例如，看看软件工程。例如，一位伟大的工程师可以创造比特币，并创造价值数十亿美元的价值。一个工程师如果做错了事情，或者做得不太好，或者只是没有那么有创造力，或者没有思想，或者其他什么，可以工作一整年，而他们交付的每一段代码最终都不会被使用。客户不想要它。</p><p>That is an example of a profession where the input and the outputs are highly disconnected. It’s not based on the number of hours that you put in.<br>这是一个输入和输出高度脱节的职业的例子。它不是基于你投入的小时数。</p><p>Whereas on the extreme other end, if you’re a lumberjack, even the best lumberjack in the world, assuming you’re not working with tools, so the inputs and outputs are clearly connected. You’re just using an ax, or a saw. You know, the best lumberjack in the world may be like 3x better than one of the worst lumberjacks, right? It’s not gonna be a gigantic difference.<br>而在极端的另一端，如果你是一个伐木工人，即使是世界上最好的伐木工人，假设你不使用工具，所以输入和输出是明确连接的。你只是在用斧头或锯子。你知道，世界上最好的伐木工人可能比最差的伐木工人之一好 3 倍，对吧？这不会是一个巨大的差异。</p><p>So, you want to look for professions and careers where the inputs and outputs are highly disconnected. This is another way of saying that you want to look for things that are leveraged. And by leveraged I don’t mean financial leveraged alone, like Wall Street uses, and that has a bad name. I’m just talking about tools. We’re using tools.<br>因此，您想寻找输入和输出高度脱节的职业和职业。这是另一种说法，即您要寻找被利用的东西。我所说的杠杆并不是指像华尔街那样单独使用金融杠杆，这有一个坏名声。我只是在谈论工具。我们正在使用工具。</p><p>A computer is a tool that software engineers use. If I’m a lumberjack with bulldozers, and automatic robot axes, and saws, I’m gonna be using tools, and have more leverage than someone who is just using his bare hands, and trying to rip the trees out by the roots.<br>计算机是软件工程师使用的工具。如果我是一个伐木工人，有推土机、自动机器人斧头和锯子，我会使用工具，并且比那些赤手空拳的人更有影响力，并试图从根部拔掉树木。</p><p>Tools and leverage are what create this disconnection between inputs and outputs. Creativity, so the higher the creativity component of a profession, the more likely it is to have disconnected inputs and outputs.<br>工具和杠杆是造成输入和输出之间脱节的原因。创造力，因此职业的创造力成分越高，输入和输出脱节的可能性就越大。</p><p>So, I think that if you’re looking at professions where your inputs and your outputs are highly connected, it’s gonna be very, very, hard to create wealth, and make wealth for yourself in that process.<br>所以，我认为，如果你在看那些你的投入和产出高度相关的职业，那么创造财富，并在这个过程中为自己创造财富将是非常非常困难的。</p><h2 id="Live-Below-Your-Means-for-Freedom-为自由而活在自己的能力之下"><a href="#Live-Below-Your-Means-for-Freedom-为自由而活在自己的能力之下" class="headerlink" title="Live Below Your Means for Freedom 为自由而活在自己的能力之下"></a>Live Below Your Means for Freedom 为自由而活在自己的能力之下</h2><p><em>People busy upgrading their lifestyles just can’t fathom this freedom<br>忙于升级生活方式的人们无法理解这种自由</em></p><p><strong>People living below their means have freedom<br>入不敷出的人有自由</strong></p><p><strong>Nivi:</strong> Any other big things you should avoid, other than renting out your time?<br>Nivi：除了出租时间之外，你还应该避免其他大事吗？</p><p><strong>Naval:</strong> Yeah, there are two tweets that I put out that are related. The first one I was talking about where someone, like, how your lifestyle has to upgrade, shouldn’t get upgraded too fast. And that one basically said, people who are living far below their means enjoy a freedom that people busy upgrading their lifestyles just can’t fathom.<br>Naval：是的，我发布了两条相关的推文。我谈论的第一个问题是关于某人，比如，你的生活方式必须如何升级，不应该升级得太快。那基本上是说，那些生活远远低于他们能力的人享有一种自由，而人们忙于升级他们的生活方式是无法理解的。</p><p>And I think that’s very important, just to not upgrade your lifestyle all the time. To maintain your freedom. And it just gives you freedom of operation. You basically, once you make a little bit of money, you still want to be living like your old self, so that just the worry goes away. So, don’t run out to upgrade that house, and lifestyle, and all that stuff.<br>我认为这非常重要，只是不要一直升级你的生活方式。为了维护你的自由。它只是为您提供操作自由。基本上，一旦你赚了一点钱，你仍然想像以前的自己一样生活，这样烦恼就消失了。所以，不要跑出去升级那所房子，生活方式，以及所有这些东西。</p><p><strong>The most dangerous things are heroin and a monthly salary<br>最危险的东西是海洛因和月薪</strong></p><p>Let’s say you’re getting paid $1,000 an hour. The problem is, is that when you go into a work lifestyle like that, you don’t just suddenly go from making $20 an hour to making $1,000 an hour. That’s a progression over a long career.<br>假设您每小时获得 1,000 美元的报酬。问题是，当你进入这样的工作生活方式时，你不会突然从每小时 20 美元变成每小时 1,000 美元。这是漫长职业生涯中的进步。</p><p>And as that happens, one subtle problem is that you upgrade your lifestyle as you make more, and more money. And that upgrading of the lifestyle kind of ups what you consider to be wealth, and you stay in this wage slave trap.<br>当这种情况发生时，一个微妙的问题是，随着你赚得更多、更多的钱，你会升级你的生活方式。生活方式的升级会增加你认为的财富，而你却陷入了这个工资奴隶的陷阱。</p><p>So, I forget who said it, maybe it was Nassim Taleb. But he said, “The most dangerous things are heroin, and a monthly salary.” Right, because they are highly addictive. The way you want to get wealthy is you want to be poor, and working, and working, and working.<br>所以，我忘了是谁说的，也许是纳西姆·塔勒布。但他说，“最危险的东西是海洛因，还有月薪。是的，因为它们很容易上瘾。你想变得富有的方式就是你想变得贫穷，工作，工作，工作，工作。</p><p><strong>Ideally, you’ll make your money in discrete lumps<br>理想情况下，您将以离散的块状方式赚钱</strong></p><p>And this is for example how the tech industry works. Where you don’t make any money for ten years, and then suddenly at year eleven, you might have a giant payday.<br>例如，这就是科技行业的运作方式。你十年没有赚到钱，然后突然到了第十一年，你可能会有一个巨大的发薪日。</p><p>Which is by the way one reason why these very high marginal tax rates for the so-called wealthy are flawed because the highest risk-taking, most creative professions you literally lose money for a decade over your life, while you take massive risk, and you bleed, and bleed, and bleed.<br>顺便说一句，这就是为什么这些对所谓富人的非常高的边际税率是有缺陷的原因之一，因为风险最高、最具创造力的职业，你一生中实际上会损失十年的钱，而你却冒着巨大的风险，你流血，流血，流血。</p><p>And then suddenly in year eleven, or year fifteen, you might have one single big payday. But then of course Uncle Sam show up, and basically say, “Hey, you know what, you just made a lot money this year. Therefore, you’re rich. Therefore, you’re evil and you’ve got to hand it all over to us.” So, it just destroys those kinds of creative risk taking professions.<br>然后突然间，在十一年级或十五年级，你可能有一个大发薪日。但当然，山姆大叔出现了，基本上说，“嘿，你知道吗，你今年赚了很多钱。因此，你很有钱。所以，你是邪恶的，你必须把它全部交给我们。所以，它只是摧毁了那些创造性的冒险职业。</p><p>But ideally you want to make your money in discrete lumps, separated over long periods of time, so that your own lifestyle does not have a chance to adapt quickly, and then you basically say, “Okay, now I’m done. Now I’m retired. Now I’m free. I’m still gonna work because you got to do something with your life, but I’m gonna work on only the things that I want, when I want.” And so you have much more creative expression, and much less about money.<br>但理想情况下，你想把你的钱分成离散的块状，在很长一段时间内分开，这样你自己的生活方式就没有机会快速适应，然后你基本上会说，“好吧，现在我完成了。现在我退休了。现在我自由了。我仍然会工作，因为你必须用你的生活做点什么，但我只会在我想要的时候做我想要的事情。所以你有更多的创造性表达，而对金钱的关心要少得多。</p><h2 id="Give-Society-What-It-Doesn’t-Know-How-to-Get-给社会它不知道如何得到的东西"><a href="#Give-Society-What-It-Doesn’t-Know-How-to-Get-给社会它不知道如何得到的东西" class="headerlink" title="Give Society What It Doesn’t Know How to Get 给社会它不知道如何得到的东西"></a>Give Society What It Doesn’t Know How to Get 给社会它不知道如何得到的东西</h2><p><em>Society will pay you for creating what it wants and delivering it at scale<br>社会会付钱给你，因为你创造了它想要的东西，并大规模地交付了它</em></p><p><strong>Give society what it wants, but doesn’t know how to get—at scale<br>为社会提供它想要的东西，但不知道如何获得——大规模</strong></p><p><strong>Nivi:</strong> You’re not gonna get rich renting out your time. But you say that, “you will get rich by giving society what it wants, but does not yet know how to get at scale.”<br>Nivi：你不会因为出租你的时间而致富。但你说，“你会通过给社会它想要的东西来致富，但还不知道如何扩大规模。</p><p><strong>Naval:</strong> That’s right. So, essentially as we talked about before, money is IOUs from society saying, “You did something good in the past. Now here’s something that we owe you for the future.” And so society will pay you for creating things that it wants.<br>Naval：没错。所以，从本质上讲，正如我们之前谈到的，金钱是来自社会的借据，说：“你过去做了一些好事。现在，这是我们欠你的未来的东西。因此，社会会付钱给你，让你创造它想要的东西。</p><p>But society doesn’t yet know how to create those things because if it did, they wouldn’t need you. They would already be stamped out big time.<br>但社会还不知道如何创造这些东西，因为如果这样做了，他们就不需要你了。他们已经被大力淘汰了。</p><p>Almost everything that’s in your house, in your workplace, and on the street used to be technology at one point in time. There was a time when oil was a technology, that made J.D. Rockefeller rich. There was a time when cars were technology, that made Henry Ford rich.<br>你家里、工作场所和街上的几乎所有东西都曾经是技术。曾几何时，石油是一种技术，使J.D.洛克菲勒变得富有。曾几何时，汽车是技术，这让亨利·福特变得富有。</p><p>So, technology is just the set of things, as Alan Kay said, that don’t quite work yet [correction: Danny Hillis]. Once something works, it’s no longer technology. So, society always wants new things.<br>所以，正如艾伦·凯（Alan Kay）所说，技术只是一套还不能完全起作用的东西[更正：丹尼·希利斯（Danny Hillis）]。一旦某件事奏效，它就不再是技术了。所以，社会总是想要新事物。</p><p><strong>Figure out what product you can provide and then figure out how to scale it<br>弄清楚你可以提供什么产品，然后弄清楚如何扩展它</strong></p><p>And if you want to be wealthy, you want to figure out which one of those things you can provide for society, that it does not yet know how to get, but it will want, that’s natural to you, and within your skillset, within your capabilities.<br>如果你想变得富有，你要弄清楚你能为社会提供哪一种东西，它还不知道如何得到，但它会想要，这对你来说是很自然的，在你的技能范围内，在你的能力范围内。</p><p>And then you have to figure out how to scale it. Because if you just build one of it, that’s not enough. You’ve got to build thousands, or hundreds of thousands, or millions, or billions of them. So, everybody can have one.<br>然后你必须弄清楚如何扩展它。因为如果你只建造一个，那是不够的。你必须建造数千个、数十万个、数百万个或数十亿个。所以，每个人都可以拥有一个。</p><p>Steve Jobs, and his team of course figured out that society would want smartphones. A computer in their pocket that had all the phone capability times 100, and be easy to use. So, they figured out how to build that, and then they figured out how to scale it.<br>史蒂夫·乔布斯（Steve Jobs）和他的团队当然发现，社会需要智能手机。他们口袋里的一台电脑，拥有 100 倍的所有电话功能，并且易于使用。所以，他们想出了如何构建它，然后他们想出了如何扩展它。</p><p>And they figured out how to get one into every First World citizen’s pocket, and eventually every Third World citizen too. And so because of that they’re handsomely rewarded, and Apple is the most valuable company in the world.<br>他们想出了如何让每个第一世界公民的口袋里都有一个，最终每个第三世界公民也一样。正因为如此，他们得到了丰厚的回报，苹果是世界上最有价值的公司。</p><p><strong>Nivi:</strong> The way I tried to put it was that the entrepreneur’s job is to try to bring the high end to the mass market.<br>Nivi：我试图说的是，企业家的工作是努力将高端产品推向大众市场。</p><p><strong>Naval:</strong> It starts as high end. First it starts as an act of creativity. First you create it just because you want it. You want it, and you know how to build it, and you need it. And so you build it for yourself. Then you figure out how to get it to other people. And then for a little while rich people have it.<br>Naval：它从高端开始。首先，它开始于一种创造性的行为。首先，你创建它只是因为你想要它。你想要它，你知道如何构建它，你需要它。所以你为自己建造它。然后你弄清楚如何把它带给其他人。然后有一段时间，有钱人拥有它。</p><p>Like, for example rich people had chauffeurs, and then they had black town cars. And then Uber came along, and everyone’s private driver is available to everybody. And now you can even see Uber pools that are replacing shuttle buses because it’s more convenient. And then you get scooters, which are even further down market of that. So, you’re right. It’s about distributing what rich people used to have to everybody.<br>例如，富人有司机，然后他们有黑色的城镇汽车。然后优步出现了，每个人都可以使用每个人的私人司机。现在，您甚至可以看到优步游泳池正在取代穿梭巴士，因为它更方便。然后你会得到踏板车，这是更低的市场。所以，你是对的。这是关于将富人过去拥有的东西分配给每个人。</p><p>But the entrepreneur’s job starts even before that, which is creation. Entrepreneurship is essentially an act of creating something new from scratch. Predicting that society will want it, and then figuring out how to scale it, and get it to everybody in a profitable way, in a self-sustaining way.<br>但企业家的工作甚至在此之前就开始了，这就是创造。创业本质上是一种从头开始创造新事物的行为。预测社会会想要它，然后弄清楚如何扩大规模，并以有利可图的方式，以自我维持的方式将其提供给每个人。</p><h2 id="The-Internet-Has-Massively-Broadened-Career-Possibilities-互联网极大地拓宽了职业可能性"><a href="#The-Internet-Has-Massively-Broadened-Career-Possibilities-互联网极大地拓宽了职业可能性" class="headerlink" title="The Internet Has Massively Broadened Career Possibilities 互联网极大地拓宽了职业可能性"></a>The Internet Has Massively Broadened Career Possibilities 互联网极大地拓宽了职业可能性</h2><p><em>The Internet allows you to scale any niche obsession<br>互联网允许您扩展任何利基痴迷</em></p><p><strong>The Internet has massively broadened the possible space of careers<br>互联网极大地拓宽了职业的可能空间</strong></p><p><strong>Nivi:</strong> Let’s look at this next tweet, which I thought was cryptic, and also super interesting, about the kind of job or career that you might have. You said, “The internet has massively broadened the possible space of careers. Most people haven’t figured this out yet.”<br>Nivi：让我们看看下一条推文，我认为这条推文很神秘，也非常有趣，关于你可能拥有的工作或职业。你说，“互联网极大地拓宽了职业的可能空间。大多数人还没有弄清楚这一点。</p><p><strong>Naval:</strong> The fundamental property of the internet more than any other single thing is it connects every human to each other human on the planet. You can now reach everyone.<br>Naval：互联网的基本属性比任何其他事物都重要，它把地球上的每个人彼此联系在一起。您现在可以联系到所有人。</p><p>Whether it’s by emailing them personally, whether it’s by broadcasting to them on Twitter, whether it’s by posting something on Facebook that they find, whether it’s by putting up a website they come and access.<br>无论是亲自给他们发电子邮件，还是在Twitter上向他们广播，无论是在Facebook上发布他们找到的东西，还是通过建立一个他们来访问的网站。</p><p>It connects everyone to everyone. So, the internet is an inter-networking tool. It connects everybody. That is its superpower. So, you want to use that.<br>它将每个人与每个人联系起来。因此，互联网是一种互联工具。它连接着每个人。这就是它的超能力。所以，你想使用它。</p><p>What that helps you figure out is the internet means you can find your audience for your product, or your talent, and skill no matter how far away they are.<br>这可以帮助您弄清楚的是，互联网意味着您可以为您的产品找到您的受众，或者您的才能和技能，无论他们距离多远。</p><p>For example, Nenad, who is <a href="https://www.youtube.com/channel/UCmvhCWvHk3-SJqljh5cCm8A">Illacertus</a>, if you look at his videos pre-internet, how would he get the message out there? It would just be … what would he do? He would run around where he lives in his neighborhood showing it to people on a computer, or a screen? Or he would try to get it played at his local movie theater? It was impossible. It only works because he can put it on the internet.<br>例如，Nenad，谁是 Illacertus，如果你看他在互联网之前的视频，他会如何传达信息？那只是……他会怎么做？他会在他住的地方跑来跑去，在电脑或屏幕上向人们展示它？或者他会尝试在当地的电影院播放它？这是不可能的。它之所以有效，是因为他可以把它放在互联网上。</p><p>And then how many people in the world are really interested in it? Or even in interested in what we’re talking about are really gonna absorb it, right? It’s gonna be a very small subset of humanity. The key is being able to reach them.<br>那么世界上有多少人真正对它感兴趣呢？甚至对我们正在谈论的东西感兴趣，真的会吸收它，对吧？这将是人类的一个非常小的子集。关键是能够接触到他们。</p><p><strong>The Internet allows you to scale any niche obsession<br>互联网允许您扩展任何利基痴迷</strong></p><p>So, what the internet does is allows any niche obsession, which could be just the weirdest thing. It could be like people who collect snakes, to like people who like to ride hot air balloons, to people who like to sail around the world by themselves, just one person on a craft, or someone who’s obsessed with miniature cooking. Like, there’s this whole Japanese miniature cooking phenomenon. Or there’s a show about a woman who goes in people’s houses, and tidies it up, right?<br>因此，互联网所做的是允许任何小众的痴迷，这可能是最奇怪的事情。它可能像收集蛇的人，喜欢乘坐热气球的人，喜欢自己环游世界的人，只有一个人在船上，或者痴迷于微型烹饪的人。比如，有一种完整的日本微型烹饪现象。或者有个节目是关于一个女人走进人们的房子，然后收拾它，对吧？</p><p>So, whatever niche obsession you have, the internet allows you to scale. Now that’s not to say that what you build will be the next Facebook, or reach billions of users, but if you just want to reach 50,000 passionate people like you, there’s an audience out there for you.<br>因此，无论您对利基市场有什么痴迷，互联网都可以让您扩展。这并不是说你建立的东西会成为下一个Facebook，或者达到数十亿用户，但如果你只是想达到50,000名像你一样充满激情的人，那么你就有适合你的受众。</p><p>So the beauty of this is that we have 7 billion human beings on the planet. The combinatorics of human DNA are incredible. Everyone is completely different. You’ll never meet any two people who are even vaguely similar to each other, that can substitute for each other.<br>因此，这样做的美妙之处在于，我们这个星球上有70亿人。人类DNA的组合学令人难以置信。每个人都是完全不同的。你永远不会遇到任何两个彼此之间隐约相似的人，可以相互替代。</p><p>It’s not like you can say, “Well, Nivi, just left my life. So, I can have this other person come in, and he’s just like Nivi. And I get the same feelings, and the same responses, and the same ideas.” No. There are no substitutes for people. People are completely unique.<br>你不能说，“好吧，尼维，刚刚离开了我的生活。所以，我可以让另一个人进来，他就像尼维一样。我得到同样的感受，同样的反应，同样的想法。不。人是无可替代的。人是完全独特的。</p><p>So, given that each person has different skillsets, different interests, different obsessions. And it’s that diversity that becomes a creative superpower. So, each person can be creatively superb at their own unique thing.<br>因此，鉴于每个人都有不同的技能、不同的兴趣、不同的痴迷。正是这种多样性成为一种创造性的超级大国。因此，每个人都可以在自己独特的事情上发挥创造力。</p><p>But before that didn’t matter. Because if you were living in a little fishing village in Italy, like your fishing village didn’t necessarily need your completely unique skill, and you had to conform to just the few jobs that were available. But now today you can be completely unique.<br>但在此之前并不重要。因为如果你住在意大利的一个小渔村，就像你的渔村一样，不一定需要你完全独特的技能，你只需要遵守为数不多的工作。但现在你可以完全独一无二。</p><p>You can go out on the internet, and you can find your audience. And you can build a business, and create a product, and build wealth, and make people happy just uniquely expressing yourself through the internet.<br>你可以在互联网上走出去，你可以找到你的听众。你可以建立一个企业，创造一个产品，积累财富，让人们快乐，只是通过互联网独特地表达自己。</p><p>The space of careers has been so broadened. E-sports players, you know, people making millions of dollars playing Fortnite. People creating videos, and uploading them. YouTube broadcasters. Bloggers, podcasters. Joe Rogan, I read, true or false, I don’t know, but I read that he’s gonna make about $100 million a year on his podcast. And he’s had 2 billion downloads.<br>职业空间如此广阔。电子竞技玩家，你知道，人们在玩《堡垒之夜》时赚了数百万美元。人们创建视频并上传它们。YouTube 广播公司。博主，播客。乔·罗根（Joe Rogan），我读过，是真是假，我不知道，但我读到他每年将在他的播客上赚大约1亿美元。他的下载量达到了20亿次。</p><p>Even PewDiePie… there’s a hilarious tweet that I retweeted the other day. PewDiePie is the number one trusted name in news. This is a kid I think in Sweden, and he’s got three times the distribution of the top cable news networks. Just on his news channel. It’s not even on his entertainment channel.<br>甚至 PewDiePie…前几天我转发了一条搞笑的推文。PewDiePie 是新闻界最受信任的名字。我认为这是一个在瑞典的孩子，他的发行量是顶级有线电视新闻网的三倍。就在他的新闻频道上。它甚至不在他的娱乐频道上。</p><p><strong>Escape competition through authenticity<br>通过真实性逃避竞争</strong></p><p>The internet enables any niche interest, as long as you’re the best at it to scale out. And the great news is because every human is different, everyone is the best at something. Being themselves.<br>互联网支持任何利基兴趣，只要您最擅长扩展即可。好消息是，因为每个人都是不同的，每个人都是最好的。做自己。</p><p>Another tweet I had that is worth kind of weaving in, but didn’t go into this tweetstorm, was a very simple one. I like things when I can compress them down because they’re easy to remember, and easy to hook onto. But that one was, “Escape competition through authenticity.”<br>我的另一条推文值得一提，但没有进入这场推文风暴，这是一个非常简单的推文。我喜欢可以压缩的东西，因为它们很容易记住，也很容易上钩。但那个是，“通过真实性来逃避竞争。</p><p>Basically, when you’re competing with people it’s because you’re copying them. It’s because you’re trying to do the same thing. But every human is different. Don’t copy.<br>基本上，当你与人竞争时，那是因为你在复制他们。这是因为你正在尝试做同样的事情。但每个人都是不同的。不要复制。</p><p>I know we’re mimetic creatures, and René Girard has a whole mimesis theory. But it’s much easier than that. Don’t imitate. Don’t copy. Just do your own thing. No one can compete with you on being you. It’s that simple.<br>我知道我们是拟态生物，而勒内·吉拉德（René Girard）有一个完整的拟态理论。但这比这容易得多。不要模仿。不要复制。做你自己的事。没有人能与你竞争成为你。就是这么简单。</p><p>And so the more authentic you are to who you are, and what you love to do, the less competition you’re gonna have. So, you can escape competition through authenticity when you realize that no one can compete with you on being you. And normally that would have been useless advice pre-internet. Post-internet you can turn that into a career.<br>因此，你对自己的身份和你喜欢做的事情越真实，你的竞争就越少。所以，当你意识到没有人可以与你竞争成为你时，你可以通过真实性来逃避竞争。通常情况下，在互联网出现之前，这将是无用的建议。后互联网时代，你可以把它变成一种职业。</p><h2 id="Play-Long-Term-Games-With-Long-Term-People-与长期的人一起玩长期游戏"><a href="#Play-Long-Term-Games-With-Long-Term-People-与长期的人一起玩长期游戏" class="headerlink" title="Play Long-Term Games With Long-Term People 与长期的人一起玩长期游戏"></a>Play Long-Term Games With Long-Term People 与长期的人一起玩长期游戏</h2><p><em>All returns in life come from compound interest in long-term games<br>生活中所有的回报都来自长期博弈的复利</em></p><p><strong>Play long-term games with long-term people<br>与长期的人一起玩长期游戏</strong></p><p><strong>Nivi:</strong> Talk a little bit about what industries you should think about working in. What kind of job you should have? And who you might want to work with? So, you said, “One should pick an industry where you can play long-term games with long-term people.” Why?<br>Nivi：谈谈你应该考虑在哪些行业工作。你应该从事什么样的工作？您可能想与谁合作？所以，你说，“人们应该选择一个可以与长期的人进行长期游戏的行业。为什么？</p><p><strong>Naval:</strong> Yeah, this is an insight into what makes Silicon Valley work, and what makes high trust societies work. Essentially, all the benefits in life come from compound interests. Whether it’s in relationships, or making money, or in learning.<br>Naval：是的，这是对硅谷运作的原因以及高度信任社会运作原因的见解。从本质上讲，生活中的所有好处都来自复利。无论是在人际关系中，还是在赚钱中，还是在学习中。</p><p>So, compound interest is a marvelous force, where if you start out with 1x what you have, and then if you increase 20% a year for 30 years, it’s not that you got 30 years times 20% added on. It was compounding, so it just grew, and grew, and grew until you suddenly got a massive amount of whatever it is. Whether it’s goodwill, or love, or relationships, or money. So, I think compound interest is a very important force.<br>所以，复利是一种了不起的力量，如果你从你拥有的 1 倍开始，然后如果你在 30 年内每年增加 20%，并不是说你得到了 30 年乘以 20% 的附加。它是复合的，所以它只是增长，增长，增长，直到你突然得到大量的任何东西。无论是善意，还是爱情，还是人际关系，还是金钱。所以，我认为复利是一个非常重要的力量。</p><p>You have to be able to play a long-term game. And long-term games are good not just for compound interest, they’re also good for trust. If you look at prisoner’s dilemma type games, a solution to prisoner’s dilemma is tit-for-tat, which is I’m just going do to you what you did last time to me, with some forgiveness in case there was a mistake made. But that only works in an iterated prisoner’s dilemma, in another words if we play a game multiple times.<br>你必须能够玩一个长期的游戏。长期博弈不仅有利于复利，也有利于信任。如果你看一下囚徒困境类型的游戏，解决囚徒困境的方法就是针锋相对，那就是我要对你做你上次对我做的事情，如果犯了错误，我会原谅你。但这只适用于迭代的囚徒困境，换句话说，如果我们多次玩一个游戏。</p><p>So, if you’re in a situation, like for example you’re in Silicon Valley, where people are doing business with each other, and they know each other, they trust each other. Then they do right by each other because they know this person will be around for the next game.<br>所以，如果你处在某种情况下，比如你在硅谷，那里的人们彼此做生意，他们彼此认识，他们彼此信任。然后他们互相做对了，因为他们知道这个人会在下一场比赛中出现。</p><p>Now of course that doesn’t always work because you can make so much money in one move in Silicon Valley, sometimes people betray each other because they’re just like, “I’m going to get rich enough off this that I don’t care.” So, there can be exceptions to all these circumstances.<br>当然，这并不总是奏效的，因为在硅谷，你可以一次赚到这么多钱，有时人们会互相背叛，因为他们只是想，“我会从中变得足够富有，我不在乎。因此，所有这些情况都可能有例外。</p><p>But essentially if you want to be successful, you have to work with other people. And you have to figure out who can you trust, and who can you trust over a long, long period of time, that you can just keep playing the game with them, so that compound interest, and high trust will make it easier to play the game, and will let you collect the major rewards, which are usually at the end of the cycle.<br>但从本质上讲，如果你想成功，你必须与其他人合作。你必须弄清楚你可以信任谁，在很长很长一段时间内你可以信任谁，这样你就可以继续和他们一起玩游戏，这样复利和高信任会让玩游戏变得更容易，并让你收集主要奖励，这些奖励通常是在周期结束时。</p><p>So, for example, Warren Buffett has done really well as an investor in the U.S. stock market, but the biggest reason he could do that was because the U.S. stock market has been stable, and around, and didn’t get for example seized by the government during a bad administration. Or the U.S. didn’t plunge into some war. The underlying platform didn’t get destroyed. So, in his case, he was playing a longterm game. And the trust came from the U.S. stock market’s stability.<br>因此，例如，沃伦·巴菲特（Warren Buffett）作为美国股市的投资者做得非常好，但他能做到这一点的最大原因是因为美国股市一直很稳定，而且在糟糕的政府期间没有被政府抓住。或者美国没有陷入战争。底层平台没有被破坏。所以，就他而言，他正在玩一场长期游戏。这种信任来自美国股市的稳定。</p><p><strong>When you switch industries, you’re starting over from scratch<br>当你转换行业时，你是从头开始</strong></p><p>In Silicon Valley, the trust comes from the network of people in the small geographic area, that you figure out over time who you can work with, and who you can’t.<br>在硅谷，信任来自狭小地理区域的人际网络，随着时间的推移，你会弄清楚你可以和谁合作，谁不能和谁合作。</p><p>If you keep switching locations, you keep switching groups… let’s say you started out in the woodworking industry, and you built up a network there. And you’re working hard, you’re trying to build a product in the woodworking industry. And then suddenly another industry comes along that’s adjacent but different, but you don’t really know anybody in it, and you want to dive in, and make money there.<br>如果你不停地切换位置，你就会不停地切换群组……假设您从木工行业开始，并在那里建立了一个网络。你正在努力工作，你正试图在木工行业制造产品。然后突然间，另一个行业出现了，它相邻但又不同，但你真的不认识其中的任何人，你想潜入其中，在那里赚钱。</p><p>If you keep hopping from industry to … “No, actually I need to open a line of electric car stations for electric car refueling.” That might make sense. That might be the best opportunity. But every time you reset, every time you wander out of where you built your network, you’re going to be starting from scratch. You’re not going to know who to trust. They’re not going to know to trust you.<br>如果你继续从行业跳到……“不，其实我需要开一排电动汽车加油站，给电动汽车加油。”这可能是有道理的。这可能是最好的机会。但是，每次重置时，每次离开建立网络的地方时，您都将从头开始。你不会知道该相信谁。他们不会知道信任你。</p><p>There are also industries in which people are transient by definition. They’re always coming in and going out. Politics is an example of that, right? In politics new people are being elected. You see in politics that when you have a lot of old-timers, like the Senate, people who have been around for a long time, and they’ve been career politicians.<br>根据定义，在一些行业中，人是短暂的。他们总是进进出出。政治就是一个例子，对吧？在政治上，新人正在被选举出来。你在政治上看到，当你有很多老前辈，比如参议院，他们已经存在了很长时间，他们一直是职业政治家。</p><p>There’s a lot of downside to career politicians like corruption. But an upside is they actually get deals done with each other because they know the other person is going to be in the same position ten years from now, and they’re going to have to keep dealing with them, so they might as well learn how to cooperate.<br>职业政治家有很多缺点，比如腐败。但一个好处是，他们实际上可以与对方达成交易，因为他们知道对方在十年后将处于相同的位置，他们将不得不继续与他们打交道，所以他们不妨学习如何合作。</p><p>Whereas every time you get a new incoming freshman class in the House of Representatives, which turns over every two years with a big wave election. Nothing gets done because of a lot fighting. “Because I just got here, I don’t know you, I don’t know if you’re going to be around, why should I work with you rather than just try to do whatever I think is right?”<br>而每次你在众议院获得一个新的新生班级时，众议院每两年就会有一次大浪潮选举。由于经常打架，什么也做不了。“因为我刚到这里，我不认识你，我不知道你是否会在身边，我为什么要和你一起工作，而不是尝试做我认为正确的事情？”</p><p>So, it’s important to pick an industry where you can play long-term games, and with long-term people. So, those people have to signal that they’re going to be around for a long time. That they’re ethical. And their ethics are visible through their actions.<br>因此，选择一个可以长期玩游戏的行业，并与长期的人一起玩是很重要的。所以，这些人必须发出信号，表明他们将存在很长时间。他们是合乎道德的。他们的道德通过他们的行动可见一斑。</p><p><strong>Long-term players make each other rich<br>长期玩家让彼此致富</strong></p><p><strong>Nivi:</strong> In a long-term game, it seems that everybody is making each other rich. And in a short-term game, it seems like everybody is making themselves rich.<br>Nivi：在长期博弈中，似乎每个人都在让彼此变得富有。在短期博弈中，似乎每个人都在致富。</p><p><strong>Naval:</strong> I think that is a brilliant formulation. In a longterm game, it’s positive sum. We’re all baking the pie together. We’re trying to make it as big as possible. And in a short term game, we’re cutting up the pie.<br>Naval：我认为这是一个绝妙的表述。在长期博弈中，这是正和。我们都在一起烤馅饼。我们正在努力让它尽可能大。在短期游戏中，我们正在切馅饼。</p><p>Now this is not to excuse the socialists, right? The socialists are the people who are not involved in baking the pie, who show up at the end, and say, “I want a slice, or I want the whole pie.” They show up with the guns.<br>现在这不是为社会主义者开脱，对吧？社会主义者是那些不参与烤馅饼的人，他们在最后出现，并说：“我想要一片，或者我想要整个馅饼。他们带着枪出现。</p><p>But I think a good leader doesn’t take credit. A good leader basically tries to inspire people, so the team gets the job done. And then things get divided up according to fairness, and who contributed how much, or as close to it as possible, and took a risk, as opposed to just whoever has the longest knife… the sharpest knife at the end.<br>但我认为一个好的领导者不会把功劳放在心上。一个好的领导者基本上会试图激励人们，这样团队才能完成工作。然后事情会根据公平性进行划分，谁贡献了多少，或者尽可能接近它，并承担了风险，而不仅仅是谁拥有最长的刀……最后最锋利的刀。</p><p><strong>Returns come from compound interest in iterated games<br>回报来自迭代游戏的复利</strong></p><p><strong>Nivi:</strong> So, these next two tweets are, “Play iterated games. All returns in life, whether in wealth, relationships, or knowledge come from compound interest.”<br>Nivi：所以，接下来的两条推文是，“玩迭代游戏。生活中的所有回报，无论是财富、人际关系还是知识，都来自复利。</p><p><strong>Naval:</strong> When you have been doing business with somebody, you’ve been friends with somebody for ten years, twenty years, thirty years, it just gets better and better because you trust them so easily. The friction goes down, you can do bigger, and bigger things together.<br>Naval：当你和某人做生意时，你已经和某人做了十年、二十年、三十年的朋友，它变得越来越好，因为你很容易信任他们。摩擦力下降了，你们可以一起做更大、更大的事情。</p><p>For example, the simplest one is getting married to someone, and having kids, and raising children. That’s compound interest, right? Investing in those relationships. Those relationships end up being invaluable compared to more casual relationships.<br>例如，最简单的就是与某人结婚，生孩子，抚养孩子。这就是复利，对吧？投资于这些关系。与更随意的关系相比，这些关系最终是无价的。</p><p>It’s true in health and fitness. You know, the fitter you are, the easier it is to stay fit. Whereas the more you deteriorate your body, the harder it is to come back, and claw your way back to a baseline. It requires heroic acts.<br>在健康和健身方面也是如此。你知道，你越健康，就越容易保持健康。然而，你的身体越恶化，就越难恢复，并抓住你的方式回到基线。它需要英勇的行为。</p><p><strong>Nivi:</strong> Regarding compound interest, I think I saw retweet something a while back. Maybe it was from Ed Latimore. It went something along the lines of, “Get some traction. Get purchase, and don’t lose it” [correction: the tweet is by @<a href="https://twitter.com/mmay3r/status/932005444179992576">mmay3r</a>]. So, the idea was to gain some initial traction, and never fall back, just keep ratcheting up, and up.<br>Nivi：关于复利，我想我前段时间看到转发了一些东西。也许它来自埃德·拉铁摩尔。它的思路是这样的，“获得一些牵引力。购买，不要丢失它“[更正：推文由 @ mmay3r 提供]。所以，我们的想法是获得一些最初的牵引力，永远不要后退，只是不断提高，不断提高。</p><p><strong>Naval:</strong> I don’t remember it exactly. But I think that was right. Yes, it was like, “Get traction, and don’t let go.” It was a good one, yes.<br>Naval：我记不太清楚了。但我认为这是对的。是的，这就像，“获得牵引力，不要放手。这是一个很好的，是的。</p><h2 id="Pick-Partners-With-Intelligence-Energy-and-Integrity-选择具有智慧、活力和诚信的合作伙伴"><a href="#Pick-Partners-With-Intelligence-Energy-and-Integrity-选择具有智慧、活力和诚信的合作伙伴" class="headerlink" title="Pick Partners With Intelligence, Energy and Integrity 选择具有智慧、活力和诚信的合作伙伴"></a>Pick Partners With Intelligence, Energy and Integrity 选择具有智慧、活力和诚信的合作伙伴</h2><p><em>You can’t compromise on any of these three<br>你不能在这三个方面中的任何一个妥协</em></p><p><strong>Pick business partners with high intelligence, energy and integrity<br>挑选高智商、高能、诚信的商业伙伴</strong></p><p><strong>Naval:</strong> In terms of picking people to work with, pick ones that have high intelligence, high energy, and high integrity, I find that’s the three-part checklist that you cannot compromise on.<br>Naval：在挑选合作对象方面，选择那些高智商、高能量和高正直的人，我发现这是你不能妥协的三部分清单。</p><p>You need someone who is smart, or they’ll head in the wrong direction. And you’re not going to end up in the right place. You need someone high-energy because the world is full of smart, lazy people.<br>你需要一个聪明的人，否则他们会走向错误的方向。而且你不会在正确的地方结束。你需要一个精力充沛的人，因为这个世界到处都是聪明、懒惰的人。</p><p>We all know people in our life who are really smart, but can’t get out of bed, or lift a finger. And we also know people who are very high energy, but not that smart. So, they work hard, but they’re sort of running in the wrong direction.<br>我们都知道生活中的人真的很聪明，但不能下床，也不能抬起一根手指。我们也认识一些人，他们精力充沛，但不是那么聪明。所以，他们努力工作，但他们有点跑错了方向。</p><p>And smart is not a pejorative. It’s not meant to say someone is smart, someone else is stupid. But it’s more that everyone is smart at different things. So, depending on what you want to do well, you have to find someone who is smart at that thing.<br>聪明不是贬义词。这并不是说某人很聪明，其他人很愚蠢。但更重要的是，每个人在不同的事情上都很聪明。所以，根据你想做好的事情，你必须找到一个聪明的人。</p><p>And then energy, a lot of times people are unmotivated for a specific thing, but they’re motivated for other things. So, for example, someone might be really unmotivated to go to a job, and sit in an office. But they might be really motivated to go paint, right?<br>然后是能量，很多时候人们对特定的事情没有动力，但他们对其他事情有动力。因此，例如，某人可能真的没有动力去工作，坐在办公室里。但他们可能真的有动力去画画，对吧？</p><p>Well, in that case they should be a painter. They should be putting art up on the internet. Trying to figure out how to build a career out of that, rather than wearing a collar around their neck, and going to a dreary job.<br>好吧，在这种情况下，他们应该是一个画家。他们应该把艺术作品放到互联网上。试图弄清楚如何以此为基础建立事业，而不是在脖子上戴着项圈，然后去做一份沉闷的工作。</p><p>And then high integrity is the most important because otherwise if you’ve got the other two, what you have is you have a smart and hard working crook, who’s eventually going to cheat you. So, you have to figure out if the person is high-integrity.<br>然后高度的诚信是最重要的，否则如果你有另外两个，你所拥有的就是你有一个聪明而勤奋的骗子，他最终会欺骗你。所以，你必须弄清楚这个人是否正直。</p><p>And as we talked about, the way you do that is through signals. And signals is what they do, not what they say. It’s all the non-verbal stuff that they do when they think nobody is looking.<br>正如我们所讨论的，你这样做的方式是通过信号。信号是他们做什么，而不是他们说什么。当他们认为没有人在看时，他们所做的都是非语言的东西。</p><p><strong>Motivation has to come intrinsically<br>动机必须来自内在的</strong></p><p><strong>Nivi:</strong> With respect to the energy, there was this interesting thing from Sam Altman a while back, where he was talking about delegation, and he was saying, “One of the important things for delegation is, delegate to people who are actually good at the thing that you want them to do.”<br>Nivi：关于能量，Sam Altman刚才谈到了一件有趣的事情，他谈到了授权，他说，“授权的重要事情之一是，授权给那些真正擅长你希望他们做的事情的人。</p><p>It’s the most obvious thing, but it seems like… you want to partner with people who are naturally going to do the things that you want them to do.<br>这是最明显的事情，但似乎……你想与那些自然会做你想让他们做的事情的人合作。</p><p><strong>Naval:</strong> Yeah. I almost won’t start a company, or hire a person, or work with somebody if I just don’t think they’re into what I want them to do.<br>Naval：是的。我几乎不会创办一家公司，或者雇用一个人，或者与某人一起工作，如果我只是认为他们不喜欢我希望他们做的事情。</p><p>When I was younger, I used to try and talk people into things. I had this idea that you could sell someone into doing something. But you can’t. You can’t keep them motivated. You can get them inspired initially. It might work if you’re a king like Henry V, and you’re trying to get them to just charge into battle, and then they’ll figure it out.<br>当我年轻的时候，我曾经试图说服人们做事。我有一个想法，你可以推销某人做某事。但你不能。你不能让他们保持积极性。你可以从一开始得到他们的启发。如果你是像亨利五世这样的国王，你可能会起作用，你试图让他们冲锋陷阵，然后他们会想办法的。</p><p>But if you’re trying to keep someone motivated for the long-term, that motivation has to come intrinsically. You can’t just create it, nor can you be the crutch for them if they don’t have that intrinsic motivation. So, you have to make sure people actually are high-energy, and want to do what you want them to do, and what you want to work with them on.<br>但是，如果你想让某人长期保持动力，那么这种动力必须是内在的。你不能只是创造它，如果他们没有这种内在的动机，你也不能成为他们的拐杖。所以，你必须确保人们确实精力充沛，想做你想让他们做的事情，以及你想和他们一起工作的事情。</p><p><strong>Integrity is what someone does, despite what they say they do<br>诚信是某人的所作所为，无论他们说什么</strong></p><p>Reading signals is very, very important. Signals are what people do despite what they say. So, it’s important to pay attention to subtle signals. We all know that socially if someone treats a waiter, or waitress in a restaurant really badly, then it’s only a matter of time until they treat you badly.<br>读取信号非常非常重要。信号是人们不管他们说了什么而做的事情。因此，注意微妙的信号很重要。我们都知道，在社交上，如果有人对服务员或餐厅的女服务员非常糟糕，那么他们对待你不好只是时间问题。</p><p>If somebody screws over an enemy, and is vindictive towards them, well it’s only a matter of time before they redefine you from friend to enemy, and you feel their wrath. So, angry, outraged, vindictive, short-term thinking people are essentially that way in many interactions in real life.<br>如果有人搞砸了敌人，并对他们进行报复，那么他们将你从朋友重新定义为敌人只是时间问题，你会感受到他们的愤怒。因此，愤怒、愤怒、报复、短视思维的人在现实生活中的许多互动中基本上都是这样。</p><p>People are oddly consistent. That’s one of the things you learn about them. So, you want to find long-term people. You want to find people who seem irrationally ethical.<br>人们出奇地一致。这是你从他们身上学到的东西之一。所以，你想找到长期的人。你想找到那些看起来不道德的人。</p><p>For example, I had a friend of mine whose company I invested in, and the company failed, and he could have wiped out all of the investors. But he kept putting more and more personal money in. Through three different pivots he put personal money in until the company finally succeeded. And in the process, he never wiped out the investors.<br>例如，我有一个朋友，我投资了他的公司，但公司倒闭了，他本可以消灭所有的投资者。但是他不断投入越来越多的个人资金。通过三个不同的支点，他把个人资金投入进去，直到公司最终成功。在这个过程中，他从未消灭过投资者。</p><p>And I was always grateful to him for that. I said, “Wow, that’s amazing that you were so good to your investors. You didn’t wipe them out.” And he got offended by that. He said, “I didn’t do it for you. I didn’t do it for my investors. I did it for me. It’s my own self-esteem. It’s what I care about. That’s how I live my life.” That’s the kind of person you want to work with.<br>为此，我一直很感激他。我说，“哇，你对你的投资者这么好，真是太神奇了。你没有消灭他们。他因此被冒犯了。他说：“我不是为你做的。我这样做不是为了我的投资者。我为我做了。这是我自己的自尊。这是我关心的。这就是我的生活方式。这就是你想与之合作的那种人。</p><p>Another quote that I like, I have a tweet on this. I think I read this somewhere else, so I’m not taking credit for this. But I kind of modified it a little bit. Which is that “self-esteem is the reputation that you have with yourself.” You’ll always know.<br>我喜欢的另一句话，我有一条关于这个的推文。我想我在其他地方读过这篇文章，所以我没有把功劳归功于此。但我稍微修改了一下。那就是“自尊是你对自己的声誉”。你会永远知道的。</p><p>So, good people, moral people, ethical people, easy to work with people, reliable people, tend to have very high self-esteem because they have very good reputations with themselves, and they understand that.<br>所以，好人，有道德的人，有道德的人，容易与人共事，可靠的人，往往有很高的自尊心，因为他们对自己有很好的声誉，他们明白这一点。</p><p>It’s not ego. Self-esteem and ego are different things. Because ego can be undeserved, but self-esteem at least you feel like you lived up to your own internal moral code of ethics.<br>这不是自我。自尊和自我是不同的东西。因为自我可能是不值得的，但自尊至少你觉得你辜负了你自己内在的道德准则。</p><p>And so it’s very hard to work with people who end up being low integrity. And it’s hard to figure out who is high integrity and low integrity. Generally, the more someone is saying that they’re moral, ethical, and high integrity, the less likely they are to be that way.<br>因此，与那些最终诚信不正直的人一起工作是非常困难的。而且很难弄清楚谁是高诚信和低诚信。一般来说，一个人越是说他们有道德、有伦理和高度正直，他们就越不可能那样。</p><p>It’s very much like status signalling. If you overtly bid for status, if you overtly talk about being high status, that is a low status move. If you openly talk about how honest, reliable, and trustworthy you are, you’re probably not that honest and trustworthy. That is a characteristic of con men.<br>这很像状态信号。如果你公然竞标地位，如果你公开谈论高地位，那就是低地位的举动。如果你公开谈论你是多么诚实、可靠和值得信赖，你可能没有那么诚实和值得信赖。这是骗子的特征。</p><p>So, yeah, pick an industry in which you can play long-term games with long-term people.<br>所以，是的，选择一个可以与长期的人玩长期游戏的行业。</p><h2 id="Partner-With-Rational-Optimists-与理性乐观主义者合作"><a href="#Partner-With-Rational-Optimists-与理性乐观主义者合作" class="headerlink" title="Partner With Rational Optimists 与理性乐观主义者合作"></a>Partner With Rational Optimists 与理性乐观主义者合作</h2><p><em>Don’t partner with cynics and pessimists; their beliefs are self-fulfilling<br>不要与愤世嫉俗者和悲观主义者合作;他们的信念是自我实现的</em></p><p><strong>Don’t partner with pessimists<br>不要与悲观主义者合作</strong></p><p><strong>Nivi:</strong> Let’s do this last tweet. You said, “Don’t partner with cynics, and pessimists. Their beliefs are self-fulfilling.”<br>Nivi：让我们做最后一条推文。你说，“不要与愤世嫉俗者和悲观主义者合作。他们的信念是自我实现的。</p><p><strong>Naval:</strong> Yes. Essentially, to create things, you have to be a rational optimist. Rational in the sense that you have to see the world for what it really is. And yet you have to be optimistic about your own capabilities, and your capability to get things done.<br>Naval：是的。从本质上讲，要创造事物，你必须是一个理性的乐观主义者。理性的意思是，你必须看到世界的真实面目。然而，你必须对自己的能力以及你完成任务的能力持乐观态度。</p><p>We all know people who are consistently pessimistic, who will shoot down everything. Everyone in their life has the helpful critical guy, right? He thinks he’s being helpful, but he’s actually being critical, and he’s a downer on everything.<br>我们都知道那些一贯悲观的人，他们会击落一切。每个人在他们的生活中都有乐于助人的批判性人物，对吧？他认为自己在提供帮助，但实际上他很挑剔，他对一切都很失望。</p><p>That person will not only never do anything great in their lives, they’ll prevent other people around them from doing something great. They think their job is to shoot holes in things. And it’s okay to shoot holes in things as long as you come up with a solution.<br>那个人不仅永远不会在他们的生活中做任何伟大的事情，而且他们会阻止他们周围的其他人做一些伟大的事情。他们认为他们的工作是在事物上打洞。只要你想出一个解决方案，就可以在事情上打洞。</p><p>There’s also the classic military line, “Either lead, follow, or get out of the way.” And these people want a fourth option, where they don’t want to lead, they don’t want to follow, but they don’t want to get out of the way. They want to tell you why the thing is not going to work.<br>还有一句经典的军事台词，“要么领导，要么跟随，要么让开。这些人想要第四种选择，他们不想领导，他们不想跟随，但他们不想让开。他们想告诉你为什么这个东西行不通。</p><p>And all the really successful people I know have a very strong action bias. They just do things. The easiest way to figure out if something is viable or not is by doing it. At least do the first step, and the second step, and the third, and then decide.<br>我认识的所有真正成功的人都有非常强烈的行动偏见。他们只是做事。弄清楚某事是否可行的最简单方法是去做。至少做第一步，第二步，第三步，然后决定。</p><p>So, if you want to be successful in life, creating wealth, or having good relationships, or being fit, or even being happy, you need to have an action bias towards getting what you want.<br>所以，如果你想在生活中取得成功，创造财富，或拥有良好的人际关系，或保持健康，甚至快乐，你需要对得到你想要的东西有一种行动偏见。</p><p><strong>Partner with rational optimists<br>与理性乐观主义者合作</strong></p><p>And you have to be optimistic about it. Not irrationally. You know, there’s nothing worse than someone who is foolhardy and chasing something that’s not worth it.<br>你必须对此持乐观态度。不是不合理的。你知道，没有什么比一个鲁莽的人追逐不值得的东西更糟糕的了。</p><p>That’s why I say rational optimist. But you have to be rational. Know all the pitfalls. Know the downsides, but still keep your chin up.<br>这就是为什么我说理性乐观主义者。但你必须保持理性。了解所有陷阱。知道缺点，但仍然保持下巴向上。</p><p>You’ve got one life on this planet. Why not try to build something big? This is the beauty of Elon Musk, and why I think he inspires so many people, it’s just because he takes on really, really big audacious tasks. And he provides an example for people to think big.<br>你在这个星球上只有一条生命。为什么不尝试做一些大事呢？这就是埃隆·马斯克（Elon Musk）的魅力所在，也是我认为他激励了这么多人的原因，只是因为他承担了非常非常大胆的任务。他为人们提供了一个大胆思考的榜样。</p><p>And it takes a lot of work to build even small things. I don’t think the corner grocery store owner is working any less hard than Elon Musk, or pouring any less sweat and toil into it. Maybe even more.<br>即使是小东西也需要做很多工作。我不认为街角杂货店老板的工作比埃隆·马斯克（Elon Musk）少，或者少花点汗水和辛劳。也许更多。</p><p>But for whatever reason, education, circumstance, they didn’t get the chance to think as big, so the outcome is not as big. So, it’s just better to think big. Obviously, rationally, within your means, stay optimistic.<br>但无论出于何种原因，教育，环境，他们没有机会思考那么大，所以结果没有那么大。所以，最好从大处着眼。显然，理性地，在你力所能及的范围内，保持乐观。</p><p>The cynics and the pessimists, what they’re really saying, it’s unfortunate, but they’re basically saying, “I’ve given up. I don’t think I can do anything. And so the world to me just looks like a world where nobody can do anything. And so why should you go do something because if you fail, then I’m right, which is great. But if you succeed, then you just make me look bad.”<br>愤世嫉俗者和悲观主义者，他们真正在说什么，这是不幸的，但他们基本上是在说，“我已经放弃了。我认为我无能为力。所以对我来说，这个世界就像一个没有人可以做任何事情的世界。所以你为什么要去做某事，因为如果你失败了，那么我是对的，这很好。但如果你成功了，那么你只会让我看起来很糟糕。</p><p><strong>We descended from pessimists<br>我们是悲观主义者的后裔</strong></p><p><strong>Nivi:</strong> Yes, it’s probably better to be an irrational optimist, then it is to be a rational cynic.<br>尼维：是的，做一个非理性的乐观主义者可能更好，然后做一个理性的愤世嫉俗者。</p><p><strong>Naval:</strong> There’s a completely rational frame on why you should be an optimist. Historically, if you go back 2,000 years, 5,000 years, 10,000 years, two people are wandering through a jungle, they hear a tiger. One’s an optimist, and says, “Oh, it’s not headed our way.” The other one says, “I’m a pessimist, I’m out of here.” And the pessimist runs and survives, and the optimist gets eaten.<br>Naval：关于为什么你应该成为一个乐观主义者，有一个完全合理的框架。从历史上看，如果你回到2000年、5000年、10000年前，两个人在丛林中徘徊，他们听到了老虎的声音。一个人是个乐观主义者，然后说，“哦，它没有朝着我们的方向发展。另一个说，“我是一个悲观主义者，我离开了这里。悲观主义者逃跑并生存，乐观主义者被吃掉。</p><p>So, we’re descended from pessimists. We’re genetically hardwired to be pessimists. But modern society is far, far safer. There are no tigers wandering around the street. It’s very unlikely that you will end up in total ruin, although you should avoid total ruin.<br>所以，我们是悲观主义者的后裔。我们天生就是悲观主义者。但现代社会要安全得多。街上没有老虎徘徊。你不太可能最终陷入彻底的毁灭，尽管你应该避免彻底的毁灭。</p><p>Much more likely that the upside is unlimited, and the downside is limited. So, adapting for modern society means overriding your pessimism, and taking slightly irrationally optimistic bets because the upside is unlimited if you start the next SpaceX, or Tesla, or Uber, you can make billions of dollars of value for society, and for yourself, and change the world.<br>更有可能的是，上行空间是无限的，下行空间是有限的。因此，适应现代社会意味着克服你的悲观情绪，并采取略微非理性的乐观赌注，因为如果你开始下一个SpaceX，特斯拉或优步，你可以为社会和你自己创造数十亿美元的价值，并改变世界。</p><p>And if you fail, what’s the big deal? You lost a few million dollars of investor money, and they’ve got plenty more, and that’s the bet they take on the chances that you will succeed.<br>如果你失败了，有什么大不了的？你损失了几百万美元的投资者资金，而他们还有更多，这就是他们对你成功机会的赌注。</p><p>It made sense to be pessimistic in the past. It makes sense to be optimistic today, especially if you’re educated and living in a First World country. Even a Third World country. I actually think the economic opportunities in Third World countries are much larger.<br>过去悲观是有道理的。今天保持乐观是有道理的，特别是如果你受过教育并生活在第一世界国家。甚至是第三世界国家。实际上，我认为第三世界国家的经济机会要大得多。</p><p>The one thing you have to avoid is the risk of ruin. Ruin means stay out of jail. So, don’t do anything that’s illegal. It’s never worth it to wear an orange jumpsuit. And stay out of total catastrophic loss. That could mean that you stay out of things that could be physically dangerous, hurt your body.<br>你必须避免的一件事是毁灭的风险。废墟意味着远离监狱。所以，不要做任何违法的事情。穿橙色连身裤从来都不值得。并避免完全灾难性的损失。这可能意味着你要远离那些可能对身体有危险、伤害你身体的事情。</p><p>You have to watch your health. And stay out of things that can cause you to lose all of your capital, all of your savings. So, don’t gamble everything on one go. But take rationally optimistic bets with big upside.<br>你必须注意你的健康。远离可能导致你失去所有资本和所有积蓄的事情。所以，不要一次性赌上所有东西。但采取理性乐观的赌注，有很大的上行空间。</p><p><strong>BOCTAOE 博克陶</strong></p><p><strong>Nivi:</strong> I think there’s people that will try and build up your ideas, and build on your ideas, no matter how far fetched they might seem. And then there are people who list all of the obvious exceptions, no matter how obvious they are.<br>Nivi：我认为有些人会尝试建立你的想法，并建立在你的想法之上，无论它们看起来多么牵强。还有一些人列出了所有明显的例外，无论它们多么明显。</p><p>And fortunately in the startup world, I don’t even really get exposed to the people that are giving you the obvious exceptions, and all the reasons it’s not going to work. I barely get exposed to that anymore.<br>幸运的是，在创业界，我甚至没有真正接触到那些给你明显例外的人，以及它不起作用的所有原因。我几乎不再接触它了。</p><p><strong>Naval:</strong> That’s what Twitter is for. Scott Adams got so annoyed by this that he came up with a phrase, an acronym, which is “but of course there are obvious exceptions”, BOCTAOE. And he used to pin that acronym at the end of his articles for a while.<br>Naval：这就是Twitter的用途。斯科特·亚当斯（Scott Adams）对此感到非常恼火，以至于他想出了一个短语，一个首字母缩略词，即“但当然有明显的例外”，BOCTAOE。有一段时间，他曾经把这个首字母缩略词固定在文章的末尾。</p><p>But Twitter is overrun with nitpickers. Whereas exactly as you were pointing out, Silicon Valley has learned that the upside is so great that you never look down on the kid who’s wearing a hoodie and has coffee on his shoes. And just looks like a slob because you don’t know if he’s going to be the next Mark Zuckerberg, or the next Reid Hoffman.<br>但Twitter上充斥着吹毛求疵的人。然而，正如你所指出的，硅谷已经了解到，好处是如此之大，以至于你永远不会看不起那个穿着连帽衫、鞋子上沾着咖啡的孩子。而且看起来就像一个懒汉，因为你不知道他是否会成为下一个马克·扎克伯格，或者下一个里德·霍夫曼。</p><p>So, you’ve got to treat everybody with respect. You’ve got to look up to every possibility, and opportunity because the upside is so unlimited, and the downside is so limited in the modern world, especially with financial assets and instruments.<br>所以，你必须尊重每一个人。你必须关注每一种可能性和机会，因为在现代世界中，上行空间是无限的，而下行空间是有限的，尤其是在金融资产和工具方面。</p><h2 id="Arm-Yourself-With-Specific-Knowledge-用特定知识武装自己"><a href="#Arm-Yourself-With-Specific-Knowledge-用特定知识武装自己" class="headerlink" title="Arm Yourself With Specific Knowledge 用特定知识武装自己"></a>Arm Yourself With Specific Knowledge 用特定知识武装自己</h2><p><em>Specific knowledge can be found by pursuing your genuine curiosity<br>通过追求你真正的好奇心，可以找到具体的知识</em></p><p><strong>Arm yourself with specific knowledge<br>用特定知识武装自己</strong></p><p><strong>Nivi:</strong> Do you want to talk a little bit about the skills that you need, in particular specific knowledge, accountability, leverage and judgment. So, the first tweet in this area is “Arm yourself with specific knowledge accountability and leverage.” And I’ll throw in judgment as well. I don’t think you covered that in that particular tweet.<br>Nivi：你想谈谈你需要的技能吗，特别是具体的知识、责任感、影响力和判断力。因此，该领域的第一条推文是“用特定的知识、责任感和杠杆作用武装自己”。我也会做出判断。我不认为你在那条特定的推文中谈到了这一点。</p><p><strong>Naval:</strong> If you want to make money you have to get paid at scale. And why you, that’s accountability, at scale, that’s leverage, and just you getting paid as opposed to somebody else getting paid , that’s specific knowledge.<br>Naval：如果你想赚钱，你必须获得大规模的报酬。为什么是你，这是问责制，这是规模，这是杠杆，只是你得到报酬，而不是其他人得到报酬，这是具体的知识。</p><p>So, specific knowledge is probably the hardest thing to get across in this whole tweetstorm, and it’s probably the thing that people get the most confused about.<br>因此，具体知识可能是整个推特风暴中最难传达的东西，也可能是人们最困惑的事情。</p><p>The thing is that we have this idea that everything can be taught, everything can be taught in school. And it’s not true that everything can be taught. In fact, the most interesting things cannot be taught. But everything can be learned. And very often that learning either comes from some innate characteristics in your DNA, or it could be through your childhood where you learn soft skills which are very, very hard to teach later on in life, or it’s something that is brand new so nobody else knows how to do it either, or it’s true on the job training because you’re pattern matching into highly complex environments, basically building judgment in a specific domain.<br>问题是我们有这样的想法，什么都可以教，什么都可以在学校教。并不是说一切都可以教。事实上，最有趣的东西是无法教的。但一切都可以学习。很多时候，这种学习要么来自你DNA中的一些先天特征，要么可能是在你的童年时期，你学到了在以后的生活中非常非常难以教授的软技能，或者它是全新的东西，所以没有人知道如何去做，或者在职培训中是正确的，因为你正在与高度复杂的环境进行模式匹配。 基本上是在特定领域建立判断力。</p><p>Classic example is investing, but it could be in anything. It could be in judgment in running a fleet of trucks, it could be judgment in weather forecasting.<br>典型的例子是投资，但它可以是任何东西。它可能是运行卡车车队的判断，也可能是天气预报的判断。</p><p>So, specific knowledge is the knowledge that you care about. Especially if you’re later in life, let’s say your post 20, 21, 22, you almost don’t get to choose which specific knowledge you have. Rather, you get to look at what you have already built by that point in time, and then you can build on top of it.<br>所以，具体的知识是你关心的知识。特别是如果你在晚年，比如说你的 20、21、22 岁以后，你几乎无法选择你拥有哪些特定知识。相反，你可以看看你在那个时间点已经构建了什么，然后你可以在上面构建。</p><p><strong>Specific knowledge can’t be trained<br>无法训练特定知识</strong></p><p>The first thing to notice about specific knowledge is that you can’t be trained for it. If you can be trained for it, if you can go to a class and learn specific knowledge, then somebody else can be trained for it too, and then we can mass-produce and mass-train people. Heck, we can even program computers to do it and eventually we can program robots to walk around doing it.<br>关于特定知识，首先要注意的是你不能接受这方面的培训。如果你能接受培训，如果你能去上课学习特定的知识，那么其他人也可以接受培训，然后我们就可以大规模生产和大规模培训人。哎呀，我们甚至可以对计算机进行编程来做到这一点，最终我们可以对机器人进行编程，让它四处走动。</p><p>So, if that’s the case, then you’re extremely replaceable and all we have to pay you is the minimum wage that we have to pay you to get you to do it when there are lots of other takers who can be trained to do it. So really, your returns just devolve into your cost of training plus the return on investment on that training.<br>所以，如果是这样的话，那么你是非常可替代的，我们所要付给你的只是我们必须付给你的最低工资，当有很多其他接受者可以接受培训时，你必须这样做。所以实际上，你的回报只是转移到你的培训成本加上培训的投资回报。</p><p>So, you really want to pick up specific knowledge, you need your schooling, you need your training to be able to capitalize on the best specific knowledge, but the part of it that you’re going to get paid for is the specific knowledge.<br>所以，你真的想学习特定的知识，你需要你的学校教育，你需要你的培训，以便能够利用最好的特定知识，但你将获得报酬的部分是特定知识。</p><p><strong>Specific knowledge is found by pursuing your curiosity<br>通过追求你的好奇心来发现特定的知识</strong></p><p>For example, someone who goes and gets a degree in psychology and then becomes a salesperson. Well if they were already a formidable salesperson, a high grade salesmanship to begin with, then the psychology degree is leverage, it arms them and they do much better at sales.<br>例如，有人去获得心理学学位，然后成为一名销售人员。好吧，如果他们已经是一个强大的销售人员，一个高级的销售技巧，那么心理学学位就是杠杆，它武装了他们，他们在销售方面做得更好。</p><p>But if they were always an introvert never very good at sales and they’re trying to use psychology to learn sales, they’re just not going to get that great at it.<br>但是，如果他们总是一个内向的人，从来不擅长销售，并且他们试图用心理学来学习销售，他们就不会那么擅长。</p><p>So, specific knowledge is found much more by pursuing your innate talents, your genuine curiosity, and your passion. It’s not by going to school for whatever is the hottest job, it’s not for going into whatever field investors say is the hottest.<br>因此，通过追求你与生俱来的才能、你真正的好奇心和你的热情，可以找到更多的特定知识。上学不是为了最热门的工作，也不是为了进入投资者认为最热门的领域。</p><p>Very often specific knowledge is at the edge of knowledge. It’s also stuff that’s just being figured out or is really hard to figure out.<br>很多时候，特定知识处于知识的边缘。这也是刚刚弄清楚或很难弄清楚的东西。</p><p>So, if you’re not 100% into it somebody else who is 100% into it will outperform you. And they won’t just outperform you by a little bit, they’ll outperform you by a lot because now we’re operating the domain of ideas, compound interest really applies and leverage really applies.<br>所以，如果你不是 100% 投入其中，那么其他 100% 投入其中的人会比你表现更好。他们不仅会比你好一点，而且会比你好很多，因为现在我们正在经营创意领域，复利确实适用，杠杆也确实适用。</p><p>So, if you’re operating with 1,000 times leverage and somebody is right 80% of the time, and somebody else is right 90% of time, the person who’s right 90% of the time will literally get paid hundreds of times more by the market because of the leverage and because of the compounding factors and being correct. So, you really want to make sure you’re good at it so that genuine curiosity is very important.<br>所以，如果你以 1,000 倍的杠杆率运作，而某人在 80% 的时间里是正确的，而其他人在 90% 的时间里是正确的，那么在 90% 的时间里正确的人实际上会因为杠杆和复利因素而从市场上获得数百倍的报酬。所以，你真的要确保你擅长它，所以真正的好奇心非常重要。</p><p><strong>Building specific knowledge will feel like play to you<br>建立特定的知识对你来说就像在玩</strong></p><p>So, very often, it’s not something you sit down and then you reason about, it’s more found by observation. You almost have to look back on your own life and see what you’re actually good at.<br>所以，很多时候，它不是你坐下来然后你推理的东西，它更多的是通过观察发现的。你几乎必须回顾自己的生活，看看你真正擅长什么。</p><p>For example, I wanted to be a scientist and that is where a lot of my moral hierarchy comes from. I view scientists sort of at the top of the production chain for humanity. And the group of scientists who have made real breakthroughs and contributions that probably added more to human society, I think, than any single other class of human beings.<br>例如，我想成为一名科学家，这就是我的很多道德等级的来源。在我看来，科学家处于人类生产链的顶端。我认为，这群科学家取得了真正的突破和贡献，他们可能比任何其他人类阶层都对人类社会的贡献更大。</p><p>Not to take away anything from art or politics or engineering or business, but without the science we’d still be scrambling in the dirt fighting with sticks and trying to start fires.<br>不要从艺术、政治、工程或商业中夺走任何东西，但如果没有科学，我们仍然会在泥土中挣扎，用棍棒打架，试图生火。</p><p>My whole value system was built around scientists and I wanted to be a great scientist. But when I actually look back at what I was uniquely good at and what I ended up spending my time doing, it was more around making money, tinkering with technology, and selling people on things. Explaining things, talking to people.<br>我的整个价值体系都是围绕着科学家建立的，我想成为一名伟大的科学家。但是，当我真正回顾我特别擅长的事情以及我最终花时间做的事情时，更多的是赚钱、修补技术和向人们推销东西。解释事情，与人交谈。</p><p>So, I have some sales skills, which is a form specific knowledge that I have. I have some analytical skills around how to make money. And I have this ability to absorb data, obsess about it, and break it down and that is a specific skill that I have. I also just love tinkering with technology. And all of this stuff feels like play to me, but it looks like work to others.<br>所以，我有一些销售技巧，这是我所拥有的特定形式的知识。我有一些关于如何赚钱的分析技能。我有这种能力来吸收数据，痴迷于它，并分解它，这是我拥有的一项特定技能。我也只是喜欢修补技术。所有这些东西对我来说都像是玩，但对其他人来说却像是工作。</p><p>So, there are other people to whom these things would be hard and they say like, “Well, how do I get good at being pithy and selling ideas?” Well, if you’re not already good at it or if you’re not really into it, maybe it’s not your thing, focus on the thing that you are really into.<br>所以，还有其他人认为这些事情很难，他们会说，“好吧，我如何善于精辟和推销想法？好吧，如果你还不擅长它，或者你不是真的喜欢它，也许这不是你的事，专注于你真正喜欢的事情。</p><p>This is ironic, but the first person to actually point out my real specific knowledge was my mother. She did it as an aside, talking from the kitchen and she said it when I was like 15 or 16 years old. I was telling a friend of mine that I want to be an astrophysicist and she said, “No, you’re going to go into business.”<br>这很讽刺，但第一个真正指出我真正具体知识的人是我的母亲。她是旁白，在厨房里说话，她在我 15 或 16 岁的时候说过。我告诉我的一个朋友，我想成为一名天体物理学家，她说，“不，你要去做生意。</p><p>I was like, “What, my mom’s telling me I’m going to be in business. I’m going to be an astrophysicist. Mom doesn’t know she’s talking about.” But mom knew exactly what she was talking about.<br>我当时想，“什么，我妈妈告诉我我要做生意。我要成为一名天体物理学家。妈妈不知道她在说什么。但妈妈很清楚她在说什么。</p><p>She’d already observed that every time we walk down the street, I would critique the local pizza parlor on why they were selling their slices a certain way with certain toppings and why their process of ordering was this way when it should have been that way.<br>她已经观察到，每次我们走在街上时，我都会批评当地的披萨店，为什么他们以某种方式出售带有某些配料的切片，以及为什么他们的订购过程是这样的，而本来应该这样。</p><p>So, she knew that I had more of a business curious mind, but then my obsession with science combined to create technology and technology businesses where I found myself.<br>所以，她知道我有更多的商业好奇心，但后来我对科学的痴迷结合在一起，创造了我发现自己的技术和科技企业。</p><p>So, very often, your specific knowledge is observed and often observed by other people who know you well and revealed in situations rather than something that you come up with.<br>所以，很多时候，你的特定知识被观察，并且经常被其他熟悉你的人观察，并在情境中被揭示出来，而不是你想出的东西。</p><h2 id="Specific-Knowledge-Is-Highly-Creative-or-Technical-特定知识具有高度的创造性或技术性"><a href="#Specific-Knowledge-Is-Highly-Creative-or-Technical-特定知识具有高度的创造性或技术性" class="headerlink" title="Specific Knowledge Is Highly Creative or Technical 特定知识具有高度的创造性或技术性"></a>Specific Knowledge Is Highly Creative or Technical 特定知识具有高度的创造性或技术性</h2><p><em>Specific knowledge is on the bleeding edge of technology, art and communication<br>特定知识处于技术、艺术和通信的最前沿</em></p><p><strong>Specific knowledge can be taught through apprenticeships<br>特定知识可以通过学徒制教授</strong></p><p><strong>Naval:</strong> To the extent that specific knowledge is taught, it’s on the job. It’s through apprenticeships. And that’s why the best businesses, the best careers are the apprenticeship or self-taught careers, because those are things society still has not figured out how to train and automate yet.<br>Naval：在某种程度上，教授特定知识，这是在工作中。这是通过学徒制。这就是为什么最好的企业，最好的职业是学徒制或自学成才的职业，因为这些是社会还没有弄清楚如何培训和自动化的东西。</p><p>The classic line here is that Warren Buffett went to Benjamin Graham when he got out of school. Benjamin Graham was the author of the Intelligent Investor and sort of modernized or created value investing as a discipline. And Warren Buffett went to Benjamin Graham and offered to work for him for free.<br>这里的经典台词是沃伦·巴菲特（Warren Buffett）离开学校后去了本杰明·格雷厄姆（Benjamin Graham）。本杰明·格雷厄姆（Benjamin Graham）是《聪明的投资者》一书的作者，他将价值投资作为一门学科进行了现代化或创造。沃伦·巴菲特（Warren Buffett）去找本杰明·格雷厄姆（Benjamin Graham），并提出免费为他工作。</p><p>And Graham said, “Actually, you’re overpriced, free is overpriced.” And Graham was absolutely right. When it comes to a very valuable apprenticeship like the type that Graham was going to give Buffet, Buffet should have been paying him a lot of money. That right there tells you that those are skills worth having.<br>格雷厄姆说，“实际上，你定价过高，免费定价过高。格雷厄姆是绝对正确的。当谈到格雷厄姆要给巴菲特的那种非常有价值的学徒时，巴菲特应该付给他很多钱。就在那里告诉你，这些都是值得拥有的技能。</p><p><strong>Specific knowledge is often highly creative or technical<br>特定知识通常具有很强的创造性或技术性</strong></p><p>Specific knowledge also tends to be technical and creative. It’s on the bleeding edge of technology, on the bleeding edge of art, on the bleeding edge of communication.<br>特定知识也往往具有技术和创造性。它处于技术的最前沿，处于艺术的前沿，处于沟通的前沿。</p><p>Even today, for example, there are probably meme lords out there on the Internet who can create incredible memes that will spread the idea to millions of people. Or are very persuasive – Scott Adams is a good example of this. He is essentially becoming one of the most credible people in the world by making accurate predictions through persuasive arguments and videos.<br>例如，即使在今天，互联网上也可能有模因领主，他们可以创造令人难以置信的模因，将这个想法传播给数百万人。或者非常有说服力——斯科特·亚当斯（Scott Adams）就是一个很好的例子。他通过有说服力的论点和视频做出准确的预测，基本上正在成为世界上最可信的人之一。</p><p>And that is specific knowledge that he has built up over the years because he got obsessed with hypnosis when he was young, he learned how to communicate through cartooning, he embraced Periscope early, so he’s been practicing lots of conversation, he’s read all the books on the topic, he’s employed it in his everyday life. If you look at his girlfriend, she’s this beautiful young Instagram model.<br>这是他多年来积累的具体知识，因为他从小就痴迷于催眠，他学会了如何通过漫画进行交流，他很早就接受了潜望镜，所以他一直在练习很多对话，他阅读了所有关于这个主题的书籍，他在日常生活中使用它。如果你看看他的女朋友，她就是这个美丽的年轻Instagram模特。</p><p>That is an example of someone who has built up a specific knowledge over the course of his career. It’s highly creative, it has elements of being technical in it, and it’s something that is never going to be automated.<br>这是一个在职业生涯中积累了特定知识的人的例子。它非常有创意，它有技术元素，而且它永远不会被自动化。</p><p>No one’s going to take that away from him, because he’s also accountable under one brand as Scott Adams, and he’s operating with the leverage of media with Periscope and drawing Dilbert cartoons and writing books. He has massive leverage on top of that brand and he can build wealth out of it if he wanted to build additional wealth beyond what he already has.<br>没有人会从他身上夺走这一点，因为他也像斯科特·亚当斯（Scott Adams）一样在一个品牌下负责，他正在利用媒体与Periscope合作，画Dilbert漫画和写书。他在该品牌之上拥有巨大的影响力，如果他想在他已经拥有的财富之外积累额外的财富，他可以从中积累财富。</p><p><strong>Specific knowledge is specific to the individual and situation<br>特定知识特定于个人和情况</strong></p><p><strong>Nivi:</strong> Should we be calling it unique knowledge or does specific knowledge somehow make more sense for it?<br>Nivi：我们应该称它为独特的知识，还是特定的知识在某种程度上对它更有意义？</p><p><strong>Naval:</strong> You know, I came up with this framework when I was really young. We’re talking decades and decades. It’s now probably over 30 years old. So, at the time specific knowledge stuck with me so that is how I think about it.<br>Naval：你知道，我在很小的时候就想出了这个框架。我们谈论的是几十年和几十年。它现在可能已经有 30 多年的历史了。所以，当时特定的知识一直困扰着我，所以我就是这样想的。</p><p>The reason I didn’t try and change it is because every other term that I found for it was overloaded in a different way. At least specific knowledge isn’t that used. I can kind of rebrand it.<br>我没有尝试更改它的原因是因为我为它找到的所有其他术语都以不同的方式超载。至少没有使用特定知识。我可以重塑它。</p><p>The problem with unique knowledge is, yeah, maybe it’s unique but if I learn it from somebody else it’s no longer unique, then we both know it. So, it’s not so much that it is unique, it’s that it is highly specific to the situation, it’s specific to the individual, it’s specific to the problem, and it can only be built as part of a larger obsession, interest, and time spent in that domain.<br>独特知识的问题是，是的，也许它是独一无二的，但如果我从别人那里学到它，它就不再是独一无二的，那么我们都知道它。所以，与其说它是独一无二的，不如说它对情况是高度特定的，它是针对个人的，它是针对问题的，它只能作为更大的痴迷、兴趣和时间的一部分来构建在那个领域。</p><p>It can’t just be read straight out of a single book, nor can it be taught in a single course, nor can it be programmed into a single algorithm.<br>它不能直接从一本书中读出来，也不能在一门课程中教授，也不能被编程成单一的算法。</p><p><strong>You can’t be too deliberate about assembling specific knowledge<br>你不能太刻意地收集特定的知识</strong></p><p><strong>Nivi:</strong> Speaking of Scott Adams, he’s got a blog post on how to build your career by getting in, say, the top 25 percentile at three or more things. And by doing that, you become the only person in the world who can do those three things in the 25th percentile.<br>Nivi：说到斯科特·亚当斯（Scott Adams），他有一篇博文，内容是关于如何通过在三件或更多事情上进入前25个百分位来建立自己的职业生涯。通过这样做，你成为世界上唯一一个可以在第25个百分位做这三件事的人。</p><p>So, instead of trying to be the best at one thing, you just try to be very, very good at three or more things. Is that a way of building specific knowledge?<br>所以，与其试图在一件事上做到最好，不如试着在三件或更多的事情上做得非常非常好。这是建立特定知识的一种方式吗？</p><p><strong>Naval:</strong> I actually think the best way is just to follow your own obsession. And somewhere in the back of your mind, you can realize that, actually, this obsession I like and I’ll keep an eye out for the commercial aspects of it.<br>Naval：实际上，我认为最好的方法就是追随自己的痴迷。在你脑海中的某个地方，你可以意识到，实际上，我喜欢这种痴迷，我会密切关注它的商业方面。</p><p>But I think if you go around trying to build it a little too deliberately, if you become too goal-oriented on the money, then you won’t pick the right thing. You won’t actually pick the thing that you love to do, so you won’t go deep enough into it.<br>但我认为，如果你试图过于刻意地建立它，如果你在金钱上变得过于以目标为导向，那么你就不会选择正确的东西。你不会真正选择你喜欢做的事情，所以你不会深入其中。</p><p>Scott Adams’ observation is a good one, predicated on statistics. Let’s say there’s 10,000 areas that are valuable to the human race today in terms of knowledge to have, and the number one in those 10,000 slots is taken.<br>斯科特·亚当斯（Scott Adams）的观察是建立在统计数据基础上的。假设有 10,000 个领域在知识方面对当今人类有价值，而这 10,000 个名额中的第一名被占用。</p><p>Someone else is likely to be the number one in each of those 10,000, unless you happen to be one of the 10,000 most obsessed people in the world that at a given thing.<br>在这 10,000 人中，其他人很可能是第一名，除非你碰巧是世界上最痴迷的 10,000 人之一。</p><p>But when you start combining, well, number 3,728 with top-notch sales skills and really good writing skills and someone who understands accounting and finance really well, when the need for that intersection arrives, you’ve expanded enough from 10,000 through combinatorics to millions or tens of millions. So, it just becomes much less competitive.<br>但是，当你开始将 3,728 号与一流的销售技巧和非常好的写作技巧以及非常了解会计和金融的人结合起来时，当对这种交叉点的需求到来时，你已经从 10,000 人通过组合扩展到数百万或数千万。因此，它的竞争力大大降低。</p><p>Also, there’s diminishing returns. So, it’s much easier to be top 5 percentile at three or four things than it is to be literally the number one at something.<br>此外，回报也在递减。因此，在三四件事上成为前 5 个百分位比在某件事上成为第一名要容易得多。</p><p><strong>Build specific knowledge where you are a natural<br>在你自然的地方建立特定的知识</strong></p><p>I think it’s a very pragmatic approach. But I think it’s important that one not start assembling things too deliberately because you do want to pick things where you are a natural. Everyone is a natural at something.<br>我认为这是一种非常务实的方法。但我认为重要的是，不要太刻意地组装东西，因为你确实想选择你自然的东西。每个人都是天生的。</p><p>We’re all familiar with that phrase, a natural. “Oh, this person is a natural at meeting men or women, this person is a natural socialite, this person is a natural programmer, this person is a natural reader.” So, whatever you are a natural at, you want to double down on that.<br>我们都熟悉这句话，一个自然的。“哦，这个人天生善于结识男人或女人，这个人是天生的社交名媛，这个人是天生的程序员，这个人是天生的读者。所以，无论你是天生的，你都想加倍努力。</p><p>And then there are probably multiple things you’re natural at because personalities and humans are very complex. So, we want to be able to take the things that you are natural at and combine them so that you automatically, just through sheer interest and enjoyment, end up top 25% or top 10% or top 5% at a number of things.<br>然后可能有很多事情是你天生的，因为个性和人类非常复杂。所以，我们希望能够把你天生擅长的事情结合起来，这样你就自动地，仅仅通过纯粹的兴趣和享受，在很多事情上最终达到前25%或前10%或前5%。</p><h2 id="Learn-to-Sell-Learn-to-Build-学会销售，学会建造"><a href="#Learn-to-Sell-Learn-to-Build-学会销售，学会建造" class="headerlink" title="Learn to Sell, Learn to Build 学会销售，学会建造"></a>Learn to Sell, Learn to Build 学会销售，学会建造</h2><p><em>If you can do both, you will be unstoppable<br>如果你能做到这两点，你将是不可阻挡的</em></p><p><strong>Learn to sell, learn to build<br>学会销售，学会建造</strong></p><p><strong>Nivi:</strong> Talking about combining skills, you said that you should “learn to sell, learn to build, if you can do both, you will be unstoppable.”<br>Nivi：谈到结合技能，你说你应该“学会销售，学会建造，如果你能两者兼而有之，你就会势不可挡。</p><p><strong>Naval:</strong> This is a very broad category. It’s two broad categories. One is building the product. Which is hard, and it’s multivariate. It can include design, it can include development, it can include manufacturing, logistics, procurement, it can even be designing and operating a service. It has many, many definitions.<br>Naval：这是一个非常广泛的类别。这是两大类。一是构建产品。这很难，而且是多变量的。它可以包括设计，可以包括开发，可以包括制造、物流、采购，甚至可以是设计和运营服务。它有很多很多的定义。</p><p>But in every industry, there is a definition of the builder. In our tech industry it’s the CTO, it’s the programmer, it’s the software engineer, hardware engineer. But even in the laundry business, it could be the person who’s building the laundry service, who is making the trains run on time, who’s making sure all the clothes end up in the right place at the right time, and so on.<br>但在每个行业中，都有一个建设者的定义。在我们的科技行业，它是首席技术官，它是程序员，它是软件工程师，硬件工程师。但即使在洗衣行业，也可能是建立洗衣服务的人，让火车准时运行的人，确保所有衣服在正确的时间到达正确的地方，等等。</p><p>The other side of it is sales. Again, selling has a very broad definition. Selling doesn’t necessarily just mean selling individual customers, but it can mean marketing, it can mean communicating, it can mean recruiting, it can mean raising money, it can mean inspiring people, it could mean doing PR. It’s a broad umbrella category.<br>另一方面是销售。同样，销售有一个非常广泛的定义。销售不一定只意味着销售个人客户，但它可能意味着营销，它可能意味着沟通，它可能意味着招聘，它可能意味着筹集资金，它可能意味着激励人们，它可能意味着做公关。这是一个广泛的伞形类别。</p><p><strong>The Silicon Valley model is a builder and seller<br>硅谷模式是建设者和销售者</strong></p><p>So, generally, the Silicon Valley startup model tends to work best. It’s not the only way, but it is probably the most common way, when you have two founders, one of whom is world class at selling, and one of whom is world class at building.<br>因此，一般来说，硅谷的创业模式往往效果最好。这不是唯一的方法，但这可能是最常见的方法，当你有两个创始人时，其中一个是世界级的销售，另一个是世界级的建筑。</p><p>Examples are, of course, Steve Jobs and Steve Wozniak with Apple, Gates and Allen probably had similar responsibilities early on with Microsoft, Larry and Sergey probably broke down along those lines, although it’s a little different there because that was a very technical product delivered to end users through a simple interface.<br>当然，例如，苹果公司的史蒂夫·乔布斯（Steve Jobs）和史蒂夫·沃兹尼亚克（Steve Wozniak），盖茨（Gates）和艾伦（Allen）可能在Microsoft的早期就承担了类似的责任，拉里（Larry）和谢尔盖（Sergey）可能沿着这些思路崩溃了，尽管那里有点不同，因为这是一个非常技术性的产品，通过一个简单的界面交付给最终用户。</p><p>But generally, you will see this pattern repeated over and over. There’s a builder and there’s a seller. There’s a CEO and CTO combo. And venture and technology investors are almost trained to look for this combo whenever possible. It’s the magic combination.<br>但一般来说，你会看到这种模式一遍又一遍地重复。有一个建筑商，有一个卖家。有一个CEO和CTO组合。风险投资和技术投资者几乎都受过训练，只要有可能，就会寻找这种组合。这是神奇的组合。</p><p><strong>If you can do both you will be unstoppable<br>如果你能做到这两点，你将是不可阻挡的</strong></p><p>The ultimate is when one individual can do both. That’s when you get true superpowers. That’s when you get people who can create entire industries.<br>最终是当一个人可以同时做到这两点时。那是你获得真正的超能力的时候。那时你就会找到能够创造整个行业的人。</p><p>The living example is Elon Musk. He may not necessarily be building the rockets himself, but he understands enough that he actually makes technical contributions. He understands the technology well enough that no one’s going to snow him on it, and he’s not running around making claims that he doesn’t think he can’t eventually deliver. He may be optimistic on the timelines but he thinks this is within reasonableness for delivery.<br>活生生的例子是埃隆·马斯克（Elon Musk）。他可能不一定自己在制造火箭，但他足够了解，他实际上做出了技术贡献。他非常了解这项技术，没有人会把他放在上面，而且他不会到处跑来跑去，声称他不认为自己最终无法实现。他可能对时间表持乐观态度，但他认为这在合理的交付范围内。</p><p>Even Steve Jobs developed enough product skills and was involved enough in the product that he also operated in both of these domains. Larry Ellison started as a programmer and I think wrote the first version of Oracle, or was actually heavily involved in it.<br>甚至史蒂夫·乔布斯（Steve Jobs）也发展了足够的产品技能，并参与了足够的产品，以至于他也在这两个领域开展业务。拉里·埃里森（Larry Ellison）最初是一名程序员，我认为他编写了甲骨文的第一个版本，或者实际上大量参与其中。</p><p>Marc Andreessen was also in this domain. He may not have had enough confidence in his sales skills, but he was the programmer who wrote Netscape Navigator, or a big chunk of it. So, I think the real giants in any field are the people who can both build and sell.<br>马克·安德森（Marc Andreessen）也属于这一领域。他可能对自己的销售技巧没有足够的信心，但他是编写 Netscape Navigator 的程序员，或者说是其中的很大一部分。所以，我认为任何领域的真正巨头都是既能建造又能销售的人。</p><p><strong>I’d rather teach an engineer marketing than a marketer engineering<br>我宁愿教工程师营销，也不愿教营销人员工程</strong></p><p>And usually the building is a thing that a sales person can’t pick up later in life. It requires too much focused time. But a builder can pick up selling a little bit later, especially if they were already innately wired to be a good communicator. Bill Gates famously paraphrases this as, “I’d rather teach an engineer marketing, than a marketer engineering.”<br>通常，建筑物是销售人员在以后的生活中无法拿起的东西。它需要太多的专注时间。但是建筑商可以稍后再开始销售，特别是如果他们天生就已经天生就是一个很好的沟通者。比尔·盖茨（Bill Gates）有一句名言：“我宁愿教营销工程师，也不愿教营销人员工程。</p><p>I think if you start out with a building mentality and you have building skills and it’s still early enough in your life, or you have enough focused time that you think you can learn selling, and you have some natural characteristics or you’re a good salesperson, then you can double down on those.<br>我认为，如果你一开始就有一种建筑的心态，你有建筑技能，而且在你生命中还处于早期阶段，或者你有足够的专注时间，你认为你可以学习销售，你有一些天生的特征，或者你是一个好的销售人员，那么你可以加倍努力。</p><p>Now, your sales skills could be in a different than traditional domain. For example, let’s say you’re a really good engineer and then people are saying, well, now you need to be good at sales, well, you may not be good at hand-to-hand sales, but you may be a really good writer.<br>现在，您的销售技能可能与传统领域不同。例如，假设你是一个非常优秀的工程师，然后人们说，好吧，现在你需要擅长销售，好吧，你可能不擅长手把手的销售，但你可能是一个非常好的作家。</p><p>And writing is a skill that can be learned much more easily than, say, in-person selling, and so you may just cultivate writing skills until you become a good online communicator and then use that for your sales.<br>写作是一种比面对面销售更容易学习的技能，因此您可以培养写作技巧，直到您成为一名优秀的在线沟通者，然后将其用于销售。</p><p>On the other hand, it could just be that you’re a good builder and you’re bad at writing and you don’t like communicating to mass audiences but you’re good one-on-one, so then you might use your sales skills for recruiting or for fundraising, which are more one-on-one kinds of endeavors.<br>另一方面，可能只是你是一个很好的建设者，你不擅长写作，你不喜欢与大众交流，但你擅长一对一，所以你可能会利用你的销售技巧进行招聘或筹款，这更像是一对一的努力。</p><p>This is pointing out that if you’re at the intersection of these two, don’t despair because you’re not going to be the best technologist and you’re not going to be the best salesperson, but in a weird way, that combination, back to the Scott Adams skill stack, that combination of two skills is unstoppable.<br>这是在指出，如果你处于这两者的交叉点，不要绝望，因为你不会成为最好的技术专家，你也不会成为最好的销售人员，但以一种奇怪的方式，这种组合，回到斯科特·亚当斯的技能堆栈，这两种技能的结合是不可阻挡的。</p><p>Long term, people who understand the underlying product and how to build it and can sell it, these are catnip to investors, these people can break down walls if they have enough energy, and they can get almost anything done.<br>从长远来看，那些了解底层产品以及如何构建它并可以出售它的人，这些人对投资者来说是猫薄荷，这些人如果有足够的精力就可以打破壁垒，他们几乎可以完成任何事情。</p><p><strong>Nivi:</strong> If you could only pick one to be good at, which one would you pick?<br>Nivi：如果你只能选一个擅长的，你会选哪一个？</p><p><strong>Naval:</strong> When you’re trying to stand out from the noise building is actually better because there’re so many hustlers and sales people who have nothing to back them up. When you’re starting out, when you’re trying to be recognized, building is better.<br>Naval：当你试图从噪音中脱颖而出时，建筑实际上会更好，因为有太多的骗子和销售人员没有任何东西可以支持他们。当你刚起步时，当你试图被认可时，建筑会更好。</p><p>But much later down the line building gets exhausting because it is a focus job and it’s hard to stay current because there’s always new people, new products coming up who have newer tools, and frankly more time because it’s very intense, it’s a very focused task.<br>但是很久以后，构建变得筋疲力尽，因为这是一项专注的工作，很难保持最新状态，因为总是有新的人，新产品出现，他们有更新的工具，坦率地说，更多的时间，因为它非常紧张，这是一项非常专注的任务。</p><p>So, sales skills actually scale better over time. Like for example, if you have a reputation for building a great product, that’s good, but when you ship your new product, I’m going to validate it based on the product. But if you have a reputation for being a good person to do business with and you’re persuasive and communicative then that reputation almost becomes self-fulfilling.<br>因此，随着时间的推移，销售技巧实际上可以更好地扩展。例如，如果你以构建一个伟大的产品而闻名，那很好，但是当你发布你的新产品时，我将根据产品来验证它。但是，如果你有一个好人做生意的名声，而且你很有说服力和沟通能力，那么这个名声几乎就变成了自我实现。</p><p>So, I think if you only had to pick up one, you can start with building and then transition to selling. This is a cop-out answer, but I think that is actually the right answer.<br>所以，我认为如果你只需要拿起一个，你可以从建造开始，然后过渡到销售。这是一个逃避的答案，但我认为这实际上是正确的答案。</p><h2 id="Read-What-You-Love-Until-You-Love-to-Read-读你喜欢的，直到你爱读"><a href="#Read-What-You-Love-Until-You-Love-to-Read-读你喜欢的，直到你爱读" class="headerlink" title="Read What You Love Until You Love to Read 读你喜欢的，直到你爱读"></a>Read What You Love Until You Love to Read 读你喜欢的，直到你爱读</h2><p><em>You should be able to pick up any book in the library and read it<br>您应该能够在图书馆拿起任何一本书并阅读它</em></p><p><strong>Read what you love until you love to read<br>阅读你喜欢的东西，直到你喜欢阅读</strong></p><p><strong>Nivi:</strong> Before we go and talk about accountability and leverage and judgment, you’ve got a few tweets further down the line that I would put in the category of continuous learning.<br>Nivi：在我们开始讨论问责制、杠杆和判断力之前，你有几条推文，我会把它们归入持续学习的范畴。</p><p>They’re essentially, “there is no skill called business. Avoid business magazines and business class, study microeconomics, game theory, psychology, persuasion, ethics, mathematics and computers.”<br>他们本质上是，“没有一种技能叫做商业。避免商业杂志和商务课程，学习微观经济学、博弈论、心理学、说服学、伦理学、数学和计算机。</p><p>There’s one other comment that you made in a Periscope that was, “you should be able to pick up any book in the library and read it.” And the last tweet in this category was, “reading is faster than listening, doing is faster than watching.”<br>你在潜望镜中还有一条评论是，“你应该能够拿起图书馆里的任何一本书并阅读它。这个类别的最后一条推文是，“阅读比听快，做比看快。</p><p><strong>Naval:</strong> Yeah, the most important tweet on this, I don’t even have in here unfortunately, which is, the foundation of learning is reading. I don’t know a smart person who doesn’t read and read all the time.<br>Naval：是的，关于这个最重要的推文，不幸的是，我什至没有在这里，那就是，学习的基础是阅读。我不认识一个聪明的人，他不会一直阅读和阅读。</p><p>And the problem is, what do I read? How do I read? Because for most people it’s a struggle, it’s a chore. So, the most important thing is just to learn how to educate yourself and the way to educate yourself is to develop a love for reading.<br>问题是，我读什么？我该如何阅读？因为对大多数人来说，这是一场斗争，这是一件苦差事。所以，最重要的是学会如何教育自己，而教育自己的方法是培养对阅读的热爱。</p><p>So, the tweet that is left out, the one that I was hinting at is, “read what you love until you love to read.” It’s that simple.<br>所以，被遗漏的推文，我暗示的那条是，“阅读你喜欢的东西，直到你喜欢阅读。就是这么简单。</p><p>Everybody I know who reads a lot loves to read, and they love to read because they read books that they loved. It’s a little bit of a catch-22, but you basically want to start off just reading wherever you are and then keep building up from there until reading becomes a habit. And then eventually, you will just get bored of the simple stuff.<br>我认识的每个人都喜欢读书，他们喜欢读书，因为他们读了他们喜欢的书。这有点像第22条军规，但你基本上想从阅读开始，无论你身在何处，然后从那里继续积累，直到阅读成为一种习惯。然后最终，你会对简单的东西感到厌倦。</p><p>So you may start off reading fiction, then you might graduate to science fiction, then you may graduate to non-fiction, then you may graduate to science, or philosophy, or mathematics or whatever it is, but take your natural path and just read the things that interest you until you kind of understand them. And then you’ll naturally move to the next thing and the next thing and the next thing.<br>所以你可以从读小说开始，然后你可能会读科幻小说，然后你可能会读非小说，然后你可能会读科学、哲学、数学或其他什么，但要走你的自然道路，只读你感兴趣的东西，直到你理解它们。然后你会自然而然地转向下一件事，下一件事，下一件事。</p><p><strong>Read the original scientific books in a field<br>阅读某个领域的原始科学书籍</strong></p><p>Now, there is an exception to this, which is where I was hinting with what things you actually do want to learn, which is, at some point there’s too much out there to read. Even reading is full of junk.<br>现在，有一个例外，这就是我暗示你真正想学习的东西的地方，那就是，在某些时候，有太多的东西需要阅读。就连读书也充满了垃圾。</p><p>There are actually things you can read, especially early on, that will program your brain a certain way, and then later things that you read, you will decide whether those things are true or false based on the earlier things.<br>实际上，有些东西你可以读，尤其是早期，它会以某种方式对你的大脑进行编程，然后你读的东西以后，你会根据前面的东西来决定这些东西是真是假。</p><p>So, it is important that you read foundational things. And foundational things, I would say, are the original books in a given field that are very scientific in their nature.<br>因此，阅读基础知识很重要。我想说，基础的东西是特定领域的原创书籍，这些书籍本质上是非常科学的。</p><p>For example, instead of reading a business book, pick up Adam Smith’s The Wealth of Nations. Instead of reading a book on biology or evolution that’s written today, I would pick up Darwin’s Origin of the Species. Instead of reading a book on biotech right now that may be very advanced, I would just pick up The Eighth Day of Creation by Watson and Crick. Instead of reading advanced books on what cosmology and what Neil Degrasse Tyson and Stephen Hawking have been saying, you can pick up Richard Feynman’s Six Easy Pieces and start with basic physics.<br>例如，与其阅读商业书籍，不如拿起亚当·斯密的《国富论》。与其读一本今天写的关于生物学或进化论的书，我宁愿拿起达尔文的《物种起源》。与其读一本关于生物技术的书，那可能非常先进，我宁愿拿起沃森和克里克的《创造的第八天》。与其阅读关于宇宙学以及尼尔·德格拉斯·泰森和斯蒂芬·霍金一直在说的话的高级书籍，不如拿起理查德·费曼的《六件简单曲》，从基础物理学开始。</p><p><strong>Don’t fear any book 不要害怕任何一本书</strong></p><p>If you understand the basics, especially in mathematics and physics and sciences, then you will not be afraid of any book. All of us have that memory of when we were sitting in class and we’re learning mathematics, and it was all logical and all made sense until at one point the class moved too fast and we fell behind.<br>如果你了解基础知识，尤其是数学、物理和科学，那么你就不会害怕任何一本书。我们所有人都记得我们坐在课堂上学习数学的时候，这一切都是合乎逻辑的，一切都是有道理的，直到有一次班级走得太快，我们落后了。</p><p>Then after that we were left memorizing equations, memorizing concepts without being able to derive them from first principles. And at that moment, we’re lost, because unless you’re a professional mathematician, you’re not going to remember those things. All you’re going to remember are the techniques, the foundations.<br>在那之后，我们只能背诵方程式，背诵概念，却无法从第一性原理中推导出来它们。在那一刻，我们迷失了，因为除非你是一个专业的数学家，否则你不会记住这些事情。你要记住的只是技术，基础。</p><p>So, you have to make sure that you’re building on a steel frame of understanding because you’re putting together a foundation for skyscraper, and you’re not just memorizing things because you’re just memorizing things you’re lost. So the foundations are ultra important.<br>所以，你必须确保你建立在理解的钢架上，因为你正在为摩天大楼奠定基础，你不仅仅是记住东西，因为你只是在记住你失去的东西。因此，基础非常重要。</p><p>And the ultimate, the ultimate is when you walk into a library and you look at it up and down and you don’t fear any book. You know that you can take any book off the shelf, you can read it, you can understand it, you can absorb what is true, you can reject what is false, and you have a basis for even working that out that is logical and scientific and not purely just based on opinions.<br>终极，终极是当你走进图书馆，你上下打量它，你不怕任何书。你知道你可以把任何一本书从书架上拿下来，你可以阅读它，你可以理解它，你可以吸收什么是真实的，你可以拒绝什么是虚假的，你甚至有一个基础来解决这个问题，这是合乎逻辑的和科学的，而不仅仅是基于意见。</p><p><strong>The means of learning are abundant; the desire to learn is scarce<br>学习手段丰富;学习的欲望是稀缺的</strong></p><p>The beauty of the internet is the entire library of Alexandria times 10 is at your fingertips at all times. It’s not the means of education or the means of learning are scarce, the means of learning are abundant. It’s the desire to learn that’s scarce. So, you really have to cultivate the desire.<br>互联网的美妙之处在于整个亚历山大乘以 10 的图书馆随时触手可及。不是教育手段或学习手段稀缺，而是学习手段丰富。学习的欲望是稀缺的。所以，你真的要培养欲望。</p><p>And it’s not even cultivating you’ve to not lose it. Children have a natural curiosity. If you go to a young child who’s first learning language, they’re pretty much always asking: What’s this? What’s that? Why is this? Who’s that? They’re always asking questions.<br>它甚至不是修炼，你必须不失去它。孩子们有天生的好奇心。如果你去找一个刚开始学习语言的孩子，他们几乎总是会问：这是什么？什么？为什么会这样？那是谁？他们总是在问问题。</p><p>But one of the problems is that schools and our educational system, and even our way of raising children replaces curiosity with compliance. And once you replace the curiosity with the compliance, you get an obedient factory worker, but you no longer get a creative thinker. And you need creativity, you need the ability to feed your own brain to learn whatever you want.<br>但问题之一是，学校和我们的教育体系，甚至我们养育孩子的方式，都用顺从取代了好奇心。一旦你用顺从取代了好奇心，你就会得到一个听话的工厂工人，但你不再得到一个创造性的思想家。你需要创造力，你需要有能力养活自己的大脑来学习任何你想学的东西。</p><h2 id="The-Foundations-Are-Math-and-Logic-基础是数学和逻辑"><a href="#The-Foundations-Are-Math-and-Logic-基础是数学和逻辑" class="headerlink" title="The Foundations Are Math and Logic 基础是数学和逻辑"></a>The Foundations Are Math and Logic 基础是数学和逻辑</h2><p><em>Mathematics and logic are the basis for understanding everything else<br>数学和逻辑是理解其他一切的基础</em></p><p><strong>The ultimate foundations are math and logic<br>最终的基础是数学和逻辑</strong></p><p><strong>Naval:</strong> Foundational things are principles, they’re algorithms, they’re deep seated logical understanding where you can defend it or attack it from any angle. And that’s why microeconomics is important because macroeconomics is a lot of memorization, a lot of macro bullshit.<br>Naval：基础的东西是原则，它们是算法，它们是根深蒂固的逻辑理解，你可以从任何角度捍卫它或攻击它。这就是为什么微观经济学很重要，因为宏观经济学是很多记忆，很多宏观废话。</p><p>As Nassim Taleb says, it is easier to macro bullshit than it is the micro bullshit. Because macroeconomics is voodoo-complex-science meets politics. You can’t find two macroeconomists to agree on anything these days, and different macroeconomists get used by different politicians to peddle their different pet theories.<br>正如纳西姆·塔勒布（Nassim Taleb）所说，宏观废话比微观废话更容易。因为宏观经济学是巫毒教——情结——科学与政治相遇。如今，你找不到两个宏观经济学家在任何事情上达成一致，不同的宏观经济学家被不同的政客用来兜售他们不同的宠物理论。</p><p>There are even macroeconomists out there now peddling something called Modern Monetary Theory which basically says, hey, except for this pesky thing called inflation, we can just print all the money that we want. Yes, except for this pesky thing called inflation. That’s like saying, except for limited energy, we can fire rockets off into space all day long.<br>现在甚至有宏观经济学家在兜售一种叫做现代货币理论的东西，它基本上是说，嘿，除了这个讨厌的东西叫做通货膨胀，我们可以印出我们想要的所有钱。是的，除了这个讨厌的东西叫做通货膨胀。这就像说，除了有限的能量，我们可以整天向太空发射火箭。</p><p>It’s just nonsense, but the fact that there are people who have “macroeconomist” in their title and are peddling Modern Monetary Theory just tells you that macroeconomics as a so-called science has been corrupted. It’s now a branch of politics.<br>这只是无稽之谈，但有些人的标题中带有“宏观经济学家”并兜售现代货币理论的事实只是告诉你，宏观经济学作为一门所谓的科学已经被破坏了。它现在是政治的一个分支。</p><p>So, you really want to focus on the foundations. The ultimate foundation are mathematics and logic. If you understand logic and mathematics, then you have the basis for understanding the scientific method. Once you understand the scientific method, then you can understand how to separate truth from falsehood in other fields and other things that you’re reading.<br>所以，你真的想把重点放在基础上。最终的基础是数学和逻辑。如果你懂逻辑和数学，那么你就有了理解科学方法的基础。一旦你理解了科学方法，那么你就可以理解如何在其他领域和你正在阅读的其他事情中区分真理和谬误。</p><p><strong>It’s</strong> <strong>better to read a great book slowly than to fly through a hundred books quickly</strong><br>慢慢读一本好书，总比快速读完一百本书要好</p><p>So, be very careful about reading other people’s opinions and even be careful when reading facts because so-called facts are often just opinions with a veneer [of pseudoscience] around them.<br>所以，在阅读别人的意见时要非常小心，甚至在阅读事实时也要小心，因为所谓的事实往往只是带有[伪科学]外衣的观点。</p><p>What you are really looking for are algorithms. What you are really looking for is understanding. It’s better to go through a book really slowly and struggle and stumble and rewind, than it is to fly through it quickly and say, “Well, now I’ve read 20 books, I’ve read 30 books, I’ve read 50 books in the field.”<br>你真正在寻找的是算法。你真正在寻找的是理解。最好是慢慢地读完一本书，挣扎、跌跌撞撞、倒带，而不是快速地读完它，然后说：“好吧，现在我已经读了20本书，我已经读了30本书，我已经读了50本书。</p><p>It’s like Bruce Lee said, “I don’t fear the man who knows a thousand kicks and a thousand punches, I fear the man who’s practiced one punch ten thousand times or one kick ten thousand times.” It’s that understanding that comes through repetition and through usage and through logic and foundations that really makes you a smart thinker.<br>就像李小龙说的，“我不怕懂一千脚千拳的人，我怕练过一拳一万次或一脚一万次的人。正是这种通过重复、使用、逻辑和基础而产生的理解，真正使你成为一个聪明的思考者。</p><p><strong>Learn persuasion and programming<br>学习说服和编程</strong></p><p><strong>Nivi:</strong> To lay a foundation for learning for the rest of your life I think you need two things, if I was going to try and sum it up. One, practical persuasion and two, you need to go deep in some technical category, whether it’s abstract math, or you want to read Donald Knuth’s books on algorithms, or you want to read Feynman’s lectures on physics.<br>Nivi：为了给你的余生的学习打下基础，我认为你需要两件事，如果我要试着总结的话。一是实用说服，二是你需要深入研究某个技术范畴，无论是抽象数学，还是想读唐纳德·克努斯（Donald Knuth）关于算法的书，或者你想读费曼（Feynman）的物理学讲座。</p><p>If you have practical persuasion and a deep understanding of some complex topic, I think you’ll have a great foundation for learning for the rest of your life.<br>如果你有实际的说服力和对一些复杂话题的深刻理解，我认为你将为余生的学习打下坚实的基础。</p><p><strong>Naval:</strong> Yeah. In fact let me expand that a little bit. I would say that the five most important skills are of course, reading, writing, arithmetic, and then as you’re adding in, persuasion, which is talking. And then finally, I would add computer programming just because it’s an applied form of arithmetic that just gets you so much leverage for free in any domain that you operate in.<br>Naval：是的。事实上，让我稍微扩展一下。我想说的是，最重要的五项技能当然是阅读、写作、算术，然后当你加入时，说服力，也就是说话。最后，我要加上计算机编程，因为它是一种应用形式的算术，可以让你在你经营的任何领域免费获得如此多的杠杆作用。</p><p>If you’re good with computers, if you’re good at basic mathematics, if you’re good at writing, if you’re good at speaking, and if you like reading, you’re set for life.<br>如果你擅长计算机，如果你擅长基础数学，如果你擅长写作，如果你擅长口语，如果你喜欢阅读，你就注定要终生受益。</p><h2 id="There’s-No-Actual-Skill-Called-‘Business’-没有所谓的“商业”实际技能"><a href="#There’s-No-Actual-Skill-Called-‘Business’-没有所谓的“商业”实际技能" class="headerlink" title="There’s No Actual Skill Called ‘Business’ 没有所谓的“商业”实际技能"></a>There’s No Actual Skill Called ‘Business’ 没有所谓的“商业”实际技能</h2><p><em>Avoid business schools and magazines<br>避开商学院和杂志</em></p><p><strong>There’s no actual skill called ‘business’<br>没有所谓的“商业”实际技能</strong></p><p><strong>Naval:</strong> In that sense, business to me is bottom of the barrel. There’s no actual skill called business, it’s too generic. It’s like a skill called “relating.” Like “relating to humans.” That’s not a skill, it’s too broad.<br>Naval：从这个意义上说，对我来说，生意是桶底。没有实际的技能叫做商业，它太笼统了。这就像一种叫做“关系”的技能。就像“与人类有关”。这不是一项技能，它太宽泛了。</p><p>A lot of what goes on in business schools, and there is some very intelligent stuff taught in business schools – I don’t mean to detract from them completely – some of the things taught in business school are just anecdotes. They call them “case studies.”<br>商学院里发生的很多事情，商学院教授的一些非常聪明的东西——我并不是要完全贬低它们——商学院教授的一些东西只是轶事。他们称它们为“案例研究”。</p><p>But they’re just anecdotes, and they’re trying to help you pattern match by throwing lots of data points at you, but the reality is, you will never understand them fully until you’re actually in that position yourself.<br>但它们只是轶事，它们试图通过向你抛出大量数据点来帮助你进行模式匹配，但现实是，除非你自己真正处于那个位置，否则你永远不会完全理解它们。</p><p>Even then you will find that basic concepts from game theory, psychology, ethics, mathematics, computers, and logic will serve you much, much better.<br>即便如此，你也会发现博弈论、心理学、伦理学、数学、计算机和逻辑学的基本概念会为你提供更好的服务。</p><p>I would focus on the foundations, I would focus with a science bent. I would develop a love for reading, including by reading so-called junk food that you’re not supposed to read. You don’t have to read the classics. That [reading] is the foundation for your self-education.<br>我会专注于基础，我会专注于科学。我会培养对阅读的热爱，包括阅读你不应该阅读的所谓垃圾食品。你不必阅读经典。这[阅读]是你自我教育的基础。</p><p><strong>Doing is faster than watching<br>做比看快</strong></p><p><strong>Nivi:</strong> What did you mean when you said that “doing is faster than watching?”<br>Nivi：你说“做比看快”是什么意思？</p><p><strong>Naval:</strong> When it comes to your learning curve, if you want to optimize your learning curve… One of the reasons why I don’t love podcasts, even though I’m a generator of podcasts, is that I like to consume my information very quickly.<br>Naval：说到你的学习曲线，如果你想优化你的学习曲线……我不喜欢播客的原因之一，即使我是播客的生成者，也是我喜欢非常快速地消费我的信息。</p><p>And I’m a good reader, or a fast reader and I can read very fast but I can only listen at a certain speed. I know people listen at 2x, 3x, but everyone sounds like a chipmunk and it’s hard to go back, it’s hard to highlight, it’s hard to pinpoint snippets and save them in your notebook, and so on.<br>我是一个很好的读者，或者说是一个快速的读者，我可以读得很快，但我只能以一定的速度听。我知道人们以 2 倍、3 倍的速度收听，但每个人听起来都像花栗鼠，很难回头，很难突出显示，很难确定片段并将它们保存在笔记本中，等等。</p><p>Similarly, a lot of people think they can become really skilled at something by watching others do it, or even by reading about others doing it. And going back to the business school case study, that’s a classic example.<br>同样，很多人认为他们可以通过观察别人做某事，甚至通过阅读别人做某事来变得非常熟练。回到商学院的案例研究，这是一个典型的例子。</p><p>They study other people’s businesses, but in reality, you’re going to learn a lot more about running a business by operating your own lemonade stand or equivalent. Or even opening a little retail store down the street.<br>他们研究别人的生意，但实际上，您将通过经营自己的柠檬水摊或同等产品来了解更多关于经营企业的知识。甚至在街边开一家小零售店。</p><p>That is how you’re going to learn on the job because a lot of the subtleties don’t express themselves until you’re actually in the business.<br>这就是你在工作中学习的方式，因为很多微妙之处在你真正进入这个行业之前不会表现出来。</p><p>For example, everyone’s into mental models these days. You go to Farnam Street, you go to Poor Charlie’s Almanack, and you can learn all the different mental models. But which ones matter more? Which ones do you apply more often? Which ones matter in which circumstances? That’s actually the hard part.<br>例如，现在每个人都喜欢心智模型。你去法南街，你去《可怜的查理年鉴》，你可以学习所有不同的心智模型。但哪些更重要？您更频繁地使用哪些？哪些在什么情况下很重要？这实际上是最困难的部分。</p><p>For example, my personal learning has been that the principal-agent problem drives so much in this world. It’s an incentives problem. I’ve learned that tit-for-tat iterated prisoner’s dilemma is the piece of game theory that is worth knowing the most. You can almost put down the game theory book after that.<br>例如，我个人的学习是，委托代理问题在这个世界上驱动着如此多的东西。这是一个激励问题。我了解到，针锋相对的囚徒困境是最值得了解的博弈论。在那之后，你几乎可以放下博弈论的书了。</p><p>By the way, the best way to learn game theory is to play lots of games. I never even read game theory books. I consider myself extremely good at game theory. I’ve never opened up a game theory book and found a result in there where I didn’t think, “Oh, yeah, that’s common sense to me.”<br>顺便说一句，学习博弈论的最好方法是玩很多游戏。我什至从未读过博弈论书籍。我认为自己非常擅长博弈论。我从来没有打开一本博弈论的书，在那里找到一个结果，我没有想过，“哦，是的，这对我来说是常识。</p><p>The reason is that I grew up playing all kinds of games and I ran into all kinds of corner cases with all kinds of friends, and so it’s just second nature to me. You can always learn better by doing it on the job.<br>原因是我从小玩各种游戏长大，我和各种各样的朋友一起遇到了各种极端情况，所以这对我来说只是第二天性。通过在工作中这样做，你总是可以更好地学习。</p><p><strong>The number of ‘doing’ iterations drives the learning curve<br>“做”迭代的次数推动了学习曲线</strong></p><p>But doing is a subtle thing. Doing encapsulates a lot. For example, let’s say, I want to learn how to run a business. Well, if I start a business where I go in every day and I’m doing the same thing, let’s say I’m running a retail store down the street where I’m stocking the shelves with food and liquor every single day, I’m not going to learn that much because I’m repeating things a lot.<br>但做是一件微妙的事情。做包含很多东西。例如，假设我想学习如何经营一家企业。好吧，如果我开始做一家公司，我每天都在做同样的事情，假设我在街上经营一家零售店，我每天都在货架上摆放食物和酒，我不会学到那么多东西，因为我经常重复事情。</p><p>So, I’m putting in thousands of hours, but they are thousands of hours doing the same thing. Whereas if I was putting in thousands of iterations, that would be different. So, the learning curve is across iterations [not iterations].<br>所以，我投入了数千小时，但他们却在做同样的事情。然而，如果我投入数千次迭代，情况会有所不同。因此，学习曲线是跨迭代的 [而不是迭代]。</p><p>So if I was trying new marketing experiments in the store all the time, I was constantly changing up the inventory, I was constantly changing up the branding and the messaging, I was constantly changing the sign, I was constantly changing the online channels that are used to drive foot traffic in, I was experimenting with being open at different hours, I had the ability to walk around and talk to other store owners and getting their books and figure out how they run their businesses.<br>因此，如果我一直在商店里尝试新的营销实验，我不断地改变库存，我不断地改变品牌和信息，我不断地改变标志，我不断地改变用于吸引客流量的在线渠道，我正在尝试在不同的时间营业， 我有能力四处走动，与其他店主交谈，拿到他们的书，弄清楚他们是如何经营生意的。</p><p>It’s the number of iterations that drives the learning curve. So, the more iterations you can have, the more shots on goal you can have, the faster you’re going to learn. It’s not just about the hours put in.<br>迭代次数是推动学习曲线的动力。所以，你可以拥有的迭代次数越多，你的射门次数就越多，你学习的速度就越快。这不仅仅是投入的时间。</p><p><strong>If you’re willing to bleed a little every day, you may win big later<br>如果你愿意每天流一点血，你以后可能会赢大钱</strong></p><p>It’s actually a combination of the two, but I think just the way we’re built and the way that the world presents itself, the world offers us very easily the opportunity to do the same thing over and over and over again. But really, we’d be better served if we went off and found ways to do new things from scratch.<br>这实际上是两者的结合，但我认为，就像我们的构建方式和世界呈现方式一样，世界很容易为我们提供机会，让我们一遍又一遍地做同样的事情。但实际上，如果我们走出去，找到从头开始做新事情的方法，我们会得到更好的服务。</p><p>And doing something new the first time is painful, because you’re wandering into uncertain territory and high odds are that you will fail. So you just have to get very, very comfortable with frequent small failures.<br>第一次做一些新的事情是痛苦的，因为你正在徘徊在不确定的领域，而且你很可能会失败。因此，您只需要对频繁的小故障感到非常非常满意。</p><p>Nassim Taleb talks about this also. He made his fortune, his wealth by being a trader who basically relied upon black swans. Nassim Taleb made money by losing little bits of money every day and then once in a blue moon he would make a lot of money when the unthinkable happened for other people.<br>纳西姆·塔勒布（Nassim Taleb）也谈到了这一点。他通过做一个基本上依赖黑天鹅的商人来发家致富。纳西姆·塔勒布（Nassim Taleb）通过每天损失一点点钱来赚钱，然后在蓝月亮中，当其他人发生不可想象的事情时，他会赚很多钱。</p><p>Whereas most people want to make little bits of money every day and in exchange they’ll tolerate lots of blow-up risk, they’ll tolerate going completely bankrupt.<br>虽然大多数人都想每天赚一点钱，作为交换，他们会忍受大量的爆炸风险，但他们会容忍完全破产。</p><p>We’re not evolved to bleed a little bit every day. If you’re out in the natural environment, and you get a cut and you’re literally bleeding a little bit every day, you will eventually die. You’ll have to stop that cut.<br>我们没有进化到每天流一点血。如果你在自然环境中，你被割伤了，你每天都在流血，你最终会死。你必须停止这种削减。</p><p>We’re evolved for small victories all the time but that becomes very expensive. That’s where the crowd is. That’s where the herd is. So, if you’re willing to bleed a little bit every day but in exchange you’ll win big later, you will do better.<br>我们一直在为小的胜利而进化，但这变得非常昂贵。这就是人群所在的地方。这就是牛群所在的地方。所以，如果你愿意每天流一点血，但作为交换，你以后会赢得大奖，你会做得更好。</p><p>That is, by the way, entrepreneurship. Entrepreneurs bleed every day.<br>顺便说一句，那就是企业家精神。企业家每天都在流血。</p><p>They’re not making money, they’re losing money, they’re constantly stressed out, all the responsibility is upon them, but when they win they win big. On average they’ll make more.<br>他们没有赚钱，他们在赔钱，他们不断地感到压力，所有的责任都落在他们身上，但当他们赢了，他们就会赢得大奖。平均而言，他们会赚得更多。</p><h2 id="Embrace-Accountability-to-Get-Leverage-拥抱问责制以获得影响力"><a href="#Embrace-Accountability-to-Get-Leverage-拥抱问责制以获得影响力" class="headerlink" title="Embrace Accountability to Get Leverage 拥抱问责制以获得影响力"></a>Embrace Accountability to Get Leverage 拥抱问责制以获得影响力</h2><p><em>Take risks under your own name and society will reward you with leverage<br>以自己的名义承担风险，社会会用杠杆回报你</em></p><p><strong>You need accountability to get leverage<br>你需要问责制才能获得影响力</strong></p><p><strong>Nivi:</strong> Why don’t we jump into accountability, which I thought was pretty interesting and I think you have your own unique take on it. So the first tweet on accountability was, “Embrace accountability and take business risks under your own name. Society will reward you with responsibility, equity, and leverage.”<br>Nivi：我们为什么不开始问责，我认为这很有趣，我认为你有自己独特的看法。因此，关于问责制的第一条推文是，“拥抱问责制，以自己的名义承担商业风险。社会会以责任、公平和杠杆来奖励你。</p><p><strong>Naval:</strong> Yeah. So to get rich, you’re going to need leverage. Leverage comes in labor, comes in capital, or it can come through code or media. But most of these, like labor and capital, people have to give to you. For labor, somebody has to follow you. For capital, somebody has to give you money or assets to manage or machines.<br>Naval：是的。所以要想致富，你需要杠杆。杠杆来自劳动力，来自资本，也可以通过代码或媒体。但其中大部分，比如劳动力和资本，人们必须给你。对于劳动，必须有人跟着你。对于资本，必须有人给你钱或资产来管理或机器。</p><p>So to get these things, you have to build up credibility and you have to do those under your own name as much as possible, which is risky. So accountability is a double-edged thing. It allows you to take credit when things go well and to bear the brunt of the failure when things go badly.<br>所以要得到这些东西，你必须建立信誉，你必须尽可能多地以自己的名义做这些事情，这是有风险的。因此，问责制是一把双刃剑。它可以让你在事情进展顺利时获得荣誉，并在事情进展不顺利时首当其冲地承受失败的冲击。</p><p><strong>Take business risks under your own name<br>以自己的名义承担商业风险</strong></p><p>So in that sense, people who are stamping their names on things aren’t foolish. They’re just confident. Maybe it turns out to be foolish in the end, but if you look at a Kanye or an Oprah or a Trump or an Elon or anyone like that, these people can get rich just off their name because their name is such powerful branding.<br>所以从这个意义上说，那些在事物上印上自己名字的人并不愚蠢。他们只是很自信。也许最终被证明是愚蠢的，但如果你看看侃爷、奥普拉、特朗普、埃隆或类似的人，这些人可以仅仅因为他们的名字而致富，因为他们的名字是如此强大的品牌。</p><p>Regardless of what you think of Trump, you have to realize that the guy was among the best in the world at just branding his name. Why would you go to Trump Casino? Used to be because Trump. Why would you go to a Trump tower? Because of Trump.<br>不管你对特朗普有什么看法，你都必须意识到，这个家伙是世界上最好的人之一。你为什么要去特朗普赌场？曾经是因为特朗普。你为什么要去特朗普大厦？因为特朗普。</p><p>When it came time to vote, I think that a lot of voters just went in and said, “Trump.” They recognize the name, so the name recognition paid off.<br>到了投票的时候，我想很多选民只是进去说，“特朗普。他们认出了这个名字，所以这个名字的认可得到了回报。</p><p>Same thing with Oprah. She puts her brand on something, her name on something and it flies off the shelves, and it’s like an instant validator.<br>奥普拉也是如此。她把她的品牌放在某样东西上，把她的名字放在某样东西上，然后它就从货架上飞走了，它就像一个即时的验证者。</p><p>These people also take risks for putting their name out there. Obviously Trump is now probably hated by half or more than half of the country and by a big chunk of the world as he sticks his name out there.<br>这些人也冒着风险把自己的名字放在那里。显然，特朗普现在可能被一半或一半以上的国家和世界上很大一部分人所憎恨，因为他把自己的名字贴在那里。</p><p>By putting your name out there, you become a celebrity, and fame has many, many downsides. It’s better to be anonymous and rich than to be poor and famous, but even famous and rich has a lot of downsides associated with it. You’re always in the public eye.<br>把你的名字放在那里，你就会成为名人，而名声有很多很多的缺点。匿名和富有比贫穷和出名要好，但即使是有名和有钱也有很多与之相关的缺点。你总是在公众的视线中。</p><p><strong>A well-functioning team has clear accountability for each position<br>一个运作良好的团队对每个职位都有明确的责任</strong></p><p>Accountability is quite important, and when you’re working to build a product or you’re working in a team or you’re working in a business, we constantly have drummed into our heads how important it is to be part of a team. Absolutely agree with that.<br>问责制非常重要，当你在努力构建产品时，或者你在团队中工作，或者你在企业中工作时，我们不断地在脑海中灌输成为团队一员的重要性。绝对同意这一点。</p><p>A lot of our training socially is telling us to not stick our necks out of the crowd. There’s a saying that I hear from our Australian friends that the tall poppy gets cut. Don’t stick your neck out, but I would say that actually a really, really well-functioning team is small and has clear accountability for each of the different portions.<br>我们的很多社交训练都告诉我们不要把脖子伸到人群中。我从澳大利亚朋友那里听到一种说法，高大的罂粟花被砍掉了。不要伸出脖子，但我想说的是，实际上一个非常非常运作良好的团队很小，并且对每个不同的部分都有明确的责任。</p><p>You can say, “Okay, this person’s responsible for building the product. This person’s responsible for the messaging. This person’s responsible for raising money. This person’s responsible for the pricing strategy and maybe the online advertising.” So if somebody screws up, you know exactly who’s responsible. While at the same time if something goes really well, you also know exactly who’s responsible.<br>你可以说，“好吧，这个人负责构建产品。此人负责消息传递。此人负责筹集资金。这个人负责定价策略，也许还负责在线广告。因此，如果有人搞砸了，你确切地知道谁应该负责。同时，如果事情进展顺利，你也确切地知道谁负责。</p><p>If you have a small team and you have clearly delineated responsibilities, then you can still keep a very high level of accountability. Accountability is really important because when something succeeds or fails, if it fails, everybody points fingers at each other, and if it succeeds, everybody steps forward to take credit.<br>如果你有一个小团队，并且你有明确的责任划分，那么你仍然可以保持非常高的问责制。问责制真的很重要，因为当某件事成功或失败时，如果失败了，每个人都会互相指责，如果成功了，每个人都会挺身而出，获得荣誉。</p><p>We’ve all had that experience when we were in school and we got a group assignment to do. There were probably a few people in there who did a lot of the work. Then there are a few people who just did a lot of grandstanding or positioning to do the work. We’re all familiar with this from a childhood sense, but it’s sort of uncomfortable to talk about.<br>我们在学校的时候都有过这样的经历，我们有一个小组作业要做。那里可能有几个人做了很多工作。然后有一些人只是做了很多哗众取宠或定位来做这项工作。我们从童年的感觉中都熟悉这一点，但谈论起来有点不舒服。</p><p><strong>People who can fail in public have a lot of power<br>可以在公共场合失败的人拥有很大的权力</strong></p><p>Clear accountability is important. Without accountability, you don’t have incentives. Without accountability, you can’t build credibility. But you take risk. You take risk of failure. You take risk of humiliation. You take risk of failure under your own name.<br>明确的问责制很重要。没有问责制，你就没有激励措施。没有问责制，你就无法建立信誉。但你要冒险。你冒着失败的风险。你冒着被羞辱的风险。您以自己的名义承担失败的风险。</p><p>Luckily in modern society, there’s no more debtors’ prison and people don’t go to jail or get executed for losing other people’s money, but we’re still socially hard wired to not fail in public under our own names. The people who have the ability to fail in public under their own names actually gain a lot of power .<br>幸运的是，在现代社会中，不再有债务人的监狱，人们也不会因为失去别人的钱而入狱或被处决，但我们仍然在社会上硬生生地以自己的名义在公共场合失败。有能力以自己的名义在公共场合失败的人，实际上获得了很大的权力。</p><p>For example, I’ll give a personal anecdote. Up until about 2013, 2014, my public persona was an entirely around startups and investing. Only around 2014, 2015 did I start talking about philosophy and psychological things and broader things.<br>例如，我会给出一个个人轶事。直到 2013 年、2014 年左右，我的公众形象完全围绕着初创公司和投资。直到 2014 年、2015 年左右，我才开始谈论哲学、心理学和更广泛的事情。</p><p>It made me a little nervous because I was doing it under my own name. There were definitely people in the industry who sent me messages through the back channel like, “What are you doing? You’re ending your career. This is stupid.”<br>这让我有点紧张，因为我是以自己的名义做的。业内肯定有人通过后台渠道给我发信息，比如，“你在做什么？你正在结束你的职业生涯。这太愚蠢了。</p><p>I kind of just went with it. I took a risk. Same with crypto. Early on, I took a risk.<br>我有点顺其自然。我冒了风险。与加密货币相同。很早以前，我就冒了风险。</p><p>But when you put your name out there, you take a risk with certain things. You also get to reap the rewards. You get the benefits.<br>但是当你把你的名字放在那里时，你就要承担某些事情的风险。您还可以获得奖励。你得到了好处。</p><h2 id="Take-Accountability-to-Earn-Equity-承担责任以赢得公平"><a href="#Take-Accountability-to-Earn-Equity-承担责任以赢得公平" class="headerlink" title="Take Accountability to Earn Equity 承担责任以赢得公平"></a>Take Accountability to Earn Equity 承担责任以赢得公平</h2><p><em>If you have high accountability, you’re less replaceable<br>如果你有很高的责任感，你就不那么容易被取代</em></p><p><strong>Accountability is how you’re going to get equity<br>问责制是你获得公平的方式</strong></p><p><strong>Naval:</strong> Accountability is important because that’s how you’re going to get leverage. That’s how you’re going to get credibility. It’s also how you’re going to get equity. You’re going to get a piece of the business.<br>Naval：问责制很重要，因为这是你获得影响力的方式。这就是你获得信誉的方式。这也是你获得股权的方式。你会得到一份生意。</p><p>When you’re negotiating with other people, ultimately if someone else is making a decision about how to compensate you, that decision will be based on how replaceable you are. If you have high accountability, that makes you less replaceable. Then they have to give you equity, which is a piece of the upside.<br>当你与其他人谈判时，最终如果其他人正在决定如何补偿你，这个决定将基于你的可替代性。如果你有很高的责任感，那你就不那么容易被取代。然后他们必须给你股权，这是好处的一部分。</p><p><strong>Taking accountability is like taking equity in all your work<br>承担责任就像在你的所有工作中保持公平</strong></p><p>Equity itself is a good example because equity is also a risk-based instrument. Equity means you get paid everything after all the people who need guaranteed money are paid back.<br>股票本身就是一个很好的例子，因为股票也是一种基于风险的工具。公平意味着在所有需要保证资金的人都得到偿还后，你会得到一切报酬。</p><p>If you look at the hierarchy of capital in a company, the employees get paid first. They get paid the salary first. In legal [bankruptcy] proceedings, the salaries are sacrosanct. If you’re a board member and the company spends too much money and has back salaries to pay, the government can go after you personally to pay back the salaries. The employees get the most security, but in exchange for that security, they don’t have as much upside.<br>如果你看一下公司的资本等级制度，员工首先得到报酬。他们首先获得薪水。在法律[破产]程序中，工资是神圣不可侵犯的。如果你是董事会成员，而公司花了太多钱，而且有拖欠的工资，政府可以亲自追究你，要求你偿还工资。员工获得了最大的安全感，但作为安全感的交换，他们没有那么多的上升空间。</p><p>Next in line would be the debt holders who are maybe the bankers who lend money to the company for operations and they need to make their fixed coupon every month or every year, but they don’t get much more upside beyond that. They might be making 5, 10, 15, 20, 25% a year, but that’s what their upside is limited to.<br>接下来是债务持有人，他们可能是向公司借钱进行运营的银行家，他们需要每月或每年支付固定息票，但除此之外，他们并没有获得更多的上行空间。他们可能每年赚 5%、10%、15%、20%、25%，但这就是他们的上行空间。</p><p>Finally there are the equity holders. These people are actually going to get most of the upside. Once the debt holders are paid off and the salaries are paid off, whatever remains goes to them.<br>最后是股权持有人。这些人实际上将获得大部分好处。一旦还清了债务持有人，还清了工资，剩下的就归他们所有了。</p><p>But if there isn’t enough money to pay off the salaries and the debt holders, or if there’s just barely enough to pay off the salary and the debt holders, which is what happens with most businesses, most of the times, the equity holders get nothing.<br>但是，如果没有足够的钱来偿还工资和债务持有人，或者如果勉强够偿还工资和债务持有人，这是大多数企业发生的事情，大多数时候，股权持有人一无所获。</p><p>The equity holders take on greater risk, but in exchange, they get nearly unlimited upside. You can do the same with all of your work. Essentially, taking accountability for your actions is the same as taking an equity position in all of your work. You’re taking greater downside risk for greater upside.<br>股权持有人承担更大的风险，但作为交换，他们获得了几乎无限的上涨空间。你可以对你的所有工作做同样的事情。从本质上讲，对你的行为负责与在你的所有工作中采取公平立场是一样的。您正在承担更大的下行风险以获得更大的上行空间。</p><p>Realize that in modern society, the downside risk is not that large. Even personal bankruptcy can wipe the debts clean in good ecosystems. I’m most familiar with Silicon Valley, but generally people will forgive failures as long as you were honest and made a high integrity effort.<br>要知道，在现代社会，下行风险并没有那么大。即使是个人破产，也可以在良好的生态系统中清除债务。我最熟悉的是硅谷，但一般来说，只要你诚实并做出高度正直的努力，人们就会原谅失败。</p><p>There’s not really that much to fear in terms of failure, and so people should be taking on a lot more accountability than they actually are.<br>就失败而言，其实没有什么可担心的，所以人们应该承担比实际更多的责任。</p><p><strong>Nivi:</strong> Is accountability actually fragile or do you really just mean that we’re hardwired not to fail in public, so it just feels like it’s a fragile thing?<br>Nivi：问责制真的是脆弱的，还是你真的只是说我们天生就不能在公共场合失败，所以感觉这是一件脆弱的事情？</p><p><strong>Naval:</strong> I think it could actually be fragile. An example of accountability is you’re an airplane pilot. As a captain, you’re taking on accountability for the entire plane.<br>Naval：我认为它实际上可能很脆弱。问责制的一个例子是你是一名飞机飞行员。作为机长，你要对整架飞机负责。</p><p>Let’s say that something goes wrong with the aircraft. You can’t later blame it on anyone else. You can’t blame it on the steward or the stewardess. You can’t blame it on the copilot. You’re the captain. You’re responsible for the ship. If you screw up, you crash the ship, and there are immediate consequences.<br>假设飞机出了问题。你以后不能把它归咎于其他人。你不能把它归咎于管家或空姐。你不能把它归咎于副驾驶。你是队长。你要对这艘船负责。如果你搞砸了，你就会让船坠毁，并立即产生后果。</p><p>In the old days, the captain was expected to go down with the ship. If the ship was sinking, then literally the last person who got to get off was the captain. I think accountability does come with real risks, but we’re talking about a business context.<br>在过去，船长被期望与船一起下沉。如果船正在下沉，那么最后一个下船的人就是船长。我认为问责制确实会带来真正的风险，但我们谈论的是商业环境。</p><p>The risk here would be that you would probably be the last one to get your capital back out. You’d be the last one to get paid for your time. The time that you’ve put in, the capital that you’ve put into the company, these are what are at risk.<br>这里的风险是，你可能是最后一个拿回资金的人。您将是最后一个获得时间报酬的人。你投入的时间，你投入公司的资本，这些都是有风险的。</p><p>Even if a business fails and your name’s on it, that’s not as bad as if it turns out to be an integrity issue. Bernie Madoff, for example, Madoff investments, that name is never going to be good again in the investment community. You could be Bernie Madoff’s great-great-great-grandson. You are not going to go into the investment business because he ruined the family name.<br>即使一家企业失败了，你的名字也出现在上面，这并不像它被证明是一个诚信问题那么糟糕。伯尼·麦道夫（Bernie Madoff），例如麦道夫投资公司（Madoff investments），这个名字在投资界再也不会好听了。你可以是伯尼·麦道夫的曾曾曾孙。你不会因为他毁了家族的姓氏而进入投资行业。</p><p>I think these days the accountability risk with a name happens more around integrity, rather than it does around purely economic failure.<br>我认为，如今，与名字有关的问责风险更多地发生在诚信方面，而不是纯粹的经济失败。</p><p><strong>Accountability is reputational skin in the game<br>问责制是游戏中的声誉皮肤</strong></p><p><strong>Nivi:</strong> The big takeaway for me on accountability is that you will be rewarded directly in proportion with your accountability. I also think this is why people like Taleb rail against CEOs who get rewards without accountability.<br>Nivi：对我来说，关于问责制的一大收获是，你将获得与你的问责制成正比的奖励。我还认为，这就是为什么像塔勒布这样的人反对那些在没有问责制的情况下获得奖励的首席执行官。</p><p><strong>Naval:</strong> Yeah. Taleb’s Skin In The Game is required reading. If you want to get anywhere in modern life and understand how modern systems work, then Skin In The Game would be near the top of my list to read.<br>Naval：是的。Taleb’s Skin In The Game 是必读的。如果您想了解现代生活的任何地方并了解现代系统的工作原理，那么 Skin In The Game 将是我阅读列表的顶部。</p><p>Accountability, skin in the game, these concepts go very closely hand in hand. I think of accountability as reputational skin in the game. It’s putting your personal reputation on the line as skin in the game.<br>问责制，游戏中的皮肤，这些概念非常紧密地齐头并进。我认为问责制是游戏中的声誉皮肤。它把你的个人声誉作为游戏中的皮肤岌岌当当。</p><p>Accountability is a simple concept. The only part of accountability that may be a little counterintuitive is that we’re currently socially brainwashed to not take on accountability, not in a visible way.<br>问责制是一个简单的概念。问责制中唯一可能有点违反直觉的部分是，我们目前被社会洗脑，不承担责任，而不是以可见的方式承担责任。</p><p>I think there are ways to take on accountability where every member of a team can take on accountability for their portion. That is how you get a well-functioning team while still putting credits and losses in the correct columns.<br>我认为有一些方法可以承担责任，团队的每个成员都可以对自己的部分负责。这就是你如何获得一个运作良好的团队，同时仍然将功劳和损失放在正确的列中。</p><h2 id="Labor-and-Capital-Are-Old-Leverage-劳动力和资本是旧的杠杆"><a href="#Labor-and-Capital-Are-Old-Leverage-劳动力和资本是旧的杠杆" class="headerlink" title="Labor and Capital Are Old Leverage 劳动力和资本是旧的杠杆"></a>Labor and Capital Are Old Leverage 劳动力和资本是旧的杠杆</h2><p><em>Everyone is fighting over labor and capital<br>每个人都在为劳动力和资本而战</em></p><p><strong>Our brains aren’t evolved to comprehend new forms of leverage<br>我们的大脑并没有进化到理解新形式的杠杆</strong></p><p><strong>Nivi:</strong> Why don’t we talk a little bit about leverage?<br>Nivi：我们为什么不谈谈杠杆呢？</p><p>The first tweet in the storm was a famous quote from Archimedes, which was, “Give me a lever long enough and a place to stand and I will move the Earth.”<br>暴风雨中的第一条推文是阿基米德的一句名言，那就是：“给我一个足够长的杠杆和一个站立的地方，我将移动地球。</p><p>The next tweet was, “Fortunes require leverage. Business leverage comes from capital, people and products with no marginal costs of replication.”<br>下一条推文是，“财富需要杠杆。商业杠杆来自资本、人员和产品，没有边际复制成本。</p><p><strong>Naval:</strong> Leverage is critical. The reason I stuck in Archimedes quote in there is… normally I don’t like putting other people’s quotes in my Twitter. That doesn’t add any value. You can go look up those people’s quotes. But this quote I had to put in there because it’s just so fundamental. I read it when I was very, very young and it had a huge impression on me.<br>Naval：杠杆至关重要。我坚持阿基米德引用的原因是……通常我不喜欢把别人的名言放在我的推特上。这不会增加任何价值。你可以去查那些人的报价。但是我不得不把这句话放在那里，因为它太基本了。我在很小的时候就读过它，它给我留下了深刻的印象。</p><p>We all know what leverage is when we use a seesaw or a lever. We understand how that works physically, but I think what our brains aren’t really well-evolved to comprehend is how much leverage is possible in modern society and what the newest forms of leverage are.<br>我们都知道当我们使用跷跷板或杠杆时，杠杆是什么。我们理解这在物理上是如何运作的，但我认为我们的大脑还没有真正进化到理解的是，在现代社会中，有多少杠杆是可能的，以及最新的杠杆形式是什么。</p><p><strong>Society overvalues labor leverage<br>社会高估了劳动力杠杆</strong></p><p>The oldest form of leverage is labor, which is people working for you. Instead of me lifting rocks, I can have 10 people lift rocks. Then just by my guidance on where the rock should go, a lot more rocks get moved than I could do myself. Everybody understands this because we’re evolved to understand the labor form of leverage, so what happens is society overvalues labor as a form of leverage.<br>最古老的杠杆形式是劳动力，即为你工作的人。我可以让 10 个人举起石头，而不是我举起石头。然后，只要我指导岩石应该去哪里，就会移动比我自己能做的更多的岩石。每个人都明白这一点，因为我们被进化到理解杠杆的劳动形式，所以社会高估了劳动作为一种杠杆形式。</p><p>This is why your parents are impressed when you get a promotion and you have lots of people working underneath you. This is why when a lot of naive people, when you tell them about your company, they’ll say, “How many people work there?” They’ll use that as a way to establish credibility. They’re trying to measure how much leverage and impact you actually have.<br>这就是为什么当你升职时，你的父母会留下深刻的印象，而且你手下有很多人。这就是为什么当很多天真的人，当你告诉他们你的公司时，他们会说，“有多少人在那里工作？他们会以此作为建立可信度的一种方式。他们试图衡量你实际拥有的影响力和影响力。</p><p>Or when someone starts a movement, they’ll say how many people they have or how big the army is. We just automatically assume that more people is better.<br>或者当有人发起运动时，他们会说他们有多少人或军队有多大。我们只是自动假设人越多越好。</p><p><strong>You want the minimum amount of labor that allows you to use the other forms of leverage<br>您需要最少的劳动力，以便您使用其他形式的杠杆</strong></p><p>I would argue that this is the worst form of leverage that you could possibly use. Managing other people is incredibly messy. It requires tremendous leadership skills. You’re one short hop from a mutiny or getting eaten or torn apart by the mob.<br>我认为这是您可能使用的最糟糕的杠杆形式。管理他人是非常混乱的。它需要巨大的领导能力。你离兵变或被暴徒吃掉或撕裂只有一步之遥。</p><p>It’s incredibly competed over. Entire civilizations have been destroyed over this fight. For example, communism, Marxism, is all about the battle between capital and labor, das kapital and das labor. It’s kind of a trap.<br>竞争非常激烈。整个文明在这场战斗中被摧毁了。例如，共产主义，马克思主义，都是关于资本与劳动、资本与劳动之间的斗争。这有点像一个陷阱。</p><p>You really want to stay out of labor-based leverage. You want the minimum amount of people working with you that are going to allow you to use the other forms of leverage, which I would argue are much more interesting.<br>你真的想远离基于劳动力的杠杆。你希望与你一起工作的人最少，这将允许你使用其他形式的杠杆，我认为这更有趣。</p><p><strong>Capital has been the dominant form of leverage in the last century<br>资本是上个世纪的主要杠杆形式</strong></p><p>The second type of leverage is capital. This one’s a little less hardwired into us because large amounts of money moving around and being saved and being invested in money markets, these are inventions of human beings the in last few hundred to few thousand years. They’re not evolved with us from hundreds of thousands of years.<br>第二种杠杆是资本。这对我们来说不那么硬，因为大量的钱四处流动，被储蓄并投资于货币市场，这些都是人类在过去几百到几千年里的发明。它们不是从数十万年前与我们一起进化而来的。</p><p>We understand them a little bit less well. They probably require more intelligence to use correctly, and the ways in which we use them keep changing. Management skills from a hundred years ago might still apply today, but investing in the stock market skills from a hundred years ago probably don’t apply to the same level today.<br>我们不太了解他们。它们可能需要更多的智能才能正确使用，而我们使用它们的方式也在不断变化。一百年前的管理技能在今天可能仍然适用，但投资一百年前的股票市场技能可能不适用于今天的同一水平。</p><p>Capital is a trickier form of leverage to use. It’s more modern. It’s the one that people have used to get fabulously wealthy in the last century. It’s probably been the dominant form of leverage in the last century.<br>资本是一种更棘手的杠杆形式。它更现代。这是人们在上个世纪用来变得非常富有的。它可能是上个世纪的主要杠杆形式。</p><p>You can see this by who are the richest people. It’s bankers, politicians in corrupt countries who print money, essentially people who move large amounts of money around.<br>你可以从谁是最富有的人身上看出这一点。是银行家，腐败国家的政客印钞票，本质上是转移大量资金的人。</p><p>If you look at the top of very large companies, outside of technology companies, in many, many large old companies, the CEO job is really a financial job. They’re really financial asset managers. Sometimes, an asset manager can put a pleasant face on it, so you get a Warren Buffet type.<br>如果你看看非常大的公司，在科技公司之外，在很多很多大型老公司中，CEO的工作实际上是一份财务工作。他们真的是金融资产管理者。有时，资产管理人可以摆出一副讨人喜欢的样子，所以你会得到沃伦·巴菲特（Warren Buffet）的风格。</p><p>But deep down, I think we all dislike capital as a form of leverage because it feels unfair. It’s this invisible thing that can be accumulated and passed across generations and suddenly seems to result in people having gargantuan amounts of money with nobody else around them or necessarily sharing in it.<br>但在内心深处，我认为我们都不喜欢资本作为一种杠杆形式，因为它感觉不公平。正是这种看不见的东西可以积累并代代相传，突然间似乎导致人们拥有巨额金钱，而周围没有其他人，也不一定分享。</p><p>That said, capital is a powerful form of leverage. It can be converted to labor. It can be converted to other things. It’s very surgical, very analytical.<br>也就是说，资本是一种强大的杠杆形式。它可以转化为劳动力。它可以转换为其他东西。这是非常外科手术，非常分析的。</p><p>If you are a brilliant investor and give $1 billion and you can make a 30% return with it, whereas anybody else can only make a 20% return, you’re going to get all the money and you’re going to get paid very handsomely for it.<br>如果你是一个才华横溢的投资者，捐出10亿美元，你可以获得30%的回报，而其他人只能获得20%的回报，你会得到所有的钱，你会得到非常丰厚的报酬。</p><p>It scales very, very well. If you get good at managing capital, you can manage more and more capital much more easily than you can manage more and more people.<br>它的扩展性非常非常好。如果你善于管理资本，你可以管理越来越多的资本，比你管理越来越多的人要容易得多。</p><p><strong>You need specific knowledge and accountability to obtain capital<br>您需要特定的知识和责任感才能获得资金</strong></p><p>It is a good form of leverage, but the hard part with capital is how do you obtain it? That’s why I talked about specific knowledge and accountability first.<br>这是一个很好的杠杆形式，但资本的难点在于你如何获得它？这就是为什么我首先谈到具体知识和问责制。</p><p>If you have specific knowledge in a domain and if you’re accountable and you have a good name in that domain, then people are going to give you capital as a form of leverage that you can use to then go get more capital.<br>如果你在一个领域有特定的知识，如果你有责任感，并且你在这个领域有一个好名声，那么人们就会给你资本作为一种杠杆形式，你可以用它来获得更多的资本。</p><p>Capital also is fairly well understood. I think a lot of the knocks against capitalism come because of the accumulation of capital.<br>资本也相当容易理解。我认为，很多对资本主义的打击都是因为资本的积累。</p><h2 id="Product-and-Media-Are-New-Leverage-产品和媒体是新的杠杆"><a href="#Product-and-Media-Are-New-Leverage-产品和媒体是新的杠杆" class="headerlink" title="Product and Media Are New Leverage 产品和媒体是新的杠杆"></a>Product and Media Are New Leverage 产品和媒体是新的杠杆</h2><p><em>Create software and media that work for you while you sleep<br>创建适合您睡眠的软件和媒体</em></p><p><strong>Product and media are the new leverage<br>产品和媒体是新的杠杆</strong></p><p><strong>Naval:</strong> The most interesting and the most important form of leverage is this idea of products that have no marginal cost of replication. This is the new form of leverage.<br>Naval：最有趣和最重要的杠杆形式是这种没有边际复制成本的产品的想法。这是杠杆的新形式。</p><p>This was only invented in the last few hundred years. It got started with the printing press. It accelerated with broadcast media, and now it’s really blown up with the Internet and with coding.<br>这是最近几百年才发明的。它从印刷机开始。它随着广播媒体的兴起而加速发展，现在它真的被互联网和编码炸毁了。</p><p>Now, you can multiply your efforts without having to involve other humans and without needing money from other humans.<br>现在，您可以增加您的努力，而无需让其他人参与进来，也不需要其他人的钱。</p><p>This podcast is a form of leverage. Long ago, I would have had to sit in a lecture hall and lecture each of you personally. I would have maybe reached a few hundred people and that would have been that.<br>这个播客是一种杠杆形式。很久以前，我不得不坐在演讲厅里，亲自给你们每个人讲课。我可能会接触到几百人，仅此而已。</p><p>Then 40 years ago, 30 years ago, I would have to be lucky to get on TV, which is somebody else’s leverage. They would have distorted the message. They would taken the economics out of it or charged me for it. They would have muddled the message, and I would have been lucky to get that form of leverage.<br>然后40年前，30年前，我必须幸运地上电视，这是别人的筹码。他们会歪曲信息。他们会从中剔除经济效益，或者向我收取费用。他们会把信息弄得一团糟，而我很幸运能得到这种形式的杠杆。</p><p>Today, thanks to the Internet, I can buy a cheap microphone, hook it up to a laptop or an iPad, and there you are all listening.<br>今天，多亏了互联网，我可以买一个便宜的麦克风，把它连接到笔记本电脑或iPad上，你们都在听。</p><p><strong>Product leverage is where the new fortunes are made<br>产品杠杆是创造新财富的地方</strong></p><p>This newest form of leverage is where all the new fortunes are made, all the new billionaires. The last generation, fortunes were made by capital. That was the Warren Buffets of the world.<br>这种最新形式的杠杆是所有新财富、所有新亿万富翁的创造地。上一代人，财富是由资本创造的。这就是世界上的沃伦·巴菲特。</p><p>But the new generation’s fortunes are all made through code or media. Joe Rogan making 50 to a 100 million bucks a year from his podcast. You’re going to have a PewDiePie. I don’t know how much money he’s rolling in, but he’s bigger than the news. The Fortnite players. Of course Jeff Bezos and Mark Zuckerberg and Larry Page and Sergey Brin and Bill Gates and Steve Jobs. That is all code-based leverage.<br>但新一代的财富都是通过代码或媒体创造的。乔·罗根（Joe Rogan）每年从他的播客中赚取5000万到1亿美元。你将拥有一个PewDiePie。我不知道他赚了多少钱，但他比新闻还大。Fortnite玩家。当然，杰夫·贝佐斯、马克·扎克伯格、拉里·佩奇、谢尔盖·布林、比尔·盖茨和史蒂夫·乔布斯。这就是所有基于代码的杠杆。</p><p><strong>Combining all three forms of leverage is a magic combination<br>将所有三种形式的杠杆结合起来是一个神奇的组合</strong></p><p>Now, the beauty is when you combine all of these three. That’s where tech startups really excel, where you take just the minimum, but highest output labor that you can get, which are engineers, and designers, product developers. Then you add in capital. You use that for marketing, advertising, scaling. You add in lots of code and media and podcasts and content to get it all out there.<br>现在，美妙之处在于当你将这三者结合起来时。这就是科技创业公司真正擅长的地方，在那里你只拿走你能得到的最低但最高的产出劳动力，即工程师、设计师、产品开发人员。然后你加上资本。你用它来营销、广告、扩展。您可以添加大量代码、媒体、播客和内容，以将其全部内容呈现出来。</p><p>That is a magic combination, and that’s why you see technology startups explode out of nowhere, use massive leverage and just make huge outsize returns.<br>这是一个神奇的组合，这就是为什么你会看到科技初创公司突然爆发，使用巨大的杠杆，并获得巨大的回报。</p><p><strong>Product and media leverage are permissionless<br>产品和媒体杠杆是无需许可的</strong></p><p><strong>Nivi:</strong> Do you want to talk a little bit about permissioned versus permissionless?<br>Nivi：您想谈谈许可与非许可吗？</p><p><strong>Naval:</strong> Probably the most interesting thing to keep in mind about the new forms of leverage is they are permissionless. They don’t require somebody else’s permission for you to use them or succeed.<br>Naval：关于新的杠杆形式，最有趣的事情可能是它们是未经许可的。它们不需要其他人的许可即可使用它们或成功。</p><p>For labor leverage, somebody has to decide to follow you. For capital leverage, somebody has to give you money to invest or to turn into a product.<br>为了劳动力杠杆，必须有人决定跟随你。对于资本杠杆，必须有人给你钱来投资或变成产品。</p><p>Coding, writing books, recording podcasts, tweeting, YouTubing, these kinds of things, these are permissionless. You don’t need anyone’s permission to do them, and that’s why they are very egalitarian. They’re great equalizers of leverage.<br>编码、写书、录制播客、发推文、YouTubing，诸如此类的事情，这些都是无需许可的。你不需要任何人的许可就可以做这些事情，这就是为什么他们非常平等。它们是杠杆的出色均衡器。</p><p>As much as people may rail on Facebook and YouTube, they’re not going to stop using it because this permissionless leverage, where everyone can be a broadcaster, is just too good.<br>尽管人们可能会在Facebook和YouTube上抨击，但他们不会停止使用它，因为这种无需许可的杠杆作用，每个人都可以成为广播公司，实在是太好了。</p><p>The same way you can rail upon Apple for having a slightly closed ecosystem in the iPhone, but everyone’s writing apps for it. As long as you can write apps for it, you can get rich or reach users doing that, why not?<br>同样，你可以指责苹果在iPhone中有一个略微封闭的生态系统，但每个人都在为它编写应用程序。只要你能为它编写应用程序，你就可以致富或吸引用户，为什么不呢？</p><p><strong>The robot army is already here—code lets you tell them what to do<br>机器人大军已经来了——代码可以让你告诉他们该做什么</strong></p><p>I think of all the forms of leverage, the best one in modern society … This is glib. This is a little overused. This is why I tell people learn to code. It’s that we have this idea that in the future there’s going to be these robots and they’re going to be doing everything.<br>我想到了所有形式的杠杆，现代社会中最好的杠杆……这是油嘴滑舌。这有点过度使用。这就是为什么我告诉人们学习编程。我们的想法是，未来会有这些机器人，它们将无所不能。</p><p>That may be true, but I would say that the majority of the robot revolution has already happened. The robots are already here and there are way more robots than there are humans, it’s just that we pack them in data centers for heat and efficiency reasons. We put them in servers. They’re inside the computers. All the circuits, it’s robot minds inside that’s doing all the work.<br>这可能是真的，但我想说的是，大部分机器人革命已经发生了。机器人已经在这里，机器人比人类多得多，只是出于热量和效率的原因，我们将它们打包在数据中心。我们把它们放在服务器中。它们在计算机内部。所有的电路，里面的机器人都在做所有的工作。</p><p>Every great software developer, for example, now has an army of robots working for him at nighttime, while he or she sleeps, after they’ve written the code and it’s just cranking away.<br>例如，每个伟大的软件开发人员现在都有一大群机器人在夜间为他工作，当他或她睡觉时，在他们写完代码之后，它就会运转起来。</p><p>The robot army is already here. The robot revolution has already happened. We’re about halfway through it. We’re just adding in much more of the hardware component these days as we get more comfortable with the idea of autonomous vehicles and autonomous airplanes and autonomous ships and maybe autonomous trucks. There’re delivery bots and Boston Dynamics robots and all that.<br>机器人大军已经来了。机器人革命已经发生。我们已经完成了一半。这些天来，我们只是增加了更多的硬件组件，因为我们越来越适应自动驾驶汽车、自动驾驶飞机、自动驾驶船舶，也许还有自动驾驶卡车。有送货机器人和波士顿动力公司的机器人等等。</p><p>But robots who are doing web searching for you, for example, are already here. The ones who are cleaning up your video and audio and transmitting it around the world are already here. The ones who are answering many customer service queries, things that you would have had to call a human for are already here.<br>但是，例如，为您进行网络搜索的机器人已经在这里了。那些正在清理您的视频和音频并将其传输到世界各地的人已经在这里。那些正在回答许多客户服务查询的人，您不得不打电话给人类的事情已经在这里了。</p><p>An army of robots is already here. It’s very cheaply available. The bottleneck is just figuring out intelligent and interesting things to do to them.<br>一支机器人大军已经来了。它非常便宜。瓶颈只是弄清楚对他们做明智而有趣的事情。</p><p>Essentially you can order this army of robots around. The commands have to be issued in a computer language, in a language that they understand.<br>从本质上讲，你可以命令这支机器人大军。命令必须以计算机语言发出，以他们理解的语言发出。</p><p>These robots aren’t very smart. They have to be told very precisely what to do and how to do it. Coding is such a great superpower because now you can speak the language of the robot armies and you can tell them what to do.<br>这些机器人不是很聪明。必须非常准确地告诉他们该做什么以及如何做。编码是一个伟大的超级大国，因为现在你可以说机器人军队的语言，你可以告诉他们该怎么做。</p><p><strong>Nivi:</strong> I think at this point, people are not only commanding the army of robots within servers through code, they’re actually manipulating the movement of trucks, of other people. Just ordering a package on Amazon, you’re manipulating the movement of many people and many robots to get a package delivered to you.<br>Nivi：我认为在这一点上，人们不仅通过代码在服务器中指挥机器人大军，他们实际上也在操纵卡车和其他人的运动。只需在亚马逊上订购包裹，您就会操纵许多人和许多机器人的运动，以便将包裹交付给您。</p><p>People are doing the same things to build businesses now. There’s the army of robots within servers and then there’s also an army of actual robots and people that are being manipulated through software.<br>人们现在正在做同样的事情来建立企业。服务器中有机器人大军，然后还有一支真正的机器人和人大军，他们正在通过软件进行操纵。</p><h2 id="Product-Leverage-is-Egalitarian-产品杠杆是平等的"><a href="#Product-Leverage-is-Egalitarian-产品杠杆是平等的" class="headerlink" title="Product Leverage is Egalitarian 产品杠杆是平等的"></a>Product Leverage is Egalitarian 产品杠杆是平等的</h2><p><em>The best products tend to be available to everyone<br>最好的产品往往对每个人都可用</em></p><p><strong>Product leverage is a positive-sum game<br>产品杠杆是一种正和博弈</strong></p><p><strong>Naval:</strong> Labor and capital are much less egalitarian, not just in the inputs, but in their outputs.<br>Naval：劳动和资本的平等性要低得多，不仅在投入上，而且在产出上。</p><p>Let’s say that I need something that humans have to provide like if I want a massage or if I need someone to cook my food. The more of a human element there is in providing that service, the less egalitarian it is. Jeff Bezos probably has much better vacations than most of us because he has lots of humans running around doing whatever he needs to do.<br>比方说，我需要人类必须提供的东西，比如我想要按摩或我需要有人做饭。在提供这种服务时，人为因素越多，它就越不平等。杰夫·贝佐斯（Jeff Bezos）的假期可能比我们大多数人都好得多，因为他有很多人跑来跑去做他需要做的任何事情。</p><p>If you look at the output of code and media, Jeff Bezos doesn’t get to watch better movies and TV than we do. Jeff Bezos doesn’t get to even have better computing experience. Google doesn’t give him some premium, special Google account where his searches are better.<br>如果你看一下代码和媒体的输出，杰夫·贝佐斯（Jeff Bezos）不会比我们看更好的电影和电视。 杰夫·贝佐斯（Jeff Bezos）甚至没有更好的计算经验。谷歌不会给他一些高级的、特殊的谷歌账户，让他的搜索更好。</p><p>It’s the nature of code and media output that the same product is accessible to everybody. It turns into a positive sum game where if Jeff Bezos is consuming the same product as a thousand other people, that product is going to be better than the version that Jeff would consume on his own.<br>代码和媒体输出的本质是每个人都可以访问相同的产品。它变成了一个正和游戏，如果杰夫·贝佐斯（Jeff Bezos）与其他一千人消费相同的产品，那么该产品将比杰夫自己消费的版本更好。</p><p><strong>Status goods are limited to a few people<br>状态商品仅限少数人使用</strong></p><p>Whereas with other products, that’s not true. If you look at something like buying a Rolex, which is no longer about telling time. It’s a signaling good. It’s all about showing off, “I have a Rolex.” That’s a zero-sum game.<br>而对于其他产品，情况并非如此。如果你看一下像购买劳力士这样的事情，这不再是关于报时。这是一个信号好。这一切都是为了炫耀，“我有一只劳力士。这是一场零和博弈。</p><p>If everybody in the world is wearing a Rolex, then people don’t want to wear Rolexes anymore because they no longer signal. It’s canceled out the effect.<br>如果世界上每个人都戴着劳力士，那么人们就不想再戴劳力士了，因为它们不再发出信号。它抵消了效果。</p><p>Rich people do have an advantage in consuming that product. They’ll just price it up until only they can have Rolexes. Then poor people can’t have Rolexes and Rolexes resume their signaling value.<br>富人在消费该产品方面确实有优势。他们只会把它定价，直到只有他们才能拥有劳力士。那么穷人就无法让劳力士和劳力士恢复其信号值。</p><p><strong>The best products tend to be targeted at the middle class<br>最好的产品往往针对中产阶级</strong></p><p>Something like watching Netflix or using Google or using Facebook or YouTube or even frankly modern day cars. Rich people don’t have better cars. They just have weirder cars.<br>比如看Netflix，使用谷歌，使用Facebook或YouTube，甚至坦率地说，现代汽车。有钱人没有更好的车。他们只是有更奇怪的汽车。</p><p>You can’t drive a Lamborghini on the street at any speed that makes sense for a Lamborghini, so it’s actually a worse car in the street. It just turned into a signaling good at that point. Your sweet spot, where you want to be, is somewhere like a Tesla Model 3 or like a Toyota Corolla which is an amazing car.<br>你不能在街上以任何对兰博基尼有意义的速度驾驶兰博基尼，所以它实际上是街上一辆更糟糕的汽车。在这一点上，它只是变成了一个信号好。你的最佳位置，你想去的地方，是像特斯拉Model 3或丰田卡罗拉这样的地方，这是一辆了不起的车。</p><p>A new Toyota Corolla is a really nice car, but because it’s mainstream, the technology has amortized the cost of production over the largest number of consumers possible.<br>新的丰田卡罗拉是一辆非常好的汽车，但由于它是主流，该技术已经将生产成本摊销到尽可能多的消费者身上。</p><p>The best products tend to be at the center, at the sweet spot, the middle class, rather than being targeted at the upper class.<br>最好的产品往往位于中心，处于最佳位置，中产阶级，而不是针对上层阶级。</p><p><strong>Creating wealth with product leads to more ethical wealth<br>用产品创造财富会带来更多的道德财富</strong></p><p>I think one of the things that we don’t necessarily appreciate in modern societies is as the forms of leverage have gone from being human-based, labor-based and being capital-based to being more product and code and media-based, that most of the goods and services that we consume are becoming much more egalitarian in their consumption.<br>我认为，在现代社会中，我们不一定欣赏的一件事是，随着杠杆的形式从基于人、以劳动力和资本为基础，转变为更多地以产品、代码和媒体为基础，我们消费的大多数商品和服务在消费中变得更加平等。</p><p>Even food is becoming that way. Food is becoming cheap and abundant, at least in the first world, too much so to our detriment. Jeff Bezos isn’t necessarily eating better food. He’s just eating different food or he’s eating food that’s prepared and served theatrically, so it’s almost like more of again the human element of performance.<br>甚至食物也变成了这样。食物正在变得廉价和丰富，至少在第一世界是这样，太多了，对我们不利。杰夫·贝佐斯（Jeff Bezos）不一定吃更好的食物。他只是在吃不同的食物，或者他吃的是戏剧准备和供应的食物，所以这几乎更像是表演中的人性元素。</p><p>But the labor element out of food production has gone down massively. The capital element has gone down massively. Even food production itself has become more technology-oriented, and so the gap between the haves and the have-nots is getting smaller.<br>但是，粮食生产中的劳动力成分已经大幅下降。资本要素已经大幅下降。甚至粮食生产本身也变得更加以技术为导向，因此贫富差距越来越小。</p><p>If you care about ethics in wealth creation, it is better to create your wealth using code and media as leverage because then those products are equally available to everybody as opposed to trying to create your wealth through labor or capital.<br>如果你关心财富创造中的道德规范，最好使用代码和媒体作为杠杆来创造你的财富，因为这样每个人都可以平等地获得这些产品，而不是试图通过劳动力或资本来创造你的财富。</p><p><strong>You want to use the product that is used by the most people<br>您想使用大多数人使用的产品</strong></p><p>What I’m referring to here is scale economies. Technology products and media products have such amazing scale economies that you always want to use the product that is used by the most people. The one that’s used by the most people ends up having the largest budget. There’s no marginal cost of adding another user, and so with the largest budget, you get the highest quality.<br>我在这里指的是规模经济。技术产品和媒体产品具有惊人的规模经济，以至于您总是希望使用大多数人使用的产品。被大多数人使用的那个最终拥有最大的预算。添加另一个用户没有边际成本，因此，使用最大的预算，您可以获得最高的质量。</p><p>The best TV shows are actually not going to be some obscure ones just made for a few rich people. They’re going to be the big budget ones, like the Game of Thrones or the Breaking Bad or Bird Box, where they have massive, massive budgets. They can just use those budgets to get to a certain quality level.<br>最好的电视节目实际上不会是一些晦涩难懂的节目，只是为少数富人制作的。它们将成为大预算的，比如《权力的游戏》或《绝命毒师》或《鸟盒》，它们拥有巨大的预算。他们可以使用这些预算来达到一定的质量水平。</p><p>Then rich people, to be different, they have to fly to Sundance and watch a documentary. You and I aren’t going to fly to Sundance because that’s something that bored rich people do to show off. We’re not going to watch a documentary because most of them just aren’t actually even that good.<br>然后有钱人，要与众不同，他们必须飞到圣丹斯看纪录片。你和我不会飞到圣丹斯，因为那是无聊的富人为了炫耀而做的事情。我们不会看纪录片，因为它们中的大多数实际上甚至没有那么好。</p><p>Again, if you’re wealthy today, for large classes of things, you spend your money on signaling goods to show other people that you’re wealthy, then you try and convert them to status. As opposed to actually consuming the goods for their own sake.<br>同样，如果你今天很富有，对于大类的东西，你把钱花在向别人展示你很有钱的信号上，然后你试图把他们转化为地位。而不是为了自己而实际消费商品。</p><p><strong>Nivi:</strong> People and capital as a form of leverage have a negative externality and code and product have a positive externality attached to them, if I was going to sum up your point.<br>Nivi：人与资本作为一种杠杆形式，具有负外部性，而代码和产品则具有正外部性，如果我要总结一下你的观点的话。</p><p><strong>Capital and labor are becoming permissionless<br>资本和劳动力正在变得无许可</strong></p><p>I think that capital and labor are also starting to become a little more permissionless or at least the permissioning is diffuse because of the Internet. Instead of labor, we have community now, which is a diffused form of labor. For example, Mark Zuckerberg has a billion people doing work for him by using Facebook.<br>我认为资本和劳动力也开始变得更加无许可，或者至少由于互联网而分散了许可。我们现在有社区，而不是劳动，这是一种分散的劳动形式。例如，马克·扎克伯格（Mark Zuckerberg）有10亿人通过使用Facebook为他工作。</p><p>Instead of going to raise capital from someone who’s rich, now we have crowdfunding. You can raise millions and millions of dollars for a charity, for a health problem or for a business. You can do it all online.<br>现在我们有了众筹，而不是从有钱人那里筹集资金。您可以为慈善机构、健康问题或企业筹集数百万美元。您可以在线完成所有操作。</p><p>Capital and labor are also becoming permissionless, and you don’t need to necessarily do it the old fashioned way, where you have to go around and ask people for permission to use their money or their time.<br>资本和劳动力也变得未经许可，你不一定要以老式的方式去做，你必须四处走动，请求人们允许使用他们的金钱或时间。</p><h2 id="Pick-a-Business-Model-with-Leverage-选择具有杠杆作用的商业模式"><a href="#Pick-a-Business-Model-with-Leverage-选择具有杠杆作用的商业模式" class="headerlink" title="Pick a Business Model with Leverage 选择具有杠杆作用的商业模式"></a>Pick a Business Model with Leverage 选择具有杠杆作用的商业模式</h2><p><em>An ideal business model has network effects, low marginal costs and scale economies<br>理想的商业模式具有网络效应、低边际成本和规模经济</em></p><p><strong>Scale economies: the more you produce, the cheaper it gets<br>规模经济：生产越多，成本就越低</strong></p><p><strong>Nivi:</strong> One more question about leverage. Do you think a choice of business model or a choice of product can also bring a kind of leverage to it?<br>Nivi：还有一个关于杠杆的问题。你认为商业模式的选择或产品的选择是否也能给它带来某种杠杆作用？</p><p>For example, pursuing a business that has network effects. Pursuing a business that has brand effects. Or other choices of business model that people could manipulate that just give you free leverage.<br>例如，追求具有网络效应的业务。追求具有品牌效应的业务。或者人们可以操纵的其他商业模式选择，这些选择只是给你自由的杠杆。</p><p><strong>Naval:</strong> Yeah, there’s some really good microeconomic concepts that are important to understand.<br>Naval：是的，有一些非常好的微观经济概念很重要。</p><p>One of those is scale economies, which is the more you produce of something the cheaper it gets to make it. That’s something that a lot of businesses have, Basic Economics 101.<br>其中之一是规模经济，即你生产的东西越多，制造它的成本就越低。这是很多企业都有的东西，基础经济学 101。</p><p>You should try and get into a business where making Widget Number 12 is cheaper than making Widget Number 5, and making Widget Number 10,000 is a lot cheaper than the previous ones. This builds up an automatic barrier to entry against competition and getting commoditized. That’s an important one.<br>您应该尝试进入一个制作 Widget Number 12 比制作 Widget Number 5 便宜的业务，并且制作 Widget Number 10,000 比以前的便宜得多。这为竞争和商品化建立了一个自动进入壁垒。这很重要。</p><p><strong>Zero marginal cost of reproduction: producing more is free<br>零边际生产成本：生产更多是免费的</strong></p><p>Another one is, and this is along the same lines, but technology products especially, and media products, have this great quality where they have zero marginal cost of reproduction. Creating another copy of what you just created is free.<br>另一个是，这是沿着同样的路线，但技术产品，特别是媒体产品，具有这种伟大的品质，它们的边际复制成本为零。创建您刚刚创建的内容的另一个副本是免费的。</p><p>When somebody listens to this podcast or watches a YouTube video about this, it doesn’t cost me anything for the next person who shows up. Those zero marginal cost things, they take a while to get going because you make very little money per user, but over time they can really, really add up.<br>当有人听这个播客或观看有关此的 YouTube 视频时，对于下一个出现的人，我不会花任何钱。那些零边际成本的东西，它们需要一段时间才能开始，因为你每个用户赚的钱很少，但随着时间的推移，它们真的可以加起来。</p><p>Joe Rogan is working no harder on his current podcast than he was on Podcast number 1, but on Podcast number 1,100 he’s making a million dollars from the podcast whereas for the previous one he probably lost money; for the first one. That’s an example of zero marginal cost.<br>乔·罗根 （Joe Rogan） 在他目前的播客上并不比他在 1 号播客上更努力，但在 1,100 号播客上，他从播客中赚了一百万美元，而对于前一个播客，他可能赔了钱;对于第一个。这是零边际成本的一个例子。</p><p><strong>Network effects: value grows as the square of the customers<br>网络效应：价值随着客户的方块而增长</strong></p><p>Then, the most subtle but the most important is this idea of network effects. It comes from computer networking. Bob Metcalfe, who created Ethernet, famously coined Metcalfe’s Law, which is the value of a network is proportional to the square of the number of nodes in the network.<br>然后，最微妙但最重要的就是这种网络效应的想法。它来自计算机网络。创建以太网的鲍勃·梅特卡夫（Bob Metcalfe）创造了著名的梅特卡夫定律，即网络的价值与网络中节点数的平方成正比。</p><p>If a network of size 10 would have a value of a 100, a network of a size 100 would have a value of 10,000. It’s not just 10 times more, it’s 100 times more, because of the square; the difference is the square.<br>如果大小为 10 的网络的值为 100，则大小为 100 的网络的值为 10,000。它不仅多了 10 倍，而且多了 100 倍，因为正方形;区别在于正方形。</p><p>You want to be in a network effects business, assuming you’re not number two. If you’re number one in network effect business, you win everything. Example: if you look at Facebook, your friends and family social networking protocol. Who’s their competitor? Nobody, because they won everything through network effects. Which is why when people say, “Well, I can just switch away from Facebook,” they don’t realize that network effects create natural monopolies. They’re very, very powerful things.<br>你想从事网络效应业务，假设你不是第二名。如果你是网络效应业务的第一名，你就赢得了一切。例如：如果你看一下Facebook，你的朋友和家人的社交网络协议。谁是他们的竞争对手？没有人，因为他们通过网络效应赢得了一切。这就是为什么当人们说，“好吧，我可以离开Facebook”时，他们没有意识到网络效应会造成自然垄断。它们是非常非常强大的东西。</p><p><strong>Network effect businesses are natural monopolies<br>网络效应企业是自然垄断的</strong></p><p>One of the dirty secrets of Silicon Valley is that a lot of the winning businesses are natural monopolies. Even ride-sharing tends towards one winner-take-all system.<br>硅谷的一个肮脏的秘密是，许多获胜的企业都是自然垄断的。即使是拼车也倾向于一个赢家通吃的系统。</p><p>Uber will always have better economics than Lyft, as long as it’s moving more drivers and more riders around. Something like Google, there’s basically only one viable search engine. I do like DuckDuckGo, privacy reasons, but they’re just always gonna be behind because of network effects. Twitter: where else would you go for microblogging? Even YouTube has weak network effects, but they’re still powerful enough that there’s really no number two site that you go to, to consume your video on a regular basis. It even turns out in e-tail, Amazon Prime and kind of the convenience of stored credit cards and information creates a powerful network effect.<br>Uber 将永远比 Lyft 拥有更好的经济效益，只要它能吸引更多的司机和乘客。像谷歌一样，基本上只有一个可行的搜索引擎。我确实喜欢 DuckDuckGo，出于隐私原因，但由于网络效应，它们总是会落后。Twitter：你还会去哪里写微博？即使是 YouTube 的网络效应也很弱，但它们仍然足够强大，以至于您真的没有去的第二大网站来定期消费您的视频。它甚至在电子零售、亚马逊Prime以及存储信用卡和信息的便利性中产生了强大的网络效应。</p><p><strong>In a network effect, each new user adds value to the existing users<br>在网络效应中，每个新用户都会为现有用户增加价值</strong></p><p>What is a network effect? Let’s just define it precisely. A network effect is when each additional user adds value to the existing user base. Your users themselves are creating some value for the existing users.<br>什么是网络效应？让我们精确地定义它。网络效应是指每增加一个用户，就会为现有用户群增加价值。您的用户本身正在为现有用户创造一些价值。</p><p>The classic example that I think everybody can understand is, language. Let’s say that there’s 100 people living in the community and speak 10 different languages, and each person just speaks one of those 10. Well, you’re having to translate all the time; it’s incredibly painful. But if all 100 of you spoke the same language, it would add tremendous value.<br>我认为每个人都能理解的经典例子是语言。假设有 100 人住在社区里，说 10 种不同的语言，每个人只会说这 10 种语言中的一种。好吧，你必须一直翻译;这非常痛苦。但是，如果你们100个人都说同一种语言，那将增加巨大的价值。</p><p>The way that community will play out is, 10 people start off speaking 10 languages, and let’s say one extra person learns English. Well, now all of a sudden, 11 people know English, so the next person comes in to learn a new language is probably going to chose English. At some point, let’s say English gets to 20 or 25 people, it’s done. It’s just going to own the entire language marketplace, and the rest of the languages will get competed out.<br>社区的发展方式是，10 个人开始说 10 种语言，假设另外一个人学习英语。好吧，现在突然之间，有11个人懂英语，所以下一个来学习一门新语言的人可能会选择英语。在某个时候，假设英语达到 20 或 25 人，它就完成了。它只是将拥有整个语言市场，其余的语言将被竞争。</p><p>Which is why, long-term, the entire world is probably going to end up speaking English and Chinese. China’s closed off on the Internet, but the Internet itself is a great leveler, and people who want to communicate on the Internet are forced to speak English because the largest community of people on the Internet speaks English.<br>这就是为什么从长远来看，整个世界可能最终会说英语和中文。中国在互联网上是封闭的，但互联网本身就是一个很大的平衡器，想要在互联网上交流的人被迫说英语，因为互联网上最大的社区会说英语。</p><p>I always feel bad for my colleagues who grew up speaking foreign languages in foreign countries, because you don’t have access to so many books; so many books just haven’t been translated into other languages. If you only spoke French, or you only spoke German, or you only spoke Hindi, for example, you would be at a severe disadvantage in a technical education.<br>我总是为那些在国外说外语长大的同事感到难过，因为你没有那么多书;很多书只是没有被翻译成其他语言。例如，如果你只会说法语，或者你只会说德语，或者你只会说印地语，那么你在技术教育中将处于严重的劣势。</p><p>Invariably, if you go and get a technical education, you have to learn English just because you have to read these books that have this data that has not been translated. Languages are probably the oldest example of network effect.<br>无一例外，如果你去接受技术教育，你必须学习英语，因为你必须阅读这些书，这些书有这些数据没有被翻译过。语言可能是网络效应最古老的例子。</p><p>Money is another example. We should all probably be using the same money, except for the fact that geographic and regulatory boundaries have created these artificial islands of money. But even then, the world tends to use a single currency as the reserve currency at most times; currently, the US dollar.<br>钱是另一个例子。我们可能都应该使用同样的钱，除了地理和监管边界创造了这些人为的金钱孤岛。但即便如此，世界在大多数时候都倾向于使用单一货币作为储备货币;目前，美元。</p><p><strong>Zero marginal cost businesses can pivot into network effect businesses<br>零边际成本企业可以转向网络效应业务</strong></p><p>Network effects are a very powerful concept, and when you’re picking a business model, it’s a really good idea to pick a model where you can benefit from network effects, low marginal costs, and scale economies; and these tend to go together.<br>网络效应是一个非常强大的概念，当你选择一种商业模式时，选择一种可以从网络效应、低边际成本和规模经济中受益的模式是一个非常好的主意;这些往往是一起的。</p><p>Anything that has zero marginal costs of production obviously has scale economies, and things that have zero marginal costs of reproduction very often tend to have network effects, because it doesn’t cost you anything more to stamp out the thing. So then you can just create little hooks for users to add value to each other.<br>任何边际生产成本为零的东西显然都具有规模经济，而边际生产成本为零的东西往往往往会产生网络效应，因为消除这种东西不会花费更多。因此，您可以为用户创建一些小钩子，以相互增加价值。</p><p>You should always be thinking about how your users, your customers, can add value to each other because that is the ultimate form of leverage. You’re at the beach in the Bahamas or you’re sleeping at night and your customers are adding value to each other.<br>你应该始终考虑你的用户，你的客户，如何为彼此增加价值，因为这是杠杆的最终形式。你在巴哈马的海滩上，或者你晚上睡觉，你的客户正在互相增加价值。</p><h2 id="Example-From-Laborer-to-Entrepreneur-示例：从劳动者到企业家"><a href="#Example-From-Laborer-to-Entrepreneur-示例：从劳动者到企业家" class="headerlink" title="Example: From Laborer to Entrepreneur 示例：从劳动者到企业家"></a>Example: From Laborer to Entrepreneur 示例：从劳动者到企业家</h2><p><em>From low to high specific knowledge, accountability and leverage<br>从低到高的具体知识、问责制和杠杆作用</em></p><p><strong>Laborers get paid hourly and have low accountability<br>劳动者按小时计酬，责任感低</strong></p><p><strong>Naval:</strong> The tweetstorm is very abstract. It’s deliberately meant to be broadly applicable to all kinds of different domains and disciplines and time periods and places. But sometimes it’s hard to work without a concrete example. So let’s go concrete for a minute.<br>Naval：推特风暴非常抽象。它刻意广泛适用于各种不同的领域和学科以及时间段和地点。但有时如果没有具体的例子，就很难工作。因此，让我们花一分钟时间具体一点。</p><p>Look at the real estate business. You could start at the bottom, let’s say you’re a day laborer. You come in, you fix people’s houses. Someone orders you around, tells you, “Break that piece of rock. Sand that piece of wood. Put that thing over there.”<br>看看房地产业务。你可以从底部开始，假设你是一名临时工。你进来，你修好人们的房子。有人命令你四处走动，告诉你，“打破那块石头。打磨那块木头。把那东西放在那边。</p><p>There’s just all these menial jobs that go on, on a construction site. If you’re working one of those jobs, unless you’re a skilled trade, say, a carpenter or electrician, you don’t really have specific knowledge.<br>在建筑工地上，所有这些卑微的工作都在进行。如果你从事其中一项工作，除非你是一个熟练的行业，比如木匠或电工，否则你真的没有具体的知识。</p><p>Even a carpenter or an electrician is not that specific because other people can be trained how to do it. You can be replaced. You get paid your $15, $20, $25, $50, if you’re really lucky, $75 an hour, but that’s about it.<br>即使是木匠或电工也不是那么具体，因为其他人可以接受如何做培训。你可以被替换。你会得到 15 美元、20 美元、25 美元、50 美元的报酬，如果你真的幸运的话，每小时 75 美元，但仅此而已。</p><p>You don’t have any leverage other than from the tools that you’re using. If you’re driving a bulldozer that’s better than doing it with your hands. A day laborer in India makes a lot less because they have no tool leverage.<br>除了您正在使用的工具之外，您没有任何影响力。如果你驾驶的是推土机，那总比用手推土机好。印度的临时工赚得少得多，因为他们没有工具杠杆。</p><p>You don’t have much accountability. You’re a faceless cog in a construction crew and the owner of the house or the buyer of the house doesn’t know or care that you worked on it.<br>你没有太多的责任感。你是建筑工人中一个不露面的齿轮，房子的主人或房子的买家不知道或关心你为它工作过。</p><p><strong>General contractors get equity, but they’re also taking risk<br>总承包商获得了股权，但他们也承担了风险</strong></p><p>One step up from that, you might have a contractor, like a general contractor who someone hires to come and fix and repair and build up their house. That general contractor is taking accountability; they’re taking responsibility.<br>再往前走一步，你可能有一个承包商，比如总承包商，有人雇他来修理、修理和建造他们的房子。该总承包商正在承担责任;他们正在承担责任。</p><p>Now let’s say they got paid $250,000 for the job. Sorry, I’m using Bay Area prices, so maybe I’ll go rest of the world prices, $100,000 for the job to fix up a house, and it actually costs the general contractor, all said and done, $70,000. That contractor’s going to pocket that remaining $30,000.<br>现在假设他们为这份工作获得了 250,000 美元的报酬。对不起，我用的是湾区的价格，所以也许我会去世界其他地方的价格，100,000美元用于修缮房屋的工作，实际上总承包商花费了70,000美元。该承包商将把剩下的 30,000 美元收入囊中。</p><p>They got the upside. They got the equity but they’re also taking accountability and risk. If the project runs over and there’s losses, then they eat the losses. But you see, just the accountability gives them some form of additional potential income.<br>他们占了上风。他们获得了股权，但他们也承担了责任和风险。如果项目失败并且有损失，那么他们就会吃掉损失。但你看，只是问责制给了他们某种形式的额外潜在收入。</p><p>Then, they also have labor leverage because they have a bunch of people working for them. But it probably tops out right there.<br>然后，他们也有劳动力杠杆，因为他们有一群人为他们工作。但它可能就在那里达到顶峰。</p><p><strong>Property developers pocket the profit by applying capital leverage<br>房地产开发商通过应用资本杠杆将利润收入囊中</strong></p><p>You can go one level above that and you can look at a property developer. This might be someone who is a contractor who did a bunch of houses, did a really good job, then decided to go into business for themselves and they go around looking for beaten down properties that have potential.<br>你可以再往上一层，你可以看看房地产开发商。这可能是一个承包商，他做了一堆房子，做得很好，然后决定自己做生意，他们四处寻找有潜力的破旧房产。</p><p>They buy them, they either raise money from investors or front it themselves, they fix the place up, and then they sell it for twice what they bought it for. Maybe they only put in 20% more, so it’s a healthy profit.<br>他们买下它们，要么从投资者那里筹集资金，要么自己前置，他们把地方修好，然后以两倍的价格卖掉。也许他们只多投入了 20%，所以这是一个健康的利润。</p><p>So now a developer like that takes on more accountability, has more risk. They have more specific knowledge because now you have to know: which neighborhoods are worth buying in. Which lots are actually good or which lots are bad. What makes or breaks a specific property. You have to imagine the finished house that’s going to be there, even when the property itself might look really bad right now.<br>因此，现在像这样的开发人员承担了更多的责任，承担了更大的风险。他们有更具体的知识，因为现在你必须知道：哪些社区值得购买。哪些批次实际上是好的，哪些批次是坏的。是什么成就或破坏了特定属性。你必须想象完工的房子会在那里，即使房产本身现在看起来真的很糟糕。</p><p>There’s more specific knowledge, there’s more accountability and risk, and now you also have capital leverage because you’re also putting in money into the project. But conceivably, you could buy a piece of land or a broken-down house for $200,000 and turn it into a million dollar mansion and pocket all the difference.<br>有更具体的知识，有更多的问责制和风险，现在你也有资本杠杆，因为你也在为项目投入资金。但可以想象，你可以花 200,000 美元买一块土地或一栋破房子，把它变成一座价值百万美元的豪宅，然后把所有的差价都收入囊中。</p><p><strong>Architects, large developers and REITs are even higher in the stack<br>建筑师、大型开发商和房地产投资信托基金（REITs）在堆栈中的地位甚至更高</strong></p><p>One level beyond that might be a famous architect or a developer, where just having your name on a property, because you’ve done so many great properties, increases its value.<br>再往前一层，可能是著名的建筑师或开发商，只要在房产上写上你的名字，因为你做过这么多伟大的房产，就会增加它的价值。</p><p>One level up from that, you might be a person who decides, well, I understand real estate, and I now know enough of the dynamics of real estate that rather than just build and flip my own properties or improve my own properties, I’m gonna be a massive developer. I’m going to build entire communities.<br>再往上一层，你可能是一个决定的人，嗯，我了解房地产，我现在对房地产的动态有足够的了解，我不仅仅是建造和翻转我自己的房产或改善我自己的房产，我将成为一个大型开发商。我要建立整个社区。</p><p>Now another person might say, “I like that leverage, but I don’t want to manage all these people. I want to do it more through capital. So I’m gonna start a real estate investment trust.” That requires specific knowledge not just about investing in real estate and building real estate, but it also requires specific knowledge about the financial markets, and the capital markets, and how real estate trusts operate.<br>现在另一个人可能会说，“我喜欢这种杠杆，但我不想管理所有这些人。我想更多地通过资本来做这件事。所以我要开一家房地产投资信托公司。这不仅需要关于投资房地产和建设房地产的具体知识，还需要关于金融市场、资本市场以及房地产信托如何运作的具体知识。</p><p><strong>Real estate tech companies apply the maximum leverage<br>房地产科技公司应用最大杠杆</strong></p><p>One level beyond that might be somebody who says, “Actually, I want to bring the maximum leverage to bear in this market, and the maximum specific knowledge.” That person would say, “Well, I understand real estate, and I understand everything from basic housing construction, to building properties and selling them, to how real estate markets move and thrive, and I also understand the technology business. I understand how to recruit developers, how to write code and how to build good product, and I understand how to raise money from venture capitalists and how to return it and how all of that works.”<br>再往前一层，可能会有人说，“实际上，我想在这个市场中发挥最大的杠杆作用，以及最大的具体知识。那个人会说，“嗯，我了解房地产，我了解从基本的住房建设到建造房产和出售房产，再到房地产市场如何移动和繁荣，我也了解技术业务。我懂得如何招募开发人员，如何编写代码，如何构建好的产品，我懂得如何从风险投资家那里筹集资金，如何返还资金，以及所有这些工作是如何运作的。</p><p>Obviously not a single person may know this. You may pull a team together to do it where each have different skill sets, but that combined entity would have specific knowledge in technology and in real estate.<br>显然，没有一个人可能知道这一点。你可以把一个团队聚集在一起，每个人都有不同的技能组合，但这个组合后的实体将拥有技术和房地产方面的特定知识。</p><p>It would have massive accountability because that company’s name would be a very high risk, high reward effort attached to the whole thing, and people would devote their lives to it and take on significant risk.<br>它将承担巨大的责任，因为该公司的名字将是一个非常高风险、高回报的努力，人们会为此付出生命并承担重大风险。</p><p>It would have leverage in code with lots of developers. It would have capital with investors putting money in and the founder’s own capital. It would have labor of some of the highest quality labor that you can find, which is high quality engineers and designers and marketers who are working on the company.<br>它将在代码中与许多开发人员一起发挥杠杆作用。它将拥有投资者投入资金和创始人自有资本的资本。它将拥有一些你能找到的最高质量的劳动力，即为公司工作的高素质工程师、设计师和营销人员。</p><p>Then you may end up with a Trulia or a RedFin or a Zillow kind of company, and then the upside could potentially be in the billions of dollars, or the hundreds of millions of dollars.<br>然后，你最终可能会得到一家Trulia或RedFin或Zillow类型的公司，然后上行空间可能达到数十亿美元或数亿美元。</p><p>As you layer in more and more kinds of knowledge that can only be gained on the job and aren’t common knowledge, and you layer in more and more accountability and risk-taking, and you layer in more and more great people working on it and more and more capital on it, and more and more code and media on it, you keep expanding the scope of the opportunity all the way from the day-laborer, who might just literally be scrappling on the ground with their hands, all the way up to somebody who started a real estate tech company and then took it public.<br>随着你加入越来越多的知识，这些知识只能在工作中获得，而不是常识，你加入越来越多的责任感和冒险精神，越来越多的优秀人才参与其中，越来越多的资本参与其中，越来越多的代码和媒体参与其中， 你不断扩大机会的范围，从可能只是用手在地上刮擦的临时工，一直到创办房地产科技公司然后上市的人。</p><h2 id="Judgment-Is-the-Decisive-Skill-判断力是决定性的技能"><a href="#Judgment-Is-the-Decisive-Skill-判断力是决定性的技能" class="headerlink" title="Judgment Is the Decisive Skill 判断力是决定性的技能"></a>Judgment Is the Decisive Skill 判断力是决定性的技能</h2><p><em>In an age of nearly infinite leverage, judgment is the most important skill<br>在一个杠杆几乎无限的时代，判断力是最重要的技能</em></p><p><strong>In an age of infinite leverage, judgment becomes the most important skill<br>在一个无限杠杆的时代，判断力成为最重要的技能</strong></p><p><strong>Nivi:</strong> We spoke about specific knowledge, we talked about accountability, we talked about leverage. The last skill that Naval talks about in his tweetstorm is judgment, where he says, that “Leverage is a force multiplier for your judgment.”<br>Nivi：我们谈到了具体的知识，我们谈到了问责制，我们谈到了杠杆作用。纳瓦尔在他的推特风暴中谈到的最后一项技能是判断力，他说：“杠杆是你判断力的倍增器。</p><p><strong>Naval:</strong> We are now living in an age of nearly infinite leverage, and all the great fortunes are created through leverage. Your first job is to go and obtain leverage, and you can obtain leverage through permission by getting people to work for you, or by raising capital.<br>Naval：我们现在生活在一个杠杆几乎无限的时代，所有的巨大财富都是通过杠杆创造的。你的第一份工作是去获得杠杆，你可以通过让人们为你工作或筹集资金来获得许可。</p><p>Or you can get leverage permissionlessly by learning how to code or becoming good communicator and podcasting, broadcasting, creating videos, writing, etc.<br>或者你可以通过学习如何编码或成为优秀的沟通者和播客、广播、创建视频、写作等来获得无许可的杠杆。</p><p>That’s how you get leverage, but once you have leverage, what do you do with it? Well, the first part of your career’s spent hustling to get leverage. Once you have the leverage, then you wanna slow down a bit, because your judgment really matters.<br>这就是你获得杠杆的方式，但一旦你有了杠杆，你会用它做什么？好吧，你职业生涯的第一部分花在了忙于获得杠杆上。一旦你有了杠杆，那么你就要放慢脚步，因为你的判断真的很重要。</p><p>It’s like you’ve gone from  steering your sailboat around to now you’re steering an ocean liner or a tanker. You have a lot more at risk, but you have a lot more to gain as well. You’re carrying a much higher payload. In an age of infinite leverage, judgment becomes the most important skill.<br>这就像你已经从驾驶帆船到现在驾驶远洋客轮或油轮一样。你面临的风险更大，但你也有更多的收获。您携带的有效载荷要高得多。在一个杠杆无限的时代，判断力成为最重要的技能。</p><p>Warren Buffett is so wealthy now because of his judgment. Even if you were to take away all of Warren’s money, tomorrow, investors would come out of the woodwork and hand him a $100 billion because they know his judgment is so good, and they would give him a big chunk of that $100 billion to invest.<br>沃伦·巴菲特（Warren Buffett）现在之所以如此富有，是因为他的判断力。即使你拿走了沃伦所有的钱，明天，投资者也会从木工中走出来，交给他1000亿美元，因为他们知道他的判断力非常好，他们会把这1000亿美元中的很大一部分交给他投资。</p><p><strong>Everything else you do is setting you up to apply judgment<br>你所做的其他一切都是为了让你应用判断力</strong></p><p>Ultimately, everything else that you do is actually setting you up to apply your judgment. One of the big things that people rail on is CEO pay. For sure there’s crony capitalism that goes on where these CEOs control their boards and the boards give them too much money.<br>归根结底，你所做的其他一切实际上都是为了让你运用你的判断。人们抱怨的一件大事是CEO的薪酬。可以肯定的是，裙带资本主义仍在继续，这些首席执行官控制着他们的董事会，而董事会给了他们太多的钱。</p><p>But, there are certain CEOs who definitely earned their keep because their judgment is better. If you’re steering a big ship, if you’re steering Google or Apple, and your judgment is 10 or 20 percent better than the next person’s, society will literally pay you hundreds of millions of dollars more, because you’re steering a $100 billion ship.<br>但是，有些CEO肯定赢得了他们的保留，因为他们的判断力更好。如果你在驾驶一艘大船，如果你在驾驶谷歌或苹果，而你的判断力比下一个人好10%或20%，那么社会实际上会多付给你数亿美元，因为你正在驾驶一艘价值1000亿美元的船。</p><p>If you’re on course 10 or 20 percent of the time more often than the other person, the compounding results on that hundreds of billions of dollars you’re managing will be so large that your CEO pay will be dwarfed in comparison.<br>如果你上课的时间比其他人多10%或20%，那么你所管理的数千亿美元的复合结果将是如此之大，以至于你的CEO薪酬相比之下将相形见绌。</p><p>Demonstrated judgment, credibility around the judgment, is so critical. Warren Buffett wins here because he has massive credibility. He’s been highly accountable. He’s been right over and over in the public domain. He’s built a reputation for very high integrity, so you can trust him.<br>表现出判断力，围绕判断力的可信度，是如此关键。沃伦·巴菲特（Warren Buffett）在这里获胜，因为他拥有巨大的信誉。他一直很负责任。他一遍又一遍地在公共领域做对。他以非常高的诚信而闻名，所以你可以信任他。</p><p>A person like that, people will throw infinite leverage behind him because of his judgment. Nobody asks him how hard he works; nobody asks him when he wakes up or when he goes to sleep. They’re like, “Warren, just do your thing.”<br>这样的人，人们会因为他的判断力而在他身后投下无限的筹码。没有人问他工作有多努力;没有人问他什么时候醒来或什么时候睡觉。他们就像，“沃伦，做你的事吧。</p><p>Judgment, especially demonstrated judgment, with high accountability, clear track record, is critical.<br>判断力，尤其是表现出的判断力，具有高度的问责制和清晰的记录，至关重要。</p><p><strong>Judgment is knowing the long-term consequences of your actions<br>判断力是知道你行为的长期后果</strong></p><p><strong>Nivi:</strong> Let’s define judgment. I would define it as knowing the long-term effects of your decisions, or  being able to predict the long-term effects of your decisions.<br>Nivi：让我们来定义判断力。我将其定义为了解您的决策的长期影响，或者能够预测您的决策的长期影响。</p><p><strong>Naval:</strong> It’s funny. My definition of wisdom is knowing the long term consequences of your actions, so they’re not all that different. Wisdom is just judgment on a personal domain.<br>Naval：这很有趣。我对智慧的定义是知道你行为的长期后果，所以它们并没有那么不同。智慧只是对个人领域的判断。</p><p>Wisdom applied to external problems I think is judgment. They’re highly linked. But, yes, it’s knowing the long term consequences of your actions and then making the right decision to capitalize on that.<br>我认为，应用于外部问题的智慧是判断。它们之间有着高度的联系。但是，是的，它知道你的行为的长期后果，然后做出正确的决定来利用它。</p><p><strong>Without experience, judgment is often less than useless<br>没有经验，判断往往毫无用处</strong></p><p>Judgment is very hard to build up. This is where both intellect and experience come in play.<br>判断力是很难建立的。这就是智力和经验发挥作用的地方。</p><p>There are many problems with the so-called intellectuals in the ivory tower, but one of the reasons why Nassim Taleb rails against them is because they have no skin in the game. They have no real-world experience, so they just apply purely intellect.<br>象牙塔里的所谓知识分子有很多问题，但纳西姆·塔勒布（Nassim Taleb）抨击他们的原因之一是因为他们在游戏中没有皮肤。他们没有现实世界的经验，所以他们只是纯粹地应用智力。</p><p>Intellect without any experience is often worse than useless because you get the confidence that the intellect gives you, and you get some of the credibility, but because you had no skin in the game, and you had no real experience, and no real accountability, you’re just throwing darts.<br>没有任何经验的智力往往比无用更糟糕，因为你得到了智力给你的信心，你得到了一些可信度，但因为你在游戏中没有皮肤，你没有真正的经验，也没有真正的责任，你只是在扔飞镖。</p><p>The real world is always far, far more complex than we can intellectualize. Especially all the interesting, fast-moving edge domains and problems, you can’t get there without experience. If you are smart and you iterate fast, it’s not even you put 10,000 hours into something, but you take 10,000 tries at something.<br>现实世界总是比我们所能想象的要复杂得多。尤其是所有有趣、快速发展的边缘领域和问题，没有经验就无法实现。如果你很聪明，而且迭代速度很快，那么你甚至不会在某件事上投入 10,000 小时，而是在某件事上尝试 10,000 次。</p><p><strong>The people with the best judgment are among the least emotional<br>判断力最好的人是最不情绪化的人之一</strong></p><p>If you are smart and you have a lot of quick iterations, and you try to keep your emotions out of it, the people with the best judgment are actually among the least emotional. A lot of the best investors are considered almost robotic in that regard, but I wouldn’t be surprised if even the best entrepreneurs often come across as unemotional.<br>如果你很聪明，你有很多快速迭代，并且你试图让你的情绪远离它，那么判断力最好的人实际上是最不情绪化的人之一。在这方面，许多最优秀的投资者几乎被认为是机器人，但如果即使是最优秀的企业家也经常给人留下冷漠的印象，我也不会感到惊讶。</p><p>There is sort of this archetype of the passionate entrepreneur, and yeah, they have to care about what they’re doing, but they also have to see very clearly what’s actually happening. The thing that prevents you from seeing what’s actually happening are your emotions. Our emotions are constantly clouding our judgment, and in investing, or in running companies, or in building products, or being an entrepreneur, emotions really get in the way.<br>有一种充满激情的企业家的原型，是的，他们必须关心自己在做什么，但他们也必须非常清楚地看到实际发生的事情。阻止你看到实际发生的事情的是你的情绪。我们的情绪不断影响着我们的判断力，在投资、经营公司、开发产品或成为企业家时，情绪确实会成为阻碍。</p><p>Emotions are what prevent you from seeing what’s actually happening, until you can no longer resist the truth of what’s happening, until it becomes too sudden, and then you’re forced into suffering; which is sort of a breaking of this fantasy that you had put together.<br>情绪是阻止你看到实际发生的事情的原因，直到你无法再抗拒正在发生的事情的真相，直到它变得太突然，然后你被迫陷入痛苦;这在某种程度上打破了你拼凑的这种幻想。</p><p><strong>Nivi:</strong> To try and connect some of these concepts, I would say that, first, you’re accountable for your judgment. Judgment is the exercise of wisdom. Wisdom comes from experience; and that experience can be accelerated through short iterations.<br>Nivi：为了尝试将其中一些概念联系起来，我想说的是，首先，你要对自己的判断负责。判断力是智慧的运用。智慧来自经验;这种体验可以通过短迭代来加速。</p><p><strong>Top investors often sound like philosophers<br>顶级投资者通常听起来像哲学家</strong></p><p><strong>Naval:</strong> And the reason why a lot of the top investors, a lot of the value investors, like if you read Jeremy Grantham, or you read Warren Buffet, or you read up on Michael Burry, these people sound like philosophers, or they are philosophers, or they’re reading a lot of history books or science books.<br>Naval：为什么很多顶级投资者，很多价值投资者，比如你读过杰里米·格兰瑟姆（Jeremy Grantham），或者你读过沃伦·巴菲特（Warren Buffet），或者你读过迈克尔·伯里（Michael Burry），这些人听起来像哲学家，或者他们是哲学家，或者他们正在阅读很多历史书或科学书籍。</p><p>Like what are they doing, shouldn’t they be reading investment books. No. Investment books are the worst place to learn about investment, because investment is a real-world activity that is highly multi-variate, all the advantages are always being competed away. It’s always on the cutting-edge.<br>就像他们在做什么一样，他们不应该阅读投资书籍吗？不。投资书籍是学习投资最糟糕的地方，因为投资是一项高度多变量的现实世界活动，所有的优势总是被竞争掉。它始终处于最前沿。</p><p>What you actually just need is very, very broad-based judgment and thinking. The best way to do that is to study everything, including a lot of philosophy. Philosophy also makes you more stoic, makes you less emotional, and so you make better decisions; you have better judgment.<br>你真正需要的是非常非常广泛的判断和思考。最好的方法是研究一切，包括很多哲学。哲学也会让你更坚忍，让你不那么情绪化，所以你会做出更好的决定;你有更好的判断力。</p><p><strong>The more outraged someone is, the worse their judgment<br>一个人越愤怒，他们的判断就越差</strong></p><p>One simple thing is I see … I go out on Twitter and it seems like half of Twitter is outraged at something at all times. You can go within someone’s Twitter feed and get at least some semblance of what it must be like to be in their head all the time.<br>一件简单的事情是我看到了……我去Twitter上，似乎有一半的Twitter在任何时候都对某些事情感到愤怒。你可以进入某人的 Twitter 提要，至少可以了解他们一直在脑海中的样子。</p><p>The more outraged somebody is, I guarantee you, the worse their judgment is. If someone’s constantly tweeting political outrage, and just see like an angry person getting into fights, you don’t want to hand this person the keys to your car, let alone the keys to your company.<br>我向你保证，一个人越愤怒，他们的判断就越糟糕。如果有人不断在推特上发表政治愤怒，只是看到一个愤怒的人打架，你不想把你车的钥匙交给这个人，更不用说你公司的钥匙了。</p><h2 id="Set-an-Aspirational-Hourly-Rate-设定理想的小时费率"><a href="#Set-an-Aspirational-Hourly-Rate-设定理想的小时费率" class="headerlink" title="Set an Aspirational Hourly Rate 设定理想的小时费率"></a>Set an Aspirational Hourly Rate 设定理想的小时费率</h2><p><em>Outsource tasks that cost less than your hourly rate<br>外包成本低于小时费率的任务</em></p><p><strong>Set and enforce an aspirational hourly rate<br>设定并强制执行理想的小时费率</strong></p><p><strong>Nivi:</strong> We covered the skills you need to get rich. They included specific knowledge, accountability, leverage, judgment and life-long learning. Let’s talk about the importance of working hard and valuing your time.<br>Nivi：我们介绍了致富所需的技能。它们包括特定知识、问责制、杠杆作用、判断力和终身学习。让我们谈谈努力工作和珍惜时间的重要性。</p><p><strong>Naval:</strong> No one is going to value you more than you value you. Set a high personal hourly rate, and stick to it. When I was young, I decided I was worth a lot more than the market thought I was worth. And I started treating myself that way.<br>Naval：没有人会比你更看重你。设定一个较高的个人小时费率，并坚持下去。当我年轻的时候，我认为我的价值比市场认为的要高得多。我开始这样对待自己。</p><p>Factor your time into every decision. Say you value your time at $100 an hour. If you decide to spend an hour driving across town to get something, you’re effectively throwing away $100. Are you going to do that?<br>在每一个决定中都考虑到你的时间。假设您以每小时 100 美元的价格珍惜您的时间。如果你决定花一个小时开车穿过城镇去买东西，你实际上是在浪费 100 美元。你打算这样做吗？</p><p>Say you buy something from Amazon and they screw it up. Is it worth your time to return it? Is it worth the mental hassle? Keep in mind that you will have less time for work, including mentally high-output work. Do you want to use that time running errands and solving little problems? Or do you want to save it for the big stuff?<br>假设你从亚马逊买了东西，他们把它搞砸了。值得您花时间归还吗？值得精神上的麻烦吗？请记住，您将有更少的时间工作，包括精神上高产出的工作。你想利用这段时间跑腿和解决小问题吗？或者你想把它留给大东西？</p><p>The great scientists were terrible at managing their home lives. None of them had an organized room, or made social events on time, or sent their thank-you cards.<br>伟大的科学家在管理他们的家庭生活方面很糟糕。他们都没有一个有组织的房间，也没有按时举办社交活动，也没有发送感谢卡。</p><p><strong>You can’t penny pinch your way to wealth<br>你不能一分钱捏着你的财富之路</strong></p><p>You can spend your life however you want. But if you want to get rich, it has to be your top priority. It has to come before anything else, which means you can’t penny-pinch. This is what people don’t understand.<br>你可以随心所欲地度过你的生活。但如果你想致富，它必须是你的首要任务。它必须先于其他任何事情，这意味着你不能一分钱一分货。这是人们不明白的。</p><p>You can penny-pinch your way to basic sustenance. You can keep expenses low and maybe retire early. That’s perfectly valid. But we’re here to talk about wealth creation. If you’re going to create wealth, it has to be your number-one, overwhelming priority.<br>你可以一分钱一分货地获得基本生计。您可以保持较低的开支，也许可以提前退休。这是完全正确的。但我们在这里谈论的是财富创造。如果你要创造财富，它必须是你的首要任务。</p><p><strong>My aspirational rate was $5,000&#x2F;hr<br>我的理想费率是 5,000 美元&#x2F;小时</strong></p><p>Fast-forward to your wealthy self and pick an intermediate hourly rate. Before I had any real money and you could hire me, I set an aspirational rate of $5,000 an hour.<br>快进到你富有的自己，选择一个中间的小时费率。在我没有任何真金白银并且你可以雇用我之前，我设定了每小时 5,000 美元的理想费率。</p><p>Of course, I still ended up doing stupid things like arguing with the electrician or returning the broken speaker. But I shouldn’t have. And I did a lot less of it my friends. I would make a theatrical show out of throwing something in the trash or giving it to Salvation Army, rather than returning it or trying to fix it.<br>当然，我最终还是做了一些愚蠢的事情，比如与电工争吵或归还损坏的扬声器。但我不应该这样做。我的朋友们，我做的要少得多。我会把东西扔进垃圾桶或交给救世军，而不是归还或试图修理它。</p><p>I would argue with girlfriends, “I don’t do that. That’s not a problem that I solve.” I still argue that today with my wife and with my mother, when she hands me little to-do’s. I say, “I would rather hire you an assistant.” This was true even when I didn’t have money.<br>我会和女朋友争辩说，“我不那样做。这不是我能解决的问题。今天，我仍然和我的妻子和我的母亲争论这个问题，当她交给我一些小事时。我说，“我宁愿雇你一个助手。即使我没有钱，也是如此。</p><p><strong>If you can outsource something for less than your hourly rate, do it<br>如果您可以以低于小时费率的价格外包某些东西，那就去做吧</strong></p><p>Another way to think about this: If you can outsource something—or not do something—for less than your hourly rate, outsource it or don’t do it. If you can hire someone to do it for less than your hourly rate, hire them. That includes things like cooking. You may want to make your own healthy, home-cooked meals. But if you can outsource it, do that instead.<br>另一种思考方式是：如果你可以以低于你的小时费率外包某事——或者不做某事——那就外包或不做。如果您可以以低于您的小时费率雇用某人来做这件事，请雇用他们。这包括烹饪之类的事情。您可能想自己做健康的家常饭菜。但是，如果您可以将其外包，请改为外包。</p><p>People say, “What about the joy of life? What about getting it right, just your way?” Sure, you can do that. But you’re not going to be wealthy, because you’ve made something else a priority.<br>人们说，“生命的乐趣呢？按照你的方式做对呢？当然，你可以这样做。但你不会变得富有，因为你把其他事情放在首位。</p><p><a href="https://twitter.com/paulg">Paul Graham</a> said it well for <a href="https://www.ycombinator.com/">Y Combinator</a> startups. He said you should be working on your product and getting product-market fit, and you should be exercising and eating healthy. That’s about it. That’s all you have time for while you’re on this mission.<br>保罗·格雷厄姆（Paul Graham）对Y Combinator的创业公司说得很好。他说，你应该在产品上下功夫，让产品与市场契合，你应该锻炼身体，吃得健康。仅此而已。这就是你在执行这项任务时的全部时间。</p><p><strong>Your hourly rate should seem absurdly high<br>你的时薪应该高得离谱</strong></p><p>Set a very high aspirational hourly rate for yourself, and stick to it. It should seem and feel absurdly high. If it doesn’t, it’s not high enough. Whatever you pick, my advice is to raise it.<br>为自己设定一个非常高的理想时薪，并坚持下去。它应该看起来和感觉高得离谱。如果没有，则说明不够高。无论你选择什么，我的建议是提高它。</p><p>For the longest time, I used $5,000 an hour. If you extrapolate that out as an annual salary, it’s multiple millions of dollars per year. I actually think I’ve beaten it, which is interesting given that I’m not the hardest worker. I work through bursts of energy when I’m motivated to work on something.<br>在很长一段时间里，我每小时用 5,000 美元。如果你把它推断为年薪，那就是每年数百万美元。实际上，我认为我已经击败了它，这很有趣，因为我不是最勤奋的人。当我有动力去做某事时，我会精力充沛地工作。</p><h2 id="Work-As-Hard-As-You-Can-尽你所能地工作"><a href="#Work-As-Hard-As-You-Can-尽你所能地工作" class="headerlink" title="Work As Hard As You Can 尽你所能地工作"></a>Work As Hard As You Can 尽你所能地工作</h2><p><em>Even though what you work on and who you work with are more important<br>即使你的工作内容和与谁一起工作更重要</em></p><p><strong>Work as hard as you can<br>尽你所能地努力工作</strong></p><p><strong>Naval:</strong> Let’s talk about hard work. There’s a battle that happens on Twitter a lot. Should you work hard or should you not? <a href="https://twitter.com/dhh">David Heinemeier Hansson</a> says, “It’s like you’re slave-driving people.” <a href="https://twitter.com/rabois">Keith Rabois</a> says, “No, all the great founders worked their fingers to the bone.”<br>Naval：让我们谈谈努力工作。Twitter上经常发生一场战斗。你应该努力工作还是不应该努力工作？大卫·海涅迈尔·汉森（David Heinemeier Hansson）说：“这就像你是奴隶驱使的人。基思·拉布瓦（Keith Rabois）说：“不，所有伟大的创始人都竭尽全力。</p><p>They’re talking past each other.<br>他们正在互相交谈。</p><p>First of all, they’re talking about two different things. David is talking about employees and a lifestyle business. If you’re doing that, your number one priority is not getting wealthy. You have a job, a family and also your life.<br>首先，他们谈论的是两件不同的事情。大卫谈论的是员工和生活方式业务。如果你这样做，你的首要任务不是变得富有。你有一份工作，一个家庭，还有你的生活。</p><p>Keith is talking about the Olympics of startups. He’s talking about the person going for the gold medal and trying to build a multi-billion dollar public company. That person has to get everything right. They have to have great judgment. They have to pick the right thing to work on. They have to recruit the right team. They have to work crazy hard. They’re engaged in a competitive sprint.<br>Keith正在谈论创业公司的奥运会。他说的是那个想要获得金牌并试图建立一家价值数十亿美元的上市公司的人。那个人必须把一切都做好。他们必须有很大的判断力。他们必须选择正确的工作。他们必须招募合适的团队。他们必须疯狂地努力工作。他们正在进行竞争激烈的冲刺。</p><p>If getting wealthy is your goal, you’re going to have to work as hard as you can. But hard work is no substitute for who you work with and what you work on. Those are the most important things.<br>如果致富是你的目标，你就必须尽你所能地努力工作。但是，努力工作并不能替代你与谁一起工作以及你做什么。这些是最重要的事情。</p><p><strong>What you work on and who you work with are more important<br>你做什么，和谁一起工作更重要</strong></p><p>Marc Andreessen came up with the concept of the “<a href="https://pmarchive.com/guide_to_startups_part4.html">product-market fit</a>.” I would expand that to “product-market-founder fit,” taking into account how well a founder is personally suited to the business. The combination of the three should be your overwhelming goal.<br>马克·安德森（Marc Andreessen）提出了“产品与市场契合”的概念。我会将其扩展到“产品-市场-创始人的契合度”，考虑到创始人个人对业务的适应程度。这三者的结合应该是你压倒性的目标。</p><p>You can save a lot of time by picking the right area to work in. Picking the right people to work with is the next most important piece. Third comes how hard you work. They are like three legs of a stool. If you shortchange any one of them, the whole stool is going to fall. You can’t easily pick one over the other.<br>通过选择合适的工作区域，您可以节省大量时间。选择合适的人一起工作是下一个最重要的部分。第三是你有多努力。它们就像凳子的三条腿。如果你把其中任何一个都换了，整个凳子都会掉下来。你不能轻易地选择一个而不是另一个。</p><p>When you’re building a business, or a career, first figure out: “What should I be doing? Where is a market emerging? What’s a product I can build that I’m excited to work on, where I have specific knowledge?”<br>当你在建立企业或事业时，首先要弄清楚：“我应该做什么？市场在哪里出现？我可以构建什么产品，我很高兴参与其中，并且我有特定的知识？</p><p><strong>No matter how high your bar is, raise it<br>无论你的门槛有多高，都要提高它</strong></p><p>Second, surround yourself with the best people possible. If there’s someone greater out there to work with, go work with them. When people ask for advice about choosing the right startup to join, I say, “Pick the one that’s going to have the best alumni network for you in the future.” Look at the PayPal mafia—they worked with a bunch of geniuses, so they all got rich. Pick the people with the highest intelligence, energy and integrity that you can find.<br>其次，让自己与最优秀的人在一起。如果有更伟大的人可以合作，那就去和他们一起工作。当人们询问如何选择合适的创业公司加入时，我会说，“选择一个将来会为你提供最好的校友网络的公司。看看PayPal黑手党——他们和一群天才一起工作，所以他们都变得富有了。选择你能找到的具有最高智慧、精力和正直的人。</p><p>And no matter how high your bar is, raise it.<br>无论你的门槛有多高，都要提高它。</p><p>Finally, once you’ve picked the right thing to work on and the right people, work as hard as you can.<br>最后，一旦你选择了正确的工作和合适的人，就尽可能地努力工作。</p><p><strong>Nobody really works 80 hours a week<br>没有人真正每周工作 80 小时</strong></p><p>This is where the mythology gets a little crazy. People who say they work 80-hour weeks, or even 120-hour weeks, often are just status signaling. It’s showing off. Nobody really works 80 to 120 hours a week at high output, with mental clarity. Your brain breaks down. You won’t have good ideas.<br>这就是神话变得有点疯狂的地方。那些说自己每周工作 80 小时，甚至每周工作 120 小时的人，通常只是状态信号。这是在炫耀。没有人真正每周工作 80 到 120 小时，而且头脑清晰。你的大脑崩溃了。你不会有好主意。</p><p>The way people tend to work most effectively, especially in knowledge work, is to sprint as hard as they can while they feel inspired to work, and then rest. They take long breaks.<br>人们最有效地工作的方式，尤其是在知识工作中，是尽可能努力地冲刺，同时他们感到工作受到启发，然后休息。他们需要长时间的休息。</p><p>It’s more like a lion hunting and less like a marathoner running. You sprint and then you rest. You reassess and then you try again. You end up building a marathon of sprints.<br>这更像是猎狮，而不是马拉松运动员跑步。你冲刺，然后你休息。您重新评估，然后再试一次。你最终会建立一个马拉松式的冲刺。</p><p><strong>Inspiration is perishable<br>灵感是易腐烂的</strong></p><p>Inspiration is perishable. When you have inspiration, act on it right then and there.<br>灵感是易腐烂的。当你有灵感时，立即采取行动。</p><p>If I’m inspired to write a blog post or publish a tweetstorm, I should do it right away. Otherwise, it’s not going to get out there. I won’t come back to it. Inspiration is a beautiful and powerful thing. When you have it, seize it.<br>如果我受到启发，想写一篇博文或发布一篇推文风暴，我应该马上去做。否则，它不会走出去。我不会再回来了。灵感是一件美丽而强大的事情。当你拥有它时，抓住它。</p><p><strong>Impatience with actions, patience with results<br>对行动不耐烦，对结果有耐心</strong></p><p>People talk about impatience. When do you know to be impatient? When do you know to be patient? My glib tweet on this was: “<a href="https://twitter.com/naval/status/1008533213919133697?lang=en">Impatience with actions, patience with results.</a>” I think that’s a good philosophy for life.<br>人们谈论不耐烦。你什么时候知道不耐烦？你什么时候知道要有耐心？我对此的轻描淡写的推文是：“对行动不耐烦，对结果有耐心。我认为这是一个很好的人生哲学。</p><p>Anything you have to do, get it done. Why wait? You’re not getting any younger.<br>任何你必须做的事，都要完成。还等什么？你不会再年轻了。</p><p>You don’t want to spend your life waiting in line. You don’t want to spend it traveling back and forth. You don’t want to spend it doing things that aren’t part of your mission.<br>你不想把你的一生都花在排队等候上。你不想花钱来回旅行。你不想把钱花在做不属于你使命的事情上。</p><p>When you do these things, do them as quickly as you can and with your full attention so you do them well. Then be patient with the results because you’re dealing with complex systems and a lot of people.<br>当你做这些事情时，尽可能快地做，全神贯注，这样你才能把它们做好。然后对结果要有耐心，因为你要处理复杂的系统和很多人。</p><p>It takes a long time for markets to adopt products. It takes time for people to get comfortable working with each other. It takes time for great products to emerge as you polish away.<br>市场需要很长时间才能采用产品。人们需要时间来适应彼此之间的合作。随着您的打磨，伟大的产品需要时间才能出现。</p><p>Impatience with actions, patience with results.<br>对行动不耐烦，对结果有耐心。</p><p>If I discover a problem in one of my businesses, I won’t sleep until the resolution is at least in motion. If I’m on the board of a company, I’ll call the CEO. If I’m running the company, I’ll call my reports. If I’m responsible, I’ll get on it, right then and there, and solve it.<br>如果我在我的一个企业中发现一个问题，我不会睡觉，直到解决方案至少在行动中。如果我是一家公司的董事会成员，我会打电话给首席执行官。如果我在经营公司，我会打电话给我的报告。如果我负责，我会立即解决它。</p><p>If I don’t solve a problem the moment it happens—or if I don’t move towards solving it—I have no peace. I have no rest. I have no happiness until the problem is solved. So I solve it as quickly as possible. I literally won’t sleep until it’s solved—maybe that’s just a personal characteristic. But it’s worked out well in business.<br>如果我在问题发生的那一刻不解决它，或者如果我不去解决它，我就没有平安。我没有休息。在问题得到解决之前，我没有快乐。所以我尽快解决它。在它得到解决之前，我真的不会睡觉——也许这只是个人特征。但它在商业上运作良好。</p><h2 id="Be-Too-Busy-to-‘Do-Coffee’-太忙而无法“煮咖啡”"><a href="#Be-Too-Busy-to-‘Do-Coffee’-太忙而无法“煮咖啡”" class="headerlink" title="Be Too Busy to ‘Do Coffee’ 太忙而无法“煮咖啡”"></a>Be Too Busy to ‘Do Coffee’ 太忙而无法“煮咖啡”</h2><p><em>Ruthlessly decline meetings<br>无情地拒绝会议</em></p><p><strong>Be too busy to ‘do coffee’ while keeping an uncluttered calendar<br>太忙了，没有时间“喝咖啡”，同时保持日历整洁</strong></p><p><strong>Naval:</strong> Another tweet was: “<a href="https://twitter.com/naval/status/1002108466809323521?lang=en">You should be too busy to ‘do coffee,’ while still keeping an uncluttered calendar.</a>”<br>Naval：另一条推文是：“你应该太忙了，不能’喝咖啡’，同时仍然保持一个整洁的日历。</p><p>People who know me know I’m famous for simultaneously doing two things.<br>认识我的人都知道，我以同时做两件事而闻名。</p><p>First, I keep a very clean calendar. I have almost no meetings on it. When some people see my calendar, they almost weep.<br>首先，我有一个非常干净的日历。我几乎没有开会。当有些人看到我的日历时，他们几乎要哭了。</p><p>Second, I’m busy all the time. I’m always doing something. It’s usually work-related. It’s whatever high-impact thing that needs to be done, that I’m most inspired to do.<br>其次，我一直很忙。我总是在做一些事情。这通常与工作有关。这是任何需要做的高影响力的事情，我最有灵感去做。</p><p>The only way to do that is to constantly, and ruthlessly, decline meetings.<br>要做到这一点，唯一的办法就是不断地、无情地拒绝会议。</p><p>People want to “do coffee” and build relationships. That’s fine early in your career, when you’re still exploring. But later in your career—when you’re exploiting, and there are more things coming at you than you have time for—you have to ruthlessly cut meetings out of your life.<br>人们想要“喝咖啡”并建立关系。在你职业生涯的早期，当你还在探索的时候，这很好。但在你职业生涯的后期——当你在剥削时，有比你有时间做的事情更多——你必须无情地将会议从你的生活中剔除。</p><p><strong>Ruthlessly cut meetings 无情地削减会议</strong></p><p>If someone wants a meeting, see if they will do a call instead. If they want to call, see if they will email instead. If they want to email, see if they will text instead. And you probably should ignore most text messages—unless they’re true emergencies.<br>如果有人想要开会，看看他们是否会打个电话。如果他们想打电话，看看他们是否会改为发送电子邮件。如果他们想发电子邮件，看看他们是否会发短信。你可能应该忽略大多数短信——除非它们是真正的紧急情况。</p><p>You have to be utterly ruthless about dodging meetings. When you do meetings, make them walking meetings. Do standing meetings. Keep them short, actionable and small. Nothing is getting done in a meeting with eight people around a conference table. You are literally dying one hour at a time.<br>你必须完全无情地躲避会议。当你开会时，让他们走路开会。举行常设会议。保持简短、可操作和小巧。在会议桌旁有八个人的会议中，什么也做不了。你实际上是一次死一个小时。</p><p><strong>Nivi:</strong> “Doing coffee” reminds me of an old quote, I think from Steve Jobs, when someone asked him why Apple didn’t come to a convention. His response was something like, “Because we wouldn’t be here working.”<br>Nivi：“做咖啡”让我想起了史蒂夫·乔布斯（Steve Jobs）的一句老话，当时有人问他为什么苹果不来参加大会。他的回答是，“因为我们不会在这里工作。</p><p><strong>Naval:</strong> I used to have a tough time turning people down for meetings. Now I just tell them outright, “I don’t do non-transactional meetings. I don’t do meetings without a strict agenda. I don’t do meetings unless we absolutely have to.”<br>Naval：我曾经很难拒绝人们参加会议。现在我只是直截了当地告诉他们，“我不做非事务性的会议。我不会在没有严格议程的情况下开会。除非我们绝对有必要，否则我不会开会。</p><p>Nivi used to do this. When people asked us for get-to-know-you meetings, he would say, “We don’t do meetings unless it’s life-and-death urgent.” The person has to respond, “Yeah, it’s life-and-death urgent” or there’s no meeting.<br>Nivi 曾经这样做过。当人们要求我们开会时，他会说，“除非是生死攸关的紧急会议，否则我们不会开会。这个人必须回答，“是的，这是生死攸关的紧急事件”，否则就没有会议。</p><p><strong>People will meet with you when you have proof of work<br>当您有工作证明时，人们会与您会面</strong></p><p>Busy people will take your meeting when you have something important or valuable. But you have to come with a proper calling card. It should be: “Here’s what I’ve done. Here’s what I can show you. Let’s meet if this is useful to you, and I’ll be respectful of your time.”<br>当你有重要或有价值的事情时，忙碌的人会参加你的会议。但你必须带上一张合适的电话卡。它应该是：“这是我所做的。这是我可以向你展示的。如果这对你有用，我们见面吧，我会尊重你的时间。</p><p>You have to build up credibility. For example, when a tech investor looks at a startup, the first thing they want to see is evidence of product progress. They don’t just want to see a slide deck. Product progress is the entrepreneur’s resume. It’s an unfake-able resume.<br>你必须建立信誉。例如，当科技投资者关注一家初创公司时，他们首先希望看到的是产品进步的证据。他们不只是想看幻灯片。产品进步是企业家的简历。这是一份不可伪造的简历。</p><p>You have to do the work. To use a crypto analogy, you have to have proof of work. If you have that and you truly have something interesting, then you shouldn’t hesitate to put it together in an email and send it. Even then, when asking for a meeting, you want to be actionable.<br>你必须做这项工作。要使用加密类比，您必须有工作量证明。如果你有这个，而且你真的有一些有趣的东西，那么你应该毫不犹豫地把它放在一封电子邮件中并发送。即便如此，在要求开会时，您也希望具有可操作性。</p><p><strong>Free your time and mind<br>释放您的时间和思想</strong></p><p>If you think you’re going to “make it” by networking and attending a bunch of meetings, you’re probably wrong. Networking can be important early in your career. And you can get serendipitous with meetings. But the odds are pretty low.<br>如果你认为你会通过建立网络和参加一堆会议来“成功”，那么你可能错了。在职业生涯的早期，人际网络可能很重要。你可以通过会议获得偶然的机会。但几率很低。</p><p>When you meet people hoping for that lucky break, you’re relying on <a href="https://nav.al/money-luck">Type One luck</a>, which is blind luck, and Type Two luck, which is hustle luck.<br>当你遇到希望幸运突破的人时，你依靠的是第一类运气，这是盲目的运气，第二类运气，这是喧嚣的运气。</p><p>But you’re not getting Type Three or Type Four luck, which are the better kinds. This is where you spend time developing a reputation and working on something. You develop a unique point of view and are able to spot opportunities that others can’t.<br>但你没有得到第三型或第四型的运气，这是更好的运气。这是您花时间建立声誉和从事某事的地方。你发展出独特的观点，能够发现其他人无法发现的机会。</p><p>A busy calendar and a busy mind will destroy your ability to do great things in this world. If you want to do great things—whether you’re a musician or entrepreneur or investor—you need free time and a free mind.<br>繁忙的日历和忙碌的头脑会破坏你在这个世界上做大事的能力。如果你想做伟大的事情——无论你是音乐家、企业家还是投资者——你都需要空闲时间和自由的思想。</p><h2 id="Keep-Redefining-What-You-Do-不断重新定义你的工作"><a href="#Keep-Redefining-What-You-Do-不断重新定义你的工作" class="headerlink" title="Keep Redefining What You Do 不断重新定义你的工作"></a>Keep Redefining What You Do 不断重新定义你的工作</h2><p><em>Become the best in the world at what you do<br>在你所做的事情上成为世界上最好的</em></p><p><strong>Keep redefining what you do until you’re the best at what you do<br>不断重新定义你所做的事情，直到你成为你所做的事情的佼佼者</strong></p><p><strong>Nivi:</strong> We talked about the importance of working hard and valuing your time. Next, there are a few tweets on the topic of working for the long-term. The first tweet is: “<a href="https://twitter.com/naval/status/1002108897551773697?lang=en">Become the best in the world at what you do. Keep redefining what you do until this is true.</a>”<br>Nivi：我们谈到了努力工作和珍惜时间的重要性。接下来，有几条关于长期工作的推文。第一条推文是：“在你所做的事情上成为世界上最好的。不断重新定义你的工作，直到这是真的。</p><p><strong>Naval:</strong> If you really want to get paid in this world, you want to be number one at whatever you do. It can be niche—that’s the point. You can literally get paid for just being you.<br>Naval：如果你真的想在这个世界上获得报酬，你就想成为你所做的任何事情的第一名。它可以是小众的——这就是重点。从字面上看，你可以因为做你自己而获得报酬。</p><p>Some of the more successful people in the world are that way. Oprah gets paid for being Oprah. Joe Rogan gets paid for being Joe Rogan. They’re being authentic to themselves.<br>世界上一些比较成功的人就是这样。奥普拉因成为奥普拉而获得报酬。乔·罗根（Joe Rogan）因成为乔·罗根（Joe Rogan）而获得报酬。他们对自己是真实的。</p><p>You want to be number one. And you want to keep changing what you do until you’re number one. You can’t just pick something arbitrary. You can’t say, “I’m going to be the fastest runner in the world,” and now you have to beat Usain Bolt. That’s too hard of a problem.<br>你想成为第一。你想不断改变你所做的事情，直到你成为第一名。你不能随便选择一些东西。你不能说，“我要成为世界上跑得最快的人”，现在你必须击败尤塞恩·博尔特。这太难了。</p><p>Keep changing your objective until it arrives at your specific knowledge, skill sets, position, capabilities, location and interests. Your objective and skills should converge to make you number one.<br>不断改变你的目标，直到它达到你的特定知识、技能、职位、能力、位置和兴趣。你的目标和技能应该融合在一起，使你成为第一名。</p><p>When you’re searching for what to do, you have two different foci to keep in mind. One is, “I want to be the best at what I do.” The second is, “What I do is flexible, so that I’m the best at it.”<br>当你在寻找要做什么时，你有两个不同的焦点要记住。一个是，“我想在我所做的事情上做到最好。第二个是，“我所做的事情是灵活的，所以我是最擅长的。</p><p>You want to arrive at a comfortable place where you feel, “This is something I can be amazing at, while still being authentic to who I am.”<br>你想到达一个舒适的地方，在那里你会觉得，“这是我可以做到的事情，同时仍然保持真实的我是谁。</p><p>It’s going to be a long journey. But now you know how to think about it.<br>这将是一段漫长的旅程。但现在你知道该怎么考虑了。</p><p><strong>Find founder-product-market fit<br>找到创始人-产品-市场的契合度</strong></p><p>The most important thing for any company is to find product-market fit. But the most important thing for any entrepreneur is to find founder-product-market fit, where you are naturally inclined to to build the right product for a market. That’s a three-foci problem. You have to make all three work at once.<br>对于任何公司来说，最重要的是找到产品与市场的契合度。但对于任何企业家来说，最重要的是找到创始人-产品-市场的契合度，你自然倾向于为市场构建合适的产品。这是一个三焦点问题。你必须让这三者同时工作。</p><p>If you want to be successful in life, you have to get comfortable managing multi-variate problems and multiple-objective functions at once. This is one of those cases where you have to map at least two or three at once.<br>如果你想在生活中取得成功，你必须同时管理多变量问题和多目标函数。这是您必须一次映射至少两个或三个的情况之一。</p><h2 id="Escape-Competition-Through-Authenticity-通过真实性逃避竞争"><a href="#Escape-Competition-Through-Authenticity-通过真实性逃避竞争" class="headerlink" title="Escape Competition Through Authenticity 通过真实性逃避竞争"></a>Escape Competition Through Authenticity 通过真实性逃避竞争</h2><p><em>Nobody can compete with you on being you<br>没有人能与你竞争成为你</em></p><p><strong>Competition will trap you in a lesser game<br>竞争会让你陷入一场较小的比赛</strong></p><p><strong>Nivi:</strong> Let’s discuss your tweet: “<a href="https://twitter.com/naval/status/975975798204112896?lang=en">Escape competition through authenticity.</a>” It sounds like part of this is a search for who you are.<br>Nivi：让我们讨论一下你的推文：“通过真实性来逃避竞争。这听起来像是在寻找你是谁。</p><p><strong>Naval:</strong> It’s both a search and a recognition. Sometimes when we search our egos, we want to be something that we’re not. Our friends and family are actually better at telling us who we are. Looking back at what we’ve done is a better indicator of who we are.<br>Naval：这既是一种搜索，也是一种识别。有时，当我们寻找自我时，我们想成为我们不是的东西。我们的朋友和家人实际上更善于告诉我们我们是谁。回顾我们所做的事情可以更好地表明我们是谁。</p><p>Peter Thiel talks a lot about how <a href="https://startupclass.samaltman.com/courses/lec05/">competition is besides the point</a>. It’s counterproductive. We’re highly memetic creatures. We copy everybody around us. We copy our desires from them.<br>彼得·泰尔（Peter Thiel）谈到了很多关于竞争如何超越重点的问题。这适得其反。我们是高度模因的生物。我们模仿我们周围的每个人。我们从他们那里复制我们的欲望。</p><p>If everyone around me is a great artist, I want to be an artist. If everyone around me is a great businessperson, I want to be a businessperson. If everybody around me is a social activist, I want to be a social activist. That’s where my self-esteem will come from.<br>如果我周围的每个人都是伟大的艺术家，我想成为一名艺术家。如果我周围的每个人都是伟大的商人，我想成为一名商人。如果我周围的每个人都是社会活动家，我想成为一名社会活动家。这就是我的自尊心的来源。</p><p>You have to be careful when you get caught up in status games. You end up competing over things that aren’t worth competing over.<br>当你陷入状态游戏时，你必须小心。你最终会争夺不值得争夺的东西。</p><p>Peter Thiel talks about how he was going to be a law clerk because everybody at law school wanted to clerk for a Supreme Court justice or some famous judge. He got rejected, and that’s what made him go into business. It helped him break out of a lesser game and into a greater game.<br>彼得·泰尔（Peter Thiel）谈到了他将如何成为一名法律助理，因为法学院的每个人都想为最高法院大法官或一些著名法官担任助理。他被拒绝了，这就是他进入商业领域的原因。它帮助他从较小的游戏中突围而出，进入更大的游戏。</p><p>Sometimes you get trapped in the wrong game because you’re competing. The best way to escape competition—to get away from the specter of competition, which is not just stressful and nerve-wracking but also will drive you to the wrong answer—is to be authentic to yourself.<br>有时你会因为竞争而陷入错误的游戏中。逃避竞争的最好方法——摆脱竞争的幽灵，这不仅会带来压力和伤脑筋，而且还会把你推向错误的答案——就是对自己真实。</p><p><strong>No one can compete with you on being you<br>没有人能与你竞争成为你</strong></p><p>If you are building and marketing something that’s an extension of who you are, no one can compete with you. Who’s going to compete with Joe Rogan or Scott Adams? It’s impossible. Is somebody else going write a better Dilbert? No. Is someone going to compete with Bill Watterson and create a better <a href="https://twitter.com/Calvinn_Hobbes?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor">Calvin and Hobbes</a>? No.<br>如果你正在构建和营销一些东西，这是你是谁的延伸，没有人可以与你竞争。谁将与乔·罗根或斯科特·亚当斯竞争？这不可能。其他人会写一个更好的 Dilbert 吗？不。有人会与比尔·沃特森竞争并创造一个更好的加尔文和霍布斯吗？不。</p><p>Artist are, by definition, authentic. Entrepreneurs are authentic, too. Who’s going to be Elon Musk? Who’s going to be Jack Dorsey? These people are authentic, and the businesses and products they create are authentic to their desires and means.<br>根据定义，艺术家是真实的。企业家也是真实的。谁会成为埃隆·马斯克？谁会成为杰克·多尔西？这些人是真实的，他们创造的企业和产品是真实的，符合他们的欲望和手段。</p><p>If somebody else came along and started launching rockets, I don’t think it would faze Elon one bit. He’s still going to get to Mars. Because that’s his mission, insane as it seems. He’s going to accomplish it.<br>如果其他人出现并开始发射火箭，我认为这不会让埃隆感到害怕。他仍然要去火星。因为这是他的使命，看起来很疯狂。他会完成的。</p><p>Authenticity naturally gets you away from competition. Does it mean that you want to be authentic to the point where there’s no product-market fit? It may turn out that you’re the best juggler on a unicycle. But maybe there isn’t much of a market for that, even with YouTube videos. So you have to adjust until you find product-market fit.<br>真实性自然会让你远离竞争。这是否意味着您想要真实到产品与市场不匹配的地步？事实证明，你是独轮车上最好的杂耍者。但也许这没有太大的市场，即使是 YouTube 视频。因此，您必须进行调整，直到找到适合产品市场的产品。</p><p>At least lean towards authenticity, towards getting away from competition. Competition leads to copy-catting and playing the completely wrong game.<br>至少倾向于真实性，倾向于远离竞争。竞争导致模仿和玩完全错误的游戏。</p><p><strong>In entrepreneurship, the masses are never right<br>在创业中，群众从来都不是正确的</strong></p><p>In entrepreneurship, the masses are never right. If the masses knew how to build great things and create great wealth, we’d all be rich by now.<br>在创业中，群众从来都不是正确的。如果大众知道如何建造伟大的事物并创造巨大的财富，那么我们现在都会变得富有。</p><p>When you see a lot of competition, sometimes that indicates the masses have already arrived. It’s already competed over too much. Or it’s the wrong trend to begin with.<br>当你看到很多竞争时，有时这表明群众已经到来。它已经竞争太多了。或者一开始就是错误的趋势。</p><p>On the other hand, if the whole market is empty, that can be a warning indicator. It can indicate you’ve gone too authentic and should focus more on the product-market part of founder-product-market fit.<br>另一方面，如果整个市场都是空的，这可能是一个警告指标。这可能表明你太真实了，应该更多地关注创始人-产品-市场契合度的产品-市场部分。</p><p>There’s a balance you have to find. Generally, people will make the mistake of paying too much attention to the competition. The great founders tend to be authentic iconoclasts.<br>你必须找到一个平衡点。一般来说，人们会犯一个错误，那就是过于关注竞争。伟大的创始人往往是真正的反传统者。</p><p><strong>Combine your vocation and avocation<br>结合你的职业和爱好</strong></p><p><strong>Nivi:</strong> Do you think one way of getting to authenticity is by finding five or six various skills you already do and stacking them on top of each other, maybe not even in any purposeful way? If you are expressing who you are, you’re going to be expressing all of these skills anyway.<br>Nivi：你认为获得真实性的一种方法是找到五六种你已经做过的各种技能，并将它们堆叠在一起，甚至可能没有任何目的？如果你在表达你是谁，无论如何你都会表达所有这些技能。</p><p><strong>Naval:</strong> If you are successful, in the long-term you’ll find you’re almost doing all of your hobbies for a living, no matter what they are. As Robert Frost said, “<a href="https://www.goodreads.com/quotes/754-my-goal-in-life-is-to-unite-my-avocation-with">my goal in life is to unite my avocation with my vocation</a><a href="https://www.goodreads.com/quotes/754-my-goal-in-life-is-to-unite-my-avocation-with">.</a>” That’s really where life is going to lead you anyway.<br>Naval：如果你成功了，从长远来看，你会发现你几乎把所有的爱好都当成了谋生，不管它们是什么。正如罗伯特·弗罗斯特（Robert Frost）所说，“我的人生目标是将我的爱好与我的职业结合起来”，无论如何，这才是生活将要引导你的地方。</p><p>You’re right about the skill stack. Everyone has multiple skills. We aren’t one-dimensional creatures, even though that’s how we portray ourselves in online profiles to get employed. You meet somebody and they say, “I’m a banker.” Or, “I’m a bartender. Or “I’m a barber.”<br>你对技能堆栈的看法是对的。每个人都有多种技能。我们不是一维的生物，尽管这就是我们在在线个人资料中描绘自己以获得工作的方式。你遇到一个人，他们说，“我是银行家。“或者，”我是一名调酒师。“或者”我是理发师。</p><p><strong>Specialize in being you 专心做你自己</strong></p><p>But people are multivariate. They have a lot of skills. One banker might be good at finance. Another one might be good at sales. A third one might be good at macroeconomic trends and have a feel for markets. Another one might be really good at picking individual stocks. Another might be good at maintaining relationships, rather than selling new relationships. Everyone’s going to have various niches. And you’re going to have multiple niches. It’s not going to be just one.<br>但人是多元的。他们有很多技能。一位银行家可能擅长金融。另一个可能擅长销售。第三种可能擅长宏观经济趋势，对市场有感觉。另一个可能非常擅长挑选个股。另一个人可能善于维持关系，而不是出售新的关系。每个人都会有各种各样的利基市场。你将有多个利基市场。它不会只是一个。</p><p>As you go through your career, you’ll find you gravitate towards the things you’re good at, which by definition are the things you enjoy doing. Otherwise, you wouldn’t be good at them. You wouldn’t have put in the time.<br>当你在职业生涯中，你会发现你被你擅长的事情所吸引，根据定义，这些事情是你喜欢做的事情。否则，你不会擅长它们。你不会花时间。</p><p>Other people will push you towards the things you’re good at, too. Because your smart bosses, co-workers and investors will realize you’re world-class in this one thing. And you can recruit people to help you with other things.<br>其他人也会把你推向你擅长的事情。因为你聪明的老板、同事和投资者会意识到你在这件事上是世界级的。你可以招募人来帮助你做其他事情。</p><p>Ideally, you want to end up specializing in being you.<br>理想情况下，你希望最终专注于成为你自己。</p><h2 id="Play-Stupid-Games-Win-Stupid-Prizes-玩愚蠢的游戏，赢得愚蠢的奖品"><a href="#Play-Stupid-Games-Win-Stupid-Prizes-玩愚蠢的游戏，赢得愚蠢的奖品" class="headerlink" title="Play Stupid Games, Win Stupid Prizes 玩愚蠢的游戏，赢得愚蠢的奖品"></a>Play Stupid Games, Win Stupid Prizes 玩愚蠢的游戏，赢得愚蠢的奖品</h2><p><em>Competition will blind you to greater games<br>竞争会让你对更大的游戏视而不见</em></p><p><strong>Businesses that seem like they’re in direct competition really aren’t<br>看似处于直接竞争状态的企业实际上并非如此</strong></p><p><strong>Nivi:</strong> When you’re being authentic, you don’t mind competition that much. It pisses you off and inspires some fear, jealousy and other emotions. But you don’t really mind because you’re oriented towards the goal and the mission. Worst-case, you might get some ideas from them. And often there are ways to work with the competition in a positive way that ends up increasing the size of the market for you.<br>Nivi：当你是真实的时，你就不会那么介意竞争。它惹恼了你，激发了一些恐惧、嫉妒和其他情绪。但你并不介意，因为你是以目标和使命为导向的。最坏的情况是，您可能会从他们那里得到一些想法。通常有一些方法可以以积极的方式与竞争对手合作，最终为您增加市场规模。</p><p><strong>Naval:</strong> It depends on the nature of the business. The best Silicon Valley tech industry businesses tend to be winner-take-all. When you see competition, it can make you fly into a rage. Because it really does endanger everything you’ve built.<br>Naval：这取决于业务的性质。硅谷最好的科技行业企业往往是赢家通吃。当你看到竞争时，它会让你大发雷霆。因为它确实会危及你所建立的一切。</p><p>If I’m opening a restaurant and a more interesting version of the same restaurant opens in a different town, that’s fantastic. I’m going to copy what’s working and drop what’s not working. So it depends on the nature of the business.<br>如果我要开一家餐厅，而同一家餐厅的更有趣的版本在不同的城镇开业，那就太棒了。我将复制有效的内容并删除不起作用的内容。因此，这取决于业务的性质。</p><p>Often, businesses that seem to be in direct competition really aren’t. They end up adjacent or slightly different. You’re one step away from a completely different business, and sometimes you need to take that step. You’re not going to take it if you’re busy fighting over a booby prize.<br>通常，看似处于直接竞争状态的企业实际上并非如此。它们最终相邻或略有不同。您离完全不同的业务只有一步之遥，有时您需要迈出这一步。如果你正忙于争夺诱杀奖品，你不会接受它。</p><p>You’re playing a stupid game. You’re going to win a stupid prize. It’s not obvious right now because you’re blinded by competition. But three years from now, it’ll be obvious.<br>你在玩一个愚蠢的游戏。你会赢得一个愚蠢的奖品。现在还不明显，因为你被竞争蒙蔽了双眼。但三年后，这将是显而易见的。</p><p><strong>My first company got caught in the wrong game<br>我的第一家公司陷入了错误的游戏</strong></p><p>One of my first startups was <a href="https://www.google.com/search?q=epinions&rlz=1C1CHBF_enUS795US795&oq=Epinions&aqs=chrome.0.0l6.216j0j9&sourceid=chrome&ie=UTF-8">Epinions</a>, an online product review site that was independent of Amazon. That space eventually turned into TripAdvisor and Yelp, which is where we should have gone.<br>我最早的创业公司之一是Epinions，这是一个独立于亚马逊的在线产品评论网站。这个空间最终变成了TripAdvisor和Yelp，这是我们应该去的地方。</p><p>We should have done more local reviews. A review of a scarce item like a local restaurant is more valuable than one of an item like a camera that has 1,000 reviews on Amazon.<br>我们应该做更多的本地评论。对当地餐馆等稀缺物品的评论比对在亚马逊上有 1,000 条评论的相机等物品的评论更有价值。</p><p>Before we could get there, we got caught up in the comparison-shopping game. We merged with DealTime and competed with a bunch of price-comparison engines—mySimon, PriceGrabber, NexTag and Bizrate, which became Shopzilla. We were caught in fierce competition with each other.<br>在我们到达那里之前，我们陷入了比较购物游戏。我们与 DealTime 合并，并与一系列价格比较引擎竞争——mySimon、PriceGrabber、NexTag 和 Bizrate，后者后来成为 Shopzilla。我们陷入了激烈的竞争之中。</p><p>That whole space went to zero because Amazon won e-tail completely. There was no need for price comparison. Everyone just went to Amazon.<br>整个空间归零，因为亚马逊完全赢得了电子零售。没有必要进行价格比较。每个人都去了亚马逊。</p><p>We got the booby prize because we were caught up in competition with a bunch of our peers. We should have been looking at what the consumer really wanted and being authentic to ourselves, which was reviews, not price comparison. We should have gone further into esoteric items where customers had less data and wanted reviews more badly.<br>我们之所以获得诱杀奖，是因为我们陷入了与一群同龄人的竞争中。我们应该关注消费者真正想要的东西，并对自己保持真实，这是评论，而不是价格比较。我们应该更深入地研究客户数据较少且更渴望评论的深奥项目。</p><p>If we stayed authentic to ourselves, we would have done better.<br>如果我们对自己保持真实，我们会做得更好。</p><h2 id="Eventually-You-Will-Get-What-You-Deserve-最终你会得到你应得的"><a href="#Eventually-You-Will-Get-What-You-Deserve-最终你会得到你应得的" class="headerlink" title="Eventually You Will Get What You Deserve 最终你会得到你应得的"></a>Eventually You Will Get What You Deserve 最终你会得到你应得的</h2><p><em>On a long enough timescale, you will get paid<br>在足够长的时间范围内，您将获得报酬</em></p><p><strong>On a long enough time scale, you will get paid<br>在足够长的时间范围内，您将获得报酬</strong></p><p><strong>Nivi:</strong> We’re talking about working for the long-term. The next tweet on that topic: “<a href="https://twitter.com/naval/status/1002103360646823936">Apply specific knowledge, with leverage, and eventually you will get what you deserve.</a>”<br>Nivi：我们谈论的是长期工作。关于该主题的下一条推文：“应用特定的知识，发挥杠杆作用，最终你会得到你应得的。</p><p>I would add: Apply judgment, apply accountability, and apply the skill of reading.<br>我想补充一点：运用判断力，运用问责制，运用阅读技巧。</p><p><strong>Naval:</strong> This one is a glib way of saying, “It takes time.” Once you have all of the pieces in place, there’s still an indeterminate amount of time you have to put in. And if you’re counting, you’ll run out of patience before it arrives.<br>Naval：这句话说得很有道理，“这需要时间。一旦你把所有的部分都准备好了，你仍然需要投入不确定的时间。如果你在数数，你会在它到来之前耗尽耐心。</p><p>You have to make sure you give these things time. Life is long.<br>你必须确保你给这些事情时间。生命是漫长的。</p><p>Charlie Munger had a line on this. Somebody asked him about making money. He said what the questioner actually was asking was, “<a href="https://www.azquotes.com/quote/922567">How can I become like you, except faster</a>?”<br>查理·芒格（Charlie Munger）对此有一句话。有人问他关于赚钱的问题。他说，提问者实际上在问的是，“我怎么能变得像你一样，除了更快？</p><p>Everybody wants it immediately. But the world is an efficient place. Immediate doesn’t work. You have to put in the time. You have to put in the hours. You have to put yourself in that position with specific knowledge, accountability, leverage and an authentic skill-set in order to be the best in the world at what you do.<br>每个人都想要立即得到它。但世界是一个高效的地方。立即不起作用。你必须投入时间。你必须投入时间。你必须把自己放在那个位置上，拥有特定的知识、责任感、影响力和真实的技能，才能在你所做的事情上成为世界上最好的。</p><p>And then you have to enjoy it and keep doing it and doing it and doing it. Don’t keep track. Don’t keep count. Because if you do, you will run out of time.<br>然后你必须享受它，继续做，做，做。不要跟踪。不要数数。因为如果你这样做，你的时间就用完了。</p><p>Looking back on my career, the people who I identified as brilliant and hardworking two decades ago are all successful now, almost without exception. On a long enough timescale, you will get paid.<br>回顾我的职业生涯，二十年前我认为才华横溢、勤奋工作的人现在都成功了，几乎无一例外。在足够长的时间范围内，您将获得报酬。</p><p>But it can easily be 10 or 20 years. Sometimes it’s five. If it’s five, or three, and it’s a friend of yours who got there, it can drive you insane. But those are exceptions. And for every winner, there are multiple failures.<br>但它很容易是 10 或 20 年。有时是五个。如果它是五个或三个，而且是你的一个朋友到达那里，它可能会让你发疯。但这些都是例外。对于每一个赢家，都有多次失败。</p><p>One thing that’s important in entrepreneurship: You just have to be right once. You get many, many shots on goal. You can take a shot on goal every three to five years, maybe every 10 at the slowest. Or once every year at the fastest, depending on how you’re iterating with startups. But you only have to be right once.<br>在创业中，有一件事很重要：你只需要做对一次。你有很多很多的射门机会。你可以每三到五年射门一次，也许每10年一次，最慢的时候。或者最快每年一次，这取决于你如何与初创公司进行迭代。但你只需要做对一次。</p><p><strong>What are you really good at, that the market values?<br>你真正擅长的是什么，市场看重的是什么？</strong></p><p><strong>Nivi:</strong> Your eventual outcome will be equal to something like the distinctiveness of your specific knowledge; times how much leverage you can apply to that knowledge; times how often your judgment is correct; times how singularly accountable you are for the outcome; times how much society values what you’re doing. Then you compound that with how long you can keep doing it and how long you can keep improving it through reading and learning.<br>Nivi：你的最终结果将等同于你特定知识的独特性;乘以您可以对该知识施加多大的杠杆作用;你的判断正确的频率;乘以你对结果的单一责任;乘以社会对你所做的事情的重视程度。然后，你可以继续做多长时间，以及你可以通过阅读和学习不断改进它多长时间。</p><p><strong>Naval:</strong> That’s a really good way to summarize it. It’s worth trying to sketch that equation out.<br>Naval：这是一个很好的总结方式。值得尝试勾勒出这个方程式。</p><p>That said, people try to apply mathematics to what is really philosophy. I’ve seen this happen, where I say one thing and then I say another thing that seems contradictory if you treat it as math. But it’s obviously in a different context.<br>也就是说，人们试图将数学应用于真正的哲学。我见过这种情况发生，我说一件事，然后我说另一件事，如果你把它当作数学，这似乎是矛盾的。但这显然是在不同的背景下。</p><p>People will say, “You say, ‘<a href="https://www.google.com/search?q=desire+is+suffering&rlz=1C1CHBF_enUS795US795&oq=Desire+is+suffering&aqs=chrome.0.0j69i59l2j0l3.1077j0j7&sourceid=chrome&ie=UTF-8">Desire is suffering</a>.’” You know, the Buddhist saying. “And then you ‘All greatness comes from suffering.’ So does that mean all greatness comes from desire?” This isn’t math. You can’t just carry variables around and form absolute logical outputs. You have to know when to apply things.<br>人们会说，“你说，’欲望就是痛苦’。你知道，佛教的谚语。“然后你’所有的伟大都来自苦难。’那么，这是否意味着所有的伟大都来自欲望？这不是数学。你不能只是随身携带变量并形成绝对的逻辑输出。你必须知道什么时候应用东西。</p><p>One can’t get too analytical about it.<br>人们不能对此进行过多的分析。</p><p>It’s what a physicist would call “false precision.” When you take two made-up estimates and multiply them together, you get four degrees of precision. Those decimal points don’t actually count. You don’t have that data. You don’t have that knowledge. The more estimated variables you have, the greater the error in the model.<br>这就是物理学家所说的“假精度”。当你把两个虚构的估计值相乘时，你会得到四个精度。这些小数点实际上并不计算在内。您没有这些数据。你没有这些知识。估计变量越多，模型中的误差就越大。</p><p>Adding more complexity to your decision-making process gets you a worse answer. You’re better off picking the single biggest thing or two. Ask yourself: What am I really good at, according to observation and people I trust, that the market values?<br>增加决策过程的复杂性会让你得到更糟糕的答案。你最好选择一两件最重要的事情。扪心自问：根据观察和我信任的人，我真正擅长的是什么，市场看重什么？</p><p>Those two variables alone are probably good enough. If you’re good at it, you’ll keep it up. You’ll develop the judgment. If you’re good at it and you like to do it, eventually people will give you the resources and you won’t be afraid to take on accountability. So the other pieces will fall into place.<br>仅这两个变量就足够了。如果你擅长它，你会坚持下去。你会做出判断。如果你擅长并且喜欢这样做，最终人们会给你资源，你不会害怕承担责任。因此，其他部分将落到位。</p><p>Product-market fit is inevitable if you’re doing something you love and the market wants it.<br>如果你正在做你喜欢的事情，而市场需要它，那么产品与市场的契合是不可避免的。</p><h2 id="Reject-Most-Advice-拒绝大多数建议"><a href="#Reject-Most-Advice-拒绝大多数建议" class="headerlink" title="Reject Most Advice 拒绝大多数建议"></a>Reject Most Advice 拒绝大多数建议</h2><p><em>Most advice is people giving you their winning lottery ticket numbers<br>大多数建议是人们给你他们的中奖彩票号码</em></p><p><strong>The best founders listen to everyone but make up their own mind<br>最好的创始人会听取每个人的意见，但要自己下定决心</strong></p><p><strong>Nivi:</strong> One of the tweets from the cutting-room floor was: “Avoid people who got rich quickly. They’re just giving you their winning lottery ticket numbers.”<br>Nivi：剪裁室的一条推文是：“避开那些迅速致富的人。他们只是给你他们中奖的彩票号码。</p><p><strong>Naval:</strong> This is generally true of most advice. It goes back to Scott Adams—<a href="https://blog.dilbert.com/2013/11/18/goals-vs-systems/">systems not goals</a>. If you ask a successful person what worked for them, they often read out the exact set of things that worked for them, which might not apply to you. They’re just reading you their winning lottery ticket numbers.<br>Naval：大多数建议都是如此。这可以追溯到斯科特·亚当斯（Scott Adams）——系统而不是目标。如果你问一个成功人士什么对他们有用，他们通常会读出对他们有用的确切方法，这可能不适用于你。他们只是在给你读他们的中奖彩票号码。</p><p>It’s a little glib. There is something to be learned, but you can’t take their exact circumstance and map it onto yours. The best founders I know read and listen to everyone. But then they ignore everyone and make up their own mind.<br>这有点滑稽。有一些东西需要学习，但你不能把他们的确切情况映射到你的身上。我认识的最好的创始人会阅读并倾听每个人的意见。但随后他们无视所有人，下定决心。</p><p>They have their own internal model of how to apply things to their situation. And they do not hesitate to discard information. If you survey enough people, all of the advice will cancel to zero.<br>他们有自己的内部模型，知道如何将事情应用于他们的情况。他们毫不犹豫地丢弃信息。如果你调查了足够多的人，所有的建议都将取消为零。</p><p>You have to have your own point of view. When something is sent your way, you have to quickly decide: Is it true? Is it true outside of the context of how that person applied it? Is it true in my context? And then, Do I want to apply it?<br>你必须有自己的观点。当某样东西被送到你面前时，你必须迅速决定：这是真的吗？在那个人如何应用它的上下文之外，这是真的吗？在我的上下文中是真的吗？然后，我要应用它吗？</p><p>You have to reject most advice. But you have to listen to enough of it, and read enough of it, to know what to reject and what to accept.<br>你必须拒绝大多数建议。但你必须听够它，读足够多的书，才能知道什么该拒绝，什么该接受。</p><p>Even in this podcast, you should examine everything. If something doesn’t feel true to you, put it down. Set it aside. If too many things seem untrue, delete this podcast.<br>即使在这个播客中，你也应该检查一切。如果某件事对你来说不真实，那就放下它。把它放在一边。如果太多事情看起来不真实，请删除此播客。</p><p><strong>Advice offers anecdotes to recall later, when you get your own experience<br>建议提供了轶事，以便以后在您获得自己的经验时回忆</strong></p><p><strong>Nivi:</strong> I think the most dangerous part of taking advice is that the person who gave it to you isn’t going to be around to tell you when it doesn’t apply any more.<br>Nivi：我认为接受建议最危险的部分是，当它不再适用时，给你建议的人不会在身边告诉你。</p><p><strong>Naval:</strong> I view the purpose of advice a little differently than most people. I view it as helping me have anecdotes and maxims that I can recall when I have my own direct experience and say, “Ah, that’s what that person meant.”<br>Naval：我对建议的目的的看法与大多数人略有不同。我认为它可以帮助我获得轶事和格言，当我有自己的直接经验时，我可以回忆起这些轶事和格言，并说：“啊，这就是那个人的意思。</p><p>Ninety percent of my tweets are maxims that become mental hooks to remind me when I’m in that situation again.<br>我百分之九十的推文都是格言，它们成为心理上的钩子，提醒我何时再次处于这种情况。</p><p>Like, “Oh, I’m the one who tweeted, ‘<a href="https://twitter.com/naval/status/511715728899473408?lang=en">If you can’t see yourself working with someone for life, then don’t work with them for a day.</a>’” As soon as I know I’m not going to be working with someone 10 years from now, then I have to start extricating myself from that relationship or investing less effort in it.<br>比如，“哦，我是那个在推特上发推文的人，’如果你看不到自己和某人一起工作一辈子，那么就不要和他们一起工作一天。一旦我知道我不会在10年后与某人合作，那么我就必须开始摆脱这种关系，或者减少投入的精力。</p><p>I use tweets to compress my own learnings. Your brain space is finite. You have finite neurons. You can think of these as pointers, addresses, mnemonics to help you remember deep-seated principles where you have the underlying experience to back it up.<br>我用推文来压缩我自己的学习。你的大脑空间是有限的。你有有限的神经元。你可以把这些看作是指针、地址、助记符，以帮助你记住根深蒂固的原则，在这些原则中，你有潜在的经验来支持它。</p><p>If you don’t have the underlying experience, then it reads like a collection of quotes. It’s cool. It’s inspirational for a moment. Maybe you make a nice poster out of it. But then you forget it and move on.<br>如果你没有基础经验，那么它读起来就像是引号的集合。这很酷。这暂时是鼓舞人心的。也许你用它做了一张漂亮的海报。但后来你忘记了它，继续前进。</p><p>These are compact ways for you to recall your own knowledge.<br>这些是您回忆自己知识的紧凑方式。</p><h2 id="A-Calm-Mind-a-Fit-Body-a-House-Full-of-Love-平静的心灵，健美的身躯，充满爱的家"><a href="#A-Calm-Mind-a-Fit-Body-a-House-Full-of-Love-平静的心灵，健美的身躯，充满爱的家" class="headerlink" title="A Calm Mind, a Fit Body, a House Full of Love 平静的心灵，健美的身躯，充满爱的家"></a>A Calm Mind, a Fit Body, a House Full of Love 平静的心灵，健美的身躯，充满爱的家</h2><p><em>When you’re finally wealthy, you’ll realize it wasn’t what you were seeking in the first place<br>当你最终变得富有时，你会意识到这不是你最初想要的</em></p><p><strong>When you’re wealthy, you’ll realize it wasn’t what you were seeking<br>当你富有时，你会意识到这不是你所追求的</strong></p><p><strong>Nivi:</strong> The last tweet on the topic of working for the long-term is: “<a href="https://twitter.com/naval/status/1002109558058237953?lang=en">When you’re finally wealthy, you’ll realize it wasn’t what you were seeking in the first place. But that’s for another day.</a>”<br>Nivi：关于长期工作这个话题的最后一条推文是：“当你最终变得富有时，你会意识到这不是你最初想要的。但那是另一天的事了。</p><p><strong>Naval:</strong> That’s a multi-hour topic in and of itself. First of all, I thought it was a really clever way to end the whole thing. It disarms a whole set of people who say, “What’s the point of getting rich?” There are a lot of people who like to virtue signal against the idea of wealth creation or making money.<br>Naval：这本身就是一个长达数小时的话题。首先，我认为这是结束整个事情的一个非常聪明的方式。它解除了一大群人的武装，他们说，“致富有什么意义？有很多人喜欢美德信号，反对创造财富或赚钱的想法。</p><p>It’s also true. Yes, money will solve all your money problems. But it doesn’t get you everywhere.<br>这也是事实。是的，钱会解决你所有的金钱问题。但它并不能让你无处不在。</p><p>The first thing you realize when you’ve made a bunch of money is that you’re still the same person. If you’re happy, you’re happy. If you’re unhappy, you’re unhappy. If you’re calm and fulfilled and peaceful, you’re still that same person. I know lots of very rich people who are extremely out of shape. I know lots of rich people who have really bad family lives. I know lots of rich people who are internally a mess.<br>当你赚了一大笔钱时，你意识到的第一件事是你仍然是同一个人。如果你快乐，你就快乐。如果你不快乐，你就不快乐。如果你平静、充实、平和，你仍然是同一个人。我认识很多非常有钱的人，他们身材极度走样。我认识很多有钱人，他们的家庭生活非常糟糕。我认识很多有钱人，他们内心一团糟。</p><p><strong>A calm mind, a fit body and a house full of love must be earned<br>必须赢得一个平静的头脑，一个健康的身体和一个充满爱的房子</strong></p><p>I would lean on another tweet that I put out. When I think back on it, I think it’s my favorite tweet. It’s not necessarily the most insightful. It’s not necessarily the most helpful. It’s not even the one I think about the most. But when I look at it, there’s such a certain truth in there that it resonates. And that is: “<a href="https://twitter.com/naval/status/966512979066765313?lang=en">A fit body, a calm mind, a house full of love. These things cannot be bought—they must be earned.</a>”<br>我会依靠我发布的另一条推文。当我回想起来时，我认为这是我最喜欢的推文。这不一定是最有见地的。这不一定是最有帮助的。这甚至不是我想得最多的一个。但是当我看到它时，它有一种确定的真理，它引起了共鸣。那就是：“一个健康的身体，一个平静的头脑，一个充满爱的房子。这些东西是买不来的，必须靠挣来的。</p><p>Even if you have all the money in the world, you can’t have those three things. Jeff Bezos still has to work out. He still has to work on his marriage. And his internal mental state still very much won’t be controlled by external events. It’s going to be based on how calm and peaceful he is inside.<br>即使你拥有世界上所有的钱，你也不能拥有这三样东西。杰夫·贝佐斯（Jeff Bezos）仍然需要锻炼。他仍然需要为他的婚姻而努力。而他内在的精神状态，仍然不会被外界事件所控制。这将基于他内心的平静与和平。</p><p>So I think those three things—your health, your mental health and your close relationships—are things you have to cultivate. They can bring you a lot more peace and happiness than any amount of money ever will.<br>所以我认为这三件事——你的健康、你的心理健康和你的亲密关系——是你必须培养的东西。它们可以给你带来比任何金钱都多得多的和平与幸福。</p><p><strong>Practical advice for a calmer internal state<br>让内心状态更平静的实用建议</strong></p><p>How to get there is a tweetstorm I’ve been working on. I have probably 100 tweets on it. It’s very hard to say anything on the topic without getting attacked from 50 different directions, especially these days on Twitter. So I’ve been hesitant to do it. I want to target it for a very specific kind of person.<br>如何到达那里是我一直在研究的推特风暴。我大概有 100 条推文。很难在不受到来自 50 个不同方向的攻击的情况下就这个话题发表任何言论，尤其是这些天在 Twitter 上。所以我一直犹豫要不要这样做。我想针对一种非常特定的人。</p><p>There’s a bunch of people who don’t believe working on your internal state is useful. They’re too focused on the external. And that’s fine, there’s nothing wrong with that. That’s who the “How to Get Rich” tweetstorm is for. There’s a bunch of people who believe the only thing worth working on is complete liberation. Like, you become the Buddha. They’ll attack anything in the middle as being useless. That’s fine, too. But most people aren’t there.<br>有一群人不相信在你的内部状态上工作是有用的。他们过于关注外部。没关系，这没有错。这就是“如何致富”推文风暴的对象。有一群人认为唯一值得努力的就是彻底的解放。就像，你成为佛陀。他们会攻击中间的任何东西，认为它们毫无用处。这也没关系。但大多数人不在那里。</p><p>I want to create a tweetstorm that offers practical advice for everyday people who want a calmer internal state. A set of understandings, realizations, half-truths and truths, that if you were to imbibe them properly—and, again, these are pointers to ideas you already have and experiences you already have—that if you keep these top of mind, slowly but steadily it will help you with certain realizations that will lead you to a calmer internal state. That’s what I want to work on.<br>我想创造一个推特风暴，为那些想要更平静的内心状态的普通人提供实用的建议。一套理解、领悟、半真半假的真理，如果你要正确地吸收它们——再说一遍，这些都是你已经拥有的想法和你已经拥有的经验的指针——如果你把这些放在首位，缓慢而稳定地，它将帮助你实现某些实现，引导你进入一个更平静的内在状态。这就是我想努力的方向。</p><p>Fitness is another big one, I’m just not the expert there. There are plenty of good people on Twitter that who are better at fitness than me.<br>健身是另一个大问题，我只是不是那里的专家。Twitter上有很多比我更擅长健身的好人。</p><p><strong>A lot of divorces happen over money, a lot of battles happen over internal anger<br>很多离婚发生在金钱上，很多争吵发生在内心的愤怒上</strong></p><p>I think a loving household and relationships actually fall naturally out of the other things. If you have a calm mind and you’ve already made money, you should have good relationships. There’s no reason why you shouldn’t. A lot of divorces happen over money. Unfortunately, that’s just the reality of it. Having money removes that part of it.<br>我认为一个充满爱的家庭和人际关系实际上自然而然地脱离了其他事情。如果你有一个冷静的头脑，你已经赚了钱，你应该有良好的人际关系。你没有理由不这样做。很多离婚都是因为钱而发生的。不幸的是，这只是现实。有钱可以消除这部分。</p><p>A lot of external battles happen because your internal state is not good. When you’re naturally internally peaceful you’re going to pick fewer fights. You’re going to be more loving without expecting anything in return. That will take care of things on the external-relationship front.<br>很多外部战斗的发生都是因为你的内部状态不好。当你内心自然平静时，你会选择更少的争吵。你会更有爱心，不期望任何回报。这将解决外部关系方面的问题。</p><p><strong>Nivi:</strong> To summarize: Money solves your money problems. Money buys you freedom in the material world. And money lets you not do the things you don’t want to do.<br>Nivi：总结一下：金钱可以解决你的金钱问题。金钱在物质世界中买到自由。金钱让你不做你不想做的事情。</p><p><strong>Naval:</strong> Yeah. To me the ultimate purpose of money is so you don’t have to be in a specific place, at a specific time, doing anything you don’t want to do.<br>Naval：是的。对我来说，金钱的最终目的是让你不必在特定的地方，在特定的时间，做任何你不想做的事情。</p><h2 id="There-Are-No-Get-Rich-Quick-Schemes-没有快速致富的计划"><a href="#There-Are-No-Get-Rich-Quick-Schemes-没有快速致富的计划" class="headerlink" title="There Are No Get Rich Quick Schemes 没有快速致富的计划"></a>There Are No Get Rich Quick Schemes 没有快速致富的计划</h2><p><em>Get rich quick schemes are just someone else getting rich off you<br>快速致富计划只是别人从你身上致富</em></p><p><strong>There are no get rich quick schemes<br>没有快速致富的计划</strong></p><p><strong>Nivi:</strong> We skipped one tweet because I wanted to cover all of the tweets on the topic of the long-term. The tweet we skipped: “<a href="https://twitter.com/naval/status/1002109022420451328?lang=en">There are no get rich quick schemes. That’s just someone else getting rich off you.</a>”<br>Nivi：我们跳过了一条推文，因为我想涵盖所有关于长期主题的推文。我们跳过的推文是：“ 没有快速致富的计划。那只是别人从你身上发财。</p><p><strong>Naval:</strong> This goes back to the world being an efficient place. If there’s an easy way to get rich, it’s already been exploited. There are a lot of people who will sell you ideas and schemes on how to make money. But they’re always selling you some $79.95 course or some audiobook or seminar.<br>Naval：这要追溯到世界是一个高效的地方。如果有一种简单的致富方法，它已经被利用了。有很多人会向你推销如何赚钱的想法和计划。但他们总是向您出售一些 79.95 美元的课程或一些有声读物或研讨会。</p><p>Which is fine. Everyone needs to eat. People need to make a living. They might actually have really good tips. If they’re giving you actionable, high-quality advice that acknowledges it’s a difficult journey and will take a lot of time, then I think it’s realistic.<br>这很好。每个人都需要吃饭。人们需要谋生。他们实际上可能有非常好的提示。如果他们给你可操作的、高质量的建议，承认这是一段艰难的旅程，需要很多时间，那么我认为这是现实的。</p><p>But if they’re selling you some get rich quick scheme—whether it’s crypto or whether it’s an online business or seminar—they’re just making money off you. That’s <em>their</em> get rich quick scheme. It’s not necessarily going to work for you.<br>但是，如果他们向你推销一些快速致富的计划——无论是加密货币，还是在线业务或研讨会——他们只是在从你身上赚钱。这是他们快速致富的计划。它不一定适合你。</p><p><strong>We don’t have ads because it would ruin our credibility<br>我们没有广告，因为这会破坏我们的信誉</strong></p><p>One of the things about this whole tweetstorm and podcast is that we don’t have ads. We don’t charge for anything. We don’t sell anything. Not because I don’t want to make more money—it’s always nice to make more money; we’re doing work here—but because it would completely destroy the credibility of the enterprise. If I say, “I know how to get rich, and I’m going to sell that to you,” then it ruins it.<br>关于整个推特风暴和播客的一件事是我们没有广告。我们不收取任何费用。我们什么都不卖。不是因为我不想赚更多的钱——赚更多的钱总是好的;我们在这里做工作，但因为这会彻底破坏企业的信誉。如果我说，“我知道如何致富，我要把它卖给你”，那么它就会毁了它。</p><p>When I was young, one of my favorite books on the topic was “<a href="https://www.amazon.com/How-Get-Rich-Greatest-Entrepreneurs-ebook/dp/B0017SUYY6">How To Get Rich</a>,” by Felix Dennis, the founder of Maxim Magazine. He had a lot of crazy stuff in there. But he had some really good insights too.<br>在我年轻的时候，我最喜欢的一本关于这个主题的书是《如何致富》，作者是《马克西姆杂志》的创始人费利克斯·丹尼斯（Felix Dennis）。他那里有很多疯狂的东西。但他也有一些非常好的见解。</p><p>Whenever I read something by him or by GoDaddy founder Bob Parsons or Andrew Carnegie—people who are already very wealthy, and they clearly made their wealth in other fields, not by selling the how-to-get-rich line—they have a credibility. You just trust them.<br>每当我读到他或GoDaddy创始人鲍勃·帕森斯（Bob Parsons）或安德鲁·卡内基（Andrew Carnegie）的文章时，他们都已经非常富有了，他们显然是在其他领域发家致富的，而不是通过推销如何致富的路线。你只要相信他们。</p><p>They’re not trying to make money off of you. They’re obviously trying to win some status and some ego—you always have to have a motivation for doing something. But at least that’s a cleaner reason and why they’re probably not lying. They’re probably not fooling you. They’re not snowing you.<br>他们不是想从你身上赚钱。他们显然是想赢得一些地位和一些自我——你总是要有做某事的动力。但至少这是一个更清晰的理由，以及为什么他们可能没有撒谎。他们可能没有愚弄你。他们没有给你下雪。</p><p><strong>Every founder has to lie to every employee<br>每个创始人都必须对每个员工撒谎</strong></p><p>At some level every founder has to lie to every employee of the company they have. They have to convince them, “It’s better for you to work for me than to do what I did and go work for yourself.”<br>在某种程度上，每个创始人都必须对他们所拥有的公司的每一位员工撒谎。他们必须说服他们，“你为我工作比做我做过的事情去为自己工作要好。</p><p>I’ve always had a hard time with that.<br>我一直对此感到很难过。</p><p>The only honest way to do this, in my opinion, is to tell the entrepreneurs I recruit: “You’re going to be entrepreneurial in this company, and the day you’re ready to start your own next thing, I’m going to support you. I’m never going to get in the way of you starting a company. But this can be a good place for you to learn how to build a good team and build a good culture; how to find product-market fit; how to perfect your skills; and to meet some amazing people while you figure out exactly what it is you’re going to do. Because positioning, timing and deliberation are very important when starting a company.”<br>在我看来，唯一诚实的方法是告诉我招募的企业家：“你将在这家公司创业，当你准备好开始自己的下一件事的那一天，我会支持你。我永远不会妨碍你创办一家公司。但这可能是你学习如何建立一个好的团队和建立一个好的文化的好地方;如何找到产品与市场的契合度;如何完善你的技能;并结识一些了不起的人，同时弄清楚你要做什么。因为在创办公司时，定位、时机和深思熟虑非常重要。</p><p>What I’ve never been able to do is to look them in the face and say, “You must be at your desk by 8 a.m.” Because I’m not going to be at my desk by 8 a.m. I want my freedom. I’ve never been able to say to them, “You’re great at being a director today, and you’ll be a VP tomorrow,” putting them into that cold career path track. Because I don’t believe in it myself.<br>我从来没能做的就是看着他们的脸说，“你必须在早上 8 点之前到你的办公桌前。因为我不会在早上 8 点之前出现在我的办公桌前。我想要我的自由。我从来没能对他们说，“你今天很擅长当导演，明天你就会当副总裁”，把他们带入了那条冷酷的职业道路。因为我自己不相信。</p><p><strong>Anyone giving advice on how to get rich should have made their money elsewhere<br>任何提供如何致富建议的人都应该在其他地方赚钱</strong></p><p>If anyone is giving advice on how to get rich and they’re also making money off of it, they should have made their money elsewhere. You don’t want to learn how to be fit from a fat person. You don’t want to learn how to be happy from a depressed person. So, you don’t want to learn how to be rich from a poor person. But you also don’t want to learn how to be rich from somebody who makes their money by telling people how to be rich. It’s suspect.<br>如果有人在提供关于如何致富的建议，并且他们也从中赚钱，那么他们应该在其他地方赚钱。你不想从一个胖子那里学习如何健身。你不想从一个抑郁的人那里学习如何快乐。所以，你不想从一个穷人那里学习如何变得富有。但你也不想从那些通过告诉人们如何致富来赚钱的人那里学习如何致富。这是可疑的。</p><p><strong>Nivi:</strong> Any time you see somebody who’s gotten rich following some guru’s advice on getting rich, remember that in any random process, if you run it long enough and if enough people participate in it, you will always get every single possible outcome with probability one.<br>Nivi：每当你看到有人按照上师的建议致富致富时，请记住，在任何随机过程中，如果你运行足够长的时间，如果有足够多的人参与其中，你总是会得到每一个可能的结果，概率为1。</p><p><strong>Naval:</strong> There’s a lot of random error in there. This is why you have to absolutely and completely ignore business journalists and economist academics when they talk about private companies.<br>Naval：这里面有很多随机误差。这就是为什么当商业记者和经济学家学者谈论私营公司时，你必须绝对和完全地忽略他们。</p><p>I won’t name names, but when a famous economist rails on Bitcoin, or when a business journalist attacks the latest company that’s IPO’ing, it’s complete nonsense. Those people have never built anything. They’re professional critics. They don’t know anything about making money. All they know is how to criticize and get pageviews. And you’re literally becoming dumber by reading them. You’re burning neurons.<br>我不会说出名字，但当一位著名经济学家抨击比特币时，或者当一位商业记者攻击最新上市的公司时，这完全是无稽之谈。这些人从未建造过任何东西。他们是专业的评论家。他们对赚钱一无所知。他们所知道的只是如何批评和获得浏览量。通过阅读它们，你真的会变得更笨。你在燃烧神经元。</p><p>I’ll leave you with a quote from Nassim Taleb that I liked. He said, “<a href="https://twitter.com/nntaleb/status/1112076802300755971?lang=en">To become a philosopher king, start with being a king, not being a philosopher</a><a href="https://twitter.com/nntaleb/status/1112076802300755971?lang=en">.</a>”<br>我会给你留下我喜欢的纳西姆·塔勒布（Nassim Taleb）的一句话。他说：“要成为哲学家国王，首先要成为国王，而不是哲学家”</p><p><strong>Nivi:</strong> I’m glad you brought up Taleb, because I was going to finish this by saying: remember the title of his first book, “<a href="https://books.google.com/books/about/Fooled_by_Randomness.html?id=DCqFYOrGyegC">Fooled By Randomness</a>.”<br>尼薇：我很高兴你提到了塔勒布，因为我要说：记住他第一本书的书名，“被随机性愚弄”。</p><p><strong>Naval:</strong> One of the reasons we’re a little vague in this podcast is because we’re trying to lay down principles that are timeless, as opposed to giving you the winning lottery ticket numbers from yesterday.<br>Naval：我们在这个播客中有点含糊不清的原因之一是，我们试图制定永恒的原则，而不是给你昨天的中奖彩票号码。</p><h2 id="Productize-Yourself-将自己产品化"><a href="#Productize-Yourself-将自己产品化" class="headerlink" title="Productize Yourself 将自己产品化"></a>Productize Yourself 将自己产品化</h2><p><em>Figure out what you’re uniquely good at, and apply as much leverage as possible<br>弄清楚你特别擅长什么，并尽可能多地发挥杠杆作用</em></p><p><strong>Figure out what you’re uniquely good at and apply as much leverage as possible<br>弄清楚你特别擅长什么，并尽可能多地发挥杠杆作用</strong></p><p><strong>Nivi:</strong> You summarized this entire tweetstorm with two words: “<a href="https://twitter.com/naval/status/1003356436091400192?lang=en">Productize yourself.</a>”<br>Nivi：你用两个词总结了整个推特风暴：“将自己产品化”。</p><p><strong>Naval:</strong> Productize has specific knowledge and leverage. Yourself has uniqueness and accountability. Yourself also has specific knowledge. So you can combine all of these pieces into these two words.<br>Naval：Productize拥有特定的知识和影响力。你自己有独特性和责任感。你自己也有特定的知识。所以你可以把所有这些部分组合成这两个词。</p><p>If you’re looking towards the long-term, you should ask yourself, “Is this authentic to me? Is it myself that I’m projecting?” And then, “Am I productizing it? Am I scaling it? Am I scaling with labor or capital or code or media?” It’s a very handy, simple mnemonic.<br>如果你着眼于长远，你应该问问自己，“这对我来说是真实的吗？我在投射的是我自己吗？然后，“我是在生产它吗？我在扩展它吗？我是否在用劳动力、资本、代码或媒体来扩大规模？这是一个非常方便、简单的助记词。</p><p>What is this podcast? This is a podcast called Naval. I’m literally productizing myself with a podcast.<br>这是什么播客？这是一个名为 Naval 的播客。我实际上是在用播客将自己产品化。</p><p><strong>Nivi:</strong> You want to figure out what you’re uniquely good at—or what you uniquely are— and apply as much leverage as possible. So making money isn’t even something you do. It’s not a skill. It’s who you are, stamped out a million times.<br>Nivi：你要弄清楚你最擅长什么，或者你有什么独特之处，并尽可能多地发挥杠杆作用。所以赚钱甚至不是你做的事情。这不是一项技能。这就是你是谁，被踩了一百万次。</p><p><strong>Find hobbies that make you rich, fit and creative<br>找到让你变得富有、健康和有创造力的爱好</strong></p><p><strong>Naval:</strong> Making money should be a function of your identity and what you like to do. Another tweet I really liked was, “<a href="https://www.google.com/search?client=safari&rls=en&q=Find+three+hobbies:+One+that+makes+you+money,+one+that+keeps+you+fit,+and+one+that+makes+you+creative&ie=UTF-8&oe=UTF-8">Find three hobbies: One that makes you money, one that keeps you fit, and one that makes you creative.</a>”<br>Naval：赚钱应该取决于你的身份和你喜欢做的事情。我非常喜欢的另一条推文是：“找到三个爱好：一个能让你赚钱，一个能让你保持健康，一个能让你有创造力。</p><p>I would change that slightly. I would say: One that makes you money, one that makes you fit, and one that makes you smarter. So in my case, my hobbies would be reading and making money, as I love working with startups, investing in them, brainstorming them, starting them. I love the ideation and initial creation phase around startups.<br>我会稍微改变一下。我会说：一个能让你赚钱，一个让你健康，一个让你更聪明。所以就我而言，我的爱好是阅读和赚钱，因为我喜欢与初创公司合作，投资它们，集思广益，创办它们。我喜欢围绕初创公司的构思和初始创建阶段。</p><p>On the hobby that keeps you fit, I don’t really have one. The closest thing I have is yoga, but that’s where I sort of fell apart. I think people who, early in life, discover something like surfing or swimming or tennis or some kind of a sport they continue doing throughout most of their life are very lucky, because they found a hobby that will make them fit.<br>关于让你保持健康的爱好，我真的没有。我最接近的东西是瑜伽，但那是我有点崩溃的地方。我认为那些在生命早期发现冲浪、游泳、网球或某种他们一生中大部分时间都在做的运动的人是非常幸运的，因为他们找到了一种可以使他们健康的爱好。</p><h2 id="Accountability-Means-Letting-People-Criticize-You-问责制意味着让人们批评你"><a href="#Accountability-Means-Letting-People-Criticize-You-问责制意味着让人们批评你" class="headerlink" title="Accountability Means Letting People Criticize You 问责制意味着让人们批评你"></a>Accountability Means Letting People Criticize You 问责制意味着让人们批评你</h2><p><em>You have to stick your neck out and be willing to fail publicly<br>你必须伸出脖子，愿意公开失败</em></p><p><strong>Accountability means letting people criticize you<br>问责制意味着让人们批评你</strong></p><p><strong>Nivi:</strong> We finished discussing the tweetstorm. We’re going to spend some time on Q&amp;A and discussing tweets that didn’t make it into the “<a href="https://twitter.com/naval/status/1002103360646823936">How to Get Rich</a>” tweetstorm. My first question: What are some common failures or things people typically do wrong when they try to apply this advice?<br>Nivi：我们讨论完了推特风暴。我们将花一些时间进行问答和讨论那些没有进入“如何致富”推文风暴的推文。我的第一个问题：当人们试图应用这个建议时，他们通常会遇到哪些常见的失败或错误的事情？</p><p><strong>Naval:</strong> A lot of people don’t understand what specific knowledge is or how to “obtain” it. People don’t understand what accountability entails. They think accountability means being successfully accountable. No—it means you have to stick your neck out and fail publicly. You have to be willing to let people criticize you.<br>Naval：很多人不明白什么是特定知识，也不了解如何“获得”它。人们不明白问责制意味着什么。他们认为问责制意味着成功地承担责任。不，这意味着你必须伸出脖子，公开失败。你必须愿意让人们批评你。</p><p>One of the reasons I’m less active on Twitter lately is because every tweet summons an army of nitpickers and haters. It gets exhausting. You have to learn to ignore them, or you won’t survive on Twitter.<br>我最近在Twitter上不那么活跃的原因之一是因为每条推文都会召唤一群吹毛求疵的人和仇恨者。它变得筋疲力尽。你必须学会忽略它们，否则你将无法在Twitter上生存。</p><p>A lot of people try to reconcile this by asking, “Should I quit my 9-to-5 job or not?” That can be a hard decision. You don’t need to go to that extreme. You can start applying accountability, leverage and specific knowledge within your existing career. You don’t necessarily need to fork off and do something else completely different.<br>很多人试图通过问“我应该辞去朝九晚五的工作吗？这可能是一个艰难的决定。你不需要走到那个极端。你可以开始在你现有的职业生涯中应用问责制、杠杆作用和特定知识。你不一定需要分叉并做其他完全不同的事情。</p><p><strong>The most interesting parts should be the ones you disagree with<br>最有趣的部分应该是你不同意的部分</strong></p><p>People will use my advice as a way to agree and disagree with their existing biases. They’ll say, “I agree with that part,” and, “That part you’re completely wrong.” The most interesting tweets should be the ones you disagree with—because clearly I’ve proven I know a few things. If you disagree with it, maybe that’s an area where you can improve your thinking. I improve my thinking all the time.<br>人们会使用我的建议来同意和不同意他们现有的偏见。他们会说，“我同意那部分”，然后，“那部分你完全错了。最有趣的推文应该是那些你不同意的推文——因为很明显，我已经证明我知道一些事情。如果你不同意它，也许这是一个你可以改进思维的领域。我一直在提高我的思维。</p><p>In this tweetstorm I put down the minimum-viable principles. I shared only a small slice of what I’ve learned about how to make money; because 90% of it is suspect.<br>在这场推特风暴中，我写下了最小可行原则。我只分享了我所学到的关于如何赚钱的一小部分;因为其中 90% 是可疑的。</p><p>I put down the bedrock, the stuff I’m sure about. I have not yet seen a tweet successfully contradicting anything in this tweetstorm that would cause me to say, “I got that one wrong.”<br>我放下了基石，我确定的东西。我还没有看到一条推文成功地反驳了这场推文风暴中的任何内容，这会导致我说，“我弄错了。</p><p><strong>Get the free leverage that’s available in tech<br>获得科技领域提供的免费杠杆</strong></p><p>Some people will say, “This only applies to tech entrepreneurs.” I disagree. The <a href="https://nav.al/laborer-tech">real estate example</a> was a good one in that regard.<br>有些人会说，“这只适用于科技企业家。我不同意。在这方面，房地产的例子就是一个很好的例子。</p><p>Technology drives leverage—so I’m going to push you in a tech direction to get that free leverage. Obviously, this message is being delivered through the Internet, so it’s going to have a pro-Internet bias.<br>技术推动了杠杆作用，所以我将推动你朝着技术方向发展，以获得这种自由的杠杆作用。显然，这个信息是通过互联网传递的，所以它会有一个亲互联网的偏见。</p><p><strong>Don’t refuse to do things just because others can’t do them<br>不要因为别人做不到而拒绝做事</strong></p><p>Some people believe it’s unfair to do anything with the opportunities they have because others don’t have the same opportunities. With a defeatist attitude like that, why even get out of bed in the morning? Ninety percent of people are dead.<br>有些人认为用他们拥有的机会做任何事情都是不公平的，因为其他人没有同样的机会。有了这样的失败主义态度，为什么早上还要起床呢？百分之九十的人都死了。</p><p>Many people live on a dollar or less a day. Do you? No. You play the hand you’re dealt to the best of your ability. Then you can take the winnings—the pot from that hand—and do whatever you want with it to fix the world.<br>许多人每天靠一美元或更少的生活。是吗？不。你尽你所能打出你得到的牌。然后你可以拿走奖金——那只手的底池——用它做任何你想做的事来修复世界。</p><p>But if you refuse to do things just because others can’t do them, you are living in denial. It’s an excuse to do nothing.<br>但是，如果你仅仅因为别人做不到而拒绝做事，你就生活在否认中。这是无所事事的借口。</p><p><strong>Realize your philanthropic vision by running a business<br>通过经营企业实现您的慈善愿景</strong></p><p>Others believe wealth creation is fundamentally at odds with an environmentally healthy planet. They view it as a giant zero-sum game. That’s a false narrative, too. Elon Musk is not playing a zero-sum game with the environment; there are plenty of entrepreneurs like him.<br>另一些人则认为，财富创造从根本上与环境健康的地球相悖。他们认为这是一场巨大的零和游戏。这也是一个错误的叙述。埃隆·马斯克（Elon Musk）不是在与环境玩零和游戏;像他这样的企业家很多。</p><p>There is a word environmentalists love: <em>sustainability</em>. If nothing else, for-profit businesses are financially sustainable. You can do a <a href="https://bcorporation.net/">B Corporation</a>, which has a dual mission.<br>环保主义者喜欢一个词：可持续性。如果不出意外，营利性企业在财务上是可持续的。你可以做一个B型公司，它有双重使命。</p><p>Many non-profit efforts would be better off as for-profit companies. They wouldn’t have to beg for grants. They would be financially sustainable. Some great founders realize their philanthropic visions by running a business.<br>许多非营利性公司作为营利性公司会更好。他们不必乞求赠款。它们在财务上是可持续的。一些伟大的创始人通过经营企业来实现他们的慈善愿景。</p><h2 id="We-Should-Eventually-Be-Working-for-Ourselves-我们最终应该为自己工作"><a href="#We-Should-Eventually-Be-Working-for-Ourselves-我们最终应该为自己工作" class="headerlink" title="We Should Eventually Be Working for Ourselves 我们最终应该为自己工作"></a>We Should Eventually Be Working for Ourselves 我们最终应该为自己工作</h2><p><em>But we will have to make sacrifices and take on more risk<br>但我们将不得不做出牺牲并承担更多的风险</em></p><p><strong>This advice is for anybody who wants to be entrepreneurial<br>这个建议是给任何想创业的人的</strong></p><p><strong>Nivi:</strong> Who is this advice targeted to? Is it for my Lyft driver? Is it for an Internet entrepreneur? Is it for somebody who wants to start a YouTube channel?<br>Nivi：这个建议是针对谁的？是给我的 Lyft 司机的吗？是给互联网创业者看的吗？是为想要开设 YouTube 频道的人准备的吗？</p><p><strong>Naval:</strong> Because it comes from someone who’s steeped in Silicon Valley and tech companies, it’s always going to have a bias towards that.<br>Naval：因为它来自一个沉浸在硅谷和科技公司的人，所以它总是会偏向于此。</p><p>But I think it’s good for anybody who wants to be entrepreneurial. Anybody who wants to control their own life. Anybody who wants to deterministically and reliably improve their ability to create wealth over time, is patient, and is looking at the long haul.<br>但我认为这对任何想创业的人都有好处。任何想要控制自己生活的人。任何想要确定性地、可靠地提高他们随着时间的推移创造财富的能力的人，都是有耐心的，并且着眼于长远。</p><p>If you’re 80 years old, retired and running out of energy, it’s probably best to stay retired. But there are 80-year-olds who have a lot of energy, who want to do new things and live for the future.<br>如果你已经80岁了，退休了，精力耗尽了，那么最好保持退休状态。但也有80岁的老人，他们精力充沛，想做新的事情，为未来而活。</p><p>Obviously this can apply very easily to a young person. I would say 9 or 10 years old and up.<br>显然，这很容易适用于年轻人。我会说 9 岁或 10 岁及以上。</p><p><strong>Midlife can be the most fruitful time to apply this advice<br>中年可能是应用此建议最富有成效的时期</strong></p><p>The most difficult one is probably midlife. When we’re in our 30s, 40s and 50s, we already have a lot invested. We have a lot of obligations. Those are the years we’re earning; people are relying on us. We don’t want to change, because we don’t want to admit defeat.<br>最困难的可能是中年。当我们在 30 多岁、40 多岁和 50 多岁时，我们已经投入了很多。我们有很多义务。这些年是我们赚到的;人们依赖我们。我们不想改变，因为我们不想承认失败。</p><p>But that’s when it actually can be the <em>most</em> fruitful. It may be the most difficult pivot: You have a 9-to-5 job; you have a family relying on you.<br>但那是它实际上最富有成效的时候。这可能是最困难的支点：你有一份朝九晚五的工作;你有一个依靠你的家庭。</p><p>It may seem like the things in this podcast are far too idealistic, but maybe it can inform your weekend projects. Maybe it can inform your approach to education; for example, if you’re taking an online course at night. Maybe it can inform what roles you take on at your current company, because they move you closer and closer to points of leverage, points of judgment or points where you’re naturally talented, and you’re able to be more authentic. It might cause you to take on more accountability.<br>这个播客中的内容似乎过于理想化，但也许它可以为您的周末项目提供信息。也许它可以为您的教育方法提供信息;例如，如果您在晚上参加在线课程。也许它可以告诉你在现在的公司担任什么角色，因为它们让你越来越接近杠杆点、判断点或你天生有天赋的点，你能够更真实。它可能会使你承担更多的责任。</p><p>Even if applied piecemeal, these principles can guide you—regardless of what stage of life you are in, short of retirement. If you’re retired, test them to see if they’re true and then teach them to your kids or grandkids.<br>即使零敲碎打地应用，这些原则也可以指导你——无论你处于人生的哪个阶段，除了退休。如果您已经退休，请测试它们以查看它们是否属实，然后将它们教给您的孩子或孙子孙女。</p><p>There are many different ways to participate. It should apply to almost everybody who has a complete body, sound mind, and is looking to work.<br>有许多不同的参与方式。它应该适用于几乎所有拥有完整身体、健全头脑并希望工作的人。</p><p><strong>Look up the value chain to find leverage<br>查找价值链以找到杠杆</strong></p><p><strong>Nivi:</strong> One way to apply this advice is to look at who is getting leverage off of the work that you’re doing. Look up the value chain—at who’s above you and who’s above them—and see how they are taking advantage of the time and work you’re doing and how they’re applying leverage.<br>Nivi：应用这个建议的一个方法是看看谁从你正在做的工作中获得了影响力。查看价值链——谁在你之上，谁在他们之上——看看他们如何利用你正在做的时间和工作，以及他们如何应用杠杆。</p><p>People naturally do this because they want to move up the corporate ladder; but that’s mostly about managing other people. You want to manage more capital, products, media and community.<br>人们自然而然地这样做，因为他们想在公司阶梯上更上一层楼;但这主要是关于管理其他人。您想管理更多的资本、产品、媒体和社区。</p><p>People think about moving up the ladder in their organization. But they don’t often think about moving to a different organization or creating their own company to get more leverage.<br>人们考虑在组织中向上移动。但他们通常不会考虑搬到不同的组织或创建自己的公司以获得更大的影响力。</p><p><strong>You will do better in a small organization<br>在小型组织中，你会做得更好</strong></p><p><strong>Naval:</strong> In general, <a href="https://www.google.com/search?q=ceteris+paribus&rlz=1C1CHBF_enUS795US795&oq=ceteris+paribus&aqs=chrome..69i57j0l5.355j0j7&sourceid=chrome&ie=UTF-8"><em>ceteris paribus</em></a>—fancy Latin words for “all other things equal”—you will do better in a smaller organization than a larger one.<br>Naval：一般来说，ceteris paribus——花哨的拉丁语，意为“所有其他条件都相同”——在较小的组织中，你会比在较大的组织中做得更好。</p><p>You will have more accountability, and your work will be more visible. You’re more likely to be able to try different things, which can help you discover the thing you are uniquely good at. People will be more likely to give you leverage through battlefield promotions. You’ll have more flexibility. There will be more authenticity in how the company operates.<br>你将有更多的责任感，你的工作将更加引人注目。你更有可能尝试不同的事情，这可以帮助你发现你特别擅长的事情。人们更有可能通过战场促销为您提供影响力。您将拥有更大的灵活性。公司的运营方式将更加真实。</p><p>Here is a good progression for a career: Start in a large company and progressively move to smaller and smaller ones. It’s very hard to go from a small company to a larger company. Larger companies tend to be more about politics than merit; they’re more stable but less innovative.<br>这是职业生涯的良好发展：从一家大公司开始，然后逐渐转移到越来越小的公司。从一家小公司到一家大公司是非常困难的。大公司往往更注重政治而不是功绩;它们更稳定，但创新性较差。</p><p><strong>The goal is that we are all working for ourselves<br>目标是我们都在为自己工作</strong></p><p>The long-term goal is that we are all wealthy and working for ourselves. The people working for us are essentially robots. Today that’s software robots executing code in data centers. Tomorrow it could be delivery bots, flying bots and mechanical bots—and drones—that are carrying things around.<br>长期目标是我们都富有并为自己工作。为我们工作的人本质上是机器人。今天，这是在数据中心执行代码的软件机器人。明天，送货机器人、飞行机器人和机械机器人以及无人机可能会四处搬运东西。</p><p>This goes back to the idea that the best relationships are peer relationships. If there’s someone above you, that’s someone to learn from. If you’re not learning from them and improving, nobody should be above you.<br>这又回到了最好的关系是同伴关系的想法。如果有人在你之上，那就是一个值得学习的人。如果你不向他们学习和改进，没有人应该凌驾于你之上。</p><p>If there’s somebody below you, it’s because you’re teaching them and enabling them. If you’re not doing that, then get a robot; you don’t need a human below you.<br>如果有人在你下面，那是因为你在教导他们并帮助他们。如果你不这样做，那就找一个机器人;你不需要你下面的人。</p><p>This is utopian and still a long way off, but in the not-too-distant future anybody who wants to work for themself will be able to do it.<br>这是乌托邦式的，还有很长的路要走，但在不久的将来，任何想为自己工作的人都能做到。</p><p>You may have to make sacrifices and take on more risk. You may have to take on more accountability and live with less steady income. But more and more I think younger people are realizing that if they’re going to work, they’re going to work for themselves.<br>你可能不得不做出牺牲并承担更多的风险。你可能不得不承担更多的责任，并以不太稳定的收入生活。但我认为越来越多的年轻人意识到，如果他们要工作，他们就会为自己工作。</p><h2 id="Being-Ethical-Is-Long-Term-Greedy-道德是长期的贪婪"><a href="#Being-Ethical-Is-Long-Term-Greedy-道德是长期的贪婪" class="headerlink" title="Being Ethical Is Long-Term Greedy 道德是长期的贪婪"></a>Being Ethical Is Long-Term Greedy 道德是长期的贪婪</h2><p><em>If you cut fair deals, you will get paid in the long run<br>如果你削减了公平的交易，从长远来看，你会得到报酬</em></p><p><strong>Ethics isn’t something you study; it’s something you do<br>道德不是你学习的东西;这是你要做的事情</strong></p><p><strong>Nivi:</strong> In the “How to Get Rich” tweetstorm you listed things you suggest people study, like <a href="https://twitter.com/naval/status/1002107869209096192">programming, sales, reading, writing and arithmetic</a>. One of the items that ended up on the cutting-room floor was ethics, which you also suggest people study.<br>Nivi：在“如何致富”的推文风暴中，你列出了你建议人们学习的东西，比如编程、销售、阅读、写作和算术。最终出现在剪辑室地板上的项目之一是道德，你也建议人们学习它。</p><p><strong>Naval:</strong> I was going to put that out as a concession to people who believe making money is evil and that the only way to make it is to be evil. But then I realized ethics is not necessarily something you study. It’s something you think about—and something you do.<br>Naval：我本来打算把这句话作为对那些认为赚钱是邪恶的人的让步，而赚钱的唯一方法就是做恶。但后来我意识到，伦理学不一定是你学习的东西。这是你思考的事情，也是你做的事情。</p><p>Everyone has a personal moral code. Where we get our moral code differs for everybody. It’s not like I can point you to a textbook. I can point you to some Roman or Greek text, but that’s not suddenly going to make you ethical.<br>每个人都有个人的道德准则。我们从哪里得到我们的道德准则对每个人来说都是不同的。我不能给你指一本教科书。我可以给你指出一些罗马或希腊文本，但这不会突然让你变得有道德。</p><p>There’s the <a href="https://en.wikipedia.org/wiki/Golden_Rule">Golden Rule</a>: “Do unto others as you would have them do unto you.” Or there’s Nassim Taleb’s <a href="https://www.google.com/search?client=safari&rls=en&q=nassim+taleb+silver+rule&ie=UTF-8&oe=UTF-8">Silver Rule</a>, which is, “Don’t do unto others what you don’t want them doing unto you. ”<br>有一条黄金法则：“己所不欲，勿施于人。或者有纳西姆·塔勒布（Nassim Taleb）的银法则，即“己所不欲，勿施于人。</p><p><strong>Trust leads to compounding relationships<br>信任导致复杂的关系</strong></p><p>Once you’ve been in business long enough, you will realize how much of it is about trust. It’s about trust because you want to compound interest. You want to work with trustworthy people for long periods of time without having to reevaluate every discussion or constantly look over your shoulder.<br>一旦你做生意的时间足够长，你就会意识到其中有多少是关于信任的。这是关于信任的，因为你想复利。您希望与值得信赖的人长期合作，而不必重新评估每一次讨论或不断回头看。</p><p>Over time you will gravitate to working with certain kinds of people. Similarly, those people will gravitate to working with other ethical people.<br>随着时间的流逝，您将倾向于与某些类型的人一起工作。同样，这些人也会倾向于与其他有道德的人一起工作。</p><p><strong>Being ethical attracts other long-term players<br>道德会吸引其他长期参与者</strong></p><p>Acting ethically turns out to be a selfish imperative. You want to be ethical because it attracts other long-term players in the network. They want to do business with ethical people.<br>事实证明，合乎道德的行为是一种自私的命令。你要有道德，因为它会吸引网络中的其他长期参与者。他们想与有道德的人做生意。</p><p>If you build a reputation for being ethical, people eventually will pay you just to do deals through you. Your involvement will validate deals and ensure they get done; because you wouldn’t be involved with low-quality stuff.<br>如果你建立了道德的声誉，人们最终会付钱给你，只是为了通过你做交易。您的参与将验证交易并确保交易完成;因为你不会参与低质量的东西。</p><p>In the long-run, being ethical pays off—but it’s the <em>very</em> long run. In the short-run, being unethical pays off, which is why so many people go for it. It’s short-term greedy.<br>从长远来看，道德是有回报的，但从长远来看。从短期来看，不道德是有回报的，这就是为什么这么多人去做这件事。这是短期的贪婪。</p><p><strong>Being ethical is long-term greedy<br>有道德是长期的贪婪</strong></p><p>You can be ethical simply because you’re long-term greedy. I can even outline a framework for different parts of ethics just based on the idea of long-term selfishness.<br>你可以仅仅因为你长期贪婪而有道德。我甚至可以根据长期自私的想法为道德的不同部分勾勒出一个框架。</p><p>For example, you want to be honest because it leaves you with a clear mind. You don’t want two threads running in your head, one with the lies you tell —and now have to keep track of—and the other with the truth. If you are honest, you only have to think about one thing at a time, which frees up mental energy and makes you a clearer thinker.<br>例如，你要诚实，因为它会让你头脑清醒。你不希望两条线索在你的脑海中运行，一条是你说的谎言——现在必须跟踪——另一条是真相。如果你是诚实的，你一次只需要思考一件事，这样可以释放精神能量，让你成为一个更清晰的思考者。</p><p>Also, by being honest you’re rejecting people who only want to hear pretty lies. You force those people out of your network. Sometimes it’s painful, especially with friends and family. But over the long-term you create room for the people who like you exactly the way that you are. That is a selfish reason to be honest.<br>此外，通过诚实，你拒绝了那些只想听漂亮谎言的人。你迫使这些人离开你的网络。有时这很痛苦，尤其是与朋友和家人在一起。但从长远来看，你会为那些喜欢你的人创造空间。说实话，这是一个自私的理由。</p><p><strong>If you cut fair deals, you will get paid in the long run<br>如果你削减了公平的交易，从长远来看，你会得到报酬</strong></p><p>Negotiations offer another good example. If you’re the kind of person who always tries to get the best deal for yourself, you will win a lot of early deals and it will feel very good.<br>谈判是另一个很好的例子。如果你是那种总是试图为自己争取最优惠的人，你会赢得很多早期交易，而且感觉会很好。</p><p>On the other hand, a few people will recognize that you’re always scrabbling and not acting fairly, and they will tend to avoid you. Over time those are the people who end up being the dealmakers in the network. People go to them for a fair shake or to figure out what’s fair.<br>另一方面，一些人会认识到你总是在拼命，行为不公平，他们会倾向于避开你。随着时间的流逝，这些人最终会成为网络中的交易撮合者。人们去找他们是为了公平地摇晃或弄清楚什么是公平的。</p><p>If you cut people fair deals, you won’t get paid in the short-term. But over the long-term, everybody will want to deal with you. You end up being a market hub. You have more information. You have trust. You have a reputation. And people end up doing deals through you in the long-run.<br>如果你削减了人们的公平交易，你不会在短期内得到报酬。但从长远来看，每个人都会想和你打交道。你最终会成为一个市场中心。您有更多信息。你有信任。你有名声。从长远来看，人们最终会通过你做交易。</p><p>A lot of wisdom involves realizing long-term consequences of your actions. The longer your time horizon, the wiser you’re going to seem to everybody around you.<br>很多智慧都涉及意识到你的行为的长期后果。你的时间跨度越长，你周围的每个人看起来就越聪明。</p><h2 id="Envy-Can-Be-Useful-or-It-Can-Eat-You-Alive-嫉妒可能是有用的，也可能是活生生的"><a href="#Envy-Can-Be-Useful-or-It-Can-Eat-You-Alive-嫉妒可能是有用的，也可能是活生生的" class="headerlink" title="Envy Can Be Useful, or It Can Eat You Alive 嫉妒可能是有用的，也可能是活生生的"></a>Envy Can Be Useful, or It Can Eat You Alive 嫉妒可能是有用的，也可能是活生生的</h2><p><em>Envy can give you a powerful boost, or it can eat you alive<br>嫉妒可以给你强大的动力，也可以把你活活吃掉</em></p><p><strong>Suffering through the wrong thing can motivate you to find the right thing<br>在错误的事情上受苦可以激励你找到正确的事情</strong></p><p><strong>Nivi:</strong> Do you want to tell us about jobs you had growing up and the one that kicked off your fanatical obsession with creating wealth?<br>Nivi：你想告诉我们你成长过程中的工作，以及让你开始狂热地痴迷于创造财富的工作吗？</p><p><strong>Naval:</strong> This gets a little personal, and I don’t want to humble-brag. There was a thread going around Twitter—<em>Name Five Jobs You’ve Held</em>—and every rich person on there was signaling how they’ve held normal jobs. I don’t want to play that game.<br>Naval：这有点个人化，我不想谦虚地吹嘘。Twitter上流传着一个帖子——说出你做过的五份工作——上面的每一个富人都在暗示他们是如何从事正常工作的。我不想玩那个游戏。</p><p>I’ve had menial jobs. There are people who had it worse than me and people who had it better than me.<br>我做过卑微的工作。有些人比我更糟糕，有些人比我更好。</p><p>At one point in college I was washing dishes in the school cafeteria and said, “F this. I hate this. I can’t do this anymore.” I sweet-talked may way into a teaching assistant job for a computer science professor, even though I was completely unqualified. The job forced me to learn computer algorithms, so I could TA the rest of the course.<br>在大学里，有一次我在学校食堂洗碗，说：“F，这个。我讨厌这个。我不能再这样做了。我甜言蜜语地进入了计算机科学教授的助教工作，尽管我完全不合格。这份工作迫使我学习计算机算法，这样我就可以在课程的其余部分担任助教。</p><p>So my desire to learn computer algorithms came out of the suffering I experienced washing dishes—not that there’s anything wrong with washing dishes; it just wasn’t for me.<br>因此，我学习计算机算法的愿望来自我所经历的洗碗的痛苦——并不是说洗碗有什么问题;它只是不适合我。</p><p>I had an active mind. I wanted to make money and earn a living through mental activities, not through physical activities. Sometimes it takes suffering through the wrong thing to motivate you to find the right thing.<br>我有一个活跃的头脑。我想通过脑力活动而不是通过体育活动来赚钱和谋生。有时，需要经历错误的事情才能激励你找到正确的事情。</p><p><strong>Being a lawyer was not what I was meant to do<br>成为一名律师不是我应该做的</strong></p><p>Back in the day I had a prestigious internship at a big New York City law firm. I basically got fired for surfing <a href="https://en.wikipedia.org/wiki/Usenet">Usenet</a>.<br>过去，我在纽约市的一家大型律师事务所实习。我基本上是因为浏览Usenet而被解雇的。</p><p>This was before the Internet was a big thing. Usenet hosted newsgroups, and it was the only the only thing keeping me from being completely bored. I was an overpaid intern wearing a suit and tie. I got to hang out in the conference room and make photocopies when lawyers needed them.<br>这是在互联网成为一件大事之前。Usenet托管了新闻组，这是唯一让我不至于完全无聊的东西。我是一个穿着西装打领带的高薪实习生。我不得不在会议室里闲逛，并在律师需要时复印。</p><p>I was bored out of my skull. This was pre-iPhone (thank God for Steve Jobs for saving us all from unending boredom). I used to read <em>The Wall Street Journal</em> or anything I could get my hands on. I would’ve read the back of a brochure to keep from going insane, because listening to a bunch of corporate lawyers discuss how to optimize details of a contract is really dull.<br>我从头骨里钻出来了。这是iPhone之前（感谢上帝，史蒂夫·乔布斯（Steve Jobs）将我们所有人从无休止的无聊中拯救出来）。我曾经读过《华尔街日报》或任何我能接触到的东西。为了不发疯，我会阅读小册子的背面，因为听一群公司律师讨论如何优化合同的细节真的很无聊。</p><p>They wanted me to sit there quietly and not read the paper. They got mad and said, “That’s rude. That’s misbehavior.”<br>他们希望我安静地坐在那里，不要看报纸。他们生气了，说：“这太粗鲁了。这是不当行为。</p><p>I got called up and reprimanded a bunch of times. I was finally terminated—sent home in shame from my prestigious internship, destroying my chance to go to law school.<br>我被叫了好几次，被训斥了很多次。我最终被解雇了——从我享有盛誉的实习中羞愧地被送回家，毁了我上法学院的机会。</p><p>I was unhappy… for all of <em>an hour</em>. Ultimately, it’s one of the best things that ever happened to me. Otherwise, I would have ended up a lawyer. Not that I have anything against lawyers; it’s just not what I was meant to do.<br>我很不开心……整整一个小时。归根结底，这是发生在我身上的最好的事情之一。否则，我最终会成为一名律师。并不是说我反对律师;这不是我应该做的。</p><p><strong>Envy can be useful or it can eat you alive<br>嫉妒可能是有用的，也可能是活生生的吃掉你</strong></p><p><strong>Nivi:</strong> You mentioned a catering job that kicked off your obsession with wealth.<br>Nivi：你提到了一份餐饮工作，这份工作开启了你对财富的痴迷。</p><p><strong>Naval:</strong> That was an envy thing. When I was in high school, I needed a job to pay for my first semester of college.<br>Naval：那真是一件令人羡慕的事情。当我上高中时，我需要一份工作来支付我大学第一学期的费用。</p><p>It was the summer of 1990 or 1991. This was the Bush Senior recession—if anyone listening was alive back then to remember it—so it was actually really hard to get a job.<br>那是 1990 年或 1991 年的夏天。这是老布什时期的经济衰退——如果当时有人还活着的话，还记得它——所以实际上很难找到工作。</p><p>I ended up working for a catering company serving Indian food. One day, I had to serve at a birthday party for a kid in my school. So I was out there serving food and drinks to all of my classmates. That was incredibly embarrassing. I wanted to hide away and die right there.<br>我最终在一家提供印度菜的餐饮公司工作。有一天，我不得不在学校的一个孩子的生日派对上服务。所以我在那里为我所有的同学提供食物和饮料。这真是令人难以置信的尴尬。我想躲起来，死在那里。</p><p>But you know what? It’s all part of the plan. It’s all part of the motivation. If that didn’t happen, I probably wouldn’t be as motivated or as successful. It’s all fine. It was definitely a strong motivator.<br>但你知道吗？这都是计划的一部分。这都是动机的一部分。如果那没有发生，我可能不会那么有动力或那么成功。一切都很好。这绝对是一个强大的动力。</p><p>In that sense, envy can be useful. Envy also can eat you alive if you let it follow you around your entire life. But there are points in your life when it can be a powerful booster rocket.<br>从这个意义上说，嫉妒是有用的。嫉妒也可以活生生地吃掉你，如果你让它伴随你的一生。但是，在你的生活中，有些时候它可以成为强大的助推火箭。</p><h2 id="Principal-Agent-Problem-Act-Like-an-Owner-委托代理问题：像所有者一样行事"><a href="#Principal-Agent-Problem-Act-Like-an-Owner-委托代理问题：像所有者一样行事" class="headerlink" title="Principal-Agent Problem: Act Like an Owner 委托代理问题：像所有者一样行事"></a>Principal-Agent Problem: Act Like an Owner 委托代理问题：像所有者一样行事</h2><p><em>If you think and act like an owner, it’s only a matter of time until you become an owner<br>如果你像一个所有者一样思考和行动，那么你成为所有者只是时间问题</em></p><p><strong>A principal is an owner; an agent is an employee<br>委托人是所有者;代理人是雇员</strong></p><p><strong>Nivi:</strong> We spoke earlier about picking a business model that has <a href="https://nav.al/business-models">leverage from scale economies, network effects and zero marginal cost of replication</a>. There were a few other ideas on the cutting-room floor that I want to go through with you. The first one is the <a href="https://en.wikipedia.org/wiki/Principal%E2%80%93agent_problem">principal-agent problem</a>.<br>Nivi：我们之前谈到过选择一种能够利用规模经济、网络效应和零边际复制成本的商业模式。在裁剪室的地板上，还有一些其他的想法，我想和你一起讨论。第一个是委托代理问题。</p><p><strong>Naval:</strong> So <a href="https://en.wikipedia.org/wiki/Mental_model">mental models</a> are all the rage. Everyone’s trying to become smarter by adopting mental models. I think mental models are interesting, but I don’t think explicitly in terms of mental-model checklists. I know <a href="https://en.wikipedia.org/wiki/Charlie_Munger">Charlie Munger</a> does, but that’s just not how I think.<br>Naval：所以心智模型风靡一时。每个人都试图通过采用心智模型来变得更聪明。我认为心智模型很有趣，但我并没有明确地从心智模型清单的角度思考。我知道查理·芒格（Charlie Munger）是这样想的，但这不是我的想法。</p><p>Instead, I tend to focus on the few lessons I’ve learned over and over in life that I think are incredibly important and seem to apply almost universally. One that keeps coming up from microeconomics—because as we’ve established, macroeconomics is not really worth spending time on—is what’s called the principal-agent problem.<br>相反，我倾向于关注我在生活中一遍又一遍地学到的几节课，我认为这些课非常重要，而且似乎几乎普遍适用。微观经济学不断出现的一个问题——因为正如我们已经确定的那样，宏观经济学并不值得花时间研究——这就是所谓的委托代理问题。</p><p>In this case it’s a <em>principal,</em> who is a person; rather than a <em>principle</em> that you would follow. A principal is an owner. An agent works for the owner, so you can think of an agent as an employee. The difference between a founder and an employee is the difference between a principal and an agent.<br>在这种情况下，它是委托人，他是一个人;而不是你会遵循的原则。委托人是所有者。代理为所有者工作，因此您可以将代理视为员工。创始人和雇员的区别就是委托人和代理人的区别。</p><p><strong>A principal’s incentives are different than an agent’s incentives<br>委托人的激励与代理人的激励不同</strong></p><p>I can summarize the principal-agent problem with a famous quote attributed to Napoleon or Julius Caesar:<br>我可以用拿破仑或凯撒大帝的一句名言来总结委托代理问题：</p><p>“If you want it done, Go. If not, Send.”<br>“如果你想完成它，那就去吧。如果没有，请发送。</p><p>Which is to say: If you want to do something right, do it yourself; because other people just don’t care enough.<br>也就是说：如果你想做正确的事情，就自己去做;因为其他人只是不够关心。</p><p>Now, the principal-agent problem pops up everywhere. In microeconomics, they try to characterize it this way: The principal’s incentives are different than the agent’s incentives, so the owner of the business wants what is best for the business and will make the most money. The agent generally wants whatever will look good to the principal, or might make them the most friends in the neighborhood or in the business, or might make them personally the most money.<br>现在，委托代理问题无处不在。在微观经济学中，他们试图这样描述：委托人的激励与代理人的激励不同，因此企业所有者想要对企业最有利并且能赚到最多的钱。代理人通常想要任何对委托人来说好看的东西，或者可能使他们成为社区或企业中最多的朋友，或者可能使他们个人获得最多的钱。</p><p>You see this a lot with hired-gun CEOs running public companies, where the ownership of the public company is distributed so widely that there’s no principal remaining. Nobody owns more than 1% of the company. The CEO takes charge, stuffs the board with their buddies and then starts issuing themself low-price stock options, or doing a lot of stock buybacks because their compensation is based directly tied to the stock price.<br>在经营上市公司的雇佣枪CEO身上，你经常看到这种情况，上市公司的所有权分布如此广泛，以至于没有剩余的本金。没有人拥有公司超过1%的股份。CEO负责，把他们的伙伴塞进董事会，然后开始给自己发行低价股票期权，或者进行大量的股票回购，因为他们的薪酬与股价直接挂钩。</p><p><strong>If you can work on incentives, don’t work on anything else<br>如果你能在激励上下功夫，就不要在别的事情上下功夫</strong></p><p>Agents have a way of hacking systems. This is what make incentive design so difficult. As Charlie Munger says, <a href="https://www.google.com/search?newwindow=1&rlz=1C1CHBF_enUS795US795&ei=zf8cXdbjJ8HRtQbpxIO4Bg&q=Charlie+Munger++work+on+incentives&oq=Charlie+Munger++work+on+incentives&gs_l=psy-ab.3..33i22i29i30.18324.27313..27574...2.0..0.220.3103.1j16j4......0....1..gws-wiz.......33i10j33i299j33i160.xabIqLhfyIY">if you could be working on incentives, don’t work on anything else</a>.<br>特工有一种黑客系统的方法。这就是激励设计如此困难的原因。正如查理·芒格（Charlie Munger）所说，如果你可以研究激励措施，就不要做其他任何事情。</p><p>Almost all human behavior can be explained by incentives. The study of signaling is seeing what people do despite what they say. People are much more honest with their actions than they are with their words. You have to get the incentives right to get people to behave correctly. It’s a very difficult problem because people aren’t coin-operated. The good ones are not just looking for money—they’re also looking for things like status and meaning in what they do.<br>几乎所有的人类行为都可以用激励来解释。对信号的研究是观察人们不管他们说了什么，但还是做了什么。人们对自己的行为比对自己的言语更诚实。你必须获得正确的激励措施，让人们行为正确。这是一个非常困难的问题，因为人们不是投币式的。好人不只是在寻找金钱，他们还在寻找地位和意义之类的东西。</p><p>As a business owner you are always going to be dealing with the principal-agent problem. You’re always going to be trying to figure out: How do I make this person think like me? How do I incent them? How do I give them founder mentality?<br>作为企业主，您总是要处理委托代理问题。你总是会试图弄清楚：我如何让这个人像我一样思考？我该如何激励他们？我如何给他们创始人心态？</p><p>Only founders can fully appreciate the importance of a <em>founder mentality</em> and just how difficult and gnarly principal-agent problem is.<br>只有创始人才能充分体会到创始人心态的重要性，以及委托代理问题是多么困难和棘手。</p><p><strong>When you do deals, it’s better to have the same incentives<br>当你做交易时，最好有同样的激励措施</strong></p><p>If you are a principal, you want to spend a lot of your time thinking about this problem. You want to be generous with your top lieutenants—in terms of ownership and incentives—even if they don’t necessarily realize it; because over time they will and you want them to be aligned with you.<br>如果你是校长，你想花很多时间思考这个问题。你想对你的高级副手慷慨大方——在所有权和激励方面——即使他们不一定意识到这一点;因为随着时间的流逝，他们会的，而你希望他们与你保持一致。</p><p>When you do business deals, it’s better to have an aligned partnership where you both have the same incentives than a partnership where you have the advantage in the deal. Because eventually the other person will figure it and the partnership will fall apart. Either way, it’s not going to be one of those things that you can invest in and enjoy the benefits of compound interest over decades.<br>当您进行商业交易时，最好是拥有一致的合作伙伴关系，因为你们都有相同的激励措施，而不是在交易中具有优势的合作伙伴关系。因为最终对方会弄清楚，伙伴关系会分崩离析。无论哪种方式，它都不会成为您可以投资并享受复利数十年好处的事情之一。</p><p><strong>If you’re an employee, your most important job is to think like a principal<br>如果你是一名员工，你最重要的工作就是像校长一样思考</strong></p><p>Finally, if you’re in a role where you’re an agent—you’re an employee—then your most important job is to think like a principal. The more you can think like a principal, the better off you’re going to be long-term. Train yourself how to think like a principal, and eventually you will become a principal. If you align yourself with a good principal, they will promote you or empower you or give you accountability or leverage that may be way out of proportion to your relatively menial role.<br>最后，如果你的角色是代理人——你是一名员工——那么你最重要的工作就是像校长一样思考。你越能像校长一样思考，你就越能长期发展。训练自己如何像校长一样思考，最终你会成为一名校长。如果你与一个好的校长保持一致，他们会提拔你或赋予你权力，或者给你责任或影响力，这可能与你相对卑微的角色不成比例。</p><p>I’m always impressed by founders who promote young people through the ranks and allow them to skip multiple levels despite their lack of experience. Invariably it happens because this agent—who’s way deep down in the organization—thinks like a principal.<br>我总是对那些通过晋升晋升的年轻人并允许他们跳过多个级别的创始人印象深刻，尽管他们缺乏经验。它总是因为这个代理人——他在组织深处——像校长一样思考。</p><p>If you can hack your way through the principal-agent problem, you’ll probably solve half of what it takes to run a company.<br>如果你能破解委托代理问题，你可能会解决经营一家公司所需的一半。</p><p><strong>Nivi:</strong> The reason I asked about this one first is because I feel like I never see the principal-agent problem in my work. I tend to work in small teams where everybody is highly economically aligned, and the people have been filtered for a commitment to the mission, and everybody else who doesn’t work out moves on to another role elsewhere.<br>Nivi：我之所以先问这个问题，是因为我觉得我在工作中从未看到过委托代理问题。我倾向于在小团队中工作，每个人都在经济上高度一致，人们已经因为对使命的承诺而被过滤，而其他所有不工作的人都会转移到其他地方担任另一个角色。</p><p><strong>Naval:</strong> These are all heuristics that you have designed to avoid having to deal with the single biggest problem in management.<br>Naval：这些都是你设计的启发式方法，以避免处理管理中最大的问题。</p><p><strong>Deal with small firms to avoid the principal-agent problem<br>与小公司打交道，避免委托代理问题</strong></p><p>Another example of a heuristic that helps you route around the principal-agent problem is to deal with the smallest firms possible. For example, when I hire a lawyer or a banker or even an accountant to work on my deals, I’ve become very cognizant about the size of the firm. Bigger firms—all other things being equal—are generally worse than small ones.<br>另一个启发式方法的例子是帮助你绕过委托代理问题，与尽可能小的公司打交道。例如，当我聘请律师或银行家甚至会计师来处理我的交易时，我已经非常了解公司的规模。在所有其他条件相同的情况下，大公司通常比小公司更糟糕。</p><p>Yes, the big firm has more experience. Yes, they have more people. Yes, they have a bigger brand. But you’ll find the principal and the agent are highly separated. Very often the principal will sell you and convince you to work with the firm, but then all the work will be done by an agent who simply doesn’t care as much. You end up getting substandard service.<br>是的，大公司有更多的经验。是的，他们有更多的人。是的，他们有一个更大的品牌。但你会发现委托人和代理人是高度分开的。很多时候，校长会把你卖掉，并说服你与公司合作，但随后所有的工作都将由一个根本不关心的代理人完成。你最终会得到不合标准的服务。</p><p>I prefer to work with boutiques. My ideal law firm is a law firm of one. My ideal banker is a solo banker. Now, you’re making other sacrifices and trade-offs in terms of that person’s resources—and you are betting big on that person. But you’ve got one throat to choke. There’s no one else to point fingers at; there’s nowhere to run. The accountability is extremely high.<br>我更喜欢与精品店合作。我理想的律师事务所是一家律师事务所。我理想的银行家是个人银行家。现在，你正在就那个人的资源做出其他牺牲和权衡——你正在对那个人下大赌注。但你有一个喉咙要窒息。没有其他人可以指责;无处可逃。问责制非常高。</p><p>If you are an agent, the best way to operate is to ask, “What would the founder do?” If you think like the owner and you act like the owner, it’s only a matter of time until you become the owner.<br>如果你是一个经纪人，最好的运作方式是问，“创始人会怎么做？如果你像主人一样思考，像主人一样行事，那么你成为主人只是时间问题。</p><h2 id="Kelly-Criterion-Avoid-Ruin-凯利标准：避免毁灭"><a href="#Kelly-Criterion-Avoid-Ruin-凯利标准：避免毁灭" class="headerlink" title="Kelly Criterion: Avoid Ruin 凯利标准：避免毁灭"></a>Kelly Criterion: Avoid Ruin 凯利标准：避免毁灭</h2><p><em>Don’t ruin your reputation or get wiped to zero<br>不要毁了你的声誉或被抹去为零</em></p><p><strong>Don’t bet everything on one big gamble<br>不要把所有东西都押在一场大赌注上</strong></p><p><strong>Nivi:</strong> Let’s chat about the Kelly criterion.<br>Nivi：让我们聊聊凯利准则。</p><p><strong>Naval:</strong> The Kelly criterion is a popularized mathematical formulation of a simple concept. The simple concept is: Don’t risk everything. Stay out of jail. Don’t bet everything on one big gamble. Be careful how much you bet each time, so you don’t lose the whole kitty.<br>Naval：凯利准则是一个简单概念的流行数学公式。简单的概念是：不要冒一切风险。远离监狱。不要把所有东西都押在一场大赌注上。注意你每次下注多少，这样你就不会输掉整只小猫。</p><p>If you’re a gambler, the Kelly criterion mathematically formulates how much you should wager per hand, even if you have an edge—because even when you have an edge, you can still lose. Let’s say you have 51-to-49 edge. Every gambler knows not to bet the whole kitty on that 51-to-49 edge—because you could lose everything and won’t get to come back to the average.<br>如果你是一个赌徒，凯利准则在数学上规定了你应该每手牌下注多少，即使你有优势——因为即使你有优势，你仍然可能输。假设您有 51 到 49 的边缘。每个赌徒都知道不要把整只小猫都押在51比49的优势上——因为你可能会输掉一切，而且无法回到平均水平。</p><p>Nassim Taleb famously talks about <a href="https://medium.com/incerto/the-logic-of-risk-taking-107bf41029d3">ergodicity</a>, which is a fancy word for a simple concept: What is true for 100 people on average isn’t the same as one person averaging that same thing 100 times.<br>纳西姆·塔勒布（Nassim Taleb）谈到了著名的遍历性，这是一个简单概念的花哨词：平均100个人的真实情况与一个人平均100次相同。</p><p><strong>Ruining your reputation is the same as getting wiped to zero<br>毁掉你的声誉就等于被抹去零</strong></p><p>The easiest way to see that is with <a href="https://en.wikipedia.org/wiki/Russian_roulette">Russian roulette</a>. Say six people play Russian roulette one time each, and each winner gets $1 billion. One person ends up dead and five people get $1 billion. Compare that to one person playing Russian roulette six times with the same gun. They are never going to end up a billionaire—they will be dead and worth zero. So risk-taking—especially when the averages that are calculated across large populations—is not always rational.<br>最简单的方法是使用俄罗斯轮盘赌。假设六个人每人玩一次俄罗斯轮盘赌，每个赢家获得 10 亿美元。一个人最终死亡，五个人获得10亿美元。相比之下，一个人用同一把枪玩六次俄罗斯轮盘赌。他们永远不会成为亿万富翁——他们将死去，身价为零。因此，冒险行为——尤其是当在大量人群中计算的平均值时——并不总是理性的。</p><p>The Kelly criterion helps you avoid ruin. The number one way people get ruined in modern business is not by betting too much; it’s by cutting corners and doing unethical or downright illegal things. Ending up in an orange jumpsuit in prison or having a reputation ruined is the same as getting wiped to zero—so never do those things.<br>凯利标准可帮助您避免毁灭。在现代商业中，人们被毁掉的首要方式不是下注太多;这是通过偷工减料和做不道德或彻头彻尾的非法事情。最终在监狱里穿着橙色连身衣或名誉受损，就像被抹去零一样——所以永远不要做这些事情。</p><h2 id="Schelling-Point-Cooperating-Without-Communicating-谢林点：合作而不沟通"><a href="#Schelling-Point-Cooperating-Without-Communicating-谢林点：合作而不沟通" class="headerlink" title="Schelling Point: Cooperating Without Communicating 谢林点：合作而不沟通"></a>Schelling Point: Cooperating Without Communicating 谢林点：合作而不沟通</h2><p><em>People who can’t communicate can cooperate by anticipating the other person’s actions<br>无法沟通的人可以通过预测对方的行为来合作</em></p><p><strong>Use social norms to cooperate when you can’t communicate<br>当你无法沟通时，使用社会规范进行合作</strong></p><p><strong>Nivi:</strong> Let’s talk about Schelling points.<br>Nivi：让我们谈谈谢林的观点。</p><p><strong>Naval:</strong> The <a href="https://www.lesswrong.com/posts/yJfBzcDL9fBHJfZ6P/nash-equilibria-and-schelling-points">Schelling point</a> is a game theory concept made famous by Thomas Schelling in his book, [*The Strategy of Conflict*](<a href="https://books.google.co.id/books?id=7RkL4Z8Yg5AC&printsec=frontcover&dq=The+Strategy+of+Conflict&hl=en&sa=X&ved=0ahUKEwin7MHuw6njAhX58HMBHe2OC3YQ6AEIKjAA#v=onepage&q=The">https://books.google.co.id/books?id=7RkL4Z8Yg5AC&amp;printsec=frontcover&amp;dq=The+Strategy+of+Conflict&amp;hl=en&amp;sa=X&amp;ved=0ahUKEwin7MHuw6njAhX58HMBHe2OC3YQ6AEIKjAA#v=onepage&amp;q=The</a> Strategy of Conflict&amp;f&#x3D;false), which I recommend.<br>Naval：谢林点是托马斯·谢林（Thomas Schelling）在他的《冲突战略》（The Strategy of Conflict）一书中提出的博弈论概念，我推荐它。</p><p>It’s about multiplayer games where people respond based on what they think the other person’s response will be. He came up with a mathematical formalization to answer: How do you get people who cannot communicate with each other to coordinate?<br>这是关于多人游戏的，人们根据他们认为对方的反应做出反应。他想出了一个数学形式来回答：如何让无法相互沟通的人进行协调？</p><p>Suppose I want to meet with you, but I don’t tell you where or when to meet. You also want to meet with me, but we can’t communicate. That sounds like an impossible problem to solve—we can’t do it. But not quite.<br>假设我想和你见面，但我没有告诉你在哪里或什么时候见面。你也想和我见面，但我们无法沟通。这听起来像是一个不可能解决的问题——我们做不到。但并不完全是。</p><p>You can use social norms to converge on a Schelling point. I know you’re rational and educated. And you know I’m rational and educated. We’re both going to start thinking.<br>你可以利用社会规范来收敛于谢林点。我知道你很理性，受过教育。你知道我是理性的，受过教育的。我们俩都要开始思考了。</p><p><em>When will we meet?</em> If we have to pick an arbitrary date, we’ll probably pick New Year’s Eve. <em>What time will we meet?</em> Midnight or 12:01 a.m. <em>Where will we meet?</em> If we’re Americans, the big meeting spot is probably New York City, the most important city. <em>Where in New York City will we meet?</em> Probably under the clock at Grand Central Station. Maybe you end up at the Empire State Building, but not likely.<br>我们什么时候见面？如果我们必须选择一个任意的日期，我们可能会选择除夕夜。我们什么时候见面？午夜或凌晨 12：01我们将在哪里见面？如果我们是美国人，最大的聚会地点可能是纽约市，最重要的城市。我们将在纽约市的哪个地方见面？可能在中央车站的时钟下。也许你最终会到达帝国大厦，但不太可能。</p><p><strong>You can find Schelling points in business, art and politics<br>你可以在商业、艺术和政治领域找到谢林的观点</strong></p><p>There are many games—whether it’s business or art or politics—where you can find a Schelling point. So you can cooperate with the other person, even when you can’t communicate.<br>在许多游戏中，无论是商业、艺术还是政治，你都可以找到谢林的观点。因此，即使无法沟通，您也可以与对方合作。</p><p>Here’s a simple example: Suppose two companies are competing heavily and hold an oligopoly. Let’s say the price fluctuates between $8 and $12 for whatever the service is. Don’t be surprised if they converge on $10 without ever talking to each other.<br>这里有一个简单的例子：假设两家公司竞争激烈，并拥有寡头垄断。假设无论服务是什么，价格都在 8 美元到 12 美元之间波动。如果他们在没有相互交谈的情况下聚集在 10 美元上，请不要感到惊讶。</p><h2 id="Turn-Short-Term-Games-Into-Long-Term-Games-将短期游戏变成长期游戏"><a href="#Turn-Short-Term-Games-Into-Long-Term-Games-将短期游戏变成长期游戏" class="headerlink" title="Turn Short-Term Games Into Long-Term Games 将短期游戏变成长期游戏"></a>Turn Short-Term Games Into Long-Term Games 将短期游戏变成长期游戏</h2><p><em>Improve your leverage by turning short-term relationships into long-term ones<br>通过将短期关系转变为长期关系来提高您的杠杆作用</em></p><p><strong>Pareto optimal solutions require a trade-off to improve any criterion<br>帕累托最优解需要权衡以改进任何准则</strong></p><p><strong>Nivi:</strong> Do you want to talk about <a href="https://en.wikipedia.org/wiki/Pareto_efficiency">Pareto optimal</a>?<br>Nivi：你想谈谈帕累托最优吗？</p><p><strong>Naval:</strong> Pareto optimal is another concept from game theory, along with Pareto superior.<br>Naval：帕累托最优是博弈论中的另一个概念，还有帕累托优势。</p><p>Pareto superior means something is better in some ways while being equal or better in other ways. It’s not worse in any way. This is an important concept when you’re negotiating. If you can make a solution Pareto superior to where it was before, you will always do that.<br>帕累托优越意味着某些东西在某些方面更好，而在其他方面相同或更好。无论如何，情况都不会更糟。当你在谈判时，这是一个重要的概念。如果你能使帕累托解决方案优于以前，你就会一直这样做。</p><p>Pareto optimal is when the solution is the best it can possibly be and you can’t change it without making it worse in at least one dimension. There is a hard trade-off from this point forward.<br>帕累托最优是指解决方案是最好的，并且您不能在不使其至少在一个维度上变得更糟的情况下改变它。从现在开始，有一个艰难的权衡。</p><p>These are important concepts to understand when you’re involved in a big negotiation.<br>当您参与大型谈判时，这些都是需要了解的重要概念。</p><p><strong>Negotiations are won by whoever cares less<br>谈判由谁不那么在乎就赢了</strong></p><p>I generally say, though: “<a href="https://twitter.com/naval/status/818630258916139008?lang=en">Negotiations are won by whoever cares less</a>.” Negotiation is about not wanting it too badly. If you want something too badly, the other person can extract more value from you.<br>不过，我通常说：“谈判是由谁赢得的。谈判就是不要太想要它。如果你太想要某样东西，对方可以从你身上榨取更多的价值。</p><p>If someone is taking advantage of you in a negotiation, your best option is to turn it from a short-term game into a long-term game. Try to make it a repeat game. Try to bring reputation into the negotiation. Try to include other people who may want to play games with this person in the future.<br>如果有人在谈判中占了你的便宜，你最好的选择是把它从短期游戏变成长期游戏。试着让它成为一个重复的游戏。尝试将声誉带入谈判。尝试包括将来可能想和这个人一起玩游戏的其他人。</p><p>An example of a high-cost, low-information single-move game is having your house renovated.<br>高成本、低信息的单步游戏的一个例子是翻新你的房子。</p><p>Contractors are notorious for overbooking, ripping people off, and being unaccountable. I’m sure contractors have their own side to it: “The homeowner has unreasonable demands.” “We found problems.” “The homeowner doesn’t want to pay for it.” “They don’t understand; they’re low-information buyers.”<br>承包商因超额预订、敲诈勒索和不负责任而臭名昭著。我敢肯定，承包商也有自己的一面：“房主有不合理的要求。“我们发现了问题。”“房主不想为此买单。”“他们不明白;他们是低信息量的买家。</p><p>It’s an expensive transaction. Historically it’s been very hard to find good contractors; and the contractor has little information on the homeowner.<br>这是一笔昂贵的交易。从历史上看，很难找到好的承包商;承包商对房主的信息很少。</p><p><strong>Convert single-move games to multi-move games<br>将单步游戏转换为多步游戏</strong></p><p>So you try to go through friends. You try to find people with good reputations. You’re converting an expensive single-move game with a high probability of cheating on both sides into a multi-move game.<br>所以你试着通过朋友。你试图找到有良好声誉的人。您正在将一个昂贵的单步游戏转换为多步游戏，双方都很有可能作弊。</p><p>One way to do that is to say: “Actually, I need two different projects done. The first project we’ll do together, and based on that I’ll decide if we do the second project.”<br>一种方法是说：“实际上，我需要完成两个不同的项目。第一个项目我们将一起做，在此基础上，我将决定是否做第二个项目。</p><p>Another way is to say: “I’m going to do this project with you, and I have three friends who want projects done who are waiting to see the outcome of this project.”<br>另一种方式是说：“我要和你一起做这个项目，我有三个朋友想要完成项目，他们正在等着看这个项目的结果。</p><p>Another way is to write a Yelp or Thumbtack review—especially if the contractor operates within a community and wants to protect their reputation in that community.<br>另一种方法是写一篇 Yelp 或 Thumbtack 评论——特别是如果承包商在一个社区内运营并希望保护他们在该社区中的声誉。</p><p>These are all ways to turn a single-move game into a longer term game and get past a position of poor negotiating leverage and poor information.<br>这些都是将单步博弈变成长期博弈的方法，并克服谈判筹码差和信息差的局面。</p><h2 id="Compounding-Relationships-Make-Life-Easier-复合关系让生活更轻松"><a href="#Compounding-Relationships-Make-Life-Easier-复合关系让生活更轻松" class="headerlink" title="Compounding Relationships Make Life Easier 复合关系让生活更轻松"></a>Compounding Relationships Make Life Easier 复合关系让生活更轻松</h2><p><em>Life gets a lot easier when you know someone’s got your back<br>当你知道有人支持你时，生活会变得容易得多</em></p><p><strong>Mutual trust makes it easy to do business<br>相互信任，做生意容易</strong></p><p>Relationships offer a good example of compound interest. Once you’ve been in a good relationship with somebody for a while—whether it’s business or romantic—life gets a lot easier because you know that person’s got your back. You don’t have to keep questioning.<br>人际关系是复利的一个很好的例子。一旦你和某人保持了一段时间的良好关系——无论是商业还是浪漫——生活就会变得容易得多，因为你知道那个人会支持你。你不必一直质疑。</p><p>If I’m doing a deal with someone I’ve worked with for 20 years and there is mutual trust, we don’t have to read the legal contracts. Maybe we don’t even need to <em>create</em> legal contracts; maybe we can do it with a handshake. That kind of trust makes it very easy to do business.<br>如果我与一个共事了 20 年的人做交易，并且有相互信任，我们不必阅读法律合同。也许我们甚至不需要创建法律合同;也许我们可以通过握手来做到这一点。这种信任使做生意变得非常容易。</p><p>If Nivi and I start another company and things aren’t working out, I know we’re both going to be extremely reasonable about deciding what to do—how to exit or shut it down. Or if we’re scaling it, how to bring in new people. We have mutual trust, and that allows us to start businesses more easily and compounds the effect.<br>如果 Nivi 和我创办了另一家公司，但事情没有成功，我知道我们俩都会非常理性地决定该做什么——如何退出或关闭它。或者，如果我们要扩大规模，如何吸引新人。我们相互信任，这使我们能够更容易地开展业务，并加大效果。</p><p>The most under-recognized reason startups fail is because the founders fall apart.<br>创业公司失败最未被充分认识的原因是因为创始人分崩离析。</p><p>A startup is so difficult to pull off, so removing potential friction points between founders can be the difference between success and failure.<br>创业公司很难成功，因此消除创始人之间的潜在摩擦点可能是成功与失败的区别。</p><p><strong>It’s better to have a few compounding relationships than many shallow ones<br>拥有一些复合关系比拥有许多肤浅的关系要好</strong></p><p><strong>Nivi:</strong> There are a couple of non-intuitive things about compounding. The first is that most of the benefits come at the end, so you may not see huge benefits up front.<br>Nivi：关于复利，有一些非直观的事情。首先是大多数好处都是在最后出现的，所以你可能不会在前期看到巨大的好处。</p><p>Sam Altman wrote, “<a href="http://blog.samaltman.com/how-to-be-successful">I always want it to be a project that, if successful, will make the rest of my career look like a footnote</a>.” Again, most of the benefits of compounding come at the end.<br>山姆·奥特曼（Sam Altman）写道：“我一直希望它成为一个项目，如果成功，将使我职业生涯的其余部分看起来像一个脚注。同样，复利的大部分好处都来自最后。</p><p>Another thing that’s non-intuitive about compounding: It’s better to have a few deep compounding relationships than many shallow, non-compounding relationships.<br>关于复利的另一件不直观的事情是：拥有一些深层次的复利关系比拥有许多浅层次的非复合关系要好。</p><p><strong>It takes just as much effort to create a small business as a large one<br>创建小型企业和创建大型企业所需的努力一样多</strong></p><p><strong>Naval:</strong> One thing about business that people don’t realize: it takes just as much effort to create a small business as it does to create a large one.<br>Naval：关于商业，人们没有意识到的一件事是：创建一家小企业和创建一家大型企业需要付出同样多的努力。</p><p>Whether you’re Elon Musk or the guy running three Italian restaurants in town, you’re working 80 hours a week; you’re sweating bullets; you’re hiring and firing people; you’re trying to balance the books; it’s highly stressful; and it takes years and years of your life.<br>无论你是埃隆·马斯克（Elon Musk）还是在镇上经营三家意大利餐馆的人，你每周工作80小时;你汗流浃背;你正在雇用和解雇人员;你试图平衡账目;压力很大;这需要你多年的生命。</p><p>In one case, you get companies worth $50-$100 billion and everyone’s adulation. In the other, you might make a little bit of money and you’ve got some nice restaurants. So think big.<br>在一个案例中，你得到价值500亿到1000亿美元的公司，每个人都在奉承。另一方面，你可能会赚一点钱，而且你有一些不错的餐馆。所以要想大。</p><h2 id="Price-Discrimination-Charge-Some-People-More-价格歧视：向一些人收取更多费用"><a href="#Price-Discrimination-Charge-Some-People-More-价格歧视：向一些人收取更多费用" class="headerlink" title="Price Discrimination: Charge Some People More 价格歧视：向一些人收取更多费用"></a>Price Discrimination: Charge Some People More 价格歧视：向一些人收取更多费用</h2><p><em>You can charge people for extras based on their propensity to pay<br>您可以根据人们的付款倾向向他们收取额外费用</em></p><p><strong>Price discrimination is a technique for charging certain people more<br>价格歧视是一种向某些人收取更多费用的技术</strong></p><p><strong>Nivi:</strong> Are there any other microeconomic concepts, outside of <a href="https://nav.al/business-models">zero marginal cost of replication and scale economies</a>, that are important to understand?<br>Nivi：除了复制的零边际成本和规模经济之外，还有其他需要理解的微观经济概念吗？</p><p><strong>Naval:</strong> Price discrimination is important. It means you can charge people based on their propensity to pay.<br>Naval：价格歧视很重要。这意味着您可以根据人们的付款倾向向他们收费。</p><p>Now, you can’t charge people different amounts just because you don’t like them. You have to offer them something extra. But it has to be something rich people care about.<br>现在，你不能仅仅因为你不喜欢他们而向人们收取不同的费用。你必须为他们提供一些额外的东西。但它必须是有钱人关心的事情。</p><p>Business-class seats routinely cost five or 10 times more than economy seats. But it costs the airline much less—maybe two or three times more than a standard seat—to provide perks like wider seats, more legroom and free drinks.<br>商务舱座位的价格通常是经济舱座位的 5 到 10 倍。但是，航空公司的成本要低得多——可能是标准座位的两到三倍——以提供更宽的座位、更多的腿部空间和免费饮料等福利。</p><p><strong>Rich people and large enterprises are willing to pay more<br>有钱人和大企业愿意付出更多</strong></p><p>Price discrimination works because rich people are willing to pay more. You just have to give them the extra little things they need to signal they’re rich or that little bit of comfort they want.<br>价格歧视之所以有效，是因为富人愿意支付更多费用。你只需要给他们一些额外的小东西，以表明他们很有钱，或者他们想要的一点点安慰。</p><p>A lot of enterprise software companies use price discrimination, especially with <a href="https://en.wikipedia.org/wiki/Freemium"><em>freemium</em></a> products. The free or low-price version will do almost everything you want. But if you want the version that’s extra secure or hosted on your site or has multiple-user administration so the IT person can monitor everything, you’ll find yourself paying 10 or 100 times more.<br>许多企业软件公司使用价格歧视，尤其是在免费增值产品方面。免费或低价版本几乎可以满足您的所有需求。但是，如果您想要一个特别安全或托管在您的网站上的版本，或者具有多用户管理功能，以便 IT 人员可以监控所有内容，您会发现自己支付的费用要高出 10 或 100 倍。</p><h2 id="Consumer-Surplus-Getting-More-Than-You-Paid-For-消费者剩余：得到的比你付出的更多"><a href="#Consumer-Surplus-Getting-More-Than-You-Paid-For-消费者剩余：得到的比你付出的更多" class="headerlink" title="Consumer Surplus: Getting More Than You Paid For 消费者剩余：得到的比你付出的更多"></a>Consumer Surplus: Getting More Than You Paid For 消费者剩余：得到的比你付出的更多</h2><p><em>People are willing to pay more than what companies charge<br>人们愿意支付比公司收费更高的费用</em></p><p><strong>Consumer surplus is the extra value you get when you pay less than you were willing<br>消费者剩余是当你支付的比你愿意的少时你得到的额外价值</strong></p><p><strong>Naval:</strong> <a href="https://en.wikipedia.org/wiki/Economic_surplus">Consumer surplus and producer surplus</a> are important concepts. Consumer surplus is the excess value you get from something when you pay less than you were willing to pay.<br>Naval：消费者剩余和生产者剩余是重要的概念。消费者剩余是当你支付的金额低于你愿意支付的价格时，你从某物中获得的超额价值。</p><p>I get a lot of joy out of my morning Starbucks coffee. Obviously I’ve made some money. So if my coffee cost $20, I would pay it.<br>我从早上的星巴克咖啡中得到了很多快乐。显然我赚了一些钱。因此，如果我的咖啡花了 20 美元，我会付钱。</p><p>But Starbucks doesn’t know that. They can’t price the coffee at $20 just for me, because they’re selling the exact same product to others. So I’m getting a lot of consumer surplus out of the coffee.<br>但星巴克并不知道这一点。他们不能只为我定价 20 美元，因为他们向其他人出售完全相同的产品。所以我从咖啡中获得了大量的消费者剩余。</p><p>All businesses generate consumer surplus. It’s a good thing to keep in mind when someone’s harping on about how evil companies are. Amazon might be a trillion-dollar company, but I’ll bet they’re generating trillions of dollars in consumer surplus through people’s willingness to pay for convenience. A lot of people are willing to pay more than what Amazon charges.<br>所有企业都会产生消费者剩余。当有人喋喋不休地谈论公司有多邪恶时，记住这是一件好事。亚马逊可能是一家价值数万亿美元的公司，但我敢打赌，他们正在通过人们愿意为便利付费而产生数万亿美元的消费者盈余。很多人愿意支付比亚马逊收费更高的费用。</p><h2 id="Net-Present-Value-What-Future-Income-Is-Worth-Today-净现值：今天的未来收入值多少"><a href="#Net-Present-Value-What-Future-Income-Is-Worth-Today-净现值：今天的未来收入值多少" class="headerlink" title="Net Present Value: What Future Income Is Worth Today 净现值：今天的未来收入值多少"></a>Net Present Value: What Future Income Is Worth Today 净现值：今天的未来收入值多少</h2><p><em>See what future income is worth today by applying a discount to its future value<br>通过对未来收入的未来价值进行贴现，查看今天的未来收入价值</em></p><p><strong>Figure out what future income is worth today by applying a discount rate<br>通过应用贴现率来计算今天的未来收入值多少</strong></p><p><strong>Nivi:</strong> Let’s talk about <a href="https://en.wikipedia.org/wiki/Net_present_value">net present value</a> (NPV).<br>Nivi：让我们谈谈净现值（NPV）。</p><p><strong>Naval:</strong> Net present value is when you say, “That stream of payments I’m going to get in the future—what’s it worth today?”<br>Naval：净现值是指你说，“我将来会得到的那一连串的付款——它今天值多少钱？</p><p>Here’s a common example: You’re joining a startup and getting stock options, and the founder says, “This company is going to be worth $1 billion, and I’m giving you 0.1% of the company; therefore, you’re getting $1 million worth of stock.”<br>这里有一个常见的例子：你加入一家创业公司并获得股票期权，创始人说，“这家公司将价值 10 亿美元，我给你公司 0.1% 的股份;因此，你得到了价值100万美元的股票。</p><p>The founder is negotiating based on what it’s going to be worth in the future. You have to figure out what it’s worth today by applying a discount rate, or an interest rate, that accounts for the massive risk startups face.<br>创始人正在根据它未来的价值进行谈判。你必须通过应用贴现率或利率来弄清楚它今天的价值，这解释了初创公司面临的巨大风险。</p><p>You’ll end up with the amount the company is actually worth today. That’s the price at which a venture capitalist would invest in the company.<br>你最终会得到公司今天的实际价值。这就是风险投资家投资公司的价格。</p><p>If the founder recently raised a round at a $10 million valuation, then the company’s only worth 1% of what the founder says it will be worth. So your $1 million package is actually worth $10,000. You should get very comfortable doing rough net present value calculations in your head.<br>如果创始人最近以 1000 万美元的估值筹集了一轮融资，那么该公司的价值仅为创始人所说的价值的 1%。所以你 100 万美元的包裹实际上价值 10,000 美元。你应该很舒服地在脑海中进行粗略的净现值计算。</p><h2 id="Externalities-Calculating-the-Hidden-Costs-of-Products-外部性：计算产品的隐性成本"><a href="#Externalities-Calculating-the-Hidden-Costs-of-Products-外部性：计算产品的隐性成本" class="headerlink" title="Externalities: Calculating the Hidden Costs of Products 外部性：计算产品的隐性成本"></a>Externalities: Calculating the Hidden Costs of Products 外部性：计算产品的隐性成本</h2><p><em>Externalities let you account for the true cost of products by including hidden costs<br>外部性允许您通过包括隐性成本来考虑产品的真实成本</em></p><p><strong>Nivi:</strong> What’s a mispriced <a href="https://en.wikipedia.org/wiki/Externality">externality</a>? You mentioned it on a <a href="https://nav.al/capitalism-intrinsic">previous episode</a>.<br>Nivi：什么是错误定价的外部性？你在上一集中提到过。</p><p><strong>Naval</strong>: An externality is where there’s an additional cost imposed by whatever product is being produced or consumed, that’s not accounted for in the price of the product. This can happen for many reasons. Sometimes you can fix it by putting the cost back into the price.<br>Naval：外部性是指生产或消费的任何产品都会带来额外的成本，而这些成本并未计入产品价格中。发生这种情况的原因有很多。有时您可以通过将成本重新计入价格来修复它。</p><p>Some of the most ardent critics of capitalism argue it’s destroying the environment. If you throw away capitalism because it’s destroying the environment, then guess what—we’re all headed back to pre-industrial times. That’s not going to be a good thing.<br>一些最狂热的资本主义批评者认为它正在破坏环境。如果你因为资本主义正在破坏环境而抛弃它，那么你猜怎么着——我们都回到了前工业时代。这不是一件好事。</p><p><strong>Pricing externalities properly is more effective than feel-good measures<br>适当地为外部性定价比感觉良好的衡量标准更有效</strong></p><p>Because the environment is finite and precious, we have to price it properly and fold that back into the cost of products and services.<br>由于环境是有限而宝贵的，我们必须对其进行适当的定价，并将其折回产品和服务的成本中。</p><p>If people are wasting water, releasing hydrocarbons into the atmosphere or polluting in other ways, society should charge them what it costs to clean up the pollution and return the environment to a pristine state. Perhaps that price has to be very, very, very high.<br>如果人们浪费水，向大气中释放碳氢化合物或以其他方式污染，社会应该向他们收取清理污染和使环境恢复到原始状态的费用。也许这个价格必须非常、非常、非常高。</p><p>If you raise the price high enough, you’ll knock out pollution. That’s much better than feel-good measures like banning plastic bags or restricting showers during a drought.<br>如果你把价格提高到足够高，你就会消除污染。这比禁止使用塑料袋或在干旱期间限制淋浴等感觉良好的措施要好得多。</p><p><strong>Properly pricing externalities can save resources in a tremendous way<br>正确定价外部性可以极大地节省资源</strong></p><p>California likes to run declarations and ads to scare people into avoiding showers during droughts. It would be better to raise the price of fresh water. The average consumer might pay a few pennies more for a shower, but the almond farmers—who consume a lot of water—will cut back; and almond farming may move to a part of the country where water is more abundant.<br>加州喜欢刊登声明和广告，吓唬人们在干旱期间避免阵雨。最好提高淡水的价格。普通消费者可能会多花几分钱洗澡，但消耗大量水的杏仁种植者会减少用水量;杏仁种植可能会转移到该国水资源更丰富的地区。</p><p>Properly pricing externalities can save resources in a tremendous way. It’s a good framework to use when you want to do things like save the environment, rather than doing feel-good things that won’t actually amount to anything.<br>正确定价外部性可以极大地节省资源。当你想做一些事情时，这是一个很好的框架，比如拯救环境，而不是做一些感觉良好的事情，但实际上没有任何意义。</p><h2 id="Bonus-Finding-Time-to-Invest-in-Yourself-奖励：找时间投资自己"><a href="#Bonus-Finding-Time-to-Invest-in-Yourself-奖励：找时间投资自己" class="headerlink" title="Bonus: Finding Time to Invest in Yourself 奖励：找时间投资自己"></a>Bonus: Finding Time to Invest in Yourself 奖励：找时间投资自己</h2><p><em>If you have to work a “normal job,” take on accountability to build your specific knowledge<br>如果你必须从事一份“正常工作”，那就承担起责任感，建立你的特定知识</em></p><p><strong>Nivi:</strong> A common question we get: “How do I find the time to start investing in myself? I have a job.”<br>Nivi：我们经常会问：“我如何找到时间开始投资自己？我有一份工作。</p><p><strong>You have to rent your time to get started<br>您必须租用时间才能开始</strong></p><p>In one of the tweets from the cutting room floor, you wrote: “You will need to rent your time to get started. This is only acceptable when you are learning and saving. Preferably in a business where society does not yet know how to train people and apprenticeship is the only model.”<br>在剪辑室的一条推文中，你写道：“你需要租用你的时间才能开始。这只有在您学习和储蓄时才可以接受。最好是在社会还不知道如何培训员工和学徒制是唯一模式的企业中。</p><p><strong>Naval:</strong> Try to learn something that people haven’t quite figured out how to teach yet. That can happen if you’re working in a new and quickly expanding field. It’s also common in fields that are circumstantial—where the details matter and it’s always moving. Investing is one of those fields; so is entrepreneurship.<br>Naval：试着学习一些人们还没有完全弄清楚如何教的东西。如果您在一个新的且快速扩展的领域工作，就会发生这种情况。这在环境性领域也很常见——细节很重要，而且总是在变化。投资就是这些领域之一;企业家精神也是如此。</p><p>Chief of staff for a founder is one of the most coveted jobs for young people starting out in Silicon Valley. The brightest kids will follow an entrepreneur around and do whatever he or she needs them to do.<br>创始人的幕僚长是刚从硅谷起步的年轻人最梦寐以求的工作之一。最聪明的孩子会跟随企业家四处走动，做他或她需要他们做的任何事情。</p><p>In many cases, the person is way overqualified. Someone with multiple graduate degrees might be running the CEO’s laundry because that’s the most important thing at the moment.<br>在许多情况下，这个人的资格过高。拥有多个研究生学位的人可能会经营CEO的洗衣房，因为这是目前最重要的事情。</p><p>At the same time, that person gets to attend the most important meetings. They are privy to all the stress and theatrics, the fundraising decks and the innovation—knowledge that can only come from being in the room.<br>同时，这个人可以参加最重要的会议。他们知道所有的压力和戏剧性，筹款平台和创新 - 这些知识只能来自房间里。</p><p>Coming out of college, Warren Buffett wanted to work for Benjamin Graham to learn to be a value investor. Buffett offered to work for free, and Graham responded, “You’re overpriced.” What that means is you have to make sacrifices to take on an apprenticeship.<br>大学毕业后，沃伦·巴菲特（Warren Buffett）想为本杰明·格雷厄姆（Benjamin Graham）工作，学习成为一名价值投资者。巴菲特提出免费工作，格雷厄姆回应说：“你的价格过高了。这意味着你必须做出牺牲才能接受学徒生涯。</p><p><strong>Find the part of the job with the steepest learning curve<br>找到学习曲线最陡峭的工作部分</strong></p><p>If can’t learn in an apprenticeship model because you need to make money, try to be innovative in the context of your job. Take on new challenges and responsibilities. Find the part of the job with the steepest learning curve.<br>如果因为需要赚钱而无法在学徒模式中学习，请尝试在工作中进行创新。迎接新的挑战和责任。找到学习曲线最陡峭的工作部分。</p><p>You want to avoid repetitive drudgery—that’s just biding time until your job is automated away.<br>你要避免重复的苦差事——那只是在等待时间，直到你的工作被自动化。</p><p>If you’re a barista at the coffee shop, figure out how to make connections with the customers. Figure out how to innovate the service you offer and delight the customer. Managers, founders and owners will take notice.<br>如果您是咖啡店的咖啡师，请弄清楚如何与顾客建立联系。弄清楚如何创新您提供的服务并取悦客户。经理、创始人和所有者会注意到这一点。</p><p><strong>Develop a founder mentality<br>培养创始人心态</strong></p><p>The hardest thing for any founder is finding employees with a founder mentality. This is a fancy way of saying they care enough.<br>对于任何创始人来说，最困难的事情是找到具有创始人心态的员工。这是一种花哨的方式，表示他们足够关心。</p><p>People will say, “Well, I’m not the founder. I’m not being paid enough to care.” Actually, you are: The knowledge and skills you gain by developing a founder mentality set you up to be a founder down the line; that’s your compensation.<br>人们会说，“好吧，我不是创始人。我没有得到足够的报酬来照顾我。实际上，你是：你通过培养创始人心态获得的知识和技能使你成为未来的创始人;这是你的补偿。</p><p>You can get a lot out of almost any position. You just have to put a lot into it.<br>您几乎可以从任何位置获得很多。你只需要投入很多。</p><p><strong>Accountability is something you can take on immediately<br>问责制是你可以立即承担的事情</strong></p><p><strong>Nivi:</strong> We’ve discussed accountability, judgment, specific knowledge and leverage. If I’m working a “normal” job, is specific knowledge the one I should focus on?<br>Nivi：我们已经讨论了问责制、判断力、具体知识和杠杆作用。如果我从事的是一份“正常”的工作，那么我应该关注特定知识吗？</p><p><strong>Naval:</strong> Judgment takes experience. It takes a lot of time to build up. You have to put yourself in positions where you can exercise judgment. That’ll come from taking on accountability.<br>Naval：判断需要经验。这需要很多时间来建立。你必须把自己放在可以做出判断的位置上。这将来自承担责任。</p><p>Leverage is something that society gives you after you’ve demonstrated judgment. You can get it faster by learning high-leverage skills like coding or working with the media. These are <em>permissionless</em> leverage. This is why I encourage people to learn to code or produce media, even if it’s just nights and weekends.<br>杠杆作用是社会在你表现出判断力后给你的东西。您可以通过学习编码或与媒体合作等高杠杆技能来更快地获得它。这些是无需许可的杠杆。这就是为什么我鼓励人们学习编码或制作媒体，即使只是晚上和周末。</p><p>So, judgment and leverage tend to come later. Accountability is something you can take on immediately. You can say, “Hey, I’ll take charge of this thing that nobody wants to take charge of.” When you take on accountability, you’re also publicly putting your neck on the chopping block—so you have to deliver.<br>因此，判断力和杠杆作用往往来得晚一些。问责制是你可以立即承担的事情。你可以说，“嘿，我会负责这个没人愿意负责的事情。当你承担责任时，你也公开地把你的脖子放在砧板上——所以你必须兑现。</p><p>You build specific knowledge by taking accountability for things that other people don’t know how to do. Perhaps they’re things you enjoy doing or are naturally inclined towards doing anyway.<br>你通过对其他人不知道该怎么做的事情负责来建立特定的知识。也许它们是你喜欢做的事情，或者自然而然地倾向于做。</p><p>If you work in a factory, the hardest thing may be raising capital to keep the factory running. Maybe that’s what the owner is always stressed out about.<br>如果你在工厂工作，最困难的事情可能是筹集资金来维持工厂的运转。也许这就是主人总是感到压力的原因。</p><p>You might notice this and think, “I’m good at balancing my checkbook and have a good head for numbers; but I haven’t raised money before.” You offer to help and become the owner’s sidekick solving their fundraising problem. If you have a natural aptitude and take on accountability, you can put yourself in a position to learn quickly. Before long, you’ll become the heir apparent.<br>你可能会注意到这一点，并认为，“我擅长平衡我的支票簿，并且对数字有很好的头脑;但我以前没有筹集过资金。您主动提供帮助并成为所有者的助手，解决他们的筹款问题。如果你有天生的天赋并承担责任，你可以让自己处于快速学习的位置。用不了多久，你就会成为明显的继承人。</p><p>Early on, find things that interest you and allow you to take on accountability. Don’t worry about short-term compensation. Compensation comes when you’re tired of waiting for it and have given up on it. This is the way the whole system works.<br>尽早找到你感兴趣的事情，并让你承担责任。不要担心短期补偿。当你厌倦了等待它并放弃了它时，补偿就来了。这就是整个系统的工作方式。</p><p>If you take on accountability and solve problems on the edge of knowledge that others can’t solve, people will line up behind you. The leverage will come.<br>如果你承担起责任，在知识的边缘解决别人无法解决的问题，人们就会排在你身后。杠杆会来的。</p><p><strong>Specific knowledge can be timely or timeless<br>具体的知识可以是及时的，也可以是永恒的</strong></p><p>There are two forms of specific knowledge: <em>timely</em> and <em>timeless</em>.<br>具体知识有两种形式：及时的和永恒的。</p><p>If you become a world-class expert in machine learning just as it takes off and you got there through genuine intellectual interest, you’re going to do really well. But 20 years from now, machine learning may be second hat; the world may have moved on to something else. That’s <em>timely</em> knowledge.<br>如果你在机器学习起飞时就成为世界级的专家，并且你通过真正的智力兴趣到达那里，你就会做得很好。但20年后，机器学习可能成为第二类帽子;世界可能已经转向了别的东西。这是及时的知识。</p><p>If you’re good at persuading people, it’s probably a skill you picked up early on in life. It’s always going to apply, because persuading people is always going to be valuable. That’s <em>timeless</em> knowledge.<br>如果你善于说服别人，这可能是你从小就掌握的一项技能。它总是适用的，因为说服人们总是有价值的。这是永恒的知识。</p><p>Now, persuasion is a generic skill—it’s probably not enough to build a career on. You need to combine it in a skill stack, as <a href="https://www.scottadamssays.com/2016/11/28/the-trump-talent-stack/">Scott Adams writes</a>. You might combine persuasion with accounting and an understanding of semiconductor production lines. Now you can become the best semiconductor salesperson and, later on, the best semiconductor company CEO.<br>现在，说服是一种通用技能——它可能不足以建立职业生涯。正如斯科特·亚当斯（Scott Adams）所写的那样，您需要将其组合到技能堆栈中。您可以将说服力与会计和对半导体生产线的理解结合起来。现在，您可以成为最好的半导体销售人员，然后成为最好的半导体公司首席执行官。</p><p><em>Timeless</em> specific knowledge usually can’t be taught, and it sticks with you forever. <em>Timely</em> specific knowledge comes and goes; but it tends to have a fairly long shelf life.<br>永恒的特定知识通常无法传授，它永远伴随着你。及时的具体知识来来去去;但它往往具有相当长的保质期。</p><p>Technology is a good place to find those timely skills sets. If you can bring in a more generic specialized knowledge skill set from the outside, then you’ve got gold.<br>技术是找到这些及时技能集的好地方。如果你能从外部引入更通用的专业知识技能，那么你就得到了金子。</p><p><strong>Technology is an intellectual frontier for gaining specific knowledge<br>技术是获取特定知识的知识前沿</strong></p><p><strong>Nivi:</strong> There were a couple other tweets from the cutting-room floor on this topic. The first: “The technology industry is a great place to acquire specific knowledge. The frontier is always moving forward. If you are genuinely intellectually curious, you will acquire the knowledge ahead of others.”<br>Nivi：关于这个话题，剪辑室里还有其他几条推文。第一个：“技术行业是获取特定知识的好地方。前沿总是在向前发展。如果你真的对知识充满好奇心，你就会比别人先获得知识。</p><p><strong>Naval:</strong> <a href="https://twitter.com/dannyhillis?lang=en">Danny Hillis</a> famously said technology is <a href="https://kk.org/thetechnium/everything-that/">everything that doesn’t work yet</a>. Technology is around us everywhere. The spoon was technology once; fire was technology once. When we figured out how to make them work, they disappeared in the background and became part of our everyday lives.<br>Naval：丹尼·希利斯（Danny Hillis）有句名言，技术是一切还行不通的东西。技术无处不在。勺子曾经是技术;火曾经是技术。当我们想出如何让它们工作时，它们就消失在背景中，成为我们日常生活的一部分。</p><p>Technology is, by definition, the intellectual frontier. It’s taking things from science and culture that we have not figured out how to mass produce or create efficiently and figuring out how to commercialize it and make it available to everybody.<br>顾名思义，技术是知识的前沿。它从科学和文化中汲取了我们尚未弄清楚如何大规模生产或高效创造的东西，并弄清楚如何将其商业化并让每个人都可以使用。</p><p>Technology will always be a great field where you can pick up specific knowledge that is valuable to society.<br>技术将永远是一个伟大的领域，您可以在其中获取对社会有价值的特定知识。</p><p><strong>If you don’t have accountability, do something different<br>如果你没有责任感，那就做一些不同的事情</strong></p><p><strong>Nivi:</strong> Here’s another tweet from the cutting-room floor related to accountability: “Companies don’t know how to measure outputs, so they measure inputs instead. Work in a way that your outputs are visible and measurable. If you don’t have accountability, do something different.”<br>Nivi：这是另一条来自剪辑室的推文，与问责制有关：“公司不知道如何衡量产出，所以他们转而衡量投入。以您的输出可见且可衡量的方式工作。如果你没有责任感，那就做一些不同的事情。</p><p><strong>Naval:</strong> The entire structure of rewarding people comes from the agricultural and industrial ages, when inputs and outputs matched up closely. The amount of hours you put into doing something was a reliable proxy for what kind of output you’d get.<br>Naval：奖励人员的整个结构来自农业和工业时代，当时投入和产出密切相关。你花在做某事上的时间是你会得到什么样的产出的可靠代理。</p><p>Today, it’s extremely nonlinear. One good investment decision can make a company $10 million or $100 million. One good product feature can be the difference between product-market fit and complete failure.<br>今天，它是极其非线性的。一个好的投资决策可以使一家公司获得 1000 万美元或 1 亿美元。一个好的产品特征可能是产品与市场契合度和完全失败之间的区别。</p><p>As a result, judgment and accountability matter much more. Often the best engineers aren’t the hardest workers. Sometimes they don’t work very hard at all, but they dependably ship that one critical product at just the right time. It’s similar to the salesperson who closes the huge deal that makes the company’s numbers for the quarter.<br>因此，判断和问责制更为重要。通常，最好的工程师并不是最勤奋的工人。有时他们根本不努力工作，但他们可靠地在正确的时间运送了一个关键产品。这类似于完成巨额交易的销售人员，该交易使公司本季度的数字成为可能。</p><p>People need to be able to tell what role you had in the company’s success. That doesn’t mean stomping all over your team—people are extremely sensitive to others taking too much credit. You always want to be giving out credit. Smart people will know who was responsible.<br>人们需要能够分辨出你在公司的成功中扮演了什么角色。这并不意味着在团队中到处踩踏——人们对别人的功劳非常敏感。你总是想给予信用。聪明的人会知道谁应该负责。</p><p>Some jobs are too removed from the customer for this type of accountability. You’re just a cog in a machine.<br>有些工作离客户太远了，无法承担这种责任。你只是机器上的一个齿轮。</p><p>Consulting is a good example. As a consultant, your ideas are delivered through someone else within the organization. You may not have visibility to the top people; you may be hidden behind a screen. That’s a trade-off you’re making in exchange for your independence.<br>咨询就是一个很好的例子。作为顾问，您的想法是通过组织内的其他人传递的。您可能无法看到高层人士;你可能隐藏在屏幕后面。这是你为换取独立性而做出的权衡。</p><p><strong>You’ll develop thick-skin if you take on accountability<br>如果你承担责任，你会变得厚脸皮</strong></p><p>When you have accountability, you get a lot more credit when things go right. Of course, the downside is you get hurt a lot more when things go wrong. When you stick your neck out, you have to be willing to be blamed, sacrificed and even attacked.<br>当你有问责制时，当事情进展顺利时，你会得到更多的荣誉。当然，不利的一面是，当事情出错时，你会受到更多的伤害。当你伸出脖子时，你必须愿意被指责、牺牲甚至攻击。</p><p>If you’re the kind of person who thrives in a high-accountability environment, you’re going to end up thick-skinned over time. You’re going to get hurt a lot. People are going to attack you if you fail.<br>如果你是那种在高度责任感的环境中茁壮成长的人，随着时间的推移，你最终会变得脸皮厚。你会受到很多伤害。如果你失败了，人们会攻击你。</p><p><strong>Scale your specific knowledge with apprentices<br>与学徒一起扩展您的特定知识</strong></p><p><strong>Nivi:</strong> Once you get some specific knowledge, you can scale it by training your own apprentices and outsourcing tasks to them.<br>Nivi：一旦你掌握了一些特定的知识，你就可以通过培训自己的学徒并将任务外包给他们来扩展它。</p><p><strong>Naval:</strong> For example, I made good investments and figured out the venture business. I could have kept doing that and making money. Instead, I co-founded Spearhead to train up-and-coming founders to become angels and venture investors. We give them a checkbook to start investing.<br>Naval：例如，我做了很好的投资，并弄清楚了风险投资业务。我本可以继续这样做并赚钱。相反，我与他人共同创立了 Spearhead，以培训崭露头角的创始人成为天使和风险投资者。我们给他们一本支票簿，让他们开始投资。</p><p>It’s an apprenticeship model. They come to us with deals they’re looking at, and we help them think it through. This model is more scalable than my personal investing.<br>这是一种学徒模式。他们带着他们正在看的交易来找我们，我们帮助他们考虑清楚。这种模式比我个人投资更具可扩展性。</p><p><strong>Specific knowledge comes on the job, not in a classroom<br>具体知识来自工作，而不是在课堂上</strong></p><p>At Spearhead we lead classes teaching founders about investing, and we also hold office hours to discuss specific deals they bring.<br>在华谊嘉信，我们开设课程，向创始人传授投资知识，我们还安排办公时间讨论他们带来的具体交易。</p><p>It turns out the classes and talks we lead are largely worthless. You can give all the generic advice people need in about an hour. After that, the advice gets so circumstantial that it essentially cancels to zero. But the office hours are incredibly useful.<br>事实证明，我们主持的课程和讲座基本上毫无价值。您可以在大约一个小时内提供人们需要的所有通用建议。在那之后，建议变得如此间接，以至于它基本上取消为零。但是办公时间非常有用。</p><p>This reinforces the notion that investing is one of those skills that can only be learned on the job. When you find a skill like that, you’re dealing with specific knowledge.<br>这强化了这样一种观念，即投资是只能在工作中学习的技能之一。当你找到这样的技能时，你正在处理特定的知识。</p><p>Another good indicator of specific knowledge is when someone can’t give a straight answer to the question: “What do you do every day?” Or you get an answer along the lines of, “Every day is different based on what’s going on.”<br>特定知识的另一个良好指标是，当某人无法直接回答这个问题时：“你每天做什么？或者你得到的答案是，“根据正在发生的事情，每一天都不同。</p><p>The thing is so complicated and dependent upon circumstances that it can’t be boiled down into a textbook form.<br>事情是如此复杂，取决于环境，以至于无法将其归结为教科书的形式。</p><p><strong>Nivi:</strong> The mafia figured out this apprenticeship model a long time ago. The best way to end up running one of the families was to become the driver for the Don.<br>尼维：黑手党很久以前就想出了这种学徒模式。最终经营其中一个家庭的最好方法是成为唐的司机。</p><p><strong>Naval:</strong> <a href="https://www.google.com/search?q=Tony+Soprano&ie=UTF-8&oe=UTF-8&hl=en-us&client=safari">Tony Soprano</a> was a businessman who had to enforce his own contracts. That’s a very complicated business.<br>Naval：托尼·女高音（Tony Soprano）是一位商人，他必须执行自己的合同。这是一项非常复杂的业务。</p><p><em>This transcript has been edited for clarity.<br>为清楚起见，此成绩单经过编辑。</em></p><p><a href="https://nav.al/rich#">Subscribe to Naval<br>订阅海军</a></p><h3 id="Related-相关"><a href="#Related-相关" class="headerlink" title="Related 相关"></a><em>Related 相关</em></h3><p><a href="https://nav.al/seek-wealth?relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=0">Seek Wealth, Not Money or Status<br>追求财富，而不是金钱或地位</a>FEB 28 2019 2月 28 2019</p><p><a href="https://nav.al/finally-wealthy?relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=1">A Calm Mind, a Fit Body, a House Full of Love<br>平静的心灵，健美的身躯，充满爱的家</a>MAY 21 2019 五月 21 2019</p><p><a href="https://nav.al/accountability?relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2&relatedposts_hit=1&relatedposts_origin=28493427&relatedposts_position=2">Accountability Means Letting People Criticize You<br>问责制意味着让人们批评你</a>JUN 21 2019 6月 21 2019</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/tags/Rich/">Rich</category>
      
      
      <comments>https://deusyu.app/posts/rich/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>对赌：人生是扑克而非象棋</title>
      <link>https://deusyu.app/posts/thinking-in-bets/</link>
      <guid>https://deusyu.app/posts/thinking-in-bets/</guid>
      <pubDate>Tue, 30 Jan 2024 18:44:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>Poker, not Chess<br>真正的高手，不在于步步领先，而在于手握多少<strong>未知与概率</strong></p></blockquote><hr><h2 id="0-为什么是“对赌”？"><a href="#0-为什么是“对赌”？" class="headerlink" title="0. 为什么是“对赌”？"></a><strong>0. 为什么是“对赌”？</strong></h2><p>象棋世界里，只要你足够聪明，结局就已写在棋盘上。</p><p>但现实更像扑克：牌面未知、信息残缺、运气作祟。没人能用“完美计算”走到最后。</p><p>如果执着于象棋式的确定性，我们将陷入经典的归因误区：</p><ul><li>坏结果？“运气太差。”</li><li>好结果？“技术高超。”</li></ul><p>既安慰又刺耳——因为这拒绝了真正的复盘。</p><hr><h2 id="1-信念-→-下注-→-结果：决策闭环"><a href="#1-信念-→-下注-→-结果：决策闭环" class="headerlink" title="1. 信念 → 下注 → 结果：决策闭环"></a><strong>1. 信念 → 下注 → 结果：决策闭环</strong></h2><p><img src="https://r2.deusyu.app/8c6f22fb-d4c6-478a-a3da-646a6faeecc9.png"></p><ol><li><strong>信念 (Belief)</strong>：对世界的模型与假设。</li><li><strong>下注 (Bet)</strong>：基于信念采取的行动。</li><li><strong>结果 (Outcome)</strong>：综合了运气与技能的反馈数据。</li><li><strong>拆分 (Luck vs Skill)</strong>：区分不可控因素与自身技能。</li><li><strong>迭代 (Back to Belief)</strong>：修正信念，再次下注。</li></ol><h3 id="核心关键词："><a href="#核心关键词：" class="headerlink" title="核心关键词："></a><strong>核心关键词：</strong></h3><h3 id="复盘（Post-mortem）"><a href="#复盘（Post-mortem）" class="headerlink" title="复盘（Post-mortem）"></a><strong>复盘（Post-mortem）</strong></h3><p>从围棋玩家学会：每局必复盘。</p><p>目的不在找借口，而是明确“我能改进什么”。</p><hr><h2 id="2-永远选择红色药丸"><a href="#2-永远选择红色药丸" class="headerlink" title="2. 永远选择红色药丸"></a><strong>2. 永远选择红色药丸</strong></h2><blockquote><p>“永远选红色药丸。” ——《黑客帝国》</p></blockquote><p>扑克思维意味着：</p><ul><li><strong>勇于认错</strong>远胜于<strong>妄想精准预测</strong>。</li><li><strong>真相再苦涩</strong>，也好过沉浸在美好的谎言中。</li></ul><p>要跨过“对赌”最大的心理门槛，你必须：</p><ul><li>放下对确定性的执念</li><li>接受“正确决策 + 坏运气”导致的负面结果</li></ul><hr><h2 id="3-团队免疫：用“求真小组”驱逐偏见"><a href="#3-团队免疫：用“求真小组”驱逐偏见" class="headerlink" title="3. 团队免疫：用“求真小组”驱逐偏见"></a><strong>3. 团队免疫：用“求真小组”驱逐偏见</strong></h2><p>独自复盘，我们容易陷入“确认偏误”——只收集支持自身决策的信息。</p><p>解决方案：建立<strong>求真小组</strong>（Truth Squad）：</p><ul><li><strong>角色</strong>：冷面法官、反对者、数据猿、记录官</li><li><strong>原则</strong>：只批判逻辑与证据，不攻击个体</li><li><strong>输出</strong>：决策日志、复盘记录</li></ul><p><strong>优秀的决策文化像代码评审：</strong></p><p>代码需要 CI，信念也需审查。</p><hr><h2 id="4-尤利西斯合约：用过去限制未来"><a href="#4-尤利西斯合约：用过去限制未来" class="headerlink" title="4. 尤利西斯合约：用过去限制未来"></a><strong>4. 尤利西斯合约：用过去限制未来</strong></h2><p>典故来自荷马史诗，尤利西斯为抵抗海妖诱惑，用绳索绑住自己。</p><p>现代决策技术：</p><ul><li>列出未来可能的蠢事</li><li>设置强约束：定投、自动储蓄、健康提醒</li><li>用高成本或不可逆的方式强迫执行计划</li></ul><p>“把过去的你，作为未来的约束。”</p><hr><h2 id="5-实战工作流：“下注式”生活指南"><a href="#5-实战工作流：“下注式”生活指南" class="headerlink" title="5. 实战工作流：“下注式”生活指南"></a><strong>5. 实战工作流：“下注式”生活指南</strong></h2><table><thead><tr><th><strong>步骤</strong></th><th><strong>行动</strong></th><th><strong>工具 &amp; 提示</strong></th></tr></thead><tbody><tr><td>建立信念库</td><td>明确假设（市场、产品、职业、人际关系）</td><td>Notion&#x2F;Obsidian，标注置信度</td></tr><tr><td>显式下注</td><td>用“我押注 X，因为我相信 Y”的句式决策</td><td>金额化或时间成本化</td></tr><tr><td>记录结果</td><td>无论输赢，都记录结果作为反馈数据</td><td>日志、截图、账单</td></tr><tr><td>拆分运气&#x2F;技能</td><td>三问法：① 是否可复现？② 是否异常波动？③ 同场景下他人表现如何？</td><td>对标历史、行业水平</td></tr><tr><td>修正信念</td><td>只针对技能因素更新信念与模型</td><td>每次更新标记版本号</td></tr><tr><td>下一轮下注</td><td>携新版本信念继续行动</td><td>信念-下注，构成成长飞轮</td></tr></tbody></table><hr><h2 id="6-结语：胜负交给概率，成长握在手中"><a href="#6-结语：胜负交给概率，成长握在手中" class="headerlink" title="6. 结语：胜负交给概率，成长握在手中"></a><strong>6. 结语：胜负交给概率，成长握在手中</strong></h2><p>象棋需要大师，扑克需要概率型玩家。</p><p>我们无法决定牌的顺序，却能训练<strong>区分运气与技能</strong>的能力；</p><p>我们无法消除随机波动，却能用<strong>尤利西斯合约</strong>拴住未来的自己。</p><blockquote><p>人生终局无法预测，但每一次抬头看牌、低头下注，都在<strong>为你的认知护城河，添上一块无人能夺走的基石</strong>。</p></blockquote><hr><h3 id="行动指南"><a href="#行动指南" class="headerlink" title="行动指南"></a><strong>行动指南</strong></h3><ol><li>本周选择一项关键决策，以“信念-下注-结果”记录。</li><li>与 1-2 位朋友组成“求真小组”，每周 20 分钟进行复盘。</li><li>今天设计一项简单的尤利西斯合约（如自动储蓄或运动计划），立即执行。</li></ol><p>让我们在<strong>不确定</strong>中实现<strong>确定的成长</strong>。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/%E8%AF%BB%E4%B9%A6/">读书</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      
      <comments>https://deusyu.app/posts/thinking-in-bets/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Notion2Hexo - 联动发布Hexo博客-自动化VPS部署方案</title>
      <link>https://deusyu.app/posts/notion-to-hexo/</link>
      <guid>https://deusyu.app/posts/notion-to-hexo/</guid>
      <pubDate>Mon, 15 Jan 2024 18:23:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="概览"><a href="#概览" class="headerlink" title="概览"></a>概览</h1><p>参照<a href="https://blog.cuger.cn/"><strong>遐说</strong></a>的 Notion2Markdown 方案，结合我自己部署在 Hetzner 上的 VPS 进行了一些小的改动，完成了 Notion to Hexo 静态博客这套相对自动化的写作流程。</p><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://blog.cuger.cn/p/634642fd/"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">Notion2Markdown联动发布Hexo博客-自动化部署方案</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">Notion+Hexo+Github Actions自动发布方案, 终于可以解放双手啦!（本文采用Notion撰写）</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://blog.cuger.cn/images/favicon.ico"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://blog.cuger.cn/p/634642fd/</div></div></div><div style="flex: 1 1 180px; display: block; position: relative;"><div style="position: absolute; inset: 0px;"><div style="width: 100%; height: 100%;"><img src="https://i.cuger.cn/b/9ccd42f3-36d6-49de-a44c-5d70d910b65e.png" referrerpolicy="no-referrer" style="display: block; object-fit: cover; border-radius: 3px; width: 100%; height: 100%;"></div></div></div></a></div></div><h1 id="针对-VPS-部署"><a href="#针对-VPS-部署" class="headerlink" title="针对 VPS 部署"></a>针对 VPS 部署</h1><p>上面的绝大部分都与<a href="https://blog.cuger.cn/"><strong>遐说</strong></a>的配置相同，仅仅需要更改的部分是 GitHub Actions 部分。方案是通过 rsync 同步来将生成的静态博客文件<code>.public</code> 同步到远端服务器上。</p><h2 id="远端服务器配置"><a href="#远端服务器配置" class="headerlink" title="远端服务器配置"></a>远端服务器配置</h2><p>为了安全，新建一个用户，然后给予静态博客文件的权限，并配置该用户的 ssh 密钥认证</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo adduser hexodeploy</span><br></pre></td></tr></table></figure><p>可以新建一对 ssh 密钥认证，然后将公钥放到<code>~/.ssh/authorized_keys</code> 中</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">ssh-keygen -f ~/.ssh/hexodeploy</span><br><span class="line"></span><br><span class="line">ssh-copy-id hexodeploy@your-server-address</span><br></pre></td></tr></table></figure><p><strong>确保服务器配置允许密钥认证</strong>:</p><ul><li>服务器上的 SSH 配置文件（通常是 <code>/etc/ssh/sshd_config</code>）需要正确配置以允许密钥认证。</li><li>检查该文件中的 <code>PubkeyAuthentication</code> 选项是否被设置为 <code>yes</code>。</li></ul><p>确保 <code>~/.ssh/</code> 目录和 <code>~/.ssh/authorized_keys</code> 文件在服务器上有正确的权限。通常，<code>~/.ssh/</code> 应该是 700 权限，<code>authorized_keys</code> 应该是 600。可以使用以下命令来设置：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">chmod</span> 700 ~/.ssh</span><br><span class="line"><span class="built_in">chmod</span> 600 ~/.ssh/authorized_keys</span><br></pre></td></tr></table></figure><p><strong>重启 SSH 服务</strong>:</p><figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo systemctl restart sshd</span><br></pre></td></tr></table></figure><p><strong>测试 SSH 连接</strong>:</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">ssh hexodeploy@your-server-address</span><br></pre></td></tr></table></figure><p>如果一切设置正确，应该可以无密码登录。</p><p><strong>然后将拿到的私钥记下来，作为</strong><code>SSH_PRIVATE_KEY</code> <strong>存到 GitHub secrets 中</strong></p><h2 id="修改-Github-Actions"><a href="#修改-Github-Actions" class="headerlink" title="修改 Github Actions"></a>修改 Github Actions</h2><p>主要添加几个 steps</p><h3 id="查看是否生成了public-文件"><a href="#查看是否生成了public-文件" class="headerlink" title="查看是否生成了public 文件"></a>查看是否生成了<code>public</code> 文件</h3><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="bullet">-</span> <span class="attr">name:</span> <span class="string">List</span> <span class="string">public</span> <span class="string">directory</span></span><br><span class="line">        <span class="attr">if:</span> <span class="string">steps.NotionSync.outputs.updated_count</span> <span class="type">!=</span> <span class="string">&#x27;0&#x27;</span></span><br><span class="line">        <span class="attr">run:</span> <span class="string">ls</span> <span class="string">-l</span> <span class="string">public</span></span><br></pre></td></tr></table></figure><p>这一步可以省略，写这一步是方便好排查 bug</p><h3 id="安装-ssh-key"><a href="#安装-ssh-key" class="headerlink" title="安装 ssh key"></a>安装 ssh key</h3><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"><span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Install</span> <span class="string">SSH</span> <span class="string">Key</span></span><br><span class="line">        <span class="attr">uses:</span> <span class="string">webfactory/ssh-agent@v0.5.2</span></span><br><span class="line">        <span class="attr">with:</span></span><br><span class="line">          <span class="attr">ssh-private-key:</span> <span class="string">$&#123;&#123;</span> <span class="string">secrets.SSH_PRIVATE_KEY</span> <span class="string">&#125;&#125;</span></span><br></pre></td></tr></table></figure><h3 id="将-SSH-Key-添加到-know-hosts"><a href="#将-SSH-Key-添加到-know-hosts" class="headerlink" title="将 SSH Key 添加到 know_hosts"></a>将 SSH Key 添加到 know_hosts</h3><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"><span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Add</span> <span class="string">SSH</span> <span class="string">key</span> <span class="string">to</span> <span class="string">known_hosts</span></span><br><span class="line">        <span class="attr">run:</span> <span class="string">|</span></span><br><span class="line"><span class="string">          mkdir -p ~/.ssh</span></span><br><span class="line"><span class="string">          ssh-keyscan -H $&#123;&#123; secrets.SSH_SERVER_IP &#125;&#125; &gt;&gt; ~/.ssh/known_hosts</span></span><br></pre></td></tr></table></figure><h3 id="同步到服务器"><a href="#同步到服务器" class="headerlink" title="同步到服务器"></a>同步到服务器</h3><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line"><span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Sync</span> <span class="string">to</span> <span class="string">Hetzner</span> <span class="string">Server</span></span><br><span class="line">        <span class="attr">if:</span> <span class="string">steps.NotionSync.outputs.updated_count</span> <span class="type">!=</span> <span class="string">&#x27;0&#x27;</span></span><br><span class="line">        <span class="attr">run:</span> <span class="string">|</span></span><br><span class="line">          <span class="string">rsync</span> <span class="string">-avz</span> <span class="string">--delete</span> <span class="string">public/</span> <span class="string">$&#123;&#123;</span> <span class="string">secrets.SSH_SERVER</span> <span class="string">&#125;&#125;:$&#123;&#123;</span> <span class="string">secrets.HEXO_DEPLOY_PATH</span> <span class="string">&#125;&#125;</span></span><br></pre></td></tr></table></figure><p>其中连接远端服务器的私钥<code>PRIVATE_KEY</code>, 服务器的 host&#x2F;ip + port <code>SSH_SERVER</code>，服务器的 IP<code>SSH_SERVER_IP</code> ，服务器的静态博客 public 目录<code>HEXO_DEPLOY_PATH</code>都存在了 Github secrets 里。</p><h1 id="Run"><a href="#Run" class="headerlink" title="Run"></a>Run</h1><p>然后手动启动 workflow</p><p><img src="https://r2.deusyu.app/783122e8-50bb-4dd5-b9d2-907160007376.png"></p><p>可以根据运行 log 来排查 Actions 写的对不对。</p><p>附上我自己的流程：</p><figure class="highlight yaml"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br></pre></td><td class="code"><pre><span class="line"><span class="attr">name:</span> <span class="string">Notion2Hexo</span> <span class="string">VPS</span></span><br><span class="line"></span><br><span class="line"><span class="attr">on:</span></span><br><span class="line">  <span class="attr">workflow_dispatch:</span></span><br><span class="line">  <span class="attr">schedule:</span></span><br><span class="line">    <span class="bullet">-</span> <span class="attr">cron:</span> <span class="string">&quot;*/12 1-17 * * *&quot;</span></span><br><span class="line">  <span class="attr">repository_dispatch:</span></span><br><span class="line">    <span class="attr">types:</span></span><br><span class="line">      <span class="bullet">-</span> <span class="string">notion_sync</span></span><br><span class="line"></span><br><span class="line"><span class="attr">concurrency:</span></span><br><span class="line">  <span class="attr">group:</span> <span class="string">notion-sync-$&#123;&#123;</span> <span class="string">github.ref</span> <span class="string">&#125;&#125;</span></span><br><span class="line"></span><br><span class="line"><span class="attr">permissions:</span></span><br><span class="line">  <span class="attr">contents:</span> <span class="string">write</span></span><br><span class="line">  <span class="attr">pages:</span> <span class="string">write</span></span><br><span class="line">  <span class="attr">id-token:</span> <span class="string">write</span></span><br><span class="line"></span><br><span class="line"><span class="attr">jobs:</span></span><br><span class="line">  <span class="attr">notionSyncTask:</span></span><br><span class="line">    <span class="attr">name:</span> <span class="string">Notion2Hexo</span> <span class="string">on</span> <span class="string">$&#123;&#123;</span> <span class="string">matrix.os</span> <span class="string">&#125;&#125;</span></span><br><span class="line">    <span class="attr">runs-on:</span> <span class="string">ubuntu-latest</span></span><br><span class="line">    <span class="attr">timeout-minutes:</span> <span class="number">20</span></span><br><span class="line">    <span class="attr">strategy:</span></span><br><span class="line">      <span class="attr">matrix:</span></span><br><span class="line">        <span class="attr">os:</span> [<span class="string">ubuntu-latest</span>]</span><br><span class="line">    <span class="attr">outputs:</span></span><br><span class="line">      <span class="attr">HAS_CHANGES:</span> <span class="string">$&#123;&#123;</span> <span class="string">steps.NotionSync.outputs.updated_count</span> <span class="type">!=</span> <span class="string">&#x27;0&#x27;</span> <span class="string">&#125;&#125;</span></span><br><span class="line">    <span class="attr">steps:</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Checkout</span> <span class="string">blog</span> <span class="string">and</span> <span class="string">theme</span></span><br><span class="line">        <span class="attr">uses:</span> <span class="string">actions/checkout@v3</span></span><br><span class="line">        <span class="attr">with:</span></span><br><span class="line">          <span class="attr">submodules:</span> <span class="string">&quot;recursive&quot;</span></span><br><span class="line">          <span class="attr">fetch-depth:</span> <span class="number">0</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Check</span> <span class="string">the</span> <span class="string">NOTION_SYNC_DATETIME</span></span><br><span class="line">        <span class="attr">id:</span> <span class="string">GetNotionSyncDatetime</span></span><br><span class="line">        <span class="attr">run:</span> <span class="string">|</span></span><br><span class="line"><span class="string">          echo -e &quot;Latest commit id: $(git rev-parse HEAD)&quot;</span></span><br><span class="line"><span class="string">          echo -e &quot;Latest notion sync commit:\n$(git log -n 1 --grep=&quot;NotionSync&quot;)&quot;</span></span><br><span class="line"><span class="string">          NOTION_SYNC_DATETIME=$(git log -n 1 --grep=&quot;NotionSync&quot; --format=&quot;%aI&quot;)</span></span><br><span class="line"><span class="string">          echo &quot;NOTION_SYNC_DATETIME: $NOTION_SYNC_DATETIME&quot;</span></span><br><span class="line"><span class="string">          echo &quot;NOTION_SYNC_DATETIME=$NOTION_SYNC_DATETIME&quot; &gt;&gt; &quot;$GITHUB_OUTPUT&quot;</span></span><br><span class="line"><span class="string"></span>      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Convert</span> <span class="string">notion</span> <span class="string">to</span> <span class="string">markdown</span></span><br><span class="line">        <span class="attr">id:</span> <span class="string">NotionSync</span></span><br><span class="line">        <span class="attr">uses:</span> <span class="string">Doradx/notion2markdown-action@v1</span></span><br><span class="line">        <span class="attr">with:</span></span><br><span class="line">          <span class="attr">notion_secret:</span> <span class="string">$&#123;&#123;</span> <span class="string">secrets.NOTION_TOKEN</span> <span class="string">&#125;&#125;</span></span><br><span class="line">          <span class="attr">database_id:</span> <span class="string">$&#123;&#123;</span> <span class="string">secrets.NOTION_DATABASE_ID</span> <span class="string">&#125;&#125;</span></span><br><span class="line">          <span class="attr">pic_migrate:</span> <span class="literal">true</span></span><br><span class="line">          <span class="attr">pic_bed_config:</span> <span class="string">$&#123;&#123;</span> <span class="string">secrets.PICBED_CONFIG</span> <span class="string">&#125;&#125;</span></span><br><span class="line">          <span class="attr">pic_compress:</span> <span class="literal">true</span></span><br><span class="line">          <span class="attr">output_page_dir:</span> <span class="string">&quot;source&quot;</span></span><br><span class="line">          <span class="attr">output_post_dir:</span> <span class="string">&quot;source/_posts/notion&quot;</span></span><br><span class="line">          <span class="attr">clean_unpublished_post:</span> <span class="literal">true</span></span><br><span class="line">          <span class="attr">last_sync_datetime:</span> <span class="string">$&#123;&#123;</span> <span class="string">steps.GetNotionSyncDatetime.outputs.NOTION_SYNC_DATETIME</span> <span class="string">&#125;&#125;</span></span><br><span class="line">          <span class="attr">timezone:</span> <span class="string">&quot;Asia/Shanghai&quot;</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Sync</span> <span class="string">git</span> <span class="string">&amp;</span> <span class="string">build</span></span><br><span class="line">        <span class="attr">if:</span> <span class="string">steps.NotionSync.outputs.updated_count</span> <span class="type">!=</span> <span class="string">&#x27;0&#x27;</span></span><br><span class="line">        <span class="attr">run:</span> <span class="string">|</span></span><br><span class="line"><span class="string">          git pull</span></span><br><span class="line"><span class="string">          npm install</span></span><br><span class="line"><span class="string">          npm run build</span></span><br><span class="line"><span class="string">          pwd</span></span><br><span class="line"><span class="string">          ls -la</span></span><br><span class="line"><span class="string"></span>      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">List</span> <span class="string">public</span> <span class="string">directory</span></span><br><span class="line">        <span class="attr">if:</span> <span class="string">steps.NotionSync.outputs.updated_count</span> <span class="type">!=</span> <span class="string">&#x27;0&#x27;</span></span><br><span class="line">        <span class="attr">run:</span> <span class="string">ls</span> <span class="string">-l</span> <span class="string">public</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Commit</span> <span class="string">&amp;</span> <span class="string">Push</span></span><br><span class="line">        <span class="attr">if:</span> <span class="string">steps.NotionSync.outputs.updated_count</span> <span class="type">!=</span> <span class="string">&#x27;0&#x27;</span></span><br><span class="line">        <span class="attr">uses:</span> <span class="string">stefanzweifel/git-auto-commit-action@v4</span></span><br><span class="line">        <span class="attr">with:</span></span><br><span class="line">          <span class="attr">file_pattern:</span> <span class="string">&quot;source/&quot;</span></span><br><span class="line">          <span class="attr">commit_message:</span> <span class="string">Automatic</span> <span class="string">NotionSync.</span></span><br><span class="line">      <span class="comment"># 安装ssh key</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Install</span> <span class="string">SSH</span> <span class="string">Key</span></span><br><span class="line">        <span class="attr">uses:</span> <span class="string">webfactory/ssh-agent@v0.5.2</span></span><br><span class="line">        <span class="attr">with:</span></span><br><span class="line">          <span class="attr">ssh-private-key:</span> <span class="string">$&#123;&#123;</span> <span class="string">secrets.SSH_PRIVATE_KEY</span> <span class="string">&#125;&#125;</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Add</span> <span class="string">SSH</span> <span class="string">key</span> <span class="string">to</span> <span class="string">known_hosts</span></span><br><span class="line">        <span class="attr">run:</span> <span class="string">|</span></span><br><span class="line"><span class="string">          mkdir -p ~/.ssh</span></span><br><span class="line"><span class="string">          ssh-keyscan -H $&#123;&#123; secrets.SSH_SERVER_IP &#125;&#125; &gt;&gt; ~/.ssh/known_hosts</span></span><br><span class="line"><span class="string"></span>      <span class="comment"># 同步到我的服务器</span></span><br><span class="line">      <span class="bullet">-</span> <span class="attr">name:</span> <span class="string">Sync</span> <span class="string">to</span> <span class="string">Hetzner</span> <span class="string">Server</span></span><br><span class="line">        <span class="attr">if:</span> <span class="string">steps.NotionSync.outputs.updated_count</span> <span class="type">!=</span> <span class="string">&#x27;0&#x27;</span></span><br><span class="line">        <span class="attr">run:</span> <span class="string">|</span></span><br><span class="line">          <span class="string">rsync</span> <span class="string">-avz</span> <span class="string">--delete</span> <span class="string">public/</span> <span class="string">$&#123;&#123;</span> <span class="string">secrets.SSH_SERVER</span> <span class="string">&#125;&#125;:$&#123;&#123;</span> <span class="string">secrets.HEXO_DEPLOY_PATH</span> <span class="string">&#125;&#125;</span></span><br></pre></td></tr></table></figure><p>祝写作愉快～</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li><a href="https://blog.cuger.cn/">遐说</a>的博客</li></ol><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://blog.cuger.cn/p/634642fd/"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">Notion2Markdown联动发布Hexo博客-自动化部署方案</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">Notion+Hexo+Github Actions自动发布方案, 终于可以解放双手啦!（本文采用Notion撰写）</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://blog.cuger.cn/images/favicon.ico"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://blog.cuger.cn/p/634642fd/</div></div></div><div style="flex: 1 1 180px; display: block; position: relative;"><div style="position: absolute; inset: 0px;"><div style="width: 100%; height: 100%;"><img src="https://i.cuger.cn/b/9ccd42f3-36d6-49de-a44c-5d70d910b65e.png" referrerpolicy="no-referrer" style="display: block; object-fit: cover; border-radius: 3px; width: 100%; height: 100%;"></div></div></div></a></div></div><ol start="2"><li>ChatGPT-4</li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/Hexo/">Hexo</category>
      
      
      <category domain="https://deusyu.app/tags/Hexo/">Hexo</category>
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/tags/Notion/">Notion</category>
      
      
      <comments>https://deusyu.app/posts/notion-to-hexo/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Fragments of 2 years</title>
      <link>https://deusyu.app/posts/fragments-of-two-years/</link>
      <guid>https://deusyu.app/posts/fragments-of-two-years/</guid>
      <pubDate>Sun, 14 Jan 2024 19:35:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="Memos"><a href="#Memos" class="headerlink" title="Memos"></a>Memos</h1><ol><li>见识远远大于学识</li><li>我有个同学说：“人对于世界的认知是一个不断收敛的模型，你不可能完全认识这个世界，但是随着时间&#x2F;年龄&#x2F;阅历的增长，你的模型会越来越收敛，更接近于真实世界。”这有点像柏拉图的洞穴之喻。另外 GPT 的大思路是通过生成来获取世界模型的压缩表示。</li><li>人生的选择就是要顺势而为，顺为顺为，顺势而为，反对任何形式的吃苦文化。最简单的，把握住时代的脉络和趋势，选中顺风的环境，顺势而为，心态是积极的，步伐是向前的，所有合力都是正向的。老打逆风，很容易丧失掉信心。</li><li>算法，抽象，有限状态机</li><li>人生要空杯，放空了自己，才有地方接纳新事物，定时清理旧东西，整理电脑</li><li>“我想通过这些简单链接的方式，为我的读者打开一个全新的世界，他们可以在这个世界中自己找食吃，而不需要依赖我，这才是我想给大家带来的东西。我不知道，我的那些推荐文章，有没有让你看到了一个很广阔的世界，在那里，每天都在产生很多最新、最酷、最有营养的一手信息，而不是被我或他人消化过的二手信息。“<br>“我在很多的场合都提到过，基础知识和原理性的东西是无比重要的。这些基础知识就好像地基一样，只要足够扎实，就要可以盖出很高很高的楼。正所谓“勿在浮沙筑高台”。我说过，很多人并不是学得不够快，而他们的基础真的不行。基础不行，会影响你对事物的理解，甚至会让你不能理解为什么是这样。当你对事物的出现有不理解的东西时，通常来说，是因为你的基础知识没有跟上。“<br>“最最关键的是，这些基础知识和原理性的东西和技术，都是经历过长时间的考验的，所以，这些基础技术也有很多人类历史上的智慧结晶，会给你很多启示和帮助。比如：TCP 协议的状态机，可以让你明白，如果你要设计一个异步通信协议，状态机是一件多么重要的事，还有 TCP 拥塞控制中的方式，让你知道，设计一个以响应时间来限流的中件间是什么样的。“<br>2023 我的新观念是，“观念先行，基础精通，一流的学习一定是实践和教给他人的。<br>另外我以往的理念，再次加上烙印“上帝垂青主动的人，上帝喜欢笨人”</li><li>多巴胺与内啡肽。现代社会，新的天启四骑士，糖，咖啡因，尼古丁，酒精，像一位推友说的，去超市，发现提供这类商品的，就是这个世界市值的巨头。</li></ol><h1 id="很多事情"><a href="#很多事情" class="headerlink" title="很多事情"></a>很多事情</h1><ul><li>看了很多书和博客，听了很多 podcast，依旧很迷乱，无法将分散的点串联成线，更不用说汇线成面了，这也是结构化思考和写作的一个过程。</li><li>拥有丰富的人生阅历，才能解决复杂的问题。</li><li>内部一切皆成本，对外才能创造价值</li><li>成功即继承。当我们说一个数据库“成功”时，究竟在说什么？评价一个数据库有许多标准：功能、质量、安全、性能、成本，但没有哪种可以普世泛用。不过 Succeed 既代表成功，又代表继承，所以成功与“后继有人”相通。对一项技术而言，用户的规模、喜好、需求决定了生态的繁荣程度，唯有这种最终存在意义上的神意裁决 —— 才能让所有人心服口服。</li><li>人类思维就像人类的卵子一样,人类卵子有一种排斥机制 。 一旦有一个精子进入,它就会完全关闭,不让下一个精子进入。 人类思维也有严重的类似倾向 。”@查理.芒格</li><li>很多事情的最后一段贡献，就是它的死亡和结束。</li><li>不要为自己的苟且得意，不要去嘲笑那些比自己更热情勇敢的人。我们可以卑微如尘土，不可扭曲如蛆虫。</li><li>无论采用什么方式，挤也要挤到巨人堆里，去感受一下他们的气息。</li><li>“很多时候，我们在重组自己的偏见时，还以为自己是在思考；在重复以往的错误时，还以为是在坚持梦想；在消极荒废时，还以为是在放松；在伤害别人自尊时，还以为是直率；在故步自封时，还以为是在坚守；在随便放弃时，还以为是在选择；在喝得酩酊大醉时，还以为是豪爽；在不思进取时，还以为是低调。”乔帮主说：Stay hungry. Stay foolish. 所谓 hungry 就是保持对世界探索的热情，所谓 foolish 就是不断放空自己，回到原点，像个傻子一样，虚怀若谷的只在这一点思考。</li><li>在这样一个时代下，种种迹象表明，快速、简单、轻松的方式给人带来的快感更强烈，而高层次的思考、思辨和逻辑则被这些频度高的快餐信息感所弱化。于是，商家们看到了其中的商机，看到了如何在这样的时代里怎么治愈这些人在学习上的焦虑，他们在想方设法地用一些手段推出各种代读、领读和听读类产品，让人们可以在短时间内体会到轻松获取知识的快感，并产生勤奋好学和成长的幻觉（老实说，像我这种付费专栏或是得到等知识付费产品基本上就是类似的产物）。</li><li>“无论你做什么事，你都会面对各式各样的困难，这对每个人来说都是一样的，而只有兴趣、热情和成就感才能让你不畏惧这些困难”</li><li>在意细节，而不是在意末节</li></ul>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <category domain="https://deusyu.app/tags/Notion/">Notion</category>
      
      <category domain="https://deusyu.app/tags/Thinking/">Thinking</category>
      
      <category domain="https://deusyu.app/tags/%E8%AE%A4%E7%9F%A5%E6%A8%A1%E5%9E%8B/">认知模型</category>
      
      <category domain="https://deusyu.app/tags/%E7%BB%93%E6%9E%84%E5%8C%96%E6%80%9D%E7%BB%B4/">结构化思维</category>
      
      <category domain="https://deusyu.app/tags/%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86/">基础知识</category>
      
      <category domain="https://deusyu.app/tags/%E7%AE%97%E6%B3%95/">算法</category>
      
      
      <comments>https://deusyu.app/posts/fragments-of-two-years/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>Notion2markdown转换效果测试</title>
      <link>https://deusyu.app/posts/409b/</link>
      <guid>https://deusyu.app/posts/409b/</guid>
      <pubDate>Sun, 14 Jan 2024 04:04:00 GMT</pubDate>
      
      <description>测试各类blocks的转换效果, 包括link_preview， bookmark，pdf，embed和video。该文展示一些最新的效果。</description>
      
      
      
      <content:encoded><![CDATA[<h1 id="image"><a href="#image" class="headerlink" title="image"></a>image</h1><p><img src="https://r2.deusyu.app/de3c4ed2-d664-4666-a4b2-6113bbca1dcc.png"></p><h1 id="link-preview"><a href="#link-preview" class="headerlink" title="link_preview"></a>link_preview</h1><h2 id="GitHub"><a href="#GitHub" class="headerlink" title="GitHub"></a>GitHub</h2><p><a href="">link_preview</a></p><p><a href="">link_preview</a></p><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://github.com/ant-design/ant-design/actions/runs/4737049877"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">github.com</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://github.com/ant-design/ant-design/actions/runs/4737049877</div></div></div></a></div></div><p><a href="">link_preview</a></p><h1 id="mention"><a href="#mention" class="headerlink" title="mention"></a>mention</h1><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://doradx.notion.site/397943b2d0384e15ba69448900823984?v=06762d5d3e2140e399c03d84131ee682"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">A tool that connects everyday work into one space. It gives you and your teams AI tools—search, writing, note-taking—inside an all-in-one, flexible workspace.</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://doradx.notion.site/images/favicon.ico"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://doradx.notion.site/397943b2d0384e15ba69448900823984?v=06762d5d3e2140e399c03d84131ee682</div></div></div><div style="flex: 1 1 180px; display: block; position: relative;"><div style="position: absolute; inset: 0px;"><div style="width: 100%; height: 100%;"><img src="https://www.notion.so/images/meta/default.png" referrerpolicy="no-referrer" style="display: block; object-fit: cover; border-radius: 3px; width: 100%; height: 100%;"></div></div></div></a></div></div><p><a href="/352e56744bf4459b814b4d8fdb311267">页面模板</a></p><h1 id="pdf"><a href="#pdf" class="headerlink" title="pdf"></a>pdf</h1><h2 id="本地"><a href="#本地" class="headerlink" title="本地"></a>本地</h2><div class="pdf"><iframe src="https://r2.deusyu.app/99b71d70-f1cb-4957-9bbf-4760bec39c50.pdf..png" style="width: 100%; margin:0; aspect-ratio: 16/9;"></iframe><div style="text-align: center; margin:0;"><p>测试的本地文件</p></div></div><h2 id="远程文件"><a href="#远程文件" class="headerlink" title="远程文件"></a>远程文件</h2><div class="pdf"><iframe src="https://www.africau.edu/images/default/sample.pdf" style="width: 100%; margin:0; aspect-ratio: 16/9;"></iframe><div style="text-align: center; margin:0;"><p>远程文件URL</p></div></div><h1 id="video"><a href="#video" class="headerlink" title="video"></a>video</h1><h2 id="YouTube"><a href="#YouTube" class="headerlink" title="YouTube"></a>YouTube</h2><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><iframe src="https://www.youtube.com/embed/9gXPmfLWO4U" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" style="width: 100%; margin:0; aspect-ratio: 16/9;"> </iframe><div style="text-align: center; margin:0;"><p>YouTube</p></div></div><h2 id="Bilibili"><a href="#Bilibili" class="headerlink" title="Bilibili"></a>Bilibili</h2><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><iframe src="//player.bilibili.com/player.html?bvid=BV1e24y1D7qt&page=1&autoplay=0" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" style="width: 100%; margin:0; aspect-ratio: 16/9;"> </iframe><div style="text-align: center; margin:0;"><p>B站</p></div></div><h2 id="腾讯视频"><a href="#腾讯视频" class="headerlink" title="腾讯视频"></a>腾讯视频</h2><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><iframe src="https://v.qq.com/txp/iframe/player.html?vid=cover" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" style="width: 100%; margin:0; aspect-ratio: 16/9;"> </iframe></div><h1 id="bookmark"><a href="#bookmark" class="headerlink" title="bookmark"></a>bookmark</h1><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://www.zhihu.com/question/447412618/answer/2989611873"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">www.zhihu.com</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://www.zhihu.com/question/447412618/answer/2989611873</div></div></div></a></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://www.youtube.com/watch?v=9gXPmfLWO4U"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;"> - YouTube</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://www.youtube.com/s/desktop/9eacfcec/img/favicon.ico"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://www.youtube.com/watch?v=9gXPmfLWO4U</div></div></div></a></div><div style="text-align: center; margin:0;"><p>喜欢的博主。</p></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://wangyunzi.com/posts/notion/64/"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">wangyunzi.com</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://wangyunzi.com/posts/notion/64/</div></div></div></a></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://blog.cuger.cn/p/634642fd/"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">Notion2Markdown联动发布Hexo博客-自动化部署方案</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">Notion+Hexo+Github Actions自动发布方案, 终于可以解放双手啦!（本文采用Notion撰写）</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://blog.cuger.cn/images/favicon.ico"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://blog.cuger.cn/p/634642fd/</div></div></div><div style="flex: 1 1 180px; display: block; position: relative;"><div style="position: absolute; inset: 0px;"><div style="width: 100%; height: 100%;"><img src="https://i.cuger.cn/b/9ccd42f3-36d6-49de-a44c-5d70d910b65e.png" referrerpolicy="no-referrer" style="display: block; object-fit: cover; border-radius: 3px; width: 100%; height: 100%;"></div></div></div></a></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://v.qq.com/x/cover/mzc00200kbyx9c8/w0040itoklx.html"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">狗果定理_电影_高清完整版视频在线观看_腾讯视频</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">狗果定理,电影简介:一个热爱动物的老奶奶，在无力照顾果汁时费尽心思替果汁寻找新的幸福生活，却又在机缘巧合下让果汁感受了不同家庭的喜怒哀乐。</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://v.qq.com/favicon.ico"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://v.qq.com/x/cover/mzc00200kbyx9c8/w0040itoklx.html</div></div></div><div style="flex: 1 1 180px; display: block; position: relative;"><div style="position: absolute; inset: 0px;"><div style="width: 100%; height: 100%;"><img src="https://puui.qpic.cn/vpic_cover/w0040itoklx/w0040itoklx_hz.jpg/496" referrerpolicy="no-referrer" style="display: block; object-fit: cover; border-radius: 3px; width: 100%; height: 100%;"></div></div></div></a></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://zh.wikipedia.org/wiki/中國"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">zh.wikipedia.org</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;"></div><div style="display: flex; margin-top: 6px; height: 16px;"><img src=""style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://zh.wikipedia.org/wiki/中國</div></div></div></a></div></div><h1 id="embed"><a href="#embed" class="headerlink" title="embed"></a>embed</h1><h2 id="Audio"><a href="#Audio" class="headerlink" title="Audio"></a>Audio</h2><div style="width: 100%; margin: 0 0 2px;"><audio controls style="width: 100%; height: 54px;margin:0;"><source src="https://blog.wangyunzi.com/video&music/王菲-流年.mp3" type="audio/mpeg"></audio><div style="text-align: center; margin:0;"><p>王菲-流年.MP3</p></div></div><div style="width: 100%; margin: 0 0 2px;"><audio controls style="width: 100%; height: 54px;margin:0;"><source src="https://cloud.cuger.cn/d/Music/G.E.M.邓紫棋 - 偶尔.mp3" type="audio/mpeg"></audio><div style="text-align: center; margin:0;"><p>邓紫棋-偶尔</p></div></div><h2 id="Twitter"><a href="#Twitter" class="headerlink" title="Twitter"></a>Twitter</h2><div style="width: 100%; margin: 0 0 2px;"><blockquote class="twitter-tweet"><p lang="en" dir="ltr">The different types of power outlets throughout the world. <a href="https://t.co/ItzzkiUg85">pic.twitter.com/ItzzkiUg85</a></p>&mdash; World of Engineering (@engineers_feed) <a href="https://twitter.com/engineers_feed/status/1648224909628428288?ref_src=twsrc%5Etfw">April 18, 2023</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://www.google.com/maps/place/Hannovermarkt/@48.2241821,16.3715072,14z/data=!4m6!3m5!1s0x476d064b379e1a9d:0xe791f1797ae7a2b8!8m2!3d48.231775!4d16.3687714!16s/g/112yfwj8x"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">Google Maps</div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">Find local businesses, view maps and get driving directions in Google Maps.</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://www.google.com/images/branding/product/ico/maps15_bnuw3a_32dp.ico"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://www.google.com/maps/place/Hannovermarkt/@48.2241821,16.3715072,14z/data=!4m6!3m5!1s0x476d064b379e1a9d:0xe791f1797ae7a2b8!8m2!3d48.231775!4d16.3687714!16s/g/112yfwj8x</div></div></div><div style="flex: 1 1 180px; display: block; position: relative;"><div style="position: absolute; inset: 0px;"><div style="width: 100%; height: 100%;"><img src="https://maps.google.com/maps/api/staticmap?center=48.2241821%2C16.3715072&zoom=14&size=900x900&language=en&sensor=false&key=AIzaSyBoYjeRtfVI0Jd8Q_9mnflo9i4sOYpShB0&signature=AcVZufm3TIWHU6bNkUfdjmS3Fck" referrerpolicy="no-referrer" style="display: block; object-fit: cover; border-radius: 3px; width: 100%; height: 100%;"></div></div></div></a></div></div><h1 id="Google-Map"><a href="#Google-Map" class="headerlink" title="Google Map"></a>Google Map</h1><div style="width: 100%; margin: 0 0 2px;"><iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d21256.76887975903!2d16.3559718!3d48.243277299999995!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x476d062528ea2d5d:0xdb9469453e663848!2sSetagaya Park!5e0!3m2!1szh-CN!2sat!4v1681867481910!5m2!1szh-CN!2sat" style="width: 100%; margin:0; aspect-ratio: 16/9;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe><div style="text-align: center; margin:0;"><p>Google Map，只支持从Google Mpa分享→嵌入代码，插入的，其它类型不支持。</p></div></div><h2 id="高德地图"><a href="#高德地图" class="headerlink" title="高德地图"></a>高德地图</h2><div style="width: 100%; margin: 0 0 2px;"><iframe src="https://surl.amap.com/7iBTXR21j5sx" style="width: 100%; margin:0; aspect-ratio: 16/9;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe><div style="text-align: center; margin:0;"><p>缺德地图</p></div></div><div style="width: 100%; margin-top: 4px; margin-bottom: 4px;"><div style="display: flex; background:white;border-radius:5px"><a href="https://surl.amap.com/7iBTXR21j5sx"target="_blank"rel="noopener noreferrer"style="display: flex; color: inherit; text-decoration: none; user-select: none; transition: background 20ms ease-in 0s; cursor: pointer; flex-grow: 1; min-width: 0px; flex-wrap: wrap-reverse; align-items: stretch; text-align: left; overflow: hidden; border: 1px solid rgba(55, 53, 47, 0.16); border-radius: 5px; position: relative; fill: inherit;"><div style="flex: 4 1 180px; padding: 12px 14px 14px; overflow: hidden; text-align: left;"><div style="font-size: 14px; line-height: 20px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-height: 24px; margin-bottom: 2px;">        高德地图    </div><div style="font-size: 12px; line-height: 16px; color: rgba(55, 53, 47, 0.65); height: 32px; overflow: hidden;">高德地图官方网站，提供全国地图浏览，地点搜索，公交驾车查询服务。可同时查看商家团购、优惠信息。高德地图，您的出行、生活好帮手。</div><div style="display: flex; margin-top: 6px; height: 16px;"><img src="https://a.amap.com/pc/static/favicon.ico"style="width: 16px; height: 16px; min-width: 16px; margin-right: 6px;"><div style="font-size: 12px; line-height: 16px; color: rgb(55, 53, 47); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">https://surl.amap.com/7iBTXR21j5sx</div></div></div></a></div></div>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/Blog/">Blog</category>
      
      
      <category domain="https://deusyu.app/tags/Blog/">Blog</category>
      
      <category domain="https://deusyu.app/tags/Notion/">Notion</category>
      
      
      <comments>https://deusyu.app/posts/409b/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>2023年终总结</title>
      <link>https://deusyu.app/posts/c262e439/</link>
      <guid>https://deusyu.app/posts/c262e439/</guid>
      <pubDate>Thu, 28 Dec 2023 20:51:14 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>有计划的人生才能不被轻易打乱</p></blockquote><h1 id="2023做的事情"><a href="#2023做的事情" class="headerlink" title="2023做的事情"></a>2023做的事情</h1><ol><li>硕士毕业了，正式加入了一家互联网公司上班</li><li>在国内游玩了东南沿海地区</li><li>去日本、欧洲旅行</li><li>不但写Java，还写了Go、Python</li><li>认识了很多朋友</li></ol><h1 id="2024年想做的事情"><a href="#2024年想做的事情" class="headerlink" title="2024年想做的事情"></a>2024年想做的事情</h1><ol><li>减肥</li><li>再去一个发达国家&amp;冬季的时候去北海道</li><li>按部就班的美股，开始学习币圈</li><li>系统的学习金融学以及经济学</li><li>学习Unix和Database</li><li>英语听说，日语N5-N4</li><li>写一个感兴趣且财务持续的项目</li><li>Girlfriend</li></ol><h1 id="2023年读的书"><a href="#2023年读的书" class="headerlink" title="2023年读的书"></a>2023年读的书</h1><h2 id="小说类"><a href="#小说类" class="headerlink" title="小说类"></a>小说类</h2><ol><li>《地下室手记》</li><li>《一个陌生女人的来信》</li><li>《舞！舞！舞！》</li><li>《竹林中》</li><li>《美国众神》</li></ol><p>今天总体来说，没看几本小说，返校的日子也是和同学享受最后的学生时光。</p><p>很早之前是不甚喜欢村上春树的，下半年意兴阑珊，在朋友的推荐下，看了几本，舞舞舞一眼爱上了，早时候就读过《四月一个晴朗的早晨，遇到百分之百的女孩》，据村上说，《1Q84》只是这篇的扩展版。</p><h2 id="AI与本业"><a href="#AI与本业" class="headerlink" title="AI与本业"></a>AI与本业</h2><ol><li>《这就是ChatGPT》</li><li>《高性能的MySQL》</li><li>《UNIX编程艺术》</li><li>《必然》</li><li>《芯片战争》</li><li>《计算之魂》</li><li>《左耳听风》</li><li>《Effective Java》</li><li>《字节跳动，从0到1的秘密》</li><li>《全球科技通史》</li><li>《On Java 8》</li></ol><p>通过大佬的博客发现MySQL宣称的一些ACID并没有达到，国内痴迷于MySQL原因有互联网业务的数据正确与否影响是不大，但在金融业务上，PostgreSQL从保证正确性上发展，到现在性能跟MySQL不相上下，也是有趣的历史。</p><p><a href="https://mp.weixin.qq.com/s/gQZ3Q5JKV8gaBNhc1puPcA">MySQL的正确性为何如此拉垮？</a></p><h2 id="传记类"><a href="#传记类" class="headerlink" title="传记类"></a>传记类</h2><ol><li>《马斯克传》</li><li>《贝佐斯传》这本书和《长期主义》是按照自1997年以来贝佐斯给股东的信整理的</li></ol><p>马斯克，火之缪斯。</p><p>第一性原理，马斯克使用它完成了很多颠覆式创新，我从中学到的是所有重要的事情都用第一性原理来思考，然后推导出来自己所需要的。</p><p>“你唯一要遵守的就是物理学定律能推导出来的规则，其他一切都只是建议”。</p><p>马斯克在推特（现在是X）上大放阙词，见谁都要评论一番，实际上他对于真正关心的事情从来不妄言，比如跟中国政府的关系。</p><p>有个YouTuber讲，2015年Tesla要来上海办厂时，中方要求必须成立合资公司，马斯克说：</p><p>“啊，我们Tesla还是个Baby，这么早就要他结婚了吗”</p><p>他只是不想鸟某些人，情商高着呢。</p><blockquote><ol><li>要成为最懂行的外行人：路径，在一个领域读上三本书，就能成为一个领域的专家</li><li>转变思维，空想的理想转变为财务上的可持续性。搞钱才是实现理想的第一性原理。</li><li>理想有多大，你就有多务实。</li></ol></blockquote><p>参考<a href="https://www.youtube.com/@MoneyXYZ">MoneyXYZ</a>：<a href="https://www.youtube.com/watch?v=NpWBtWqr12I">《Elon Musk传》里三个重要的人生课程</a></p><p>《贝佐斯给股东的信》我看完了解了亚马逊的成长历程，不过结合当前社会的情况，觉得跟长期主义是相反的，更加强调今朝有酒今朝醉。</p><h2 id="政经社会"><a href="#政经社会" class="headerlink" title="政经社会"></a>政经社会</h2><ol><li>《中国经济增长的真实逻辑》</li><li>《分析与思考：黄奇帆的复旦经济课》</li><li>《置身事内：中国政府与经济发展》</li></ol><h2 id="其他"><a href="#其他" class="headerlink" title="其他"></a>其他</h2><ol><li>《宝贵的人生建议》</li><li>《随机生存的智慧》</li><li>《阅读是砍向我们内心冰封大海的斧头》</li><li>《狭义与广义相对论浅说》</li><li>《人生十二法则 2》</li></ol><h1 id="2023年看的影视剧"><a href="#2023年看的影视剧" class="headerlink" title="2023年看的影视剧"></a>2023年看的影视剧</h1><ol><li>《蓝眼武士》</li><li>《绝命毒师》</li><li>《黑镜》</li><li>《万神殿》</li><li>《美国众神》</li></ol><p>去年还是今年来，看的美国众神，欧美剧特色，虎头蛇尾。</p><h1 id="感想"><a href="#感想" class="headerlink" title="感想"></a>感想</h1><p>2023年按照我年初计划的内容，很大一部分是没有完成的，减肥，Rust、职场晋升等等，减肥没有反倒增肥了🫠，Rust入门有点难卡在了门口，职场晋升按照近两年的环境来说也很难。</p><p>但是今年很幸运独自去日本旅行了，写了一篇流水账游记<a href="https://deusyu.app/posts/7f48efc5/">《July 2023 Japan Solo Trip｜7月日本独自旅行》</a></p><p>不过也没有写完。</p><p>日本是我第一次出国的地方，作为一个高密度国家，恐怕是很多类似国家的榜样，良好的秩序，整洁的街道，以及东京大阪和其他“乡下”地区差距不大的贫富程度都给了我很多的震撼，人口密度比中国高，但民众的幸福感很高，工时也不长，在东京的普通商铺大多最晚营业到21:00，这些都着实的开拓了我的视野，读万卷书不如行万里路，亲身感受远远比书本上来真的更加真实，五感还是大于一两个感官。</p><p>根据一些资料，现如今，日本的经济也是非常具有活力，另外霓虹真的是欢迎全球各地的人来观光，拿着护照基本很简单的Tax Free，这点比欧盟好上不止一点，附上几个国家和地区的VAT</p><table><thead><tr><th>Country</th><th>VAT Rate (%)</th></tr></thead><tbody><tr><td>Japan</td><td>10</td></tr><tr><td>Germany</td><td>19 (Standard), 7 (Reduced)</td></tr><tr><td>China</td><td>13 (Standard), 6&#x2F;9 (Reduced)</td></tr><tr><td>Taiwan</td><td>5</td></tr><tr><td>Hong Kong</td><td>N&#x2F;A</td></tr><tr><td>Singapore</td><td>8 (since Jan 2023)</td></tr><tr><td>Spain</td><td>21</td></tr><tr><td>Portugal</td><td>23</td></tr><tr><td>Sweden</td><td>25</td></tr><tr><td>Norway</td><td>25</td></tr><tr><td>Netherlands</td><td>21</td></tr><tr><td>Denmark</td><td>25</td></tr></tbody></table><p>经济与投资，参考这篇推文<a href="https://twitter.com/caijingshujuku/status/1722288276546216379?s=35">https://twitter.com/caijingshujuku/status/1722288276546216379?s=35</a></p><p>第二个增强视野，就是去了欧洲。现代文明的发源地，去寻找一些个人主义，商业，民主与自由。南欧，北欧，西欧的几个国家，都是特种兵的形式转了转，写了一篇还未完成的流水账<a href="https://deusyu.app/posts/1c388bb9/">《人生是旷野，不是轨道｜🇪🇺October 2023 Europe Duo Trip》</a>，西班牙人的浪漫不羁，人均9万美元GDP的挪威，欧洲旅游国家荷兰，以及欧洲经济最强德国，欧洲面积不大，但是每个国家与城市风格各异。</p><p>欧洲游玩的也就是教堂，公园，博物馆，其中博物馆是都要预定的，也是最值得去的，去过荷兰国立博物馆后，终于明白了为何一些欧美的学校都是拉着小孩子去博物馆参观。</p><p>中国的哲学是中庸，日本的哲学是和见，北美的哲学有点像狂狷，除此之外，对《枪炮、病菌与钢铁》所描述的地理决定论更加的认同，更加“认命了”，对赫拉利所描述的人类更加的信服，平凡、普通而略微乐观的活着。</p><h1 id="最后"><a href="#最后" class="headerlink" title="最后"></a>最后</h1><p>按照我要写的<a href="https://deusyu.app/posts/1c388bb9/">欧洲旅行</a>那篇博客的标题，“人生是旷野，不是轨道”，祝诸君2024年<strong>富有</strong>，<strong>自由</strong>，<strong>否极泰来</strong>！</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%94%9F%E6%B4%BB/">生活</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%94%9F%E6%B4%BB/">生活</category>
      
      
      <comments>https://deusyu.app/posts/c262e439/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>为Hexo搭建Git仓库并免密部署</title>
      <link>https://deusyu.app/posts/1593c7ba/</link>
      <guid>https://deusyu.app/posts/1593c7ba/</guid>
      <pubDate>Sun, 24 Dec 2023 13:01:25 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>Hexo的部署方式有多种，比如Git，Heroku，FTPSync，SFTP，这里我采用的Git。</p><blockquote><p><a href="https://hexo.io/zh-cn/docs/one-command-deployment.html">Hexo部署</a></p></blockquote><h1 id="原理"><a href="#原理" class="headerlink" title="原理"></a>原理</h1><p>很简单，就是在远端服务器搭建一个Git仓库，然后通过RSA证书认证的方式来进行免密Deploy。</p><h1 id="步骤"><a href="#步骤" class="headerlink" title="步骤"></a>步骤</h1><ol><li><p>创建一个<code>git</code> 用户</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo adduser git</span><br></pre></td></tr></table></figure></li><li><p>初始化一个Git仓库</p><p>裸仓库</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo git init --bare hexo.git</span><br></pre></td></tr></table></figure></li><li><p>切换权限</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo <span class="built_in">chown</span> -R git:git hexo.git</span><br></pre></td></tr></table></figure></li><li><p>添加RSA认证</p></li></ol><p>   将本机<code>.ssh/id_rsa.pub</code> 中的内容复制到远端<code>/home/git/.ssh/authorized_keys</code>中</p><ol start="5"><li><p>测试一下</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">ssh -v git@ServerIP</span><br></pre></td></tr></table></figure><p>如果不需密码登陆到git即成功</p></li><li><p>按照<a href="https://hexo.io/zh-cn/docs/one-command-deployment.html">Hexo部署</a>中的内容配置<code>_config.yml</code></p></li></ol><p>接下来自己的可以使用<code>hexo clean &amp;&amp; hexo deploy</code> 进行免密部署啦</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li><a href="https://hexo.io/zh-cn/docs/one-command-deployment.html">https://hexo.io/zh-cn/docs/one-command-deployment.html</a></li><li><a href="https://www.liaoxuefeng.com/wiki/896043488029600/899998870925664">https://www.liaoxuefeng.com/wiki/896043488029600/899998870925664</a></li><li><a href="https://segmentfault.com/a/1190000039805474">https://segmentfault.com/a/1190000039805474</a></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/tags/Git/">Git</category>
      
      <category domain="https://deusyu.app/tags/Hexo/">Hexo</category>
      
      
      <comments>https://deusyu.app/posts/1593c7ba/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>我连不上openai了</title>
      <link>https://deusyu.app/posts/787204f4/</link>
      <guid>https://deusyu.app/posts/787204f4/</guid>
      <pubDate>Thu, 21 Dec 2023 22:02:09 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>刷完路由器后，起初的一两周用着还不错，没出什么问题。</p><p>问题在我出去玩了一圈后发现，访问openai不行了，直接返回了我的公网ip，开始了一顿乱设置，未果。</p><p>在群里一位老哥说，他觉得router上的ssrp，passwall都不太好用，尤其是dns，openclash还是最好的。</p><p>于是我准备opkg install 一下，但是原编译的固件中包都太旧了，换了源后，openwrt_core的部分大多数时跟编译的内核版本不一致，这样openclash的依赖中</p><ol><li>kmod-tun </li><li>kmod-inet-diag</li></ol><p>又是属于core中的，暂时还不想自己编译一遍固件。</p><p>终于在一个OP的官方tg群中找到了答案：因为ssrp直连了所有quic，禁用chrome的quic就行。</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">chrome://flags/#enable-quic -&gt; disabled</span><br></pre></td></tr></table></figure><p>我排查这个问题的时候，发现手机（安卓）上面的ChatGPT应用是可以进行问答的，但是手机上Chrome浏览器也不行。前期出现过DNS的问题，所以我归因ssrp的dns这块不太行，手机以及电脑的Chrome浏览器ip.sb都也是暴露的公网ip。</p><p>另外我还试了Safari访问ip.sb 和 chat.openai.com，ip.sb 返回是代理ip，openai返回公网ip。</p><p>搜索了一下，quic是Google搞出来的，</p><blockquote><p>QUIC快速UDP互联网连接”（Quick UDP Internet Connection）的首字母缩写，它通过使用<a href="https://zh.wikipedia.org/wiki/%E7%94%A8%E6%88%B7%E6%95%B0%E6%8D%AE%E6%8A%A5%E5%8D%8F%E8%AE%AE">用户数据报协议</a>（UDP）在两个端点之间建立若干个<a href="https://zh.wikipedia.org/wiki/%E5%A4%9A%E8%B7%AF%E5%A4%8D%E7%94%A8">多路连接</a>来实现这一目标，其目的是为了在网络层淘汰TCP，以满足许多应用的需求，因此该协议偶尔也会获得 “TCP&#x2F;2”的昵称</p></blockquote><p>“它使用UDP”，ssrp只劫持tcp，那么我通过chrome访问openai和ipsb的在网络层的数据包都是upd，所以被放掉了。</p><p>也就是“ssrp直连了所有quic”。</p><hr><p>在这个过程中，了解到了ImmortalWrt项目，发现可以无需编译，将自己喜欢的包自定义加入预安装构建镜像。</p><p>准备后续，试一试homeproxy，毕竟：</p><p><img src="https://r2.deusyu.app/2023-12-21%2023.58.53.jpg" alt="Fuck you QUIC"></p><p>FUCK YOU QUIC 🖕️</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%B7%E6%9C%BA/">刷机</category>
      
      <category domain="https://deusyu.app/tags/router/">router</category>
      
      <category domain="https://deusyu.app/tags/%E7%BD%91%E7%BB%9C/">网络</category>
      
      
      <comments>https://deusyu.app/posts/787204f4/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>小米ax3600救砖&amp;刷机</title>
      <link>https://deusyu.app/posts/fix-ax3600/</link>
      <guid>https://deusyu.app/posts/fix-ax3600/</guid>
      <pubDate>Sun, 17 Dec 2023 22:40:36 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>在某位朋友的推荐（忽悠）下从闲鱼上淘了小米ax3600，性价比之王。</p><p>早些时间装了宽带，一直用红米AX5，并没有在上面做代理，现在想着将订阅的机场利用起来，实现同一个内网的所有设备连接互联网。</p><h1 id="简要的踩坑过程"><a href="#简要的踩坑过程" class="headerlink" title="简要的踩坑过程"></a>简要的踩坑过程</h1><p>到手后开始刷机，按照教程进行无分区扩容</p><p>过程：</p><ol><li>无分区扩容刷机</li><li>变砖</li><li>ttl工具救砖</li><li>ttl刷机的几个失败<ol><li>使用tftp传输固件包失败</li><li>使用tftp加载到内存后，写入固件到指定分区失败</li><li>由于分区大小不够，尝试刷入小固件重启失败</li></ol></li><li>ttl刷官方固件<ol><li>重启后降级连ssh</li><li>扩容教程</li><li>分区扩大后ttl工具刷入准备好的固件包</li><li>重启后依然黄灯</li><li>两个分区都刷同一个固件包成功</li></ol></li></ol><h1 id="不扩容刷入openwrt"><a href="#不扩容刷入openwrt" class="headerlink" title="不扩容刷入openwrt"></a>不扩容刷入openwrt</h1><blockquote><p>与参考链接<a href="https://www.ceer.cc/122">小米AX3600不扩容刷机OpenWrt教程</a>一致，本部分仅作为个人的笔记与备份</p></blockquote><ol><li><p>开启SSH</p><ol><li><p>路由器控制台降级：刷入旧版固件<code>miwifi_r3600_firmware_5da25_1.0.17.bin</code></p></li><li><p>获取SSH并修改默认密码为<code>admin</code></p><ol><li>复制路由器后台网址中<code>STOK=</code></li></ol><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">http://192.168.31.1/cgi-bin/luci/;stok=/api/misystem/set_config_iotdev?bssid=Xiaomi&amp;user_id=longdike&amp;ssid=-h%3B%20nvram%20set%20ssh_en%3D1%3B%20nvram%20commit%3B%20sed%20-i%20&#x27;s%2Fchannel%3D.*%2Fchannel%3D%5C%22debug%5C%22%2Fg&#x27;%20%2Fetc%2Finit.d%2Fdropbear%3B%20%2Fetc%2Finit.d%2Fdropbear%20start%3B</span><br></pre></td></tr></table></figure><ol start="2"><li><p>将上面URL中的<code>stok=</code>后面补全为自己路由器网址的</p><ol><li><code>&#123;&quot;code&quot;:0&#125;</code>表示成功</li></ol></li><li><p>修改默认密码为<code>admin</code></p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">http://192.168.31.1/cgi-bin/luci/;stok=/api/misystem/set_config_iotdev?bssid=Xiaomi&amp;user_id=longdike&amp;ssid=-h%3B%20echo%20-e%20&#x27;admin%5Cnadmin&#x27;%20%7C%20passwd%20root%3B</span><br></pre></td></tr></table></figure><p>同样补全<code>stok=</code> 后面内容，<code>&#123;&quot;code&quot;:0&#125;</code>表示成功</p></li></ol><p>至此可以ssh登陆路由器控制台了</p></li></ol></li><li><p>刷机</p><ol><li><p>MacOS直接使用Terminal，Windows可以使用WinSCP&#x2F;Putty</p><ol><li><p>将小于29M的ubi格式固件传至tmp根目录下</p></li><li><p>运行下面命令：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br></pre></td><td class="code"><pre><span class="line">nvram <span class="built_in">set</span> flag_last_success=0</span><br><span class="line">nvram <span class="built_in">set</span> flag_boot_rootfs=0</span><br><span class="line">nvram <span class="built_in">set</span> flag_boot_success=1</span><br><span class="line">nvram <span class="built_in">set</span> flag_try_sys1_failed=0</span><br><span class="line">nvram <span class="built_in">set</span> flag_try_sys2_failed=0</span><br><span class="line">nvram <span class="built_in">set</span> boot_wait=on</span><br><span class="line">nvram <span class="built_in">set</span> uart_en=1</span><br><span class="line">nvram <span class="built_in">set</span> telnet_en=1</span><br><span class="line">nvram <span class="built_in">set</span> ssh_en=1</span><br><span class="line">nvram commit</span><br><span class="line"><span class="comment"># 使用ubiformat工具，不经确认地格式化第十二个MTD设备，并使用位于/tmp/目录下的指定UBI格式固件文件</span></span><br><span class="line">ubiformat /dev/mtd12 -y -f /tmp/请替换固件包名.ubi</span><br><span class="line">nvram <span class="built_in">set</span> flag_last_success=0</span><br><span class="line">nvram <span class="built_in">set</span> flag_boot_rootfs=0</span><br><span class="line">nvram commit</span><br><span class="line"><span class="comment"># 重启</span></span><br><span class="line">reboot</span><br><span class="line"></span><br></pre></td></tr></table></figure></li></ol></li><li><p>等待一分钟左右蓝灯亮可以登入OpenWrt系统，注意这里的地址变为<code>192.168.10.1</code> 用户名<code>root</code>密码<code>passwd</code></p></li></ol></li></ol><p>到这里刷机是成功的，这个固件也很不错了，如果不需要其他扩展，这个双系统还是不错的，</p><p>博客作者也给出了切回官方的命令：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">fw_setenv flag_last_success 1</span><br><span class="line">fw_setenv flag_boot_rootfs 1</span><br><span class="line">reboot</span><br></pre></td></tr></table></figure><h1 id="变砖"><a href="#变砖" class="headerlink" title="变砖"></a>变砖</h1><p>我想着刷入朋友编译的固件，</p><p>然后就通过路由器控制台的「刷写新的固件」上传<code>.bin</code>文件通过升级，结果，重启后一直黄灯，变砖了。</p><p><img src="https://r2.deusyu.app/2023-12-17%2018.52.45.jpg"></p><p>于是使用官方救砖工具救砖，还是不行，重启循环显示黄灯。</p><p><del>其实这里我应该意识到一件事，切换回官方系统就可以了。</del></p><h1 id="TTL救砖"><a href="#TTL救砖" class="headerlink" title="TTL救砖"></a>TTL救砖</h1><h2 id="回忆是珍珠"><a href="#回忆是珍珠" class="headerlink" title="回忆是珍珠"></a>回忆是珍珠</h2><p>据上一次通过TTL工具刷路由器还是在上一次，呃，是2016年，那时候还是传说中的土豪金编程器，记得应该是买了个小米路由器mini青春版</p><p><img src="https://r2.deusyu.app/20161117_180508_Richtone(HDR).jpg"></p><p><img src="https://r2.deusyu.app/20161117_174222.jpg"></p><h2 id="工具准备"><a href="#工具准备" class="headerlink" title="工具准备"></a>工具准备</h2><p>淘宝上购买TTL工具+杜邦线三种类型的（公对公，母对母，公对母），我的USB转TTL是FT232RL，支持5V&#x2F;3.3V&#x2F;1.8V</p><h2 id="拆机"><a href="#拆机" class="headerlink" title="拆机"></a>拆机</h2><p>小米ax3600非常难拆，4个螺丝分布在底部防滑垫上，第5个在中间贴纸下面。上壳是塑料的卯榫结构，需要用翘片慢慢拆。如果拆坏了也不要紧，使用胶带粘起来就好了。</p><h2 id="刷机"><a href="#刷机" class="headerlink" title="刷机"></a>刷机</h2><blockquote><p>这里刷机靠着<a href="https://dmesg.app/fix-ax3600.html">Benny的教程</a>和他的帮助</p></blockquote><h3 id="连接准备"><a href="#连接准备" class="headerlink" title="连接准备"></a>连接准备</h3><p>TTL调到1.8v，将黄色盖帽压到1.8v的位置，然后接线，使用杜邦线将FT232RL的TX 要接路由器的RX，RX接TX，GND接 GND，VCC不接。</p><p><img src="https://r2.deusyu.app/20231203_173617.jpg"></p><p><img src="https://r2.deusyu.app/20231203_172918.jpg" alt="VCC,GND,RX,TX"></p><h3 id="进入screen"><a href="#进入screen" class="headerlink" title="进入screen"></a>进入screen</h3><p>电脑端：MacOS直接使用<code>screen</code>,通过系统信息-USB查看信息看到设备名称</p><p>路由器通电</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">screen -L /dev/cu.usbserial-A50285BI 115200 –L</span><br></pre></td></tr></table></figure><p>然后按回车中断引导，进入<code>screen</code></p><p><img src="https://r2.deusyu.app/2023-12-17%2023.13.31.jpg"></p><p>正常来说路由器启动后会进入uboot，这里按回车中断了引导，可以进行刷机了。至此，说明电脑通过TTL连接路由器是没有问题了。</p><h3 id="准备tftp（照抄Benny）"><a href="#准备tftp（照抄Benny）" class="headerlink" title="准备tftp（照抄Benny）"></a>准备tftp（照抄Benny）</h3><p>macOS 自带一个 tftp，使用如下命令启动</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo launchctl load -w /System/Library/LaunchDaemons/tftp.plist</span><br></pre></td></tr></table></figure><p>把后缀是 ubi 的 nand factory 复制到<code>/private/tftpboot</code>中（需要 sudo）</p><p>停止tftp可以用这个命令</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sudo launchctl unload -w /System/Library/LaunchDaemons/tftp.plist</span><br></pre></td></tr></table></figure><h3 id="uboot刷分区（继续抄Benny）"><a href="#uboot刷分区（继续抄Benny）" class="headerlink" title="uboot刷分区（继续抄Benny）"></a>uboot刷分区（继续抄Benny）</h3><h4 id="配置环境变量"><a href="#配置环境变量" class="headerlink" title="配置环境变量"></a>配置环境变量</h4><p>网线连接电脑和路由器 LAN，电脑设置 IP 192.168.31.100，然后在 uboot 中执行如下命令</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">setenv serverip 192.168.31.100</span><br><span class="line">setenv ipaddr 192.168.31.1</span><br></pre></td></tr></table></figure><h4 id="加载固件"><a href="#加载固件" class="headerlink" title="加载固件"></a>加载固件</h4><p>然后加载固件到内存中</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">tftpboot 1.ubi</span><br></pre></td></tr></table></figure><p>此时能看到屏幕上在走进度条，如果你没走，提示 tftp server died 或者卡住了，那多半是 tftp 服务器没配置好。</p><p>这里我遇到了两个奇怪的问题，第一个是加载固件的时候，另外一个是出现了这样的 <code>TTTTTT</code></p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br></pre></td><td class="code"><pre><span class="line">IPQ807x<span class="comment"># tftpboot openwrt-ipq807x-generic-xiaomi_ax3600-squashfs-nand-factory.ubi</span></span><br><span class="line">ipq807x_eth_halt: <span class="keyword">done</span></span><br><span class="line">eth0 PHY0 Down Speed :10 Half duplex</span><br><span class="line">eth0 PHY1 Down Speed :10 Half duplex</span><br><span class="line">eth0 PHY2 up Speed :1000 Full duplex</span><br><span class="line">eth0 PHY3 Down Speed :10 Half duplex</span><br><span class="line">eth0 PHY4 Down Speed :10 Half duplex</span><br><span class="line">eth0 PHY5 Down Speed :10 Half duplex</span><br><span class="line">ipq807x_eth_init: <span class="keyword">done</span></span><br><span class="line">Using eth0 device</span><br><span class="line">TFTP from server 192.168.31.100; our IP address is 192.168.31.1</span><br><span class="line">Filename <span class="string">&#x27;openwrt-ipq807x-generic-xiaomi_ax3600-squashfs-nand-factory.ubi&#x27;</span>.</span><br><span class="line">Load address: 0x1</span><br><span class="line"></span><br><span class="line">Error specified load address not allowed</span><br><span class="line">ipq807x_eth_halt: <span class="keyword">done</span></span><br></pre></td></tr></table></figure><p><img src="https://r2.deusyu.app/2023-12-17%2023.32.21.jpg" alt="TTTTTT"></p><p>T应该就是表示timeout了，我的解决办法就是关了Wi-Fi，重新加载。问题出在我家里连接的也是小米家的红米路由器，连接Wi-Fi是地址和设置的服务端重了。</p><p>正常的情况是这样的：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br></pre></td><td class="code"><pre><span class="line">IPQ807x<span class="comment"># tftpboot 1.ubi</span></span><br><span class="line">ipq807x_eth_halt: <span class="keyword">done</span></span><br><span class="line">eth0 PHY0 Down Speed :10 Half duplex</span><br><span class="line">eth0 PHY1 Down Speed :10 Half duplex</span><br><span class="line">eth0 PHY2 Down Speed :10 Half duplex</span><br><span class="line">eth0 PHY3 up Speed :1000 Full duplex</span><br><span class="line">eth0 PHY4 Down Speed :10 Half duplex</span><br><span class="line">eth0 PHY5 Down Speed :10 Half duplex</span><br><span class="line">ipq807x_eth_init: <span class="keyword">done</span></span><br><span class="line">Using eth0 device</span><br><span class="line">TFTP from server 192.168.31.100; our IP address is 192.168.31.1</span><br><span class="line">Filename <span class="string">&#x27;1.ubi&#x27;</span>.</span><br><span class="line">Load address: 0x44000000</span><br><span class="line">Loading: *</span><br><span class="line">Got TFTP_OACK: TFTP remote port: changes from 69 to 58219</span><br><span class="line"><span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">#################################################################</span></span><br><span class="line">         <span class="comment">######################################################</span></span><br><span class="line">         2.8 MiB/s</span><br><span class="line"><span class="keyword">done</span></span><br><span class="line">Bytes transferred = 41811968 (27e0000 hex)</span><br><span class="line">ipq807x_eth_halt: <span class="keyword">done</span></span><br></pre></td></tr></table></figure><p>进度条走完之后，会留下一个数字，<code>Bytes transferred = 41811968 (27e0000 hex)</code>也就是固件的大小，同时最开始 <code>Load address: 0x44000000</code> 还会告诉你固件的起始地址，这两个数值很重要，要记下来。</p><h3 id="获取分区信息"><a href="#获取分区信息" class="headerlink" title="获取分区信息"></a>获取分区信息</h3><p>用<code>smeminfo</code>可以获取分区信息</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br></pre></td><td class="code"><pre><span class="line">IPQ807x<span class="comment"># smeminfo</span></span><br><span class="line">flash_type:             0x2</span><br><span class="line">flash_index:            0x0</span><br><span class="line">flash_chip_select:      0x0</span><br><span class="line">flash_block_size:       0x20000</span><br><span class="line">flash_density:          0x100000</span><br><span class="line">partition table offset  0x0</span><br><span class="line">No.: Name             Attributes            Start             Size</span><br><span class="line">  0: 0:SBL1           0x0000ffff              0x0         0x100000</span><br><span class="line">  1: 0:MIBIB          0x0000ffff         0x100000         0x100000</span><br><span class="line">  2: 0:QSEE           0x0000ffff         0x200000         0x300000</span><br><span class="line">  3: 0:DEVCFG         0x0000ffff         0x500000          0x80000</span><br><span class="line">  4: 0:RPM            0x0000ffff         0x580000          0x80000</span><br><span class="line">  5: 0:CDT            0x0000ffff         0x600000          0x80000</span><br><span class="line">  6: 0:APPSBLENV      0x0000ffff         0x680000          0x80000</span><br><span class="line">  7: 0:APPSBL         0x0000ffff         0x700000         0x100000</span><br><span class="line">  8: 0:ART            0x0000ffff         0x800000          0x80000</span><br><span class="line">  9: bdata            0x0000ffff         0x880000          0x80000</span><br><span class="line"> 10: crash            0x0000ffff         0x900000          0x80000</span><br><span class="line"> 11: crash_syslog     0x0000ffff         0x980000          0x80000</span><br><span class="line"> 12: rootfs           0x0000ffff         0xa00000        0x23c0000</span><br><span class="line"> 13: rootfs_1         0x0000ffff        0x2dc0000        0x23c0000</span><br><span class="line"> 14: overlay          0x0000ffff        0x5180000        0x1ec0000</span><br><span class="line"> 15: rsvd0            0x0000ffff        0x7040000          0x80000</span><br></pre></td></tr></table></figure><p>其实这里问题就浮现了，第13分区的大小是35.75M，小于我的固件大小40M，所以下面的步骤无法操作。</p><p>那我只能刷一个小的固件，这里我准备重新开始，选择刷入小米官方固件<code>miwifi_r3600_firmware_5da25_1.0.17.bin</code>，然后再回到上面的过程。</p><h3 id="清除分区内容"><a href="#清除分区内容" class="headerlink" title="清除分区内容"></a>清除分区内容</h3><p>保险起见，先给 rootfs 抹掉，自己对应起始结束地址，我的和Benny不同</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">nand erase 0xa00000 0x23c0000</span><br><span class="line">nand erase 0x2dc0000 0x23c0000</span><br><span class="line"><span class="comment"># 对于已经扩容的第13分区, 完全擦除使用下面的</span></span><br><span class="line">nand erase 0x2dc0000 0x8000000</span><br></pre></td></tr></table></figure><p>第一个数是起始地址，第二个数是擦除的大小</p><h3 id="写入固件"><a href="#写入固件" class="headerlink" title="写入固件"></a>写入固件</h3><p> rootfs_1 中，使用<code>nand write</code>命令，这个命令接受三个参数，分别是固件内存地址，分区起始地址，固件大小。对我来说，写到 rootfs_1 也就是</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">nand write 0x44000000 0x2dc0000 0x1c00000</span><br></pre></td></tr></table></figure><p>写到 rootfs 就是</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">nand write 0x44000000 0xa00000 0x1c00000</span><br></pre></td></tr></table></figure><p>我这里两个分区都刷入了小米官方固件，然后按照教程刷<a href="https://www.right.com.cn/forum/thread-4631481-1-1.html">qsdk扩容</a></p><h2 id="重来"><a href="#重来" class="headerlink" title="重来"></a>重来</h2><p>按照上述教程刷成功后，再次使用TTL工具进入<code>screen</code> 通过<code>smeminfo</code>发现第13分区已经扩大到128M了</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br></pre></td><td class="code"><pre><span class="line">IPQ807x<span class="comment"># smeminfo</span></span><br><span class="line">flash_type:             0x2</span><br><span class="line">flash_index:            0x0</span><br><span class="line">flash_chip_select:      0x0</span><br><span class="line">flash_block_size:       0x20000</span><br><span class="line">flash_density:          0x100000</span><br><span class="line">partition table offset  0x0</span><br><span class="line">No.: Name             Attributes            Start             Size</span><br><span class="line">  0: 0:SBL1           0x0000ffff              0x0         0x100000</span><br><span class="line">  1: 0:MIBIB          0x0000ffff         0x100000         0x100000</span><br><span class="line">  2: 0:QSEE           0x0000ffff         0x200000         0x300000</span><br><span class="line">  3: 0:DEVCFG         0x0000ffff         0x500000          0x80000</span><br><span class="line">  4: 0:RPM            0x0000ffff         0x580000          0x80000</span><br><span class="line">  5: 0:CDT            0x0000ffff         0x600000          0x80000</span><br><span class="line">  6: 0:APPSBLENV      0x0000ffff         0x680000          0x80000</span><br><span class="line">  7: 0:APPSBL         0x0000ffff         0x700000         0x100000</span><br><span class="line">  8: 0:ART            0x0000ffff         0x800000          0x80000</span><br><span class="line">  9: bdata            0x0000ffff         0x880000          0x80000</span><br><span class="line"> 10: crash            0x0000ffff         0x900000          0x80000</span><br><span class="line"> 11: crash_syslog     0x0000ffff         0x980000          0x80000</span><br><span class="line"> 12: rootfs           0x0000ffff         0xa00000        0x23c0000</span><br><span class="line"> 13: rootfs_1         0x0000ffff        0x2dc0000        0x8000000</span><br><span class="line"> 14: overlay          0x0000ffff        0xadc0000        0x1ec0000</span><br><span class="line"> 15: rsvd0            0x0000ffff        0xcc80000          0x80000</span><br><span class="line"> 16: 0:WIFIFW         0x0000ffff        0xcd00000         0x900000</span><br></pre></td></tr></table></figure><p>这样可以直接按照<strong>刷机</strong>的步骤再次刷入大的固件，这里我还是将固件都写入了第12、13分区，因为只写一个的话还是黄灯进不去。</p><p>然后重启路由，蓝灯进入路由器控制台，救回来了！</p><p>并且刷入了目标的固件！</p><p><img src="https://r2.deusyu.app/2023-12-18%2000.09.18.jpg" alt="救砖成功"></p><h1 id="固件体验"><a href="#固件体验" class="headerlink" title="固件体验"></a>固件体验</h1><p>这个编译了ShadowSocksR Plus+，支持 SS&#x2F;SSR&#x2F;V2RAY&#x2F;XRAY&#x2F;TROJAN&#x2F;NAIVEPROXY&#x2F;SOCKS5&#x2F;TUN 等协议，可以进行订阅，定时刷新以及自动切换节点，这样我就实现了我刷机的目标，同一内网下的所有设备的全部互联网连接。</p><p>缺点是访问控制只支持LAN ip级别的筛选，对于特定的硬件设备不能管理，不过问题不大，我使用这个路由器做中继，然后另外一个直连光猫，有互联网需求的连ax3600，没有的连红米。OpenWrt的中继设置参考的这篇：<a href="https://iyzm.net/openwrt/512.html">进阶教程之 OpenWrt 无线中继配置指南</a></p><h1 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h1><p>其实按照我踩过的坑，比较顺利的路线为首先刷入过渡包进行扩容，然后通过控制台升级；如果控制台变砖了，由于扩容成功，还可以进行ttl直接刷入准备好的固件包。</p><h1 id="后续"><a href="#后续" class="headerlink" title="后续"></a>后续</h1><h2 id="1"><a href="#1" class="headerlink" title="1"></a>1</h2><p>后续就是ssrp的问题，我订阅的节点是解锁了openai的，但是通过电脑直连路由器openai返回我的公网ip，</p><p>具体解决看<a href="https://deusyu.app/posts/787204f4/">我连不上openai了</a>这篇博文。</p><p>另外还有Adblock的问题，ssrp完全不能分流我的广告啊，这下不得不重新刷机了。</p><h2 id="2"><a href="#2" class="headerlink" title="2"></a>2</h2><p><del>刷了<a href="https://github.com/vonl1/Openwrt_xiaomi_ax3600">https://github.com/vonl1/Openwrt_xiaomi_ax3600</a> 0609的包，通过无线连接路由器时需要 输入密码</del></p><p><del><code>1234567890</code> 另外登录的地址是<code>10.10.10.1</code> 用户名<code>root</code> 密码<code>boos</code></del></p><p><del>他参考的<a href="https://github.com/Boos4721/openwrt%E8%BF%9B%E8%A1%8C%E7%9A%84%E7%BC%96%E8%AF%91%E3%80%82">https://github.com/Boos4721/openwrt进行的编译。</a></del></p><p>上面那个太坑了，比如ssh路由器的管理器密码都不是页面定义的，dropbear重启了也不管用，魔改了不少后门。</p><p>找不到表情包来形容我的窘迫了，只能说愿你刷机归来，还是恩山无线</p><p><a href="https://www.right.com.cn/forum/thread-8294637-1-1.html">https://www.right.com.cn/forum/thread-8294637-1-1.html</a> 然后在根据群里老哥的帮助终于用上了openclash</p><h2 id="3"><a href="#3" class="headerlink" title="3"></a>3</h2><p>openclash启用，我的机场使用的是TUN内核，比较简单的图形化操作是在「配置文件管理」中上传内核，内核是从OpenClash的<a href="https://github.com/vernesong/OpenClash/tree/core">core分支</a>中，master&#x2F;premium目录下载相应架构的文件，这里不需要解压。</p><p>另外一种方法是下载解压、改名之后传到&#x2F;etc&#x2F;openclash&#x2F;core中，记得给权限，改名为clash_tun</p><p>另外dev不需要上传，openclash的配置检查是：如果有dev的话会用dev，但是我的机场需要tun。所以可以不传dev，只传tun。</p><h2 id="4"><a href="#4" class="headerlink" title="4"></a>4</h2><p>openclash的推荐配置：</p><p>运行模式：fakeip+增强</p><p>代理模式：rule</p><p>开完fakeip不要频繁重启路由器，重启了客户端要记得清理dns缓存，这里也可以设置fakeip持久化，禁dns缓存。</p><h2 id="5"><a href="#5" class="headerlink" title="5"></a>5</h2><p>刷入uboot，具体看这篇文章<a href="https://deusyu.app/posts/uboot-ax3600/">小米AX3600刷入uboot</a></p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li>无分区扩容刷机：<a href="https://www.ceer.cc/122">https://www.ceer.cc/122</a></li><li>刷入qsdk并扩容rootfs_1分区到128M：<a href="https://www.right.com.cn/forum/thread-4631481-1-1.html">https://www.right.com.cn/forum/thread-4631481-1-1.html</a></li><li>Benny的教程：<a href="https://dmesg.app/fix-ax3600.html">https://dmesg.app/fix-ax3600.html</a></li><li><a href="https://iyzm.net/openwrt/512.html">进阶教程之OpenWrt 无线中继配置指南</a></li><li>恩山无线的<a href="https://www.right.com.cn/forum/thread-8294637-1-1.html"><em>ImmortalWrt</em>固件</a></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%B7%E6%9C%BA/">刷机</category>
      
      <category domain="https://deusyu.app/tags/router/">router</category>
      
      
      <comments>https://deusyu.app/posts/fix-ax3600/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>人生是旷野，不是轨道｜🇪🇺October 2023 Europe Duo Trip</title>
      <link>https://deusyu.app/posts/1c388bb9/</link>
      <guid>https://deusyu.app/posts/1c388bb9/</guid>
      <pubDate>Sun, 15 Oct 2023 22:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>人生是旷野，不是轨道，勇敢者先享受世界。</p></blockquote><h1 id="欧洲特种兵"><a href="#欧洲特种兵" class="headerlink" title="欧洲特种兵"></a>欧洲特种兵</h1><p>简单来说，国庆玩了9天，北京时间凌晨2点起飞，返航是柏林时间17:30起飞。大概有9个白天的游玩时间，而我又选择了没有任何度假体验的特种兵走马观花时玩法，但这也挺符合我一贯的风格，观其大略，先有个整体的印象，然后再从感兴趣的地方细细品味。</p><p>顺带一提，使用Google 日历来制定跨时区的行程非常好，选择好时区就可以了，显示是以当地时间为准，避免了自己脑算时差带来的混乱感，还可以同步到三星日历或者Apple日历，也可以分享给行程一致的朋友。</p><p><img src="https://r2.deusyu.app/iShot_2023-10-18_22.41.06.png" alt="Google日历"></p><h2 id="路线"><a href="#路线" class="headerlink" title="路线"></a>路线</h2><p>游览的国家和地区：</p><ul><li>西班牙 巴塞罗那</li><li>比利时 布鲁塞尔（停留）</li><li>瑞典 马尔默（停留）</li><li>丹麦 哥本哈根（停留）</li><li>挪威 奥斯陆</li><li>荷兰 阿姆斯特丹｜海牙｜鹿特丹</li><li>德国 柏林</li></ul><p>路途较远的国家乘坐飞机，相邻较近的国家乘坐火车。在制定行程安排时，我的朋友作为时间刺客，成功偷出了9月31号，赞叹，我们时间又多啦！</p><p><img src="https://r2.deusyu.app/image-20231016003312419.png" alt="image-20231016003312419"></p><h1 id="行程"><a href="#行程" class="headerlink" title="行程"></a>行程</h1><h2 id="Day1"><a href="#Day1" class="headerlink" title="Day1"></a>Day1</h2><p>当地时间28号下午到达布鲁塞尔，转机时间长达6小时，同航班的有个小姐姐过完海关直接去市中心玩了，据说布鲁塞尔3小时就能逛完，真的是勇敢者先享受世界~</p><p>布鲁塞尔可能游玩的地方：比利时皇家美术馆、漫画中心、维克多雨果故居、马克思故居，大概半天时间就能逛完，本来我有计划乘坐火车来这里玩，但因为做反了了一次火车便失之交臂了。</p><p>下午2点多到达巴塞罗那，住进旅店后和好友面基成功，在市中心转了转，感受了一下巴塞罗那风情。巴塞罗那天气很热，穿短裤短袖比较合适，空气是海水中略带咸味儿的清新，海洋清新调。</p><p>第一个去的地方是欧洲的运营商Orange，看看有没有pixel，里面大部分是小米、荣耀、Oppo、Vivo 这些耳熟能详的国产厂商，国产手机厂商还是太能卷了，打入欧洲市场简直轻轻松松，想起小时候还是诺基亚、摩托罗拉这些欧美手机商，20年过去了，国产科技行业在中端消费电子市场已然无敌。不仅感叹，水稻民族一向如此啊。</p><p>下午和朋友走走停停，看了下巴塞罗那的高迪三件套之一的米拉之家，确实是有艺术感。<img src="https://r2.deusyu.app/20230928_190809.jpg" alt="米拉之家"></p><p>顺路是巴特略之家。</p><p><img src="https://r2.deusyu.app/20230928_193118.jpg" alt="巴特略之家"></p><p>走到兰布拉大道的中心，加泰罗尼亚广场，此时已然傍晚，日落广场。</p><p><img src="https://r2.deusyu.app/20230928_195503.jpg" alt="加泰罗尼亚广场"></p><h2 id="Day2"><a href="#Day2" class="headerlink" title="Day2"></a>Day2</h2><p>第二天准备做HOLA BARCELONA 观光车去游览城市的著名景点，29.7欧，很不便宜，有两条线红线和蓝线，但是都是单行的，当时我还问了下Google Bard，被它骗了。</p><p>终于在外面见到了圣家堂。</p><p><img src="https://r2.deusyu.app/20230929_121416.jpg" alt="圣家堂"></p><p>如果说巴塞罗那必有一个地方要去的话，那一定要进去圣家堂里面去看看，像是中国的国庆估计要提前4-5天买票，不然就很难搞到了。下面是驴友拍的照片，下午3-5点的时间是最佳观赏时刻。</p><p><img src="https://r2.deusyu.app/mmexport1696084137068.jpg" alt="mmexport1696084137068"></p><p><img src="https://r2.deusyu.app/mmexport1696084134341.jpg" alt="mmexport1696084134341"></p><p><img src="https://r2.deusyu.app/mmexport1696084133032.jpg" alt="mmexport1696084133032"></p><p>然后到巴塞的诺坎普球场下车，参观了一下在全世界享受盛名的巴塞罗那足球俱乐部的主场，全球最大音乐流媒体平台Spotify 赞助，冠名为Spotify Camp Nou，看到了很多穿梅西9号球衣的球迷。</p><p>回国时候听到ColdPlay的Viva La Vida，生命万岁，瓜迪奥拉，据说也是完成“六冠王”伟业的男人，Viva La Vida则以一位墨西哥画家的同名画作为名，歌曲的封面是法国七月革命的《自由领导人民》，这些关键字，相互串联很有意思。</p><blockquote><p>Google艺术与文化：<a href="https://artsandculture.google.com/asset/viva-la-vida/bAGbsL-eW4XUXg?hl=zh-TW">https://artsandculture.google.com/asset/viva-la-vida/bAGbsL-eW4XUXg?hl=zh-TW</a></p></blockquote><p>午餐找了一家Google地图标记为一颗星的当地餐馆，为什么不去三颗星的呢，因为这个星级表示的是价格，我和同行的朋友去了一家后，看了菜单后就跑出来了😄。当地的水果酒Sangria非常不错，感觉可以多喝几杯。</p><p>下午的时候继续做HOLA BARCELONA，去兰布拉大道的终点，哥伦布纪念碑，海边。这里是欢快的海洋，有外国人少的原因，有裸体在沙滩冲澡的，有打排球的，还有坐下来喝汽水看景的游客。</p><p>自由、浪漫、热情且富有生命力是巴塞罗那的基调，在我的印象里，拉丁语系，南欧，南美，狼姐的Waka Waka，他们是一致的。</p><h2 id="Day3"><a href="#Day3" class="headerlink" title="Day3"></a>Day3</h2><p>第三天上午在巴塞罗那再逛逛，然后准备返回瑞典。巴塞罗那大教堂是我参观的第一家天主教堂，第一次体会到了世人对神明的敬畏，凡人对宗教的信仰。</p><p>在西班牙喝的星巴克是南瓜味儿的，后面去了欧洲其他国家，星巴克也有南瓜味儿的。</p><p>下午的时候坐欧洲的廉航去往哥本哈根，欧洲的廉航非常严格，在登机口处有一个模版来量携带包裹的大小，大了就要被罚，而且飞机上没有免费的水和咖啡～</p><p>从CPH到Malmö中间有一段火车，是穿海的，穿的海，是波罗的海。晚上到达Malmö时，非常冷，温度骤降，从南欧到北欧，很明显，两种世界。</p><h2 id="Day4"><a href="#Day4" class="headerlink" title="Day4"></a>Day4</h2><p>由于行程的时间安排非常紧张，早上很早起床，奔赴CPH，然后飞往挪威！</p><p>啊，挪威的森林～</p><p>挪威的空气跟屠格涅夫说的那样：像刚挤出的牛奶一样新鲜，不过是冰的</p><p>从飞机上往下看，全是森林，绿意盎然。落地后直接去的Central Station，跟大部分欧洲城市一样，奥斯陆也不大，游览的地方都是在中央车站附近，歌剧院，公共图书馆，蒙克美术馆，阿克斯胡斯城堡。</p><p>上午的时候参观了大概两个小时的蒙克美术馆，展品很多，要花很长时间，其中最有名的是《呐喊》，不过我觉得最有意思的楼上一位美国女画家的作品集。</p><p>中央广场有一座老虎雕像，你知道奥斯陆为什么被称为虎城吗？</p><p>我也未能免俗，去摸了摸老虎的屁股。</p><p>下午一路向西，去看了阿克斯胡斯城堡，经过了诺贝尔奖和平中心，唯一一个在瑞典之外颁奖的。它旁边就是国家博物馆，但很可惜，周末很早就关门了。然后在阿克尔码头坐了一会儿，感受到，哦，这里就是北欧了。</p><p>一群年轻人在市政大楼前拍摄tiktok</p><p>晚上到达了这次欧洲之行最满意的酒店，宽敞、整洁、有好吃的早餐，还有非常好喝的直饮水。</p><p>挪威的直饮水是我喝过最好喝的直饮水，没有之一，如果要排个名的话，挪威 &gt; 瑞典 &gt; 荷兰&amp;德国</p><p>北欧的水就是比西欧好喝，当然南欧的水不能直饮。</p><h2 id="Day5"><a href="#Day5" class="headerlink" title="Day5"></a>Day5</h2><p>荷兰</p><p>阿姆斯特丹的空气质量非常差，到处都弥漫着大麻的味道，还有抽电子烟的，不知道是不是悦刻。</p><p>参观了国立博物馆：</p><ul><li>荷兰国立博物馆太过震撼，从中世纪到文艺复兴，从大航海到近现代，应有尽有，就算走马观花也至少要1天时间</li><li>Navy Museum中冷兵器，看欧洲的剑估计会区分为saber或者sword，长度是我张开双臂1.8米左右，单人挥动应该比较难，早期的火器枪管较长，由于火药比较劣质，需要加长枪管来增加弹药射出去的能量；看欧洲的盔甲的高度大概在1.6米左右</li><li>画作有超大幅惠灵顿将军在滑铁卢击败拿破仑的那张；有80年荷兰从西班牙手中争取独立的战争</li><li>当然还有梵高的自画像</li><li>电影中的图书馆</li></ul><p>去逛了Fjallraven店，小北极狐非常可爱非常好看</p><p>下午去海牙 Den haag，它不是首都，但它是荷兰的政治中心，<a href="https://zh.wikipedia.org/wiki/%E8%8D%B7%E8%98%AD%E6%94%BF%E5%BA%9C">中央政府</a>、议会与外国<a href="https://zh.wikipedia.org/wiki/%E4%BD%BF%E9%A4%A8">使馆</a>皆坐落于此地，也是荷兰王室的居住地。此外，海牙也是许多国际组织的所在地，包括<a href="https://zh.wikipedia.org/wiki/%E5%9C%8B%E9%9A%9B%E6%B3%95%E9%99%A2">国际法院</a>和<a href="https://zh.wikipedia.org/wiki/%E5%9C%8B%E9%9A%9B%E5%88%91%E4%BA%8B%E6%B3%95%E9%99%A2">国际刑事法院</a>。(引自wiki)</p><h2 id="Day6"><a href="#Day6" class="headerlink" title="Day6"></a>Day6</h2><p>海牙</p><p>Mauritshuis 美术馆，其中最有名的就是《戴珍珠耳环的少女》，我觉得这幅画真的是太好看了，无论从哪种角度看，跟随App的讲解，这是画家扬·维米尔虚构出来的少女，不是真实存在的。依我看这个少女的神态是刚发现某人而回眸的样子，头巾，珍珠耳环，构图和色彩绝佳，禁不住买了两张明信片回去。</p><p>中午到下午去海边，刮起了暴风，有点像诡秘中班西港，顺便测试了一下冲锋衣的防水性，很好，但裤子全湿了，不过很多当地人都连帽子也不带的走在雨中，打伞不存在的。</p><p>下午在港口的小红书网红店吃了当地的海鲜Simonis，非常不错。</p><p>返回阿姆斯特丹的时候遭遇了欧洲火车的晚点，然后错过了梵高的参观时间。</p><p>晚上，当然要看一下欧洲红灯区的景象😁。</p><p>返回酒店的时候拍摄了一些不错的夜景，并买了一盒迷幻蘑菇。</p><h2 id="Day7"><a href="#Day7" class="headerlink" title="Day7"></a>Day7</h2><p>梵高博物馆&amp;鹿特丹</p><h2 id="Day8"><a href="#Day8" class="headerlink" title="Day8"></a>Day8</h2><p>Berlin&amp;CPH&amp;Malmö</p><h2 id="Day9"><a href="#Day9" class="headerlink" title="Day9"></a>Day9</h2><p>Berlin&amp;返航</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%97%85%E8%A1%8C/">旅行</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%97%85%E8%A1%8C/">旅行</category>
      
      
      <comments>https://deusyu.app/posts/1c388bb9/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>July 2023 Japan Solo Trip｜7月日本独自旅行</title>
      <link>https://deusyu.app/posts/7f48efc5/</link>
      <guid>https://deusyu.app/posts/7f48efc5/</guid>
      <pubDate>Fri, 22 Sep 2023 08:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="准备"><a href="#准备" class="headerlink" title="准备"></a>准备</h1><ol><li>签证</li><li>流量or移动Wi-Fi</li><li>机票&amp;酒店</li><li>相当数量的日元现金JPY</li></ol><h1 id="路线"><a href="#路线" class="headerlink" title="路线"></a>路线</h1><p>观光的时间：7.7-7.17</p><p>游览的地方：</p><ul><li>东京都地区 <em>Tokyo</em> - 3天</li><li>关西地区 <em>Kansai Region</em> - 7天<ul><li>大阪 <em>Osaka</em></li><li>京都 <em>Kyoto</em></li><li>奈良 <em>Nara</em></li><li>宇治 <em>uji</em></li><li>神户 <em>Kobe</em></li></ul></li></ul><p>关西之行，酒店定在大阪，每天在城市之间穿梭。</p><p>日本的交通非常发达，列车的班次也非常多，每天的运营时间也非常长，不需要安检，不需要提前买票，很多凭借西瓜卡 <em>Suica</em> 或者<em>ICOCA</em> 都可以直接刷上车，貌似在我回来时ICOCA已经在全日本推广了，更通用，还可以像香港八达通一样当成储值钱包，刷自动贩卖机、刷罗森、全家等等，这两个卡都可以在Apple 手机的钱包中开通。</p><p>长时间的穿梭游览可以购买日本铁路通票 <a href="https://www.jrpass.com/"><em>Japan Rail Pass</em></a>，发达国家的交通费很贵，提前做一下交通券的功课可以省下很多钱。</p><h2 id="建议的行程"><a href="#建议的行程" class="headerlink" title="建议的行程"></a>建议的行程</h2><h3 id="东京都地区"><a href="#东京都地区" class="headerlink" title="东京都地区"></a>东京都地区</h3><p>推荐住宿：东京都中心地带：新宿&#x2F;涩谷&#x2F;银座&#x2F;八丁堀</p><p>参考网站 <a href="https://trulytokyo.com/">https://trulytokyo.com/</a></p><p>现代东京&#x2F;西区：原宿站 &gt; 明治神宫 &gt; 表参道 &gt; 根津美术馆&amp;梦幻花园 &gt; 涩谷 &gt; 六本木 &gt; 森大厦（森美术馆&amp;52层观景台）&gt; 秋叶原</p><p>传统东京&#x2F;东区：浅草站 &gt; 浅草寺&amp;浅草神社 &gt; 上野 &gt; 晴空塔 &gt; 新宿 &gt; 秋叶原</p><p>皇宫地区：东京皇宫 &gt; 大久保地区 &gt; 东京都政府办公厅观景台 &gt; 具有争议性的神社</p><h3 id="大阪"><a href="#大阪" class="headerlink" title="大阪"></a>大阪</h3><p>推荐住宿：大阪站&#x2F;新站&#x2F;本町&#x2F;御堂筋心斋桥</p><p>大阪城 &gt; 天守阁 &gt; 梅田天空大厦 &gt; 新世界地区 &gt; 黑门市场 &gt; 道顿堀 &gt; 心斋桥 &gt; 飞田新地</p><h3 id="京都"><a href="#京都" class="headerlink" title="京都"></a>京都</h3><p>伏见稻荷 &gt; 清水寺 &gt; 二年坂&amp;三年坂 &gt; 衹园 &gt; 八坂神社</p><p>金阁寺 &gt; 龙安寺 &gt; 岚山(竹林の小径) &gt; 川端康城文学馆</p><h3 id="奈良"><a href="#奈良" class="headerlink" title="奈良"></a>奈良</h3><p>奈良公园 &gt; 若草山 &gt; 东大寺</p><h3 id="宇治"><a href="#宇治" class="headerlink" title="宇治"></a>宇治</h3><p>平等院 &gt; 平等院表参道 &gt; 宇治桥 &gt; 源氏物语博物馆</p><h3 id="城崎温泉镇"><a href="#城崎温泉镇" class="headerlink" title="城崎温泉镇"></a>城崎温泉镇</h3><p>7个汤</p><h3 id="姬路城"><a href="#姬路城" class="headerlink" title="姬路城"></a>姬路城</h3><p>世界文化遗产</p><h3 id="神户"><a href="#神户" class="headerlink" title="神户"></a>神户</h3><p>神户港</p><h2 id="Day-1"><a href="#Day-1" class="headerlink" title="Day 1"></a>Day 1</h2><p>&#x2F;&#x2F;TODO</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E6%97%85%E8%A1%8C/">旅行</category>
      
      
      <category domain="https://deusyu.app/tags/%E6%97%85%E8%A1%8C/">旅行</category>
      
      
      <comments>https://deusyu.app/posts/7f48efc5/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>锚·2023年中总结</title>
      <link>https://deusyu.app/posts/2daa21a0/</link>
      <guid>https://deusyu.app/posts/2daa21a0/</guid>
      <pubDate>Sun, 27 Aug 2023 15:07:05 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="锚·2023年中总结"><a href="#锚·2023年中总结" class="headerlink" title="锚·2023年中总结"></a>锚·2023年中总结</h1><h2 id="关于思考"><a href="#关于思考" class="headerlink" title="关于思考"></a>关于思考</h2><p>英雄来来往往，传奇永不湮灭</p><p>这个顿悟来自于我观察 LOL 职业联赛多年来的思考，对于职业程度很高的赛事，且在极为重要极为充满竞争力的比赛中，每一场都要当成最后一场来打，因为你无法保证五个人的状态都维持顶尖，也无法保证对手会不会更顶尖，更无法保证版本是不是跟自己风格契合，只有每一次都把握住机会才有希望夺冠。</p><p>“每一把都当最后一把打，然后别怕输”，不能因为害怕失败而放弃竞争，每一场都要亮出自己的宝剑。</p><h3 id="Better-Than-Revenge"><a href="#Better-Than-Revenge" class="headerlink" title="Better Than Revenge"></a>Better Than Revenge</h3><p>今年唯一的“收获”是遭遇了最近几年的最大失败，正如科比所说：Revenge is sweet. 复仇是甜蜜的，复仇是前进的巨大动力。“如果有人惹恼了你，仅仅去击败他，如果还不行，击碎他”</p><h3 id="人生不太需要别人的建议"><a href="#人生不太需要别人的建议" class="headerlink" title="人生不太需要别人的建议"></a>人生不太需要别人的建议</h3><p>LOL 职业选手 Deft 曾在直播中这样回答网友的问题：</p><p>“我今年 21 岁也想成为职业选手，段位是大师，我可以吗”</p><p>“Fighting”</p><p>“其实人生在世，是不太需要其他人的建议的，直到亲身经历是不会明白的”，不去试一试怎么会知道呢？</p><h2 id="见识、历史与现实的生活"><a href="#见识、历史与现实的生活" class="headerlink" title="见识、历史与现实的生活"></a>见识、历史与现实的生活</h2><h3 id="历史"><a href="#历史" class="headerlink" title="历史"></a>历史</h3><blockquote><p>读历史能带给我们什么呢？</p><p>历史最大的作用是让人开阔视野、理解世界并不总是像现在这样运行的，这样我们就可以学会切换视角，学会想象其他的可能性，就会有更开放的心态，对其他人抱有更多的「了解之同情」。</p></blockquote><p>不懂历史的人，理解不了现在，也把握不了未来。</p><p>在Tech &amp;&amp; Internet 行业要了解科技史，了解全球科技的变迁，本科时候通过阅读吴军的《浪潮之巅》了解近现代以来的矽谷科技史，科技进步日新月异，虚拟现实，人工智能，自动驾驶，基因编辑，大数据医疗，区块链和虚拟货币等等在国内都有炒概念的成分，想要弄清楚这些技术的发展点在哪里，那么了解这些技术的来龙去脉变得很关键。</p><p>最近看了吴军的另一本《全球科技通史》，该书还是从科技的本质谈起，除了经典的“能量与信息”这两个关键点，还在前言论述了三件事。</p><p><em>以下是摘抄自《全球科技通史》的前言：</em></p><hr><p>首先，科技在大宇宙时空中的地位和作用，即它在经济和社会生活中的角色，以及它在历史上对文明进程的推动作用。前者是从空间维度上看，后者是从时间维度上看。</p><p>从空间维度上看，科技在文明过程中的作用是独一无二的，是一种进步的力量，这是毋庸置疑的。工业革命堪称人类历史上最伟大的事件。在工业革命之前，无论是东方还是西方，人均GDP都没有本质的变化。但工业革命发生后，人均GDP就突飞猛进，在欧洲，200年间增加了50倍；而在中国，短短40年就增加了10多倍。因此，古今中外任何王侯将相的功绩和工业革命相比都不值一提（对科技有贡献的人物要比帝王将相高的多）。而工业革命的发生，就是科学推动技术，再转化为生产力的结果。这是科技在经济和社会生活中的重要体现。</p><p>从时间维度上看，科技几乎是世界上唯一能够获得叠加性进步的力量，因此，它的发展是不断加速的。世界文明的成就体现在很多方面，从政治、法律到文学、艺术、音乐等，都有体现。虽然总体上讲，文明是不断进步的，但是在很多方面，过去的成就并不能给未来带来叠加性的进步。比如在艺术方面，历史上有很多高峰，后面的未必能超越前面的。今天没有人敢说自己作曲超越贝多芬或者莫扎特，写诗超越李白或者莎士比亚，绘画超越米开朗基罗（Michelangelo di Lodovico Buonarroti Simoni，1475—1564），甚至世界上很多采用民主政治的国家，在政体上依然没有超越古希腊。但是，今天任何一个三甲医院的主治医生都敢说他的医术超过了50年前世界上最好的名医。因为医学的进步是积累的，现在的医生不仅学到了50年前名医的医术精髓，而且掌握了过去名医未知的治疗手段。今天，一个大学生学会微积分中的牛顿–莱布尼茨公式只需要两个小时，但是当初牛顿与莱布尼茨（Gottfried Wilhelm Leibniz，1646—1716）花了10多年时间才确立了该定理。由于科技具有叠加式进步的特点，我们对它的未来更加有把握。</p><p>其次，世界达到今天这样的文明程度并非巧合，而是有着很多的历史必然性。19世纪出现大量和机械、电力相关的技术，20世纪出现大量和信息相关的技术，接下来会出现很多和生物相关的技术，这些都是有内在逻辑性的。当我们全面了解了科技在人类文明发展的进程中是怎样一环扣一环地发展的，我们就能够把握科技发展的内在逻辑，做到自觉地、有效地发展科技。</p><p>今天大部分人谈到历史的时候，主要关注的是国家的兴衰、王朝的更替。**大家了解的历史人物，大多是王侯将相，了解的历史事件，大多是英雄故事。其实，把这些人物和故事放在一个较长的历史跨度下考察，其重要性比科技进步要小得多。**因此，在完成四卷本《文明之光》的写作之后，我酝酿了很长时间，决定写一本科技通史。<br>当然，我研究科技史还有一个很现实，甚至有些功利的原因，就是在今天这个发明数量过多的时代，我想知道什么技术真正对未来世界的发展有帮助，以便我能及早地投资那些技术。了解科技的发展历史，就能知道我们今天所处的位置，然后看清我们将要去的方向。</p><hr><p>吴军博士在前言中基本就讲清楚了全球科技史应该主要抓的几个脉络，简单清晰而又具有普适性，想要探究细节还需自己去读，其中有相当部分内容是中学时代就已经了解的内容，但囿于”教学大纲“或者”高考考纲“没有扩展和深入了解的部分，读来令人感觉喜欢，毕竟喜欢等于熟悉+意外。</p><p>历史总在重演，科技永远向前。</p><h3 id="系统化与反系统化"><a href="#系统化与反系统化" class="headerlink" title="系统化与反系统化"></a>系统化与反系统化</h3><p>三年以来，通过“官方报道”、身边的“现实”与大众的反应，我反思了媒体与现实生活的交互反应。</p><p>很早以前有这样一张图，讲述了数据、信息、知识、阴谋论（Data,Information,Knowledge And Conspiracy Theories）之间的联系：</p><p><img src="https://r2.deusyu.app/202410301521047.png" alt="Data,Information,Knowledge"></p><p>数据即所有自然产生的东西，信息是加了标注的数据，知识是建立了连接的信息，阴谋论是策划者为达成目的效果而连接的信息。</p><p>以最坏的恶意揣度，所有故事化模式的媒体都是第三种，我们平时所接受的媒体都是“某些利益群体”为了达成他想要的效果而做的，如果说这样很难以接受，不妨从文字记录的主观性来讨论，最简单的例子：</p><p>《礼记》 中</p><blockquote><p>“天子死曰“崩”，诸侯曰“薨”，大夫曰“卒”，士曰“不禄”，庶人曰“死”</p></blockquote><p>天子死称为“崩”，诸侯死称为“薨”，大夫死称为“卒”，士死称为“不禄”，庶人死就称为“死”，这是语言和文字主观性的一个小例子，实际上此类充满了生活中的方方面面，通过文字和表述来强化等级制度的共同记忆。“群体认同这个价值观，群体塑造个体，个体通过集体潜意识作用于群体，于是整个文化就形成了。</p><p>回到主题，文字记录或价值的主观性，由于发声者的性格、知识素养、立场等等，自然就产生了具有强烈自身精神意志的说法或记录。“媒介即信息”，如今短视频兴起，形象具体和创造出的情景很容易让人信服，这样误导性的东西非常容易深入，独立思考是非常难的，思维的训练非常重要。</p><blockquote><p>The medium is the message. @马歇尔·麦克卢汉</p></blockquote><p>媒介的形式非常重要，甚至比内容更重要，有的媒介形式会促进思考，有的媒介会抑制思考。</p><p>其实我们的天然认知模式是故事化的，看一件事需要摆清楚前因后果，总会不自觉的将杂乱的信息标注，整理，连接，或形成知识，或形成阴谋论，使自己的认知世界朝着熵减的方向发展，来获得短暂的确定性，纵使这些往往是错的。而反人性的事情往往是最难的，但是一旦掌握了这种思维方式，就能少受一点他人的欺骗。</p><blockquote><p>我们读历史，之所以会追求系统化，本质上是出于大脑的节能天性，要用最小的能耗掌握最多的数据，但我先前讲过，如果我们愿意怀着认真的态度，那么就有必要同时做系统化和反系统化的操作，后者的意义就在于破除由系统化思维带来的认知误区，把串项链的那根绳子剪断，让历史事件回归碎片化的状态，重新理解一下，或者换不同的几种绳子再串一下，这也有助于增加思维活力，破除成见。@熊逸</p></blockquote><p>丹尼尔·丹内特的《直觉泵和其他思考工具》中讲述了这些思想实验，过去一年，我正在看并且实践里面的脚手架。</p><h2 id="变化"><a href="#变化" class="headerlink" title="变化"></a>变化</h2><h2 id="我的年度计划与总结"><a href="#我的年度计划与总结" class="headerlink" title="我的年度计划与总结"></a>我的年度计划与总结</h2><p>每经历一个新年总会对未来的自己有些期待，从2021年开始，我开始写年度计划和年终总结，对于2022年来说，年初的目标我是完成了80%，既有收获又有遗憾（既要、又要，还要 XD…）<img src="https://r2.deusyu.app/202410301537487.png" alt="年度计划"></p><p>最大的收获，是思维上的转变。我始终认为，好的做事和做完事情的收益在于两方面，内核和用户界面，Kernel 和 User Interface，内核是内在的精神力量，用户界面是连接他人时的处事方式。</p><p>既然是2023年中，今年8月份，我已经完成了2023年度计划的一部分，比如毕业论文完成&amp;顺利毕业 ，取得了硕士学位；多认识几个新朋友；当然最好的是独自一人开始了毕业旅行，并且去日本玩了一圈“July 2023 Japan Solo Trip”，一路上边玩边走，认识了不少新朋友，准备写一篇blog记录下见闻，今年还准备去欧洲转转。</p><p>当兴致盎然，准备全部精力大步前进时，发现过去做的事情已经很值得感恩了，以一个非常快的速度完成毕业论文后修修补补，然后签证通过提起背包说走就走，通过朋友的帮助一边旅行一边制定明天的计划，整体来说，都是积极且顺利的。</p><blockquote><p>尝试一段异国的solo trip，它至少增加25点自信力。</p></blockquote><p>仿照kk的 “Being enthusiastic is worth 25 IQ points.”我写下这段话。</p><h2 id="率性而为｜Follow-Your-Heart"><a href="#率性而为｜Follow-Your-Heart" class="headerlink" title="率性而为｜Follow Your Heart"></a>率性而为｜Follow Your Heart</h2><p>一直以来，从未剖析过自己对待事物的态度，中学和大学时候涉猎较广，中学又遇到过很多牛人，故跟火腿肠（HTC）的理念”Quietly Brilliant” 不谋而合，“谦和之中见卓越”，对待事物的看法都是后天的超我压制先天的本我，着重于克制与斯多葛，越多的积累是自闭、社恐和懦弱。去年经历过一阵事情后，情绪的压力终于在和一次HR的沟通中爆发，某国际知名大厂的HR谴责我没有及时接受offer，呵斥我，言语凌厉，措辞不留余地，Watch上记录的心跳持续了10分钟的120次&#x2F;分钟，当时我害怕极了。</p><p><img src="https://r2.deusyu.app/202410301538334.png" alt="心率"></p><p>后面回想起来，我完全可以挂掉电话或者反击他，拒绝是我的权利。这件事也使我反思了一以贯之的行事方式，是时候做出一些改变了。</p><blockquote><p>生理的力量，来自于撸铁时不断增加重量，肌肉纤维被破坏，休息时再重新生长，变得更强壮； 情绪的力量，来自不断直面更大的情绪上的压力，然后再恢复，更坚强。@硅谷王川</p><p>Physical strength comes from a muscle being broken down 1000x and growing back a little stronger each time.</p><p>Emotional strength comes from someone’s spirit being broken down a 1000x and growing back a little stronger each time.</p><p>The first happens naturally.</p><p>The second, by choice. @Alex Hormozi</p></blockquote><p>人生Online的生命值是血条，精神力量是蓝条，强大的精神力量是内核，长期锻炼的身体是承载精神力量的容器。于是我决定矫枉过正，从懦弱稍显自闭的性格转向勇敢外向，开始疯狂挑战一下自己的极限。</p><p>为什么要<code>矫枉过正</code>? 其实现实中的大多数事物都是过犹不及的状态，但是为了快速转变，必须来一记猛药，不然坚持一段时间，其实发现改变并不大，所以先矫枉过正，然后根据效果回调。</p><p>差不多一个多月的时间，自评效果显著，但也陷入了疯狂的边缘，很有赛博疯子的味道，孔子说：不得中行而与之，必也狂狷乎！狂者进取，狷者有所不为也。即狂也狷也是一种真性情，以前，我不敢跟别人说，我交朋友是看是否对脾气，现在我大胆说，只因我们性格相合。</p><p>另外，去年放开以来，感染covid-2019的朋友很多，症状各有不同，轻重因人而异，对此只能祈祷，但是在方法论的层面，想描述一下我的观点。理性主义和机械主义自笛卡尔以来贯穿生活的方方面面，笛卡尔把人的身体和心理一分为二，心理系统负责思考，身体系统负责行动，身体接受心理的命令。最近30年新的研究成果颠覆了这一认知方法，神经科学家达马西奥1994年出版了一本书《笛卡尔的错误》，书中提到：“人的心理和身体是密不可分的“，躯体和脑构成了身体，而身体的物质结构通过种种生物化学反应产生心理活动，心理活动又影响了身体。用最简单的话来说，就是可能并不存在着心理系统和身体系统这样两套体系的区分。这种区分是笛卡尔硬拆开的，其实我们是一个完整的有机体，在这个有机体里，情绪是一个最重要的内容。</p><p>此结论是在描述身体和心灵是不可分割的完全体，和《万神殿》中的UI（Uploaded Intelligence） 以及赛博朋克中的义体植入是相悖的，不过细想的话，其实也不相悖，因为无论是《边缘跑手》中的义体植入又或是万神殿中的上载智能都会有排斥反应，不属于自己“原厂”的心灵和躯体都会排斥，而存在于硅基躯体中的碳基智能往往会迷失自我。</p><p>言回正轨，心理上的情绪往往影响身体，身体的运行状态又反作用于情绪，我们染病时往往会觉得世界要毁灭了，因为悲观情绪会蔓延、放大，甚至会吞噬了自我，让身心都消沉一段时间。其实如果采取有效的措施，不放大症状的严重性，亦不高估自身免疫系统的能力，做到过犹不及，事情远比让悲观放大来好得多。</p><p>我们在数据和科学知识上敏感，在接受信息和反应无关紧要事情上钝感，如渡边淳一所说，不如充满些钝感力，从容面对生活中的挫折伤痛。不要小瞧了大自然赋予人类的能力，人是非常具有生命力的，相信自己的免疫系统，相信自己可以扛住并横扫一切病毒，只需要充满着昂扬积极的情绪，况且此疾是自限性疾病。孟轲云：吾善养吾浩然之气。</p><p>有时候命和运需要敬畏，该来的总会来，相反因为这几年的“疫情”，错失了人生中其他应该更为关注的事情，才是最可惜的地方。</p><p>仅仅选择过一种“彪悍的人生”，至少思维层面是。</p><p>囿于我零零散散写这篇总结，截止到2023年3月份，我已经感染了甲流，再加上前些日子和人有了羁绊，而正值羁绊断开，身心状态极差，我重新认识人机能的脆弱，也对“浩然之气”有了不同的看法。坦诚地说，甲型H1NX系病毒差点击穿了我，对他人要抱有理解之同情啊。</p><h2 id="一些巫言巫语"><a href="#一些巫言巫语" class="headerlink" title="一些巫言巫语"></a>一些巫言巫语</h2><blockquote><p><strong>高等教育的价值在于【训练思维】，而不在于传授事实。</strong>@爱因斯坦</p><p>The value of a college education is not the learning of many facts but the training of the mind to think.</p></blockquote><blockquote><p>告白是小孩子做的，成年人请直接用勾引，勾引的第一步，抛弃人性，基本上来说是三种套路，变成猫，变成老虎，变成被雨淋湿的狗狗。</p></blockquote><p><img src="https://r2.deusyu.app/202410301544616.png" alt="不要告白"></p><blockquote><p>纵观历史，我们会发现一种常态，那就是，无论皇帝身边的亲信还是远在边陲的基层小吏，大家总会有无事生非的冲动，因为只有多折腾，才能多搞项目，只有多搞项目，才有机会中饱私囊，所以休养生息之类的政策往往很难开展，开展之后也很难坚持多久。@熊逸</p></blockquote><p>大公司做项目与古代中国一脉相承。</p><blockquote><p>所有财物的自然状态都是需要维修和保养的。你所拥有的最终都将拥有你。要精心选择。@凯文·凯利</p></blockquote><blockquote><p>项目就是为创建某一独特产品、服务或成果而临时进行的一次性努力。项目必须有三个特点：临时、独特和渐进明细@万维钢</p></blockquote><p>求职应聘，与其说自己有什么学历什么证书多少年开发经验，不如说自己曾经在哪个大项目中发挥过关键作用。</p><blockquote><p>永远要有一个deadline。deadline能够排除不相关的东西。避免追求完美，你必须追求与众不同，与众不同比完美更好。@凯文凯利</p></blockquote><blockquote><p>感恩能带来其他的美德，感恩是一件你可以练习的事情。@凯文凯利</p></blockquote><blockquote><p>一个假期+一场灾难&#x3D;一次冒险。</p></blockquote><blockquote><p>柏拉图对法律有一个经典的二分法：法律有两类，一是给奴隶的法律，不需要解释；二是给公民的法律，在禁令之外必须配有不厌其烦的说明解释，不然公民就要问这样三个字，“凭什么”。</p></blockquote><h2 id="结束语"><a href="#结束语" class="headerlink" title="结束语"></a>结束语</h2><p>马克·吐温说：I didn’t have time to write a short letter, so I wrote a long one instead. 我没有时间写一封短信，只好写封长信了，在这碎片化的时代，写长文有助于结构化思考，虽然我这个也是“拼卡片”所得，但至少是拼出长文了。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%94%9F%E6%B4%BB/">生活</category>
      
      
      <category domain="https://deusyu.app/tags/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <comments>https://deusyu.app/posts/2daa21a0/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>六种编程范式：改变你对编程的思考方式</title>
      <link>https://deusyu.app/posts/3ac78cf/</link>
      <guid>https://deusyu.app/posts/3ac78cf/</guid>
      <pubDate>Wed, 12 Apr 2023 16:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="六种编程范式：改变你对编程的思考方式"><a href="#六种编程范式：改变你对编程的思考方式" class="headerlink" title="六种编程范式：改变你对编程的思考方式"></a><a href="https://www.ybrikman.com/writing/2014/04/09/six-programming-paradigms-that-will/">六种编程范式：改变你对编程的思考方式</a></h1><blockquote><p>以下翻译内容均借助了GPT3.5&#x2F;4，在与它的对话式学习中，我的翻译提升许多，能够达到信达雅的水平？</p></blockquote><p>时不时的，我偶然找到一些编程语言，它们是如此不同，以至于改变了我对编程的思考方式。在这篇文章中，我想分享一些我最爱的发现。<br>这不是你爷爷奶奶那个时代的“函数式编程将改变世界”的博客文章，这个列表的内容更加玄妙，我敢打赌，绝大多数的读者没有见过下面介绍大部分的语言和范式，因此，我希望你能像我对这些新概念感到兴趣。<br>注：我仅有以下编程语言很少的经验，但我发现它们背后的思想很迷人，我并没有在这些领域很专精。所以请对任何错误做出指正，并且，如果你发现了任何文中没有的新的编程范式和思想，请分享给我。</p><h2 id="默认并发｜Concurrent-by-default"><a href="#默认并发｜Concurrent-by-default" class="headerlink" title="默认并发｜Concurrent by default"></a>默认并发｜Concurrent by default</h2><p>示例语言：<a href="https://code.google.com/p/anic/">ANI</a>, <a href="http://www.cs.cmu.edu/~aldrich/plaid/">Plaid</a><br>让我们用一个真正的思想碰撞来开始：有些编程语言天生支持并发，也就是说，每一行代码是同时执行的。<br>举个例子，你写了三行代码，A, B, C</p><pre><code>A;B;C;</code></pre><p>在大多数语言中，A先执行，然后是B，最后是C。然而，在ANI中，A, B, C 可以同时执行！<br>在ANI中代码行之间的控制流和顺序主要取决于它们之间的显式依赖之间关系。举个例子，如果B中有对A中定义变量的引用，那么A和C会同时执行，而B则在A执行完成后执行。<br>让我们观察ANI中的一个例子，正如<a href="https://code.google.com/p/anic/wiki/Tutorial">教程</a>中所描述的，ANI程序由管道和闩锁组成，它们用于操控流和数据传输。这个不寻常的句法难以理解，虽然这个语言似乎已经消亡，但是这些概念非常有趣。<br>这里是ANI“Hello World”的例子：</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">&quot;Hello, World!&quot; -&gt;std.out</span><br></pre></td></tr></table></figure><p>在ANI的术语中，我们发送字符串对象<code>&quot;Hello, World!&quot;</code> 到<code>std.out</code> 流，如果我们发送另外一个字符串对象到<code>std.out</code> 将会发生什么？</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">&quot;Hello, World!&quot; -&gt;std.out</span><br><span class="line">&quot;Goodbye, World!&quot; -&gt;std.out</span><br></pre></td></tr></table></figure><p>这两行代码并行执行，所以它们可以以任何顺序输出在控制台。现在，看看我们在一行中引入一个变量并在之后引用它会发生什么？</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">s = [string\];</span><br><span class="line">&quot;Hello, World!&quot; -&gt;s;</span><br><span class="line">\s -&gt;std.out;</span><br></pre></td></tr></table></figure><p>第一行声明了一个闩锁“latch”（latch有点像变量）命名为<code>s</code><br>其中由字符串组成；第二行将文本<code>&quot;Hello, World!&quot;</code> 发送到<code>s</code>；第三行解锁<code>s</code>并将其内容发送到<code>std.out</code>标准输出流。这里你可以看到ANI隐式的程序流程：由于每一行都依赖上一行，这段代码将会按照编写的顺序执行。<br><a href="http://www.cs.cmu.edu/~aldrich/plaid/">Plaid</a> 语言也宣称支持默认并发，但它使用了权限模型，如这篇<a href="http://www.cs.cmu.edu/~aldrich/papers/onward2009-concurrency.pdf">论文</a>所述，设置控制流。Plaid 也探索了其他有意思的概念，比如面向类型编程（<a href="http://www.cs.cmu.edu/~aldrich/papers/onward2009-state.pdf">Typestate-Oriented Programming</a>），这里状态变化成为这个语言的一等公民：定义一个对象不是作为一个类，而是作为可被编译器检查的一系列的状态和转换。正如Rich Hickey的《<a href="http://www.infoq.com/presentations/Are-We-There-Yet-Rich-Hickey">Are we there yet</a>》所讨论的那样，这似乎是将时间作为一流语言结构公开的有趣做法。<br>多核处理器日益增长但并发编程在大多数语言中依旧是比较困难。ANI和Plaid提供了一个新颖的解决这个问题的思路并能够带来惊人的性能提升；问题则是默认并行是否使并发更难或者更容易去管理。<br>更新：上面的描述抓住了ANI和Plaid的基本本质，我交替使用“并行”和“并发”这两个术语，尽管它们具有不同的含义。从_<a href="https://vimeo.com/49718712">Concurrency Is Not Parallelism</a> 看更多关于这两者的讨论。<br>译者注：本文写于2014年，具有时效性，后发的Go和Rust在并发编程领域取得了不错的进展。</p><h2 id="依赖类型｜Dependent-types"><a href="#依赖类型｜Dependent-types" class="headerlink" title="依赖类型｜Dependent types"></a>依赖类型｜Dependent types</h2><p>示例语言：<a href="http://www.idris-lang.org/">Idris</a>, <a href="http://wiki.portal.chalmers.se/agda/pmwiki.php">Agda</a>, <a href="https://en.wikipedia.org/wiki/Coq">Coq</a><br>你可能使用过像C和Java有类型系统的语言，这些编译器可以检查变量类型：整型, 列表, 或者字符串。如果，你的编译器可以检查像，一个正整数，一个长度为2的list或者一个回文字符串呢？<br>这个语言背后的理念是支持依赖类型：你可以指定在编译时检查变量值的类型。Scala的 <a href="https://github.com/milessabin/shapeless">shapeless library</a> 库为Scala添加了部分实验性的支持（阅读：可能还不是准备好的黄金阶段），并提供了一些查看示例的方法。<br>以下是如何使用shapeless库声明一个包含1, 2, 3 三个值的向量</p><figure class="highlight scala"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">val</span> l1 = <span class="number">1</span> :#: <span class="number">2</span> :#: <span class="number">3</span> :#: <span class="type">VNil</span></span><br></pre></td></tr></table></figure><p>这里创建了一个变量<code>l1</code> ，类型签名不仅指定了是<code>Ints</code> 的<code>Vector</code> ，还指明了<code>Vector</code> 的长度是3。编译器可以使用这些信息来抓捕错误。让我们来使用<code>Vector</code>中的<code>vAdd</code> 方法来对两个<code>Vectors</code>的元素逐一加和：</p><figure class="highlight scala"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">val</span> l1 = <span class="number">1</span> :#: <span class="number">2</span> :#: <span class="number">3</span> :#: <span class="type">VNil</span></span><br><span class="line"><span class="keyword">val</span> l2 = <span class="number">1</span> :#: <span class="number">2</span> :#: <span class="number">3</span> :#: <span class="type">VNil</span></span><br><span class="line"> </span><br><span class="line"><span class="keyword">val</span> l3 = l1 vAdd l2</span><br><span class="line"> </span><br><span class="line"><span class="comment">// Result: l3 = 2 :#: 4 :#: 6 :#: VNil</span></span><br></pre></td></tr></table></figure><p>以上的例子运行正常，因为类型系统知道<code>Vectors</code> 的长度是3，但是，如果我们尝试使用<code>vAdd</code> 加两个不同长度的<code>Vectors</code> ，我们将在编译时得到一个错误而不是在运行时。</p><figure class="highlight scala"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">val</span> l1 = <span class="number">1</span> :#: <span class="number">2</span> :#: <span class="number">3</span> :#: <span class="type">VNil</span></span><br><span class="line"><span class="keyword">val</span> l2 = <span class="number">1</span> :#: <span class="number">2</span> :#: <span class="type">VNil</span></span><br><span class="line"> </span><br><span class="line"><span class="keyword">val</span> l3 = l1 vAdd l2</span><br><span class="line"> </span><br><span class="line"><span class="comment">// Result: a *compile* error because you can&#x27;t pairwise add vectors </span></span><br><span class="line"><span class="comment">// of different lengths!</span></span><br></pre></td></tr></table></figure><p>Shapeless是一个神奇的库，但据我所知，它仍然还有一点粗糙，仅仅支持依赖类型的一些子集，并且导致相当冗长的代码和类型签名。另一方面，<a href="http://www.idris-lang.org/">Idris</a>，将依赖类型作为一等公民的语言，它的依赖类型系统似乎非常强大和简洁。作为比较的例子，可以参考谈话<a href="http://www.infoq.com/presentations/scala-idris">Scala vs Idris: Dependent Types, Now and in the Future</a>。<br><a href="https://en.wikipedia.org/wiki/Formal_verification">形式验证方法</a>已经存在很长时间了，但通常太麻烦而无法用于通用编程。依赖类型语言像Idris，甚至未来的Scala，可能会提供轻量并且更加实用的替代方案，显著地提高类型系统捕获错误的能力。当然，由于停机问题的非内在机制，没有类型系统语言可以捕获所有的错误，但类型仍然可能成为静态类型系统的下一个飞跃。</p><h2 id="串联式语言｜Concatenative-languages"><a href="#串联式语言｜Concatenative-languages" class="headerlink" title="串联式语言｜Concatenative languages"></a>串联式语言｜Concatenative languages</h2><p>示例语言：<a href="http://www.forth.com/forth/">Forth</a>, <a href="http://www.cat-language.com/">cat</a>, <a href="http://c2.com/cgi/wiki?JoyLanguage">joy</a><br>有没有想过没有变量和函数应用的编程会是什么样子？<br>没有，至少我没有，不过显然地一些人想过，并且它们想出了<a href="https://en.wikipedia.org/wiki/Concatenative_programming_language">串联式编程</a>。这个理念在此语言中任何函数都是向一个栈中压入数据或者弹出数据；程序几乎是通过函数组合构建的。（<a href="http://concatenative.org/wiki/view/Concatenative%20language/Concatenation%20is%20composition">concatenation is composition</a>）<br>这听起来非常抽象，让我们来看在<a href="http://www.cat-language.com/">cat</a>中一个简单的例子：</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">2 3 +</span><br></pre></td></tr></table></figure><p>这里，我们压入两个数字在栈上，然后调用<code>+</code> 函数，它将两个数字都弹出栈，并弹出这两个数字的加法结果。输出结果是5。这里有一个稍微有趣的例子。</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">def foo &#123;</span><br><span class="line">  10 &lt;</span><br><span class="line">  [ 0 ]</span><br><span class="line">  [ 42 ]</span><br><span class="line">  if</span><br><span class="line">&#125;</span><br><span class="line"> </span><br><span class="line">20</span><br><span class="line">foo</span><br></pre></td></tr></table></figure><p>让我们一行一行的过一遍：</p><ol><li>首先，我们声明了一个函数<code>foo</code>。请注意，cat中的函数不能指定输入参数，所有参数都是从堆栈中隐式读取的。</li><li><code>foo</code> 调用<code>&lt;</code> 函数，弹出栈中的第一项，将其与10相比较，然后将<code>True</code> 或 <code>False</code> 压回栈中。</li><li>接下来，我们将数字0和42压入栈中：我们将其包裹在括号中以确保它们在未评估的情况下压入栈。这是因为它们将被分别用作调用下一行<code>if</code> 函数的 “then” 和 “else”的分支。</li><li><code>if</code> 函数从栈中弹出3个项目：布尔条件，then 分支，else 分支；依赖于布尔条件的值，它将弹出栈中“then” or “else”分支的一个结果。</li><li>最后，我们将20压入栈中并且调用<code>foo</code> 函数。</li><li>当所说的结束，我们得到数字42作为结果。</li></ol><p>有关更多详细的介绍，请查看<a href="http://www.codecommit.com/blog/cat/the-joy-of-concatenative-languages-part-1">The Joy of Concatenative Languages</a>.<br>这种风格的语言有一些有趣的特性：程序可以有无数种拆分和拼接的方法去创造新的程序。极其精简的语法（甚至比LISP还要精简）导致非常简洁的程序；强大的元语言支持。我觉得串联式语言是一个令人大开眼睛的思想实验，但是我不相信它的实用性。它似乎需要你记住或者想象当前栈的状态，而无法通过代码中的变量名来读取，这将使对代码的理解更加困难。</p><h2 id="声明式编程｜Declarative-programming"><a href="#声明式编程｜Declarative-programming" class="headerlink" title="声明式编程｜Declarative programming"></a>声明式编程｜Declarative programming</h2><p>示例语言：<a href="https://en.wikipedia.org/wiki/Prolog">Prolog</a>, <a href="https://en.wikipedia.org/wiki/SQL">SQL</a><br>声明式编程已经有很多年的历史了，但是大多数开发者依旧没有意识到它是一种概念，其要点是：在大多数主流编程语言中，你需要描述如何去解决一个特定的问题，而在声明式编程语言中，你只需描述你想要的结果，语言本身会确定如何实现它。<br>例如，如果你要用C从头开始编写一个排序算法，你可能会编写归并排序的步骤，如何去对半切分数据集，然后按照顺序合并它们，<a href="http://www.cs.cityu.edu.hk/~lwang/ccs4335/mergesort.c">这里有一个例子</a><br>如果你使用像Prolog这样的声明式编程语言对数字进行排序，你会想要描述你想要的输出：我想要与这些值相同的列表，但是每一个索引为<code>i</code>的数应该小于或等于索引为<code>i + 1</code>的数，将前面的C代码与这段Prolog代码进行比较：</p><figure class="highlight prolog"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br></pre></td><td class="code"><pre><span class="line">sort_list(<span class="symbol">Input</span>, <span class="symbol">Output</span>) :-</span><br><span class="line">  permutation(<span class="symbol">Input</span>, <span class="symbol">Output</span>),</span><br><span class="line">  check_order(<span class="symbol">Output</span>).</span><br><span class="line">  </span><br><span class="line">check_order([]).</span><br><span class="line">check_order([<span class="symbol">Head</span>]).</span><br><span class="line">check_order([<span class="symbol">First</span>, <span class="symbol">Second</span> | <span class="symbol">Tail</span>]) :-</span><br><span class="line">  <span class="symbol">First</span> =&lt; <span class="symbol">Second</span>,</span><br><span class="line">  check_order([<span class="symbol">Second</span> | <span class="symbol">Tail</span>]).</span><br></pre></td></tr></table></figure><p>如果你使用过SQL，你可能已经使用了一种声明式编程方式只是可能没有意识到：当你写出<code>select X from Y where Z</code> 这样的查询语句时，你正在描述你想要返回的数据集；真正弄清楚如何执行这个查询的是数据库引擎。你可以在大多数数据库中使用explain语句来查看执行计划并弄清楚幕后发生的事情。<br>声明式语言的优点在于它们允许你在更高抽象级别上工作：你的工作仅仅是去描述你想要结果的格式。例如，一个简单的ProLog数独求解器，只需列出了解决方案中的每一行、每一列和对角线的内容</p><figure class="highlight prolog"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br></pre></td><td class="code"><pre><span class="line">sudoku(<span class="symbol">Puzzle</span>, <span class="symbol">Solution</span>) :-</span><br><span class="line">  <span class="symbol">Solution</span> = <span class="symbol">Puzzle</span>,</span><br><span class="line">  </span><br><span class="line">  <span class="symbol">Puzzle</span> = [<span class="symbol">S11</span>, <span class="symbol">S12</span>, <span class="symbol">S13</span>, <span class="symbol">S14</span>,</span><br><span class="line">            <span class="symbol">S21</span>, <span class="symbol">S22</span>, <span class="symbol">S23</span>, <span class="symbol">S24</span>,</span><br><span class="line">            <span class="symbol">S31</span>, <span class="symbol">S32</span>, <span class="symbol">S33</span>, <span class="symbol">S34</span>,</span><br><span class="line">            <span class="symbol">S41</span>, <span class="symbol">S42</span>, <span class="symbol">S43</span>, <span class="symbol">S44</span>],</span><br><span class="line">  </span><br><span class="line">  fd_domain(<span class="symbol">Solution</span>, <span class="number">1</span>, <span class="number">4</span>),</span><br><span class="line">  </span><br><span class="line">  <span class="symbol">Row1</span> = [<span class="symbol">S11</span>, <span class="symbol">S12</span>, <span class="symbol">S13</span>, <span class="symbol">S14</span>],</span><br><span class="line">  <span class="symbol">Row2</span> = [<span class="symbol">S21</span>, <span class="symbol">S22</span>, <span class="symbol">S23</span>, <span class="symbol">S24</span>],</span><br><span class="line">  <span class="symbol">Row3</span> = [<span class="symbol">S31</span>, <span class="symbol">S32</span>, <span class="symbol">S33</span>, <span class="symbol">S34</span>],</span><br><span class="line">  <span class="symbol">Row4</span> = [<span class="symbol">S41</span>, <span class="symbol">S42</span>, <span class="symbol">S43</span>, <span class="symbol">S44</span>],      </span><br><span class="line">  </span><br><span class="line">  <span class="symbol">Col1</span> = [<span class="symbol">S11</span>, <span class="symbol">S21</span>, <span class="symbol">S31</span>, <span class="symbol">S41</span>],</span><br><span class="line">  <span class="symbol">Col2</span> = [<span class="symbol">S12</span>, <span class="symbol">S22</span>, <span class="symbol">S32</span>, <span class="symbol">S42</span>],</span><br><span class="line">  <span class="symbol">Col3</span> = [<span class="symbol">S13</span>, <span class="symbol">S23</span>, <span class="symbol">S33</span>, <span class="symbol">S43</span>],</span><br><span class="line">  <span class="symbol">Col4</span> = [<span class="symbol">S14</span>, <span class="symbol">S24</span>, <span class="symbol">S34</span>, <span class="symbol">S44</span>],      </span><br><span class="line">  </span><br><span class="line">  <span class="symbol">Square1</span> = [<span class="symbol">S11</span>, <span class="symbol">S12</span>, <span class="symbol">S21</span>, <span class="symbol">S22</span>],</span><br><span class="line">  <span class="symbol">Square2</span> = [<span class="symbol">S13</span>, <span class="symbol">S14</span>, <span class="symbol">S23</span>, <span class="symbol">S24</span>],</span><br><span class="line">  <span class="symbol">Square3</span> = [<span class="symbol">S31</span>, <span class="symbol">S32</span>, <span class="symbol">S41</span>, <span class="symbol">S42</span>],</span><br><span class="line">  <span class="symbol">Square4</span> = [<span class="symbol">S33</span>, <span class="symbol">S34</span>, <span class="symbol">S43</span>, <span class="symbol">S44</span>],      </span><br><span class="line">  </span><br><span class="line">  valid([<span class="symbol">Row1</span>, <span class="symbol">Row2</span>, <span class="symbol">Row3</span>, <span class="symbol">Row4</span>,</span><br><span class="line">         <span class="symbol">Col1</span>, <span class="symbol">Col2</span>, <span class="symbol">Col3</span>, <span class="symbol">Col4</span>,</span><br><span class="line">         <span class="symbol">Square1</span>, <span class="symbol">Square2</span>, <span class="symbol">Square3</span>, <span class="symbol">Square4</span>]).</span><br><span class="line"> </span><br><span class="line">valid([]).</span><br><span class="line">valid([<span class="symbol">Head</span> | <span class="symbol">Tail</span>]) :- fd_all_different(<span class="symbol">Head</span>), valid(<span class="symbol">Tail</span>).</span><br></pre></td></tr></table></figure><p>以下是将如何运行上面的数独解算器：</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line">| ?- sudoku([_, _, 2, 3,</span><br><span class="line">             _, _, _, _,</span><br><span class="line">             _, _, _, _,</span><br><span class="line">             3, 4, _, _],</span><br><span class="line">             Solution).</span><br><span class="line"> </span><br><span class="line"> </span><br><span class="line">S = [4,1,2,3,2,3,4,1,1,2,3,4,3,4,1,2]</span><br></pre></td></tr></table></figure><p>不幸的是，声明式编程语言的缺陷是很容易遇到性能瓶颈，上面一个简单的排序算法的时间复杂度可能是<code>O(n!)</code>；上面的数独求解器使用了暴力搜索；大多数开发者不得不提供数据库提示和额外的索引，以避免执行SQL查询时出现昂贵和低效计划。</p><h2 id="符号编程｜Symbolic-programming"><a href="#符号编程｜Symbolic-programming" class="headerlink" title="符号编程｜Symbolic programming"></a>符号编程｜Symbolic programming</h2><p>示例语言：<a href="https://www.youtube.com/watch?v=L6iUm_Cqx2s">Aurora</a><br><a href="https://www.youtube.com/watch?v=L6iUm_Cqx2s">Aurora</a>是符号编程的一个例子：你编写这些语言的代码不只可以包括纯文本，还有照片、数学公式、图、图表等等。这允许你操纵和描述大量不同的数据以它原生的形式，而不是都使用纯文本来描述。Aurora是完全交互式的，能够像一个功能强大的REPL一样，实时显示每一行代码的结果。</p><p><a href="https://www.youtube.com/watch?v=VIDEO_ID_HERE"><img src="https://img.youtube.com/vi/L6iUm_Cqx2s/0.jpg" alt="Alt text"></a></p><p>Aurora 语言是由<a href="http://www.chris-granger.com/">Chris Granger</a>创造的，他也是 <a href="http://www.lighttable.com/">Light Table IDE</a>的构建者，Chris 在他的博文 <a href="http://www.chris-granger.com/2014/03/27/toward-a-better-programming/">Toward a better programming</a>概括了他的动机：一些使编程语言更加可观察，直接，并且减少附带的复杂度的目标。为了更多的信息，请务必查看<a href="http://worrydream.com/">Bret Victor</a>令人难以置信的演讲<a href="https://vimeo.com/36579366">Inventing on Principle</a>, <a href="https://vimeo.com/67076984">Media for Thinking the Unthinkable</a>和<a href="http://worrydream.com/#!/LearnableProgramming">Learnable Programming</a>.<br>更新：“符号编程”可能是Aurora不很准确的一个术语，从wiki <a href="https://en.wikipedia.org/wiki/Symbolic_programming">Symbolic programming</a>  看更多的信息。</p><h2 id="基于知识的编程"><a href="#基于知识的编程" class="headerlink" title="基于知识的编程"></a>基于知识的编程</h2><p>示例语言：<a href="https://www.wolfram.com/language/">Wolfram 语言</a><br>与上文提到的Aurora语言类似，<a href="https://www.wolfram.com/language/">Wolfram 语言</a>也是基于符号编程的。然而，符号层仅仅为Wolfram 语言的核心提供了一致的接口，而其核心是基于知识的编程：这个语言内置了大量的库、算法和数据。这使得从绘制Facebook 连接图、操纵图像、查询天气、处理自然语言请求，在地图上绘制方向、求解数学方程式等等各种任务变得非常容易。<br><a href="https://www.youtube.com/watch?v=_P9HqHVPeik"><img src="https://img.youtube.com/vi/_P9HqHVPeik/0.jpg" alt="Alt text"></a></p><p>我认为Wolfram可能拥有现存编程语言中最庞大的“标准库”和数据集。我对<em>互联网连接</em>成为编写代码的固有部分的想法感到兴奋：这就像一个IDE，自动完成功能并进行Google搜索。观察符号编程范式是否如Wolfram 所声称的那样灵活，并且能够真正利用所有这些数据，将是一件非常有趣的事情。<br>更新：尽管Wolfram声称Wolfram 语言支持符号编程和知识编程，但这些术语实际上有些许差异，请参阅wiki  <a href="https://en.wikipedia.org/wiki/Knowledge_level">Knowledge level</a>  和 <a href="https://en.wikipedia.org/wiki/Symbolic_programming">Symbolic Programming</a>  以获取更多信息。</p><hr><p>浩叔发起的ARTS打卡活动：每人每周写一个 ARTS：Algorithm 是一道算法题，Review 是读一篇英文文章，Technique&#x2F;Tips 是分享一个小技术，Share 是分享一个观点。<br>此篇作为Review一篇英文文章并做了翻译，借助LLM强大的能力，我也练习了一下，将翻译水平提高些。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/categories/%E7%BF%BB%E8%AF%91/">翻译</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/tags/ARTS/">ARTS</category>
      
      
      <comments>https://deusyu.app/posts/3ac78cf/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>装机必备之快速CLI工具配置</title>
      <link>https://deusyu.app/posts/720f8685/</link>
      <guid>https://deusyu.app/posts/720f8685/</guid>
      <pubDate>Fri, 01 Apr 2022 13:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h2 id="起因"><a href="#起因" class="headerlink" title="起因"></a>起因</h2><p>因工作需要，总要初始化电脑，俗称装机，而绝大部分的配置项，一旦配置好了就很少再动了，此篇记录我最喜欢的终端操作组合：iTerm2 + zsh + on my zsh + brew</p><h2 id="Zsh"><a href="#Zsh" class="headerlink" title="Zsh"></a>Zsh</h2><p>Zsh应该是在MacOS 10版本自带了，MacOS 10以上的版本不需要安装了，直接开箱即用。</p><h2 id="Oh-My-Zsh"><a href="#Oh-My-Zsh" class="headerlink" title="Oh My Zsh"></a>Oh My Zsh</h2><p>Zsh 的配置项过于复杂，开源项目<a href="https://github.com/robbyrussell/oh-my-zsh">Oh My Zsh</a> 解决了这一问题，仅通过简单的配置，即可享用Zsh丰富的功能。</p><h3 id="安装Oh-My-Zsh"><a href="#安装Oh-My-Zsh" class="headerlink" title="安装Oh My Zsh"></a>安装Oh My Zsh</h3><h4 id="通过curl"><a href="#通过curl" class="headerlink" title="通过curl"></a>通过curl</h4><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sh -c <span class="string">&quot;<span class="subst">$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)</span>&quot;</span></span><br></pre></td></tr></table></figure><h4 id="通过wget"><a href="#通过wget" class="headerlink" title="通过wget"></a>通过wget</h4><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sh -c <span class="string">&quot;<span class="subst">$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)</span>&quot;</span></span><br></pre></td></tr></table></figure><h2 id="安装brew"><a href="#安装brew" class="headerlink" title="安装brew"></a>安装brew</h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">/bin/bash -c <span class="string">&quot;<span class="subst">$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)</span>&quot;</span></span><br></pre></td></tr></table></figure><h3 id="Oh-My-Zsh主题—powerlevel9k"><a href="#Oh-My-Zsh主题—powerlevel9k" class="headerlink" title="Oh My Zsh主题—powerlevel9k"></a>Oh My Zsh主题—powerlevel9k</h3><ol><li><p>克隆powerlevel9k仓库到oh my zsh的<code>custom/themes</code> 目录</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">git <span class="built_in">clone</span> https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k</span><br></pre></td></tr></table></figure></li><li><p>到 <code>~/.zshrc</code> 设置主题</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">ZSH_THEME=&quot;powerlevel9k/powerlevel9k&quot;</span><br></pre></td></tr></table></figure></li><li><p>别忘了</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">source ~/.zshrc</span><br></pre></td></tr></table></figure></li></ol><h4 id="安装支持powerlevel9k的字体Powerline-fonts"><a href="#安装支持powerlevel9k的字体Powerline-fonts" class="headerlink" title="安装支持powerlevel9k的字体Powerline fonts"></a>安装支持powerlevel9k的字体Powerline fonts</h4><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># clone</span></span><br><span class="line">git <span class="built_in">clone</span> https://github.com/powerline/fonts.git --depth=1</span><br><span class="line"><span class="comment"># install</span></span><br><span class="line"><span class="built_in">cd</span> fonts</span><br><span class="line">./install.sh</span><br><span class="line"><span class="comment"># clean-up a bit</span></span><br><span class="line"><span class="built_in">cd</span> ..</span><br><span class="line"><span class="built_in">rm</span> -rf fonts</span><br></pre></td></tr></table></figure><h2 id="安装iTerm2"><a href="#安装iTerm2" class="headerlink" title="安装iTerm2"></a>安装iTerm2</h2><p>在安装了brew的前提下，安装很简单</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">brew install --cask iterm2</span><br></pre></td></tr></table></figure><p>并安装<code>font-hack-nerd-font</code></p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">brew tap homebrew/cask-fonts <span class="comment">#将字体库添加到brew安装中</span></span><br><span class="line">brew install --cask font-hack-nerd-font</span><br></pre></td></tr></table></figure><h3 id="安装iTerm2主题"><a href="#安装iTerm2主题" class="headerlink" title="安装iTerm2主题"></a>安装iTerm2主题</h3><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">git <span class="built_in">clone</span> https://github.com/dracula/iterm.git</span><br></pre></td></tr></table></figure><p><a href="https://draculatheme.com/iterm">安装Dracula iTerm2主题</a></p><h3 id="在iTerm2中设置字体"><a href="#在iTerm2中设置字体" class="headerlink" title="在iTerm2中设置字体"></a>在iTerm2中设置字体</h3><ol><li><p>需要在iTerm2的<code>Preference -&gt; Profiles -&gt; Text -&gt; Font</code> 中设置字体，比如这样</p><p><img src="/iShot2022-04-03%2006.59.14.png" alt="iShot2022-04-03 06.59.14"></p></li><li><p>并在<code>~/.zshrc</code> 中声明</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">POWERLEVEL9K_MODE=<span class="string">&#x27;nerdfont-complete&#x27;</span></span><br></pre></td></tr></table></figure></li></ol><h2 id="Zsh中的插件"><a href="#Zsh中的插件" class="headerlink" title="Zsh中的插件"></a>Zsh中的插件</h2><p>我只用到了<code>zsh-syntax-highlighting</code>高亮插件，最好的方式是通过<code>plugin manager</code>安装</p><ol><li><p>克隆到本地</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">git <span class="built_in">clone</span> https://github.com/zsh-users/zsh-syntax-highlighting.git <span class="variable">$&#123;ZSH_CUSTOM:-~/.oh-my-zsh/custom&#125;</span>/plugins/zsh-syntax-highlighting</span><br></pre></td></tr></table></figure></li><li><p>在 <code>~/.zshrc</code>中添加</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">plugins=( [plugins...] zsh-syntax-highlighting)</span><br></pre></td></tr></table></figure></li><li><p>别忘了</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">source</span> ~/.zshrc</span><br></pre></td></tr></table></figure></li></ol><p>这里是<a href="https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/INSTALL.md">参考</a></p><h2 id="zshrc中的配置项"><a href="#zshrc中的配置项" class="headerlink" title="~&#x2F;.zshrc中的配置项"></a>~&#x2F;.zshrc中的配置项</h2><p>在<code>powerlevel9k</code> 中有一个<a href="https://github.com/Powerlevel9k/powerlevel9k/wiki/Show-Off-Your-Config">Show Off Your Config · Powerlevel9k&#x2F;powerlevel9k Wiki · GitHub</a> ，里面分享了很多帅酷的配置和截图。</p><p>我喜欢追求一个简洁和美观的均衡，下面是我的配置效果。</p><p><img src="https://user-images.githubusercontent.com/42929363/161405455-c987f0c3-cd1a-40a2-8ed8-ad177ab8155f.png" alt="zshrc_config"></p><p>当然也把我的配置分享在GitHub了，链接在<a href="https://github.com/deusyu/config">这里</a>。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%BC%96%E7%A8%8B/">编程</category>
      
      
      <comments>https://deusyu.app/posts/720f8685/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>二叉树相关算法与概念总结（基本完善）...</title>
      <link>https://deusyu.app/posts/binary-tree/</link>
      <guid>https://deusyu.app/posts/binary-tree/</guid>
      <pubDate>Sat, 25 Sep 2021 14:55:55 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h1 id="二叉树的相关概念"><a href="#二叉树的相关概念" class="headerlink" title="二叉树的相关概念"></a>二叉树的相关概念</h1><ol><li><p><strong>叶子节点</strong>：把没有子节点的节点叫做叶子节点或者叶节点。</p><p> <img src="/%E5%8F%B6%E5%AD%90%E8%8A%82%E7%82%B9.png" alt="叶子节点"></p><p> 例如上图中的G、H、I、J、K、L都是叶子节点</p></li><li><p>**根节点：**相对的，没有父节点的节点叫做根节点</p><p> 例如上图中的E</p></li><li><p><strong>平衡二叉树 ： 二叉树中任意一个节点的左右子树的高度相差不能大于1。</strong></p></li><li><p><strong>完全二叉树： 叶子节点都在最底下两层，最后一层的叶子节点都靠左排列，并且除了最后一层，其他层的节点个数都要达到最大，这种二叉树叫做完全二叉树。</strong></p><p> <img src="/%E5%AE%8C%E5%85%A8%E4%BA%8C%E5%8F%89%E6%A0%91.png" alt="完全二叉树"></p><p> 完全二叉树可以存储在数组中，不至于浪费空间。</p></li></ol><hr><h1 id="二叉树算法与题目"><a href="#二叉树算法与题目" class="headerlink" title="二叉树算法与题目"></a>二叉树算法与题目</h1><ol><li><p>二叉树的深度复制</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">class</span> <span class="title class_">TreeNode</span> &#123;</span><br><span class="line">        <span class="type">int</span> value;</span><br><span class="line">        TreeNode left;</span><br><span class="line">        TreeNode right;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">public</span> <span class="title function_">TreeNode</span><span class="params">(<span class="type">int</span> x)</span> &#123;</span><br><span class="line">            value = x;</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">   <span class="comment">//TreeNode newRoot;</span></span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> TreeNode <span class="title function_">copyTree</span><span class="params">(TreeNode root)</span>&#123;</span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>)&#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="literal">null</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">newRoot</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">TreeNode</span>(root.value);</span><br><span class="line"></span><br><span class="line">        newRoot.left = copyTree(root.left);</span><br><span class="line">        newRoot.right = copyTree(root.right);</span><br><span class="line">        <span class="keyword">return</span> newRoot;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉树的最大深度</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="type">int</span> <span class="title function_">maxDepth</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line"></span><br><span class="line">        <span class="type">int</span> <span class="variable">left</span> <span class="operator">=</span> maxDepth(root.left);</span><br><span class="line">        <span class="type">int</span> <span class="variable">right</span> <span class="operator">=</span> maxDepth(root.right);</span><br><span class="line">        <span class="keyword">return</span> Math.max(left, right) + <span class="number">1</span>;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉树的最小深度 <a href="https://leetcode-cn.com/problems/minimum-depth-of-binary-tree/">111. 二叉树的最小深度</a></p><p> 思路：递归的调用搜索左右子树的最小深度，然后返回最小的</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="type">int</span> <span class="title function_">minDepth</span><span class="params">(TreeNode root)</span>&#123;</span><br><span class="line">        <span class="comment">//思路：递归的调用minDepth</span></span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>)&#123;</span><br><span class="line">            <span class="keyword">return</span> Integer.MAX_VALUE;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">if</span>(root.left == <span class="literal">null</span> &amp;&amp; root.right == <span class="literal">null</span>)&#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="number">1</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> Math.min(minDepth(root.left),minDepth(root.right)) + <span class="number">1</span>;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉树中节点的个数</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="type">int</span> <span class="title function_">numOfTreeNode</span><span class="params">(TreeNode root)</span>&#123;</span><br><span class="line">        <span class="comment">//思路 递归的调用自己找左子树中的节点数，和右子树中的节点数，最后 返回当前节点的所有节点数，包括它自己，所以要+1</span></span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>) <span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line">        </span><br><span class="line">        <span class="type">int</span> <span class="variable">left</span> <span class="operator">=</span> numOfTreeNode(root.left);</span><br><span class="line">        <span class="type">int</span> <span class="variable">right</span> <span class="operator">=</span> numOfTreeNode(root.right);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> left + right + <span class="number">1</span>;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉树中叶子节点的个数</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="type">int</span> <span class="title function_">numOfChildNode</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="comment">//找二叉树的叶子节点，也就是没有子节点的节点，要考虑它的左子树和右子树同时不存在的情况</span></span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (root.left == <span class="literal">null</span> &amp;&amp; root.right == <span class="literal">null</span>) &#123;    <span class="comment">//如果发现该节点的左子树和右子树同时为空，那么这个为叶子节点，所以返回1</span></span><br><span class="line">            <span class="keyword">return</span> <span class="number">1</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> numOfTreeNode(root.left) + numOfTreeNode(root.right);</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉树中第k层节点的个数（不是很懂）</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//二叉树中第k层节点的个数</span></span><br><span class="line">    <span class="keyword">public</span> <span class="type">int</span> <span class="title function_">numsOfKLevelTreeNode</span><span class="params">(TreeNode root, <span class="type">int</span> k)</span> &#123;</span><br><span class="line">        <span class="comment">//考虑K层</span></span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span> | k &lt; <span class="number">1</span>)</span><br><span class="line">            <span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line">        <span class="keyword">if</span> (k == <span class="number">1</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="number">1</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="type">int</span> <span class="variable">numsLeft</span> <span class="operator">=</span> numsOfKLevelTreeNode(root.left, k - <span class="number">1</span>);</span><br><span class="line">        <span class="type">int</span> <span class="variable">numsRight</span> <span class="operator">=</span> numsOfKLevelTreeNode(root.right, k - <span class="number">1</span>);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> numsLeft + numsRight;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>判断二叉树是否是平衡二叉树</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//判断二叉树是否是平衡二叉树</span></span><br><span class="line">    <span class="keyword">public</span> <span class="type">boolean</span> <span class="title function_">isBalanced</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="comment">//后序遍历+剪枝（从底至顶）</span></span><br><span class="line">        <span class="comment">//对二叉树做后序遍历，从底至顶返回子树深度，若判断某子树不是平衡树则&quot;剪枝&quot;，直接向上返回</span></span><br><span class="line">        <span class="keyword">return</span> maxDepth(root) != -<span class="number">1</span>;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">//返回的是子树的深度</span></span><br><span class="line">    <span class="type">int</span> <span class="title function_">maxDepth</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line"></span><br><span class="line">        <span class="type">int</span> <span class="variable">left</span> <span class="operator">=</span> maxDepth(root.left);</span><br><span class="line">        <span class="type">int</span> <span class="variable">right</span> <span class="operator">=</span> maxDepth(root.right);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (left == -<span class="number">1</span> | right == -<span class="number">1</span> || Math.abs(left - right) &gt; <span class="number">1</span>)</span><br><span class="line">            <span class="keyword">return</span> -<span class="number">1</span>;</span><br><span class="line">        <span class="keyword">return</span> Math.max(left, right) + <span class="number">1</span>;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>判断二叉树是否是完全二叉树</p><ol><li><p>第一种思路，依据完全二叉树的特性：它可以很好的存放在数组中，也就是连续的</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//判断一棵树是否是完全二叉树</span></span><br><span class="line">    <span class="type">int</span> <span class="variable">n</span> <span class="operator">=</span> <span class="number">0</span>, p = <span class="number">0</span>;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> <span class="type">boolean</span> <span class="title function_">isCompleteTree</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="comment">//思路一：根据完全二叉树可以使用数组来存这个特性来进行解答</span></span><br><span class="line">        <span class="comment">//k 存的是当前节点的编号 n为搜索到的节点个数，p是当前最大节点编号值</span></span><br><span class="line">        <span class="comment">//搜索过程：</span></span><br><span class="line">        <span class="comment">//1. 从根节点开始搜索 此时 k = 1</span></span><br><span class="line">        <span class="comment">//2. 遍历左子树 右子树 左子树的的2 * k ,右子树的为 2*k + 1</span></span><br><span class="line">        <span class="comment">//3. 在这个过程中添加终止条件</span></span><br><span class="line">        <span class="comment">//4. root == null 遍历到了叶子节点，直接返回</span></span><br><span class="line">        <span class="comment">//5. 节点数 n += 1；</span></span><br><span class="line">        <span class="comment">//6. 当前最大的节点编号值 p = Math.max(p,k)</span></span><br><span class="line">        dfs(root, <span class="number">1</span>);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> n == p;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> <span class="keyword">void</span> <span class="title function_">dfs</span><span class="params">(TreeNode root, <span class="type">int</span> k)</span> &#123;</span><br><span class="line">        <span class="comment">//前序遍历</span></span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span>;   <span class="comment">//叶子节点</span></span><br><span class="line">        n++;</span><br><span class="line">        p = Math.max(p, k);</span><br><span class="line">        dfs(root.left, <span class="number">2</span> * k);</span><br><span class="line">        dfs(root.right, <span class="number">2</span> * k + <span class="number">1</span>);</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>思路二：广度优先遍历｜BFS｜层序遍历</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="type">boolean</span> <span class="title function_">isCompleteTree</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="comment">//思路一：根据完全二叉树可以使用数组来存这个特性来进行解答</span></span><br><span class="line">        <span class="comment">//k 存的是当前节点的编号 n为搜索到的节点个数，p是当前最大节点编号值</span></span><br><span class="line">        <span class="comment">//搜索过程：</span></span><br><span class="line">        <span class="comment">//1. 从根节点开始搜索 此时 k = 1</span></span><br><span class="line">        <span class="comment">//2. 遍历左子树 右子树 左子树的的2 * k ,右子树的为 2*k + 1</span></span><br><span class="line">        <span class="comment">//3. 在这个过程中添加终止条件</span></span><br><span class="line">        <span class="comment">//4. root == null 遍历到了叶子节点，直接返回</span></span><br><span class="line">        <span class="comment">//5. 节点数 n += 1；</span></span><br><span class="line">        <span class="comment">//6. 当前最大的节点编号值 p = Math.max(p,k)</span></span><br><span class="line"><span class="comment">/*</span></span><br><span class="line"><span class="comment">        dfs(root, 1);</span></span><br><span class="line"><span class="comment"></span></span><br><span class="line"><span class="comment">        return n == p;</span></span><br><span class="line"><span class="comment">*/</span></span><br><span class="line">        <span class="comment">//思路二：广度优先遍历｜层序遍历｜使用队列</span></span><br><span class="line">        <span class="comment">//问题转换为：什么时候是不完全呢？其实就是出现null节点之后又出现了节点，如果是完全则最后一个null节点之后就结束遍历了</span></span><br><span class="line">        Queue&lt;TreeNode&gt; queue = <span class="keyword">new</span> <span class="title class_">LinkedList</span>&lt;&gt;();</span><br><span class="line">        <span class="type">boolean</span> <span class="variable">reachNull</span> <span class="operator">=</span> <span class="literal">false</span>;</span><br><span class="line">        queue.add(root);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">while</span>(!queue.isEmpty())&#123;</span><br><span class="line">            <span class="type">TreeNode</span> <span class="variable">t</span> <span class="operator">=</span> queue.poll();</span><br><span class="line"></span><br><span class="line">            <span class="keyword">if</span>(t == <span class="literal">null</span>)&#123;</span><br><span class="line">                reachNull = <span class="literal">true</span>;</span><br><span class="line">            &#125;<span class="keyword">else</span>&#123;</span><br><span class="line">                <span class="keyword">if</span>(reachNull) <span class="keyword">return</span> <span class="literal">false</span>; <span class="comment">//在访问到null节点之后还有节点，直接返回false</span></span><br><span class="line">                queue.add(t.left);</span><br><span class="line">                queue.add(t.right);</span><br><span class="line">            &#125;</span><br><span class="line"></span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> <span class="literal">true</span>;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li></ol></li><li><p>两个二叉树是否完全相同 <a href="https://leetcode-cn.com/problems/same-tree/">100. 相同的树</a></p><p> 如果两个树在结构上相同，并且节点具有相同的值，则认为它们是相同的。</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="type">boolean</span> <span class="title function_">isSameTree</span><span class="params">(TreeNode p, TreeNode q)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (p == <span class="literal">null</span> &amp;&amp; q == <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="literal">true</span>;</span><br><span class="line">        &#125; <span class="keyword">else</span> <span class="keyword">if</span> (p == <span class="literal">null</span> || q == <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="literal">false</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">if</span> (p.val != q.val) &#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="literal">false</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="type">boolean</span> <span class="variable">left</span> <span class="operator">=</span> isSameTree(p.left, q.left);</span><br><span class="line">        <span class="type">boolean</span> <span class="variable">right</span> <span class="operator">=</span> isSameTree(p.right, q.right);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> left &amp;&amp; right;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>两个二叉树是否互为镜像 <a href="https://leetcode-cn.com/problems/symmetric-tree/">101. 对称二叉树</a></p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="type">boolean</span> <span class="title function_">isMirror</span><span class="params">(TreeNode t1, TreeNode t2)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (t1 == <span class="literal">null</span> &amp;&amp; t2 == <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="literal">true</span>;</span><br><span class="line">        &#125; <span class="keyword">else</span> <span class="keyword">if</span> (t1 == <span class="literal">null</span> || t2 == <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="literal">false</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">if</span> (t1.val != t2.val) &#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="literal">false</span>;</span><br><span class="line">        &#125;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> isMirror(t1.left, t2.right) &amp;&amp; isMirror(t1.right, t2.left);</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure><p>力扣上那道题还是要写左右两边的，本质是一样的。</p></li><li><p>翻转二叉树or镜像二叉树 <a href="https://leetcode-cn.com/problems/invert-binary-tree/">226. 翻转二叉树</a></p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> TreeNode <span class="title function_">invertTree</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>)</span><br><span class="line">            <span class="keyword">return</span> <span class="literal">null</span>;</span><br><span class="line"></span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">left</span> <span class="operator">=</span> invertTree(root.left);</span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">right</span> <span class="operator">=</span> invertTree(root.right);</span><br><span class="line">        root.left = right;</span><br><span class="line">        root.right = left;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> root;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>两个二叉树的最低公共祖先节点 <a href="https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree/">236. 二叉树的最近公共祖先</a></p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//求两个二叉树的最低公共祖先节点</span></span><br><span class="line">    <span class="keyword">public</span> TreeNode <span class="title function_">lowestCommonAncestor</span><span class="params">(TreeNode root, TreeNode p, TreeNode q)</span> &#123;</span><br><span class="line">        <span class="comment">//递归的查看有几种情况</span></span><br><span class="line">        <span class="comment">//1.</span></span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span> || root == p || root == q) <span class="keyword">return</span> root;</span><br><span class="line"></span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">left</span> <span class="operator">=</span> lowestCommonAncestor(root.left, p, q);</span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">right</span> <span class="operator">=</span> lowestCommonAncestor(root.right, p, q);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (left == <span class="literal">null</span> &amp;&amp; right == <span class="literal">null</span>) <span class="keyword">return</span> <span class="literal">null</span>;</span><br><span class="line">   </span><br><span class="line">        <span class="keyword">if</span> (left == <span class="literal">null</span>) <span class="keyword">return</span> right;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (right == <span class="literal">null</span>) <span class="keyword">return</span> left;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> root;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li></ol><hr><p><strong>二叉树的遍历</strong></p><ol><li><p>二叉树的前序遍历 <a href="https://leetcode-cn.com/problems/binary-tree-preorder-traversal/">144. 二叉树的前序遍历</a></p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//二叉树的前序遍历</span></span><br><span class="line">    ArrayList&lt;Integer&gt; list;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> List&lt;Integer&gt; <span class="title function_">preorderTraversal</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        list = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line">        recur(root);</span><br><span class="line">        <span class="keyword">return</span> list;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">recur</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span>;</span><br><span class="line">        list.add(root.val);</span><br><span class="line"></span><br><span class="line">        recur(root.left);</span><br><span class="line">        recur(root.right);</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure><p> 迭代解法-使用辅助栈</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> List&lt;Integer&gt; <span class="title function_">preorderTraversal</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">   <span class="comment">/*     list = new ArrayList&lt;&gt;();</span></span><br><span class="line"><span class="comment">        recur(root);</span></span><br><span class="line"><span class="comment">        return list;*/</span></span><br><span class="line">    </span><br><span class="line"></span><br><span class="line">        <span class="comment">//使用辅助栈</span></span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>) </span><br><span class="line">            <span class="keyword">return</span> <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">        Stack&lt;TreeNode&gt; stack = <span class="keyword">new</span> <span class="title class_">Stack</span>&lt;&gt;();</span><br><span class="line">        list = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">        stack.push(root);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">while</span> (!stack.isEmpty()) &#123;</span><br><span class="line">            <span class="type">TreeNode</span> <span class="variable">node</span> <span class="operator">=</span> stack.pop();</span><br><span class="line">            list.add(node.val);</span><br><span class="line">            <span class="keyword">if</span> (node.right != <span class="literal">null</span>) stack.push(node.right);</span><br><span class="line">            <span class="keyword">if</span> (node.left != <span class="literal">null</span>) stack.push(node.left);</span><br><span class="line">          </span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> list;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉树的中序遍历  <a href="https://leetcode-cn.com/problems/binary-tree-inorder-traversal/">94. 二叉树的中序遍历</a></p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//二叉树的中序遍历</span></span><br><span class="line">    ArrayList&lt;Integer&gt; list;</span><br><span class="line">    <span class="keyword">public</span> List&lt;Integer&gt; <span class="title function_">inorderTraversal</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        list = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line">        recur(root);</span><br><span class="line">        <span class="keyword">return</span> list;</span><br><span class="line">    &#125;</span><br><span class="line">    <span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">recur</span><span class="params">(TreeNode root)</span>&#123;</span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>) <span class="keyword">return</span>;</span><br><span class="line"></span><br><span class="line">        recur(root.left);</span><br><span class="line"></span><br><span class="line">        list.add(root.val);</span><br><span class="line"></span><br><span class="line">        recur(root.right);</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉树的后序遍历 <a href="https://leetcode-cn.com/problems/binary-tree-postorder-traversal/">145. 二叉树的后序遍历</a></p><p> 简单的遍历有手就行</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//二叉树的后序遍历</span></span><br><span class="line">    ArrayList&lt;Integer&gt; list;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> List&lt;Integer&gt; <span class="title function_">postorderTraversal</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        list = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line">        recur(root);</span><br><span class="line">        <span class="keyword">return</span> list;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">recur</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span>;</span><br><span class="line"></span><br><span class="line">        recur(root.left);</span><br><span class="line">        recur(root.right);</span><br><span class="line">        list.add(root.val);</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>前序遍历和后序遍历构造二叉树 <a href="https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-postorder-traversal/">889. 根据前序和后序遍历构造二叉树</a></p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//前序遍历和后序遍历构造二叉树</span></span><br><span class="line">    <span class="type">int</span>[] preorder;</span><br><span class="line">    HashMap&lt;Integer, Integer&gt; dic = <span class="keyword">new</span> <span class="title class_">HashMap</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> TreeNode <span class="title function_">constructFromPrePost</span><span class="params">(<span class="type">int</span>[] preorder, <span class="type">int</span>[] postorder)</span> &#123;</span><br><span class="line">        <span class="built_in">this</span>.preorder = preorder;</span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> <span class="number">0</span>; i &lt; postorder.length; i++) &#123;</span><br><span class="line">            dic.put(postorder[i], i);</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> recur(<span class="number">0</span>, <span class="number">0</span>, postorder.length - <span class="number">1</span>);</span><br><span class="line"></span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> TreeNode <span class="title function_">recur</span><span class="params">(<span class="type">int</span> pre_root, <span class="type">int</span> post_left, <span class="type">int</span> post_right)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (post_left &gt; post_right) <span class="keyword">return</span> <span class="literal">null</span>;</span><br><span class="line"></span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">root</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">TreeNode</span>(preorder[pre_root]);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (post_left == post_right)</span><br><span class="line">            <span class="keyword">return</span> root;</span><br><span class="line"></span><br><span class="line">        <span class="comment">//注意这个idx表示的在后序遍历中左子树根节点的位置</span></span><br><span class="line">        <span class="type">int</span> <span class="variable">idx</span> <span class="operator">=</span> dic.get(preorder[pre_root + <span class="number">1</span>]);</span><br><span class="line"></span><br><span class="line">        root.left = recur(pre_root + <span class="number">1</span>, post_left, idx);</span><br><span class="line"></span><br><span class="line">        root.right = recur(pre_root + idx - post_left + <span class="number">2</span>, idx + <span class="number">1</span>, post_right - <span class="number">1</span>);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> root;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>从中序与后序遍历序列构造二叉树 <a href="https://leetcode-cn.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/">106. 从中序与后序遍历序列构造二叉树</a></p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//从中序与后序遍历序列构造二叉树</span></span><br><span class="line">    <span class="type">int</span>[] postorder;</span><br><span class="line">    HashMap&lt;Integer, Integer&gt; dic = <span class="keyword">new</span> <span class="title class_">HashMap</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> TreeNode <span class="title function_">buildTree</span><span class="params">(<span class="type">int</span>[] inorder, <span class="type">int</span>[] postorder)</span> &#123;</span><br><span class="line">        <span class="built_in">this</span>.postorder = postorder;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> <span class="number">0</span>; i &lt; inorder.length; i++) &#123;</span><br><span class="line">            dic.put(inorder[i], i);</span><br><span class="line">        &#125;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> recur(postorder.length - <span class="number">1</span>, <span class="number">0</span>, inorder.length - <span class="number">1</span>);</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> TreeNode <span class="title function_">recur</span><span class="params">(<span class="type">int</span> post_root, <span class="type">int</span> in_left, <span class="type">int</span> in_right)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (in_left &gt; in_right) <span class="keyword">return</span> <span class="literal">null</span>;</span><br><span class="line"></span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">root</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">TreeNode</span>(postorder[post_root]);</span><br><span class="line"></span><br><span class="line">        <span class="type">int</span> <span class="variable">idx</span> <span class="operator">=</span> dic.get(postorder[post_root]);</span><br><span class="line"></span><br><span class="line">        <span class="comment">//递归的遍历</span></span><br><span class="line"></span><br><span class="line">        root.left = recur(post_root - (in_right - idx) - <span class="number">1</span>, in_left, idx - <span class="number">1</span>);</span><br><span class="line"></span><br><span class="line">        root.right = recur(post_root - <span class="number">1</span>, idx + <span class="number">1</span>, in_right);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> root;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>从前序与中序遍历序列构造二叉树 <a href="https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/">105. 从前序与中序遍历序列构造二叉树</a> <a href="https://leetcode-cn.com/problems/zhong-jian-er-cha-shu-lcof/">剑指 Offer 07. 重建二叉树</a></p><p> 查看K神的代码，需要注意的是这题和本文中上面第<strong>17</strong>题的前提条件是树中不含重复元素</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//从前序与中序遍历序列构造二叉树</span></span><br><span class="line">    <span class="type">int</span>[] preorder;</span><br><span class="line">    HashMap&lt;Integer, Integer&gt; dic = <span class="keyword">new</span> <span class="title class_">HashMap</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> TreeNode <span class="title function_">buildTree</span><span class="params">(<span class="type">int</span>[] preorder, <span class="type">int</span>[] inorder)</span> &#123;</span><br><span class="line"></span><br><span class="line">        <span class="built_in">this</span>.preorder = preorder;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> <span class="number">0</span>; i &lt; inorder.length; i++) &#123;</span><br><span class="line">            dic.put(inorder[i], i);</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> recur(<span class="number">0</span>, <span class="number">0</span>, inorder.length - <span class="number">1</span>);</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> TreeNode <span class="title function_">recur</span><span class="params">(<span class="type">int</span> pre_root, <span class="type">int</span> in_left, <span class="type">int</span> in_right)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (in_left &gt; in_right) <span class="keyword">return</span> <span class="literal">null</span>;</span><br><span class="line"></span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">root</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">TreeNode</span>(preorder[pre_root]);</span><br><span class="line">        <span class="comment">//从中序遍历中获取当前根节点的index</span></span><br><span class="line">        <span class="type">int</span> <span class="variable">idx</span> <span class="operator">=</span> dic.get(preorder[pre_root]);</span><br><span class="line"></span><br><span class="line">        <span class="comment">//左子树的根，左边界，右边界</span></span><br><span class="line">        root.left = recur(pre_root + <span class="number">1</span>, in_left, idx - <span class="number">1</span>);</span><br><span class="line"></span><br><span class="line">        root.right = recur(pre_root + (idx - in_left) + <span class="number">1</span>, idx + <span class="number">1</span>, in_right);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> root;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p><strong>在二叉搜索树中插入节点</strong>（<em>在 <a href="https://www.jianshu.com/p/0190985635eb">一篇文章搞定面试中的二叉树题目(java实现)</a> 中作者写在二叉树中插入节点，其实二叉树中插入节点的只要遍历找到子树中有null的地方插入就好了，可以插入的位置很多</em>）<a href="https://leetcode-cn.com/problems/insert-into-a-binary-search-tree/">701. 二叉搜索树中的插入操作</a></p><p> 由于二叉搜索（查找）树的特点，所以要做比较。</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//二叉搜索树中的插入操作</span></span><br><span class="line">    <span class="keyword">public</span> TreeNode <span class="title function_">insertIntoBST</span><span class="params">(TreeNode root, <span class="type">int</span> val)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span> <span class="keyword">new</span> <span class="title class_">TreeNode</span>(val);</span><br><span class="line">        <span class="keyword">if</span> (root.val == val) <span class="keyword">return</span> root;</span><br><span class="line"></span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">node</span> <span class="operator">=</span> root;</span><br><span class="line">        <span class="keyword">while</span> (node != <span class="literal">null</span>) &#123;</span><br><span class="line">            <span class="keyword">if</span> (node.val &lt; val) &#123;</span><br><span class="line">                <span class="keyword">if</span> (node.right == <span class="literal">null</span>) &#123;</span><br><span class="line">                    node.right = <span class="keyword">new</span> <span class="title class_">TreeNode</span>(val);</span><br><span class="line">                    <span class="keyword">break</span>;</span><br><span class="line">                &#125;</span><br><span class="line">                node = node.right;</span><br><span class="line">            &#125; <span class="keyword">else</span> &#123; <span class="comment">//node.val &gt; val</span></span><br><span class="line">                <span class="keyword">if</span> (node.left == <span class="literal">null</span>) &#123;</span><br><span class="line">                    node.left = <span class="keyword">new</span> <span class="title class_">TreeNode</span>(val);</span><br><span class="line">                    <span class="keyword">break</span>;</span><br><span class="line">                &#125;</span><br><span class="line">                node = node.left;</span><br><span class="line">            &#125;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> root;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>输入一个二叉树和一个整数，打印出二叉树中节点值的和等于输入整数所有的路径 <a href="https://leetcode-cn.com/problems/er-cha-shu-zhong-he-wei-mou-yi-zhi-de-lu-jing-lcof/">剑指 Offer 34. 二叉树中和为某一值的路径</a></p><p> 参考K神，这道题属于回溯法</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//输入一个二叉树和一个整数，打印出二叉树中节点值的和等于输入整数所有的路径</span></span><br><span class="line">    LinkedList&lt;List&lt;Integer&gt;&gt; res = <span class="keyword">new</span> <span class="title class_">LinkedList</span>&lt;&gt;();</span><br><span class="line">    LinkedList&lt;Integer&gt; path = <span class="keyword">new</span> <span class="title class_">LinkedList</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> List&lt;List&lt;Integer&gt;&gt; <span class="title function_">pathSum</span><span class="params">(TreeNode root, <span class="type">int</span> target)</span> &#123;</span><br><span class="line">        recur(root, target);</span><br><span class="line">        <span class="keyword">return</span> res;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">recur</span><span class="params">(TreeNode root, <span class="type">int</span> target)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span>;</span><br><span class="line"></span><br><span class="line">        path.add(root.val);</span><br><span class="line">        target -= root.val;</span><br><span class="line">        <span class="keyword">if</span> (root.left == <span class="literal">null</span> &amp;&amp; root.right == <span class="literal">null</span> &amp;&amp; (target == <span class="number">0</span>))</span><br><span class="line">            res.add(<span class="keyword">new</span> <span class="title class_">LinkedList</span>(path));</span><br><span class="line"></span><br><span class="line">        recur(root.left, target);</span><br><span class="line">        recur(root.right, target);</span><br><span class="line"></span><br><span class="line">        path.removeLast();</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉查找树中搜索区间 <a href="https://www.lintcode.com/problem/11/">11 · 二叉查找树中搜索区间</a></p><p> <strong>描述</strong></p><p> 给定一个二叉查找树和范围<code>[k1, k2]</code>。按照升序返回给定范围内的节点值。</p><p> 解题思路参考：</p><p> <a href="https://www.jiuzhang.com/solution/search-range-in-binary-search-tree/">九章算法 - 帮助更多程序员找到好工作，硅谷顶尖IT企业工程师实时在线授课为你传授面试技巧</a></p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//二叉查找树中搜索区间</span></span><br><span class="line">    ArrayList&lt;Integer&gt; res;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> List&lt;Integer&gt; <span class="title function_">searchRange</span><span class="params">(TreeNode root, <span class="type">int</span> k1, <span class="type">int</span> k2)</span> &#123;</span><br><span class="line">        <span class="comment">// write your code here</span></span><br><span class="line"></span><br><span class="line">        res = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">        recur(root, k1, k2);</span><br><span class="line">        <span class="keyword">return</span> res;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">recur</span><span class="params">(TreeNode root, <span class="type">int</span> k1, <span class="type">int</span> k2)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span>;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (k1 &lt; root.val) &#123;</span><br><span class="line">            recur(root.left, k1, k2);</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">if</span> (k1 &lt;= root.val &amp;&amp; k2 &gt;= root.val) &#123;</span><br><span class="line">            res.add(root.val);</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">if</span> (k2 &gt; root.val) &#123;</span><br><span class="line">            recur(root.right, k1, k2);</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>二叉树的层次遍历（BFS）<a href="https://leetcode-cn.com/problems/binary-tree-level-order-traversal/">102. 二叉树的层序遍历</a></p><p>一般BFS借助队列queue实现</p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//二叉树的层序遍历</span></span><br><span class="line">    <span class="keyword">public</span> List&lt;List&lt;Integer&gt;&gt; <span class="title function_">levelOrder</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        </span><br><span class="line"></span><br><span class="line">        List&lt;List&lt;Integer&gt;&gt; res = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>) <span class="keyword">return</span> res;</span><br><span class="line">        </span><br><span class="line">        Queue&lt;TreeNode&gt; queue = <span class="keyword">new</span> <span class="title class_">LinkedList</span>&lt;&gt;();</span><br><span class="line">        queue.add(root);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">while</span> (!queue.isEmpty()) &#123;</span><br><span class="line">            <span class="type">int</span> <span class="variable">size</span> <span class="operator">=</span> queue.size();</span><br><span class="line">            List&lt;Integer&gt; tmp = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line">            <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> <span class="number">0</span>; i &lt; size; i++) &#123;</span><br><span class="line">                <span class="type">TreeNode</span> <span class="variable">node</span> <span class="operator">=</span> queue.poll();</span><br><span class="line">                tmp.add(node.val);</span><br><span class="line">                <span class="keyword">if</span> (node.left != <span class="literal">null</span>) &#123;</span><br><span class="line">                    queue.add(node.left);</span><br><span class="line">                &#125;</span><br><span class="line">                <span class="keyword">if</span> (node.right != <span class="literal">null</span>) &#123;</span><br><span class="line">                    queue.add(node.right);</span><br><span class="line">                &#125;</span><br><span class="line">            &#125;</span><br><span class="line">            res.add(tmp);</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> res;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>序列化二叉树  <a href="https://leetcode-cn.com/problems/xu-lie-hua-er-cha-shu-lcof/">剑指 Offer 37. 序列化二叉树</a></p></li></ol><p>前中后序遍历，存储的二叉树结构不是完整的，一个序列可能表示多个二叉树</p><p>困难题目，参考K神代码：</p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="keyword">class</span> <span class="title class_">Codec</span> &#123;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// Encodes a tree to a single string.</span></span><br><span class="line">    <span class="keyword">public</span> String <span class="title function_">serialize</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>) <span class="keyword">return</span> <span class="string">&quot;[]&quot;</span>;</span><br><span class="line">        <span class="type">StringBuffer</span> <span class="variable">res</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">StringBuffer</span>(<span class="string">&quot;[&quot;</span>);</span><br><span class="line">        Queue&lt;TreeNode&gt; queue = <span class="keyword">new</span> <span class="title class_">LinkedList</span>&lt;&gt;();</span><br><span class="line">        queue.add(root);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">while</span>(!queue.isEmpty())&#123;</span><br><span class="line">            <span class="type">TreeNode</span> <span class="variable">node</span> <span class="operator">=</span> queue.poll();</span><br><span class="line">            <span class="keyword">if</span>(node != <span class="literal">null</span>)&#123;</span><br><span class="line">                res.append(node.val+<span class="string">&quot;,&quot;</span>);</span><br><span class="line">                queue.add(node.left);</span><br><span class="line">                queue.add(node.right);</span><br><span class="line">            &#125;</span><br><span class="line">            <span class="keyword">else</span> res.append(<span class="string">&quot;null,&quot;</span>);</span><br><span class="line">        &#125;</span><br><span class="line">        res.deleteCharAt(res.length()-<span class="number">1</span>);</span><br><span class="line">        res.append(<span class="string">&quot;]&quot;</span>);</span><br><span class="line">        <span class="keyword">return</span> res.toString();</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">// Decodes your encoded data to tree.</span></span><br><span class="line">    <span class="keyword">public</span> TreeNode <span class="title function_">deserialize</span><span class="params">(String data)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span>(data.equals(<span class="string">&quot;[]&quot;</span>)) <span class="keyword">return</span> <span class="literal">null</span>;</span><br><span class="line">        String[] vals = data.substring(<span class="number">1</span>,data.length()-<span class="number">1</span>).split(<span class="string">&quot;,&quot;</span>);</span><br><span class="line">        <span class="type">TreeNode</span> <span class="variable">root</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">TreeNode</span>(Integer.parseInt(vals[<span class="number">0</span>]));</span><br><span class="line">        Queue&lt;TreeNode&gt; queue = <span class="keyword">new</span> <span class="title class_">LinkedList</span>&lt;&gt;();</span><br><span class="line">        queue.add(root);</span><br><span class="line">        <span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> <span class="number">1</span>;</span><br><span class="line">        <span class="keyword">while</span>(!queue.isEmpty())&#123;</span><br><span class="line">            <span class="type">TreeNode</span> <span class="variable">node</span> <span class="operator">=</span> queue.poll();</span><br><span class="line">            <span class="keyword">if</span>(!vals[i].equals(<span class="string">&quot;null&quot;</span>))&#123;</span><br><span class="line">                node.left = <span class="keyword">new</span> <span class="title class_">TreeNode</span>(Integer.parseInt(vals[i]));</span><br><span class="line">                queue.add(node.left);</span><br><span class="line">            &#125;</span><br><span class="line">            i++;</span><br><span class="line">            <span class="keyword">if</span>(!vals[i].equals(<span class="string">&quot;null&quot;</span>))&#123;</span><br><span class="line">                node.right = <span class="keyword">new</span> <span class="title class_">TreeNode</span>(Integer.parseInt(vals[i]));</span><br><span class="line">                queue.add(node.right);</span><br><span class="line">            &#125;</span><br><span class="line">            i++;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> root;</span><br><span class="line">        </span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><ol><li><p>二叉树内两个节点的最长距离 <a href="https://leetcode-cn.com/problems/diameter-of-binary-tree/">543. 二叉树的直径</a></p><p> 这道题据说是《编程之美》上面的</p><p> 可以考虑为求二叉树左右子树的最大深度然后+1</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//二叉树内两个节点的最长距离</span></span><br><span class="line">    <span class="type">int</span> res;</span><br><span class="line">    <span class="keyword">public</span> <span class="type">int</span> <span class="title function_">diameterOfBinaryTree</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        res = <span class="number">0</span>;</span><br><span class="line">        depth(root);</span><br><span class="line">        <span class="keyword">return</span> res;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> <span class="type">int</span> <span class="title function_">depth</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line"></span><br><span class="line">        <span class="type">int</span> <span class="variable">left</span> <span class="operator">=</span> depth(root.left);</span><br><span class="line">        <span class="type">int</span> <span class="variable">right</span> <span class="operator">=</span> depth(root.right);</span><br><span class="line"></span><br><span class="line">        res = Math.max(res, left + right);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> Math.max(left, right) + <span class="number">1</span>;</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>不同的二叉树 <a href="https://leetcode-cn.com/problems/unique-binary-search-trees/">96. 不同的二叉搜索树</a></p><p> 呃，动态规划…</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//不同的二叉树</span></span><br><span class="line">    <span class="keyword">public</span> <span class="type">int</span> <span class="title function_">numTrees</span><span class="params">(<span class="type">int</span> n)</span> &#123;</span><br><span class="line">        <span class="type">int</span>[] G = <span class="keyword">new</span> <span class="title class_">int</span>[n + <span class="number">1</span>];</span><br><span class="line">        G[<span class="number">0</span>] = <span class="number">1</span>;</span><br><span class="line">        G[<span class="number">1</span>] = <span class="number">1</span>;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> <span class="number">2</span>; i &lt;= n; ++i) &#123;</span><br><span class="line">            <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">j</span> <span class="operator">=</span> <span class="number">1</span>; j &lt;= i; ++j) &#123;</span><br><span class="line">                G[i] += G[j - <span class="number">1</span>] * G[i - j];</span><br><span class="line">            &#125;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> G[n];</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li><li><p>判断二叉树是否是合法的二叉查找树（BST）<a href="https://leetcode-cn.com/problems/validate-binary-search-tree/">98. 验证二叉搜索树</a></p><p> 当时有个面试官给我出了这道题，我当时的解法就很简单，中序遍历+验证递增数组</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//判断二叉树是否是合法的二叉查找树</span></span><br><span class="line">    List&lt;Integer&gt; list;</span><br><span class="line">    <span class="keyword">public</span> <span class="type">boolean</span> <span class="title function_">isValidBST</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        list = <span class="keyword">new</span> <span class="title class_">ArrayList</span>&lt;&gt;();</span><br><span class="line"></span><br><span class="line">        recur(root);</span><br><span class="line"></span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> <span class="number">1</span>; i &lt; list.size(); i++) &#123;</span><br><span class="line">            <span class="keyword">if</span> (list.get(i) &lt;= list.get(i - <span class="number">1</span>)) &#123;</span><br><span class="line">                <span class="keyword">return</span> <span class="literal">false</span>;</span><br><span class="line">            &#125;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> <span class="literal">true</span>;</span><br><span class="line">        </span><br><span class="line">    &#125;</span><br><span class="line">    <span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">recur</span><span class="params">(TreeNode root)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (root == <span class="literal">null</span>) <span class="keyword">return</span>;</span><br><span class="line"></span><br><span class="line">        recur(root.left);</span><br><span class="line">        list.add(root.val);</span><br><span class="line">        recur(root.right);</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure><p> 想要提升效率的话，应该在遍历二叉树的时候提前终止</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">//提前终止的返回</span></span><br><span class="line">    <span class="type">long</span> <span class="variable">pre</span> <span class="operator">=</span> Long.MIN_VALUE;</span><br><span class="line">    <span class="keyword">public</span> <span class="type">boolean</span> <span class="title function_">isValidBST</span><span class="params">(TreeNode root)</span>&#123;</span><br><span class="line">        <span class="keyword">return</span> inorder(root);</span><br><span class="line">    &#125;</span><br><span class="line">    <span class="keyword">private</span> <span class="type">boolean</span> <span class="title function_">inorder</span><span class="params">(TreeNode root)</span>&#123;</span><br><span class="line">        <span class="keyword">if</span>(root == <span class="literal">null</span>) <span class="keyword">return</span> <span class="literal">true</span>;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span>(!inorder(root.left)) <span class="keyword">return</span> <span class="literal">false</span>;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span>(root.val &lt;= pre) <span class="keyword">return</span> <span class="literal">false</span>;</span><br><span class="line"></span><br><span class="line">        pre = root.val;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">return</span> inorder(root.right);</span><br><span class="line">    &#125;</span><br></pre></td></tr></table></figure></li></ol><h1 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h1><p>二叉树的难点不是前中后序遍历或者层序遍历，而是根据二叉树的数据结构特点来进行改编的一些题目，因为二叉树大多涉及递归，所以要仔细想清楚每一步要做什么。</p><p>现在时间对于我来说是很少、很紧迫的，有些题目都是理解了尽量少文字解释，但这样有诸多不好，像维特根斯坦说的：“我的语言的极限是我世界的极限”，而后不忙了还需要逐步完善。</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li><a href="https://deusyu.app/posts/binary-tree/">二叉树相关算法与概念总结（基本完善）</a></li><li><a href="https://time.geekbang.org/column/intro/126">王争《数据结构与算法之美》</a></li><li><a href="https://www.jianshu.com/p/0190985635eb">一篇文章搞定面试中的二叉树题目(java实现)</a></li><li>《算法》(第4版)(图灵出品) [Algorithms, Fourth Edition]</li><li>力扣剑指题目下<a href="https://leetcode-cn.com/u/jyd/">Krahets</a> 的解答</li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      <category domain="https://deusyu.app/categories/%E5%88%B7%E9%A2%98/">刷题</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%B7%E9%A2%98/">刷题</category>
      
      
      <comments>https://deusyu.app/posts/binary-tree/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>《算法》(Algorithms Fourth Edition) 书上的归并和快排代码</title>
      <link>https://deusyu.app/posts/876/</link>
      <guid>https://deusyu.app/posts/876/</guid>
      <pubDate>Tue, 21 Sep 2021 15:09:58 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>最近买了本算法书看，发现算法书上写的Java代码简洁又容易理解，属于比较好的那种，对于有些自己写不好的排序，可以拿出来背背。</p><h1 id="归并排序"><a href="#归并排序" class="headerlink" title="归并排序"></a>归并排序</h1><p>归并排序基于归并这个简单的操作，即将两个有序的数组归并成一个更大的有序数组。</p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="keyword">class</span> <span class="title class_">mergeSortAlgorithms</span> &#123;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">private</span> <span class="type">int</span>[] copy;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">public</span> <span class="keyword">void</span> <span class="title function_">mergeSort</span><span class="params">(<span class="type">int</span>[] nums, <span class="type">int</span> lo, <span class="type">int</span> hi)</span> &#123;</span><br><span class="line">        <span class="keyword">if</span> (lo &gt;= hi) <span class="keyword">return</span>;</span><br><span class="line"></span><br><span class="line">        <span class="type">int</span> <span class="variable">mid</span> <span class="operator">=</span> lo + ((hi - lo) &gt;&gt; <span class="number">1</span>);</span><br><span class="line"></span><br><span class="line">        mergeSort(nums, lo, mid);</span><br><span class="line">        mergeSort(nums, mid + <span class="number">1</span>, hi);</span><br><span class="line"></span><br><span class="line">        merge(nums, lo, mid, hi);</span><br><span class="line"></span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="comment">//原地归并的抽象方法</span></span><br><span class="line">    <span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">merge</span><span class="params">(<span class="type">int</span>[] nums, <span class="type">int</span> lo, <span class="type">int</span> mid, <span class="type">int</span> hi)</span> &#123;</span><br><span class="line">        <span class="comment">//将nums[lo..mid] 和 nums[mid+1..hi]归并</span></span><br><span class="line">        <span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> lo, j = mid + <span class="number">1</span>;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">k</span> <span class="operator">=</span> lo; k &lt;= hi; k++) &#123;    <span class="comment">//将原数组复制一份到copy[lo..hi]</span></span><br><span class="line">            copy[k] = nums[k];</span><br><span class="line">        &#125;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">k</span> <span class="operator">=</span> lo; k &lt;= hi; k++) &#123;    <span class="comment">//归并回到a[lo..hi]</span></span><br><span class="line">            <span class="keyword">if</span> (i &gt; mid) nums[k] = copy[j++];</span><br><span class="line"></span><br><span class="line">            <span class="keyword">else</span> <span class="keyword">if</span> (j &gt; hi) nums[k] = copy[i++];</span><br><span class="line"></span><br><span class="line">            <span class="keyword">else</span> <span class="keyword">if</span> (copy[j] &lt; copy[i]) nums[k] = copy[j++];</span><br><span class="line"></span><br><span class="line">            <span class="keyword">else</span> nums[k] = copy[i++];</span><br><span class="line"></span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><h1 id="快速排序"><a href="#快速排序" class="headerlink" title="快速排序"></a>快速排序</h1><blockquote><p>快速排序和归并排序是互补的：归并排序将数组分成两个子数组分别排序，并将有序的子数组归并以将整个数组排序；而快速排序将数组排序的方式则是当两个子数组都有序时整个数组也就自然有序了。在第一种情况下，递归调用发生在处理整个数组之前；第二种情况下，递归调用发生在处理整个数组之后。在归并排序中，一个数组被等分为两半；在快速排序中，切分的位置取决于数组的内容。</p></blockquote><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="keyword">void</span> <span class="title function_">quickSort</span><span class="params">(<span class="type">int</span> nums[], <span class="type">int</span> lo, <span class="type">int</span> hi)</span> &#123;</span><br><span class="line">    <span class="keyword">if</span> (lo &gt;= hi) <span class="keyword">return</span>;</span><br><span class="line"></span><br><span class="line">    <span class="type">int</span> <span class="variable">pivot</span> <span class="operator">=</span> partition(nums, lo, hi);  <span class="comment">//pivot是切分位置，这本书给了两种思路，一是在partition中Random，二是在排序前shuffle数组</span></span><br><span class="line"></span><br><span class="line">    quickSort(nums, lo, pivot - <span class="number">1</span>);   <span class="comment">//将左半部分nums[lo..j+1]排序</span></span><br><span class="line">    quickSort(nums, pivot + <span class="number">1</span>, hi);   <span class="comment">//将右半部分nums[j+1..hi]排序</span></span><br><span class="line"></span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="comment">//快排的切分</span></span><br><span class="line"><span class="keyword">private</span> <span class="type">int</span> <span class="title function_">partition</span><span class="params">(<span class="type">int</span>[] nums, <span class="type">int</span> lo, <span class="type">int</span> hi)</span> &#123;</span><br><span class="line">    <span class="comment">//将数组切分为nums[lo..i-1],nums[i],nums[i+1..hi]</span></span><br><span class="line">    <span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> lo;</span><br><span class="line">    <span class="type">int</span> <span class="variable">j</span> <span class="operator">=</span> hi + <span class="number">1</span>;</span><br><span class="line">    <span class="type">int</span> <span class="variable">v</span> <span class="operator">=</span> nums[lo];</span><br><span class="line">    <span class="comment">//扫描左右，检查扫描是否结束并交换元素</span></span><br><span class="line">    <span class="keyword">while</span> (<span class="literal">true</span>) &#123;</span><br><span class="line">        <span class="keyword">while</span> (nums[++i] &gt;= v) <span class="keyword">if</span> (i == hi) <span class="keyword">break</span>;</span><br><span class="line">        <span class="keyword">while</span> (nums[--j] &lt;= v) <span class="keyword">if</span> (j == lo) <span class="keyword">break</span>;</span><br><span class="line">        <span class="keyword">if</span> (i &gt;= j) <span class="keyword">break</span>;</span><br><span class="line">        swap(nums, i, j);</span><br><span class="line">    &#125;</span><br><span class="line">    swap(nums, lo, j);    <span class="comment">//将v = nums[j]放入正确的位置</span></span><br><span class="line">    <span class="keyword">return</span> j;           <span class="comment">//nums[lo..j-1] &lt;= nums[j] &lt;= nums[j+1..hi]达成</span></span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">swap</span><span class="params">(<span class="type">int</span>[] nums, <span class="type">int</span> lo, <span class="type">int</span> hi)</span> &#123;</span><br><span class="line">    <span class="type">int</span> <span class="variable">tmp</span> <span class="operator">=</span> nums[lo];</span><br><span class="line">    nums[lo] = nums[hi];</span><br><span class="line">    nums[hi] = tmp;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><hr><blockquote><p>于2022.3.19更新以下这段</p></blockquote><p>在我刷题的过程中，发现了一种更便于理解的<code>partition()</code>方法代码，思路是初始化两个指针，指针1初始化指向下标为-1的位置，指针2 初始化指向下标为0的位置，向右移动指针2，当指针2指向小于选中的数字时，指针1向右移动1位，并交换这两个位置的数字，执行这样的过程，直到指针2再也遇不到小于选中数字的情况，扫描完毕，此时指针1向右再移动一格，然后交换两个指针指向的数字。</p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">private</span> <span class="type">int</span> <span class="title function_">partition</span><span class="params">(<span class="type">int</span>[] nums, <span class="type">int</span> lo, <span class="type">int</span> hi)</span> &#123;</span><br><span class="line">    <span class="type">int</span> <span class="variable">random</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">Random</span>().nextInt(hi - lo + <span class="number">1</span>) + lo;<span class="comment">// +1 是因为Random()的nextInt()中生成值是介于0（含）和指定值（不包括），右边是不包括的</span></span><br><span class="line">    swap(nums, random, hi);</span><br><span class="line">    <span class="type">int</span> <span class="variable">small</span> <span class="operator">=</span> lo - <span class="number">1</span>;</span><br><span class="line">    <span class="keyword">for</span> (<span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> lo; i &lt; hi; i++) &#123;</span><br><span class="line">        <span class="keyword">if</span> (nums[i] &lt; nums[hi]) &#123;</span><br><span class="line">            small++;</span><br><span class="line">            swap(nums, i, small);</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">    small++;</span><br><span class="line">    swap(nums, small, hi);</span><br><span class="line">    <span class="keyword">return</span> small;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="keyword">private</span> <span class="keyword">void</span> <span class="title function_">swap</span><span class="params">(<span class="type">int</span>[] nums, <span class="type">int</span> index1, <span class="type">int</span> index2)</span> &#123;</span><br><span class="line">    <span class="keyword">if</span> (nums[index1] != nums[index2]) &#123;</span><br><span class="line">        <span class="type">int</span> <span class="variable">temp</span> <span class="operator">=</span> nums[index1];</span><br><span class="line">        nums[index1] = nums[index2];</span><br><span class="line">        nums[index2] = temp;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><blockquote><p>于2024.3.13更新了喽</p></blockquote><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">void</span> <span class="title function_">QuickSort</span><span class="params">(<span class="type">int</span>[] array, <span class="type">int</span> lowIndex, <span class="type">int</span> highIndex)</span> &#123;</span><br><span class="line">    <span class="keyword">if</span> (lowIndex &gt;= highIndex)</span><br><span class="line">        <span class="keyword">return</span>;</span><br><span class="line"></span><br><span class="line">    <span class="type">int</span> <span class="variable">pivot</span> <span class="operator">=</span> partition(array, lowIndex, highIndex);</span><br><span class="line">    QuickSort(array, lowIndex, pivot - <span class="number">1</span>);</span><br><span class="line">    QuickSort(array, pivot + <span class="number">1</span>, highIndex);</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="keyword">private</span> <span class="keyword">static</span> <span class="type">int</span> <span class="title function_">partition</span><span class="params">(<span class="type">int</span>[] array, <span class="type">int</span> lowIndex, <span class="type">int</span> highIndex)</span> &#123;</span><br><span class="line">    <span class="type">int</span> <span class="variable">pivotIndex</span> <span class="operator">=</span> <span class="keyword">new</span> <span class="title class_">Random</span>().nextInt(highIndex - lowIndex) + lowIndex;</span><br><span class="line">    <span class="type">int</span> <span class="variable">pivot</span> <span class="operator">=</span> array[pivotIndex];</span><br><span class="line">    swap(array, highIndex, pivotIndex);</span><br><span class="line">    <span class="type">int</span> <span class="variable">leftPointer</span> <span class="operator">=</span> lowIndex;</span><br><span class="line">    <span class="type">int</span> <span class="variable">rightPointer</span> <span class="operator">=</span> highIndex - <span class="number">1</span>;</span><br><span class="line">    <span class="keyword">while</span> (leftPointer &lt; rightPointer) &#123;</span><br><span class="line">        <span class="keyword">while</span> (array[leftPointer] &lt;= pivot &amp;&amp; leftPointer &lt; rightPointer) &#123;</span><br><span class="line">            leftPointer++;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">while</span> (array[rightPointer] &gt;= pivot &amp;&amp; leftPointer &lt; rightPointer) &#123;</span><br><span class="line">            rightPointer--;</span><br><span class="line">        &#125;</span><br><span class="line">        swap(array, leftPointer, rightPointer);</span><br><span class="line">    &#125;</span><br><span class="line">    <span class="keyword">if</span> (array[leftPointer] &gt; array[highIndex]) &#123;</span><br><span class="line">        swap(array, leftPointer, highIndex);</span><br><span class="line">    &#125; <span class="keyword">else</span> &#123;</span><br><span class="line">        leftPointer = highIndex;</span><br><span class="line">    &#125;</span><br><span class="line"></span><br><span class="line">    <span class="keyword">return</span> leftPointer;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line"><span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">void</span> <span class="title function_">swap</span><span class="params">(<span class="type">int</span>[] array, <span class="type">int</span> index1, <span class="type">int</span> index2)</span> &#123;</span><br><span class="line">    <span class="type">int</span> <span class="variable">temp</span> <span class="operator">=</span> array[index1];</span><br><span class="line">    array[index1] = array[index2];</span><br><span class="line">    array[index2] = temp;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><h1 id="尾"><a href="#尾" class="headerlink" title="尾"></a>尾</h1><p>在面试中，归并排序常常用来找逆序对和链表排序，快速排序适用于快速求解topK问题。</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li>happygirlzt (排序算法之快速排序Quick Sort)[<a href="https://youtu.be/6Al7C39LNoo?si=RnUBHBJqivF1yEZY%5D">https://youtu.be/6Al7C39LNoo?si=RnUBHBJqivF1yEZY]</a></li><li>happygirlzt (code)[<a href="https://github.com/happygirlzt/JavaAlgorithms/blob/master/Algorithms/SearchingSorting/QuickSort.java]">https://github.com/happygirlzt/JavaAlgorithms/blob/master/Algorithms/SearchingSorting/QuickSort.java]</a></li><li>(Quicksort Sort Algorithm in Java - Full Tutorial With Source)[<a href="https://www.youtube.com/watch?v=h8eyY7dIiN4%5D">https://www.youtube.com/watch?v=h8eyY7dIiN4]</a></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/categories/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/tags/%E7%AC%94%E8%AE%B0/">笔记</category>
      
      
      <comments>https://deusyu.app/posts/876/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>nginx服务器配置多域名应用的一次小记</title>
      <link>https://deusyu.app/posts/64186/</link>
      <guid>https://deusyu.app/posts/64186/</guid>
      <pubDate>Mon, 06 Sep 2021 16:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<h2 id="序章"><a href="#序章" class="headerlink" title="序章"></a>序章</h2><p>由于本人金钱有限，只能购买的起一台VPS，在已经部署了<code>hexo</code> 博客后，想要使用这台再配置下自己做的项目，通过搜索，发现貌似有两种方法。</p><ol><li><p>同一个<code>server&#123;&#125;</code> 下配置多个<code>location / &#123;&#125;</code> ，类似于以下这种：</p> <figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br></pre></td><td class="code"><pre><span class="line">server&#123;</span><br><span class="line">listen 80;</span><br><span class="line">server_name www.example.com;</span><br><span class="line"></span><br><span class="line">location / &#123;</span><br><span class="line"><span class="built_in">alias</span> /root/www;</span><br><span class="line">index index.html;</span><br><span class="line">&#125;</span><br><span class="line"></span><br><span class="line">location /demo1&#123;</span><br><span class="line"><span class="built_in">alias</span> /root/demo1;</span><br><span class="line">index index.html;</span><br><span class="line">&#125;</span><br><span class="line">location /demo2&#123;</span><br><span class="line"><span class="built_in">alias</span> /root/demo2;</span><br><span class="line">index index.html;</span><br><span class="line">&#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><p> 这样的话，不同的项目就会在<code>www.example.com/demo1</code>  <code>www.example.com/demo2</code> 下面了，可以通过这样的形式访问。</p></li><li><p>通过二级域名配置不同的<code>server</code> 来监听80端口，这样直接可以使用二级域名访问，不用加<code>/</code> 。这种是我采用的，因为我已经申请了一个域名，再用二级域名做A记录指向服务器ip就可以了。但是在过程中遇到了一个小坑，费了很长时间。</p> <figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br></pre></td><td class="code"><pre><span class="line">server &#123;</span><br><span class="line">listen 80;</span><br><span class="line">server_name www.example1.com;</span><br><span class="line"></span><br><span class="line">location / &#123;</span><br><span class="line">proxy_pass http://localhost:81;</span><br><span class="line"><span class="comment">#或者静态资源目录</span></span><br><span class="line"><span class="comment">#alias /root/demo1/;</span></span><br><span class="line">&#125;</span><br><span class="line">&#125;</span><br><span class="line">server &#123;</span><br><span class="line">listen 80;</span><br><span class="line">server_name www.example2.com;</span><br><span class="line"></span><br><span class="line">location / &#123;</span><br><span class="line">proxy_pass http://localhost:82;</span><br><span class="line"><span class="comment">#或者静态资源目录</span></span><br><span class="line"><span class="comment">#alias /root/demo2/;</span></span><br><span class="line">&#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure></li></ol><h2 id="过程"><a href="#过程" class="headerlink" title="过程"></a>过程</h2><p>我首先将VPS部署了<code>hexo</code> 静态博客，然后使用这台VPS部署 <code>SpringBoot+Vue3</code> 的项目，由于是前后端分离的项目，还需要把服务端做一下反向代理。</p><p>如果把按照以上第二种方法，把配置都写在<code>nginx.conf</code> 中的话，会很乱，emmm我的还出现了部署失败访问不到的情况，所以打算将不同域名的<code>conf</code> 分开写，放到一个文件夹中。</p><p><code>nginx.conf</code> 分开的方法：</p><p>首先将默认的<code>.conf</code> 文件的<code>http</code> 下面加上<code>include /etc/nginx/conf.d/*.conf;</code> </p><p>这句话的意思是在<code>/etc/nginx/conf.d</code> 目录下所有的<code>.conf</code> 文件都被访问到，建议这里使用绝对路径。</p><p>然后就可以在<code>conf.d</code> 目录下写<code>.conf</code> 文件了，我写了两个一个是前端资源的配置文件，一个是后端接口的反向代理。</p><p>需要注意的是，在配置前端资源的静态资源目录时，要把目录写在<code>server&#123;&#125;</code> 下用<code>root</code> 声明，如果写在<code>location&#123;&#125;</code> 下使用<code>alias</code> 声明时，会报403错误。</p><h2 id="终曲"><a href="#终曲" class="headerlink" title="终曲"></a>终曲</h2><p>最后项目就愉快的<code>run</code> 起来啦！</p><blockquote><p>使用chrome调试一定要勾选(F12)中<code>network</code>的<code>Disable cache</code> 和 <code>Preserver log</code> </p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%BC%96%E7%A8%8B/">编程</category>
      
      
      <comments>https://deusyu.app/posts/64186/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>「剑指 Offer 46. 把数字翻译成字符串」笔记</title>
      <link>https://deusyu.app/posts/49708/</link>
      <guid>https://deusyu.app/posts/49708/</guid>
      <pubDate>Fri, 20 Aug 2021 13:47:34 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>最近面试了国内互联网小厂的日常实习，他们出了一道这样的题目：</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line">把数字翻译成字符串</span><br><span class="line">有一种将字母编码成数字的方式：&#x27;a&#x27;-&gt;1, &#x27;b-&gt;2&#x27;, ... , &#x27;z-&gt;26&#x27;。</span><br><span class="line">现在给一串数字，返回有多少种可能的译码结果</span><br><span class="line">示例1</span><br><span class="line">输入</span><br><span class="line">&quot;12&quot;</span><br><span class="line">输出</span><br><span class="line">2</span><br><span class="line">说明</span><br><span class="line">2种可能的译码结果（”ab” 或”l”）</span><br><span class="line">示例2</span><br><span class="line">输入</span><br><span class="line">&quot;31717126241541717&quot;</span><br><span class="line">输出</span><br><span class="line">192</span><br><span class="line">说明</span><br><span class="line">192种可能的译码结果</span><br></pre></td></tr></table></figure><p>其实和力扣<a href="https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/">剑指 Offer 46. 把数字翻译成字符串</a>差不多，只是把范围改成[0,25]了，这道题有点像<a href="https://leetcode-cn.com/problems/qing-wa-tiao-tai-jie-wen-ti-lcof/">剑指 Offer 10- II. 青蛙跳台阶问题</a>，只是前提需在两个位置时判断这个数是否符合[0,25]，然后在做取舍。</p><blockquote><p>方法一 </p></blockquote><p>使用递归暴力方法做。</p><p>如果所示，</p><ol><li>对于“2163”，从左边开始遍历，有“2”和“163”这一支，还有”21”和“63”这只分支。</li><li>然后指针到左子树则有”1”和“63”这一支，还有”16”和“3”这一支</li><li>依次递归</li></ol><p><img src="/f79e01824ed5315462d76c3d4de898eaccf081ee25a7c78c4320dd0a8e569f94-image.png" alt="image.png"></p><p>不难看出，从左边遍历和从右边遍历是等价的。</p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">class</span> <span class="title class_">Solution</span>&#123;</span><br><span class="line">    <span class="keyword">public</span> <span class="type">int</span> <span class="title function_">translateNum</span><span class="params">(<span class="type">int</span> num)</span>&#123;</span><br><span class="line">        <span class="comment">//num/10 可取下一位</span></span><br><span class="line">        <span class="keyword">if</span>(num &lt; <span class="number">10</span>)&#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="number">1</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">if</span>(num%<span class="number">100</span> &gt;= <span class="number">10</span> &amp;&amp; num%<span class="number">100</span> &lt;=<span class="number">25</span>)&#123;</span><br><span class="line">            <span class="keyword">return</span> translateNum(num/<span class="number">100</span>)+translateNum(num/<span class="number">10</span>);</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> translateNum(num/<span class="number">10</span>);</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><blockquote><p>方法二</p></blockquote><p>通过上图我们也可以看出，有重复计算的，因此可以使用备忘录储存优化一下。</p><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">class</span> <span class="title class_">Solution</span> &#123;</span><br><span class="line">    Map&lt;Integer, Integer&gt; map;</span><br><span class="line">    <span class="keyword">public</span> <span class="type">int</span> <span class="title function_">translateNum</span><span class="params">(<span class="type">int</span> num)</span> &#123;</span><br><span class="line">        map = <span class="keyword">new</span> <span class="title class_">HashMap</span>&lt;&gt;();</span><br><span class="line">        <span class="keyword">return</span> dfs(num);</span><br><span class="line">    &#125;</span><br><span class="line">    <span class="keyword">public</span> <span class="type">int</span> <span class="title function_">dfs</span><span class="params">(<span class="type">int</span> num)</span> &#123;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">if</span> (map.containsKey(num))</span><br><span class="line">            <span class="keyword">return</span> map.get(num);</span><br><span class="line">        <span class="keyword">if</span> (num &lt; <span class="number">10</span>) &#123;</span><br><span class="line">            <span class="keyword">return</span> <span class="number">1</span>;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">if</span> (num % <span class="number">100</span> &gt;= <span class="number">10</span> &amp;&amp; num % <span class="number">100</span> &lt;= <span class="number">25</span>) &#123;</span><br><span class="line">            <span class="type">int</span> <span class="variable">t1</span> <span class="operator">=</span> dfs(num / <span class="number">100</span>);</span><br><span class="line">            <span class="type">int</span> <span class="variable">t2</span> <span class="operator">=</span> dfs(num / <span class="number">10</span>);</span><br><span class="line">            map.put(num/<span class="number">100</span>,t1);</span><br><span class="line">            map.put(num/<span class="number">10</span>,t2);</span><br><span class="line">            <span class="keyword">return</span> t1 + t2;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="type">int</span> <span class="variable">t3</span> <span class="operator">=</span> dfs(num / <span class="number">10</span>);</span><br><span class="line">        map.put(num/<span class="number">10</span>,t3);</span><br><span class="line">        <span class="keyword">return</span> t3;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><blockquote><p>方法三</p></blockquote><p>动态规划法，dp数组的定义，dp[i] 意义为在下标i之前的所有的方法</p><ol><li>如果截取的[i-2,i]的数字在[0,25]之内，那么状态转移方程为 dp[i] &#x3D; dp[i-1]+dp[i-2]</li><li>否则dp[i] &#x3D; dp[i-1]</li></ol><figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">class</span> <span class="title class_">Solution</span>&#123;</span><br><span class="line">    <span class="keyword">public</span> <span class="type">int</span> <span class="title function_">translateNum</span><span class="params">(<span class="type">int</span> num)</span>&#123;</span><br><span class="line">        <span class="comment">//动态规划法</span></span><br><span class="line">        <span class="type">String</span> <span class="variable">s</span> <span class="operator">=</span> String.valueOf(num);</span><br><span class="line">        <span class="type">int</span>[] dp = <span class="keyword">new</span> <span class="title class_">int</span>[s.length()+<span class="number">1</span>];</span><br><span class="line">        dp[<span class="number">0</span>] = dp[<span class="number">1</span>] = <span class="number">1</span>;</span><br><span class="line"></span><br><span class="line">        <span class="keyword">for</span>(<span class="type">int</span> <span class="variable">i</span> <span class="operator">=</span> <span class="number">2</span>;i &lt;= s.length();i++)&#123;</span><br><span class="line">            <span class="keyword">if</span>(s.substring(i-<span class="number">2</span>,i).compareTo(<span class="string">&quot;10&quot;</span>) &gt;= <span class="number">0</span> &amp;&amp; s.substring(i-<span class="number">2</span>,i).compareTo(<span class="string">&quot;25&quot;</span>) &lt;= <span class="number">0</span>)&#123;</span><br><span class="line">                dp[i] = dp[i-<span class="number">2</span>] + dp[i-<span class="number">1</span>];</span><br><span class="line">            &#125;<span class="keyword">else</span>&#123;</span><br><span class="line">                dp[i] = dp[i-<span class="number">1</span>];</span><br><span class="line">            &#125;</span><br><span class="line">        &#125;</span><br><span class="line">        <span class="keyword">return</span> dp[s.length()];</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><h2 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h2><p>使用记忆化递归的方法，除了根据暴力解法来进一步优化比较容易想到外，相对于动态规划，当你的子问题没有求解时，程序会自动去求解，而不需要小心翼翼的去确保顺序，减轻我们的工作量。记忆化递归相比于动态规划的劣势在空间上的优化比较困难，在面试或者刷题的时候，优先保证能求解出来，然后在做进一步的优化，所以记忆化递归在这方面比较有优势。</p><h2 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h2><ol><li><a href="https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/solution/shou-hui-tu-jie-dfsdi-gui-ji-yi-hua-di-gui-dong-ta/">https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/solution/shou-hui-tu-jie-dfsdi-gui-ji-yi-hua-di-gui-dong-ta/</a></li><li><a href="https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/solution/mian-shi-ti-46-ba-shu-zi-fan-yi-cheng-zi-fu-chua-6/">https://leetcode-cn.com/problems/ba-shu-zi-fan-yi-cheng-zi-fu-chuan-lcof/solution/mian-shi-ti-46-ba-shu-zi-fan-yi-cheng-zi-fu-chua-6/</a></li><li><a href="https://zhuanlan.zhihu.com/p/73579773">https://zhuanlan.zhihu.com/p/73579773</a></li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/categories/%E5%88%B7%E9%A2%98/">刷题</category>
      
      
      <category domain="https://deusyu.app/tags/%E7%BC%96%E7%A8%8B/">编程</category>
      
      <category domain="https://deusyu.app/tags/%E5%88%B7%E9%A2%98/">刷题</category>
      
      
      <comments>https://deusyu.app/posts/49708/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>神之途径与五等工程师</title>
      <link>https://deusyu.app/posts/3c521767/</link>
      <guid>https://deusyu.app/posts/3c521767/</guid>
      <pubDate>Mon, 12 Apr 2021 06:35:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>最近在看《诡秘之主》，克苏鲁式的小说，里面有很多设定，其中“非凡特性不灭定律”——非凡特性不会毁灭，不会减少，只是从一个承载物到另一个承载物，这个看起来就是「能量守恒定律」的克苏鲁适用版。</p><p>目前我才看到第三部，印象最深刻的是「非凡途径」，每条途径有10个序列，从9到0，每一条途径都有一个主题，会给予非凡者多种非凡能力，与普通人所区分。乌贼娘的这部小说逻辑清晰，丝丝入扣，伴随疯狂和混乱，在离奇和合理之间掌握了平衡，引人入胜。</p><hr><p>9-0 的途径，像是主角克莱恩的“占卜家”途径：序列9 - 占卜家，序列8 - 小丑，序列7 - 魔术师，序列6 - 无面人，序列5 - 秘偶大师，序列4 - 诡法师，序列3 - 古代学者，序列2 - 奇迹师，序列1 - 诡秘侍者，序列0 - 愚者。</p><p>现在我看到了克莱恩晋升的序列6 - 无面人，每到一个更高的序列不仅会加强低序列的能力，还会获得一些新的能力。</p><ul><li><h3 id="序列9-占卜家"><a href="#序列9-占卜家" class="headerlink" title="序列9 - 占卜家"></a>序列9 - 占卜家</h3>掌握占星术、卡牌占卜、灵摆、灵视以及类似的占卜能力。严重的缺乏直接的对敌手段，但是在神秘知识上比窥秘人更专业。</li><li><h3 id="序列8-小丑"><a href="#序列8-小丑" class="headerlink" title="序列8 - 小丑"></a>序列8 - 小丑</h3><ul><li><strong>技巧型格斗大师</strong>：极大的提高身体协调性， 除非极端情况否则几乎不会跌倒。 强化力量、敏捷和速度，甚至可以依靠直觉预感出目标的下一步行动。</li><li>能几乎完美的控制表情和肢体语言。</li><li><strong>飞牌</strong>：可以将任意纸张掷出，同时时期变得锋利如刀刃。</li></ul></li><li><h3 id="序列7-魔术师"><a href="#序列7-魔术师" class="headerlink" title="序列7 - 魔术师"></a>序列7 - 魔术师</h3><ul><li><strong>伤害转移</strong>：只要没有直接死亡，只要双手还能动就可以把要害位置的伤口转移至手臂等不太重要的地方，化致命伤为轻伤</li><li><strong>火焰跳跃</strong>：借助灵界实现三十米范围内在自身留下的火种和原本就有的火焰之间闪现，类似于瞬间移动</li><li><strong>空气弹</strong>：通过打响指，模拟声音等办法，制造威力和速度堪比特制左轮手枪的空气弹。随魔药的消化进度和本身序列的发展提升，到了高序列甚至可以手搓炮弹。</li><li><strong>纸人替身</strong>：关键时刻，魔术师可以短暂将携带的纸人变成自己，并与自身调换位置，这是一种相对简单的替身法术，除了能挡下致命一击，还可以有效地削弱诅咒伤害。</li><li><strong>操纵火焰</strong>：能通过简单的一个动作，操纵周围三十米范围内的火焰，也可以直接点燃这个范围里的某些物品，等魔药彻底消化或序列得到晋升，还能凭空“召唤”来焰流。</li><li><strong>制造幻觉</strong>：通过影响周围的环境，营造出具备色彩、声音和气味，近乎真实的幻觉，达到以假乱真，欺骗敌人的效果。</li><li><strong>水下呼吸</strong>：制造一根无形的看不见的空气细管，让处于水底的魔术师可以借此自由呼吸，看起来似乎变成了所谓的鱼人。空气细管的长度限制会随序列等级提高，初始只有5米。</li><li><strong>骨骼软化</strong>：能轻易挣脱手铐，绳索，以及箱子的束缚。</li><li><strong>抽纸为兵</strong>：序列8飞牌能力的进化，它不仅可以把纸张化成锋利的物品，还能短暂变成棍棒、砖头等武器。</li></ul></li><li><h3 id="序列6-无面人"><a href="#序列6-无面人" class="headerlink" title="序列6 - 无面人"></a>序列6 - 无面人</h3><ul><li>获得对他人外貌和细微动作的极强观察力和记忆力</li><li>可以改变相貌和声音成为他人的样子，但是身高体态的变化范围有限，也无法实质性的改变性别。</li><li>需要依赖对他人的仔细观察和了解才能真正做到完美的扮演，但仍然容易被观众克制。</li></ul></li></ul><p>这是一条晋升之路，我想起了吴军博士所说的五等工程师体系，这是一种对专业人士的评价体系，和“神之途径“有些对应。</p><p><strong>五等工程师体系：</strong></p><blockquote><p>第五级：能独立解决问题，完成工程工作；<br>第四级：能指导和带领其他人一同完成更有影响力的工作；<br>第三级：能独立设计和实现产品，并且在市场上获得成功；<br>第二级：能设计和实现别人不能做出的产品，也就是说他的作用很难取代；<br>第一级：开创一个产业。</p></blockquote><p>吴军博士说：</p><p><em>“以计算机行业为例，一个人毕业后，经过一段时间的锻炼，能够熟练应用工程的知识和技能解决问题，独立完成所分配的工作，而不需要他人指导，就算是一个合格的五级工程师了。”</em></p><p><em>“对于第四级的工程师，就需要有领导能力和在工程上把大问题化解为小问题的能力了。”</em></p><p><em>“第三级的工程师，就应该能够独立带领人做出一个为公司挣得利润的产品了。”</em></p><p><em>“第二级是能够做出先前没有的东西的人，世界因为他们多少有点不同。”</em></p><p><em>“第一级是开创一个产业的人”</em></p><blockquote><p>以下内容已于 2022-11-06 更新</p></blockquote><p>此五等工程师，一级工程师的贡献是二级的10倍，二级是三级的10倍，以此类推。</p><p>在吴军博士的新书《The Essence of computing》中吴军博士又加了两级，他说：“关于五级工程师的理论，我多年前就在很多场合讲过，在这个行业里很多人都知道。很多人毫不谦虚地把自己定在四级或者三级，这其实是高估了自己，或许是因为过去给出的计算机工程师最低一级是五级。一些刚毕业进入大计算机公司的人和我讲，我现在是五级，争取两年内达到四级的水平。我说：”不，你现在最多算六级，先要达到五级的水平“，于是我在五级的下面又加了两级。”</p><blockquote><p>第六级：能在他人指导下完成计算机工程师的工作。那些水平还不错的大学的计算机专业硕士毕业生，或者在一流计算机公司里工作过半年、过了见习期的新人，大约就是这个水平。</p><p>第七级：本科毕业自水平不错的大学的计算机专业，但没有参加过六个月以上实习的学生。也就是说课程的内容都学过了，就能达到这个水平。当然，从小就接触编程的计算机天才，他们可能在高中就达到了这个水平。</p></blockquote><p>这种评价体系是有物理学家朗道发明的，他一生有三个贡献，作为科学家，他发明了朗道变换，籍此获得诺贝尔奖，作为教育家，他建立了一个名为“朗道堡垒”的理论物理进阶练习，一个学习理论物理的人可以看看自己能攻克多少堡垒，了解自己的水平，通关或者放弃。第三，<em>“他提出了一种按照水平和贡献划分物理学家的方法，被称为物理学家的等级。按照朗道的理论，物理学家可以分为五个等级，第一级最高，第五级最低，每一级之间能力和贡献相差十倍。在第一级中，朗道列出了当时十几个世界级的大师，包括波尔、狄拉克等人。在二级中，全世界也只有几十位。朗道将自己只列入了2.5级，在获得诺贝尔奖之后，将自己提升到了1.5级。在所有的物理学家中，朗道给出了一个零级的大师，就是爱因斯坦。朗道等级最核心的思想是，人和人的差距，能力和能力的差距，是数量级的差别，而不是通常人们想象的差一点点。”</em></p><p>没有疑问，爱因斯坦是序列0，真神。我看到他将费曼先生排到了一级，很遗憾这只是涉及物理贡献的排名，如果是半人半神的冯诺伊曼出现的话，事情感觉会有趣起来：</p><blockquote><p>原子弹爆炸的效果当年是怎么计算的呢？</p><p>典型的解决方案场景是这样的——在洛斯·阿拉莫斯的一个大实验室里，费米用着计算尺，费曼用着手摇计算器，泰勒用着纸和笔，冯·诺伊曼用心算…他们就是这样处理海量数据的计算的，然后找出规律，把计算任务流程化，分配给下面几百个计算员</p></blockquote><p>在七等工程师体系中，杰夫·迪恩、桑杰·戈马瓦特、阿米特·辛格和安东尼·拉万道斯基可能在1.5级，安迪·鲁宾或许接近一级。真正的一级只有高德纳，或者林纳斯这种。</p><p>入行入圈，本质上都是同行的认可和评定，专业能力如此，其他亦如此。</p><p>很可惜，当我写完这篇，整本小说我都看完了，乌贼娘的想象力是无比的丰富，一些打斗的描写非常具有画面感，诡秘之主，全篇都在“诡”字，兵者，诡道也，也是“诡”，出奇让人惊叹，经常出现符合逻辑的惊喜！</p><hr><p>距离诡秘1完结两年多了，诡秘2已经确定是在明年3月4号了，时间匆匆。<img src="/%E7%A5%9E%E4%B9%8B%E9%80%94%E5%BE%84%E4%B8%8E%E4%BA%94%E7%AD%89%E5%B7%A5%E7%A8%8B%E5%B8%88-1.png" alt="诡秘2连载日期"></p><p>乌贼最近在公众号中分享了两条<a href="https://mp.weixin.qq.com/s/NGicFABGECm7eXASEuUR2g">读书笔记</a>：</p><p>其一：</p><blockquote><p>第一条来自中世纪法国宗教裁判所一份审问记录，犯人是一名低品神职人员，副助祭。</p><p>他交代自己曾经去找过妓女，做了那种事情，结果第二天脸就肿了（应该是香粉造成的过敏），他当时吓坏了，以为得了麻风，以为是罪行带来的恶果。</p><p>发现是虚惊一场后，他心有余悸，郑重立下誓言，向主承诺以后再也不和女人上床了。</p><p>读到这里，我觉得还挺正常的，符合逻辑，符合那个时代的人物特性，然后这位副助祭继续说道：</p><p>“为了遵守这一诺言，我开始玩弄年幼的男孩。”</p><p>“……”我目瞪口呆。</p><p>这什么逻辑，什么思路，合着这就不是罪行了？更严重好不好！</p><p>而这名副助祭被抓进宗教裁判所并不是因为这个罪行，而是另一个更加搞笑的理由，具体就不讲了。</p></blockquote><p>其二：</p><blockquote><p>第二条是一对夫妻间的对话（来自妻子的回忆），大概如下：</p><p>丈夫回到家里，张望了一下，问妻子：“那个教士来过？”</p><p>妻子回答：“来过。”</p><p>丈夫沉默了一会儿问：“你们干那种事了吗？”</p><p>妻子回答：“干了。”</p><p>丈夫坐下，郑重告诫：“对那个教士，我没什么可说的，但你要提防其他男人。”</p><p>看得我叹为观止，你们法国人是不是有什么问题啊？指指点点.jpg。</p></blockquote><p>还得是法国人。</p>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%94%9F%E6%B4%BB/">生活</category>
      
      
      <category domain="https://deusyu.app/tags/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <comments>https://deusyu.app/posts/3c521767/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>人生到处知何似</title>
      <link>https://deusyu.app/posts/what-is-life-like-everywhere/</link>
      <guid>https://deusyu.app/posts/what-is-life-like-everywhere/</guid>
      <pubDate>Sun, 29 Nov 2020 16:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<blockquote><p>恨是比爱强大得多的力量，人类历史上各种各样的牢固同盟，都是被恨—而不是爱—凝聚起来的。历史上的很多高明领袖，都很懂得制造并且操纵恨意。——熊逸</p></blockquote><blockquote><p>Heart is what separates the good from the great - Michael Jordan</p><p>心灵是区分优秀和伟大的因素。</p></blockquote><h1 id="正文"><a href="#正文" class="headerlink" title="正文"></a>正文</h1><blockquote><p>人生到处知何似，应似飞鸿踏雪泥。</p></blockquote><p>在我读到的传统中国人中，有两个神一般的男人，鲁迅和苏轼。小时候看到一个破旧的笔记本上用钢笔写成的《定风波》，“竹杖芒鞋轻胜马，谁怕，一蓑烟雨任平生”、“归去，也无风雨也无晴”。</p><p>苏轼被称为一个完美中国人的典范，他人生经过大起大落，但是了解他的人都知道，无论情况多么糟糕，他总可以从容不迫、泰然自若。</p><p>这样的心理素质到底是怎样炼成的，我们能不能学得到？</p><p>熊逸说：我们大部分没法学。他说苏轼性格上，开朗，社交欲望和社交能力都强的令人惊异；环境，宋代估计也是中国历史上最好的朝代，全部时代里对知识分子最优待的，搁到明清，人估计早被整没了；才学、名望和地位。</p><p>同样的事情放到普通人身上，大概是承受不住的。但是，我们仍然能够学习到一件事：经过理性反思得来的人生态度。</p><blockquote><p>《宝绘堂记》里面苏子说了一句话：”君子可以寓意于物，而不可以留意于物“。</p><p>字面上看，“寓”是暂住，“留”是长住。寓意和留意的区别，我们可以理解成住旅馆和买房的区别。</p><p>在旅馆住一晚，看到房间窗外有漂亮的风景，室内有别致的装修，欣赏一下，高兴一下。哪怕只是一张便笺纸，只要有别致的设计，就能让自己把玩一阵。就算旅馆垮了，自己也不心疼，该上路照样上路。</p><p>但买房就不一样了，把房子当成要住一辈子的私人产业来打理，从选择地段、户型到装修设计、家具布置，每个环节都能把心操碎，每个细节都可以纠结好久，一旦发觉买错了就会懊悔不迭。</p><p>生活“不可以留意于物”，意味着对任何事物都不该沉迷进去。古汉语的“物”涵盖很广，一切人，一切事，一切东西，都是物</p></blockquote><p>“你拥有的东西，</p><p>最终会左右你，</p><p>所以要精心选择“</p><p>想想希腊中的皮格马利翁，西方和东方还是有所不同的，我自始自终是有一点强迫症和恋物的，有时候常常为了3C的评测做出一些对比，这样浪费了本来属于专注的时间，由此观之，日式的物哀式审美还是放到文学作品中再品吧。</p><p>苏轼和他弟弟苏辙有一对和诗。</p><p>怀渑池寄子瞻兄</p><blockquote><p>相携话别郑原上，共道长途怕雪泥。</p><p>归骑还寻大梁陌，行人已度古崤西。</p><p>曾为县吏民知否？旧宿僧房壁共题。</p><p>遥想独游佳味少，无方骓马但鸣嘶。</p></blockquote><p>苏轼给弟弟回诗：</p><blockquote><p>人生到处知何似，应似飞鸿踏雪泥。</p><p>泥上偶然留指爪，鸿飞那复计东西。</p><p>老僧已死成新塔，坏壁无由见旧题。</p><p>往日崎岖还记否，路长人困蹇驴嘶</p></blockquote><blockquote><p>那是宋仁宗嘉祐六年（1061年），“三苏”刚刚名动京城的时候。</p><p>苏洵在京城编撰礼书，苏辙和王安石闹了好大的矛盾，索性辞去任命，在家侍奉父亲。等苏轼赴任的时候，苏辙一路把他送到郑州。</p><p>兄弟告别之后，苏辙写了一首《怀渑池寄子瞻兄》，寄给苏轼，诗里怀念两兄弟当初一起参加科举，在渑池的一所寺庙借宿，还一起在墙上题诗。苏辙的诗里满是怀旧的伤感，而苏轼这首作为答复的诗，给弟弟讲了一个人为什么应该豁达的道理。</p><p>首联先发问：人生漂泊无定，到底像什么呢？然后自问自答：应该像冬天里一只失群的大雁。</p><p>颔联做出解释：这只大雁偶然间找个地方歇脚，在雪地上留下了脚印，但很快它又飞走了，哪会去挂怀那些脚印呢？</p><p>颈联既是承接，也是写实，说我们当初寄宿的那所寺庙倒是还在，但接待过我们的那位老和尚已经不在了，他的骨灰被藏在一座新修的塔里，寺庙的墙壁严重破损，我们曾经写在墙上的诗当然看不到了。</p><p>尾联转入回忆：你还记得吗？当初我们走过一段很艰险的山路，马死了，我们只好骑着瘸驴代步，好不容易才到了渑池。</p><p>这首《和子由渑池怀旧》就属于体现理趣的典范之作。它很会讲道理，但讲得自然晓畅，毫无掉书袋的痕迹。</p><p>细看才能体会到苏轼修辞手法的巧妙：颔联是一个流水对，上下联一起构成一个完整的语句。颈联有当句对，同一句里“老僧”对“新塔”，“坏壁”对“旧题”。</p><p>更特别的是，前四句一气呵成，连贯成一体，这样的写法相当少见，还给我们留下了一个“雪泥鸿爪”的成语。</p><p>社会总是千变万化，人生总是千头万绪，最难认清的就是控制力的边界。</p><p>哪些是自己可控的，比如学习一门知识，那就不妨执着起来，念念不忘，必有回响。</p><p>哪些是自己不可控的，比如借助这门知识，小到独善其身，大到兼济天下，那就不妨换上雪泥鸿爪的态度，任凭青石的街道向晚，任凭三月的春闱不揭，而你，永远记得自己只是过客，不是归人。</p><p>惟其如此，你那哒哒的马蹄才会成为一个美丽的错误，像苏轼那样；而不是惨痛的错误，像王安石那样</p></blockquote><p>更多的移步到《熊逸说苏轼》</p><p>平民窟的也有希望吧，祝我们都有平静的内心，愿幸运女神永临你我！</p><hr><blockquote><p>更新于2022.03.18 </p></blockquote><p>如今迁移blog，时隔一年多，变故颇多，又经历了第一次被毁约，心情五味杂陈。一直以来我经常持有“尽自己所能，剩下的交给上帝”，但是当厄运降临自己时，又是那么的不甘、难以接受，翻看了以前的笔记，“往日崎岖还记否，路长人困蹇驴嘶”，内心逐渐平静下来，希望早日度过艰难时刻。</p><hr><blockquote><p>以下更新于2024.11.12</p></blockquote><p>最近我的好友，拿到了一家互联网大厂的offer，没想到他也知道雪泥鸿爪，宋冬野有一首同名的歌。<br>跟我的经历类似，从一开始的迷茫到有了目标，也不是为了证明什么。<br>我记得去年从重庆回来，跟他聊了很多，说他要准备实习，要学习编程，准备面试，到现在有可以接受的offer，也算是流泪撒种的，必欢呼收割，我最喜欢看到别人做事成功。<br>他走的每一步，我当时都走过，这应该算underdog的英雄之旅，真真切切的为他高兴。</p><p>”往日崎岖还记否，路长人困蹇驴嘶”，翻过荆棘之处，回首看，一次次的小步迭代，铸就每一次自信，自信源于做成一件件小事，这些事情可以让人保持激情，保持亢奋。<br>“充满激情可以增加25点智力”<br>经历是比天才更需要的东西。</p><p>到如今，无论发生什么事情，我都能坦然处之，没有苏子的超世之才，但也应该有了坚韧不拔之志。<br>难的不是想要做什么，而是是否能从当下开始。<br>有读者发邮件跟我说，受到我部分的鼓舞，那时我意识到，可能有影响到某些人，于是在我遭受更多挫折的时候，我都尽量保持乐观，保持传递正向的情绪。</p><p>其实如今，最难的不是做事情，而是人与人之间的关系，这点是我无法应对和参悟的，付出在这里大概率不会有收获，但怎么又会不尝试呢？</p><p>说回乐观，近年来全球经济下行、到处传递悲观的情绪，但以深度学习为核心的LLM模型及其与多模态AI的结合正在飞速发展，依赖于不断优化的Scaling Laws。可以说，AI技术的进步几乎是日新月异。今天OpenAI推出了o1，明天Anthropic更新了Claude 3.5-Sonnet。产品从去年每个都有空试一下，到今年井喷式的推出，遍历式的体验应该是不行了。</p><p>“从大家普遍把图灵测试看作很神秘的东西到o1的诞生，这样的转变只经历了短短两年时间。这种巨变在人类文明史上都是罕见的，而我们赶上了。”</p><p>能做的就是，好好锻炼身体、好好保持身心健康，时代洪流奔涌而来，不落牌局便是胜利。</p><p>更多的时候，要相信，冥冥之中，宇宙在帮助你。</p><h1 id="参考"><a href="#参考" class="headerlink" title="参考"></a>参考</h1><ol><li>林语堂《苏东坡传》</li><li>得到APP《熊逸说苏轼》第29讲 苏轼的人生对我们有什么启发？</li><li>Kevin Kelly: 68 Bits of Unsolicited Advice</li></ol>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%94%9F%E6%B4%BB/">生活</category>
      
      
      <category domain="https://deusyu.app/tags/%E9%9A%8F%E6%83%B3/">随想</category>
      
      
      <comments>https://deusyu.app/posts/what-is-life-like-everywhere/#disqus_thread</comments>
      
    </item>
    
    <item>
      <title>分享我最喜欢的英文诗</title>
      <link>https://deusyu.app/posts/9dcd104a/</link>
      <guid>https://deusyu.app/posts/9dcd104a/</guid>
      <pubDate>Mon, 19 Oct 2020 16:00:00 GMT</pubDate>
      
        
        
      <description></description>
        
      
      
      
      <content:encoded><![CDATA[<p>分享我最喜欢的英文诗。</p><h1 id="Mutability"><a href="#Mutability" class="headerlink" title="Mutability"></a>Mutability</h1><p>I</p><p>The flower that smiles to-day</p><p>To-morrow dies;</p><p>All that we wish to stay</p><p>Tempts and then flies.</p><p>What is this world’s delight?</p><p>Lightning that mocks the night,</p><p>Brief even as bright.</p><p>Ⅱ</p><p>Virtue,how frail it is!</p><p>Friendship how are!</p><p>Love,how it sells poor bliss</p><p>For proud despair!</p><p>But we,though soon they fall,</p><p>Survive their joy,and all</p><p>Which ours we call.</p><p>Ⅲ</p><p>Whilst skies are blue and bright,</p><p>Whilst flowers are gay,</p><p>Whilst eyes that change ere night</p><p>Make glad the day;</p><p>Whilst yet the calm hours creep,</p><p>Dream thou-and from thy sleep</p><p>Then wake to weep.</p><hr><p><em>以下是我最喜欢的一个中译：</em></p><h1 id="无常"><a href="#无常" class="headerlink" title="无常"></a>无常</h1><p>今天还在微笑的花朵，<br>明天便会凋零。<br>我们所希望留驻的，<br>诱惑之后便飞逝；</p><p>世间快乐究为何物！<br>恰如闪电嘲笑黑夜，<br>光亮一片，瞬间消逝。<br>美德何其脆弱！<br>友谊何其稀有！<br>爱情以不足道的幸福<br>换来高傲的绝望！</p><p>它们很快跌落，而我们还得活下去，<br>再没有它们带来的欢乐，<br>没有我们称为“我们的”一切。</p><p>趁天空还蔚蓝光明，<br>趁花朵还鲜艳芳菲，<br>趁夜晚未到，眼睛还能看到白日的美好，<br>趁平静还在缓缓流淌，<br>入梦吧，待从梦中醒再哭泣。</p><hr><p>这首诗是我高一的时候刷花瓣网刷到的，当时不知道是雪莱的诗，后来上大学从图书馆翻到了雪莱的诗集，才发现喔原来是雪莱的啊，如获至宝，翻开了一些，兜兜转转，最后还是最喜欢这首^_^。</p><p>我高中时候开始喜欢读日本作家川端康成的小说，当时好朋友给了我一本《雪国》，才发现雪还能那么美，那么哀伤。这开启了我欣赏物哀式审美，以及引发我读更多日本作家的小说…<br>话说回来，这首诗后来读也不是很物哀，相反还有一些积极的因子。我有一段时间想起李白的《春夜宴从弟桃花园序》，其中“浮生若梦，为欢几何？”，觉得有些相像，有一点及时行乐的意思，但后来又觉得，雪莱喜欢人，强调人性，断然是为了歌颂什么，又或是…</p><hr><blockquote><p>更新于Wed May 11 00:06:46 CST 2022</p></blockquote>]]></content:encoded>
      
      
      <category domain="https://deusyu.app/categories/%E7%94%9F%E6%B4%BB/">生活</category>
      
      
      <category domain="https://deusyu.app/tags/%E8%AF%97%E6%AD%8C/">诗歌</category>
      
      
      <comments>https://deusyu.app/posts/9dcd104a/#disqus_thread</comments>
      
    </item>
    
  </channel>
</rss>