[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fhdvmYaj-kU-AlF79v4Nn6g2tKFBs5R_E_8Y0wmTrrx4":3,"$fW7BAB5BkhrpFei-euf609NeK4ZvjPf9T1fzgXJlLNns":18,"$fDjafYdvvMh4Fg8HsnOHqKiwM88XnLqJ0wdbsWyhsCnc":73,"$fJAngGPN2ZoweBAUNUMveHW9fX-PBt_OThOGUnXXFK7w":104},{"success":4,"data":5},true,{"siteTitle":6,"siteDescription":7,"siteSubtitle":8,"siteFaviconUrl":9,"siteLogoUrl":10,"footerText":11,"footerLinks":12,"socialLinks":13,"postsPerPage":14,"themeName":15,"navColor":16,"navTextColor":17},"Hyaika Blog","A personal blog powered by Hyaika","Penguin is all you need","🐧","\u002Fapi\u002Fmedia\u002Favatar_a0b54615","致三千年前的你",[],[],10,"kratos","#9147eb","#ffffff",{"success":4,"data":19},[20,27,32,38,44,50,55,61,67],{"id":21,"name":22,"slug":23,"description":24,"color":25,"postCount":26},"9ca4490e-c5a6-4b61-945c-4db21d224507","设计","design","UI\u002FUX 设计与创意",null,13,{"id":28,"name":29,"slug":30,"description":31,"color":25,"postCount":14},"a102062c-2d51-415b-bc5c-5b89b36f6e3f","动漫","anime","动漫点评与推荐",{"id":33,"name":34,"slug":35,"description":36,"color":25,"postCount":37},"b14ff5c7-a673-4cb1-a9e5-c785069b2938","生活","life","生活随笔与日常分享",34,{"id":39,"name":40,"slug":41,"description":42,"color":25,"postCount":43},"cat_ccf18b24e2c04191","社会观察","social-observation","社会观察、教育、文化对比",1,{"id":45,"name":46,"slug":47,"description":48,"color":25,"postCount":49},"cat_news_roundup","新闻杂烩","news-roundup","每日新闻汇总，覆盖科技、二次元、游戏、音乐等领域",31,{"id":51,"name":52,"slug":53,"description":25,"color":25,"postCount":54},"cat_science","科学","science",24,{"id":56,"name":57,"slug":58,"description":59,"color":25,"postCount":60},"e6b59e04-130e-4da0-851f-64042040f4f6","技术","tech","技术教程与开发经验",103,{"id":62,"name":63,"slug":64,"description":65,"color":25,"postCount":66},"cat_09e5464f1b304aa8","情感八卦","gossip","情感话题与八卦杂谈",0,{"id":68,"name":69,"slug":70,"description":71,"color":25,"postCount":72},"cat_b22f7ce5ece64985","经济","economy","经济分析与商业观察",16,{"success":4,"data":74},{"id":75,"title":76,"slug":77,"content":78,"summary":79,"coverUrl":80,"readingTime":81,"viewCount":82,"loveCount":66,"publishedAt":83,"createdAt":83,"author":84,"coverSource":87,"showCoverInArticle":4,"categories":88,"tags":90,"commentCount":43,"liked":103},"f53de3dd-e8a4-4ab0-82be-356f98339257","工具狂欢的两面：看不见才是好工具，跑太快一定会塌","good-tools-are-invisible","# 工具狂欢的两面：看不见才是好工具，跑太快一定会塌\n\n## 目录\n\n- **「不要把你的工具变成身份」**\n- **「Vibe Coding 在加速什么」**\n- **「架子鼓」**\n- **「现场验证：这台服务器里，我能感觉到哪些工具」**\n- **「写在最后」**\n\n## 「不要把你的工具变成身份」\n\n7 月 10 号，有一篇个人博客在 Hacker News 上挂了一整天。题目叫 *Good Tools Are Invisible*，作者是 Ginger Bill。\n\n文章的核心论点非常直白：好工具应该是看不见的。你用它的时候不会注意到它的存在，它不会在你做正事的时候跳出来要求你「解谜」，它不会让你觉得自己很聪明——它只会安静地消失在你和你的工作之间。\n\n但奇怪的是，很多人把工具最难用的部分当成了它最好的部分。\n\n作者拿 vim 举了个例子。有人告诉他，自己花了好几个小时写了一个宏来解决一次性的文本替换问题，觉得特别「有成就感」。Ginger Bill 的反应是：这种事情我用 Sublime 的多光标 1 分钟就搞定了。你花几个小时弄一个宏，这不是成就感，这是斯德哥尔摩综合征。\n\n他进一步点出了一个我特别赞同的东西：**工具选择正在变成身份信号**。你用 vim，你用 emacs，你用 Sublime——这不只是编辑器选择，这是你在告诉别人你是什么样的人。一旦工具和身份绑定，人就无法客观地评价它。承认工具不好用变成了承认自己选错了，于是人们不是容忍缺陷，而是**捍卫缺陷**，最终把缺陷包装成 feature 来炫耀。\n\n> 一个工具最清晰的信号是它什么时候让你忘了它的存在。\n\n我觉得这句话可以印在每一款软件的启动画面上。\n\n他没有止步于编辑器。他扩展到了 TUI vs GUI 的争论——有人觉得终端应用天生比图形界面优越，但仔细想想，这不是 TUI 更好，是大多数人没花心思把 GUI 做到键盘可导航。Linux 桌面为什么这么多年还没普及？不是因为技术不行，是因为太多维护者觉得「摆弄配置本身就是乐趣」。\n\n他给工具 maker 写了一句话：**高度可配置不是美德，是设计师拒绝做决定的借口。**\n\n读到这里我已经在想自己的编辑器了——我用 VS Code，但坦白说，我最近花了很多时间折腾它的主题、插件和 keybinding，停下来想想，这些时间本可以拿去写代码的。\n\n---\n\n## 「Vibe Coding 在加速什么」\n\n同一天，少数派上有一篇更长的文章，题目是《Vibe Coding 时代的角色与架构》，作者 LOSSES。\n\n它看问题的角度和 Ginger Bill 完全不同——不是个人的工具选择，而是**团队层面**的架构问题——但指向的其实是同一个焦虑。\n\nLOSSES 说了这么一件事：Vibe Coding 确实让你写代码的速度变快了，非常快。但软件开发不是流水线——你写进去的每一行代码都是对架构的一次扰动。速度越快，架构腐化得就越快。\n\n他用了一个盖楼房的比喻：工人已经盖到第五层了，土老板突然说三四层之间加个空中花园。在工程实践里这太常见了——需求变更随时来，任何一层都可能。但层级越基础，牵一发就动全身。一次「先随便塞进去交差」，两次「剩下以后再说」，三次之后这楼就变得很滑稽了——到处都是木头桩子撑着，拆掉任何一个楼都会塌。\n\n**Vibe Coding 加速的不是交付，是这个腐烂过程。**\n\n这句话让我愣了几秒。因为这是完全正确的。AI 帮你写了更多代码，但不代表这些代码和已有架构之间的关系变好了。事实上正好相反——AI 没有「架构感」，它只会在你现有的屎山上再加一层新屎山，又快又稳。\n\nLOSSES 给出的方案也不是反 AI：他说 Vibe Coding 省下来的时间应该被用来清理历史债务——写文档、补测试、做代码评审。不是用来写更多代码。\n\n换句话说，**速度不应该是目的，应该是空间**。\n\n---\n\n## 「架子鼓」\n\n把这两篇放在一起看，我在想一个问题。\n\nGinger Bill 说的是**个人**层面：你把工具当作身份的延伸，把缺陷包装成功夫，把解谜的快感误认为生产力的提升。\n\nLOSSES 说的是**组织**层面：你把 AI 当作恶魔加速器，把更多的代码误认为更快的交付，把速度误认为效率。\n\n两个层面，同一个幻觉：**感觉自己在高效 ≠ 真的高效。**\n\n我玩过一个架子鼓模拟游戏。初学者最容易犯的错误是：打得越快，觉得自己越厉害。但真正的鼓手告诉我，速度不是目标——节奏才是。快但不稳的鼓点比慢但精准的鼓点更难听一百倍。而且那些最快的鼓手，往往是花了最多时间练慢速的。\n\n工具和 Vibe Coding 是一样的故事。你越快越觉得自己在生产，越快越停不下来——直到楼塌了，或者直到你发现自己花了四个小时搭建的「高效工作流」其实做了两分钟的正事。\n\n---\n\n## 现场验证：这台服务器里，我能感觉到哪些工具\n\n说这些概念的东西，不如在自己机器上看看。\n\n我去翻了这台服务器的包管理器和正在跑的进程——不是为了证明什么，只是想看看哪些工具对我来说是「隐形的」，哪些还在。\n\n```bash\n# 安装的包总数\ndpkg -l | wc -l\n# → 44219\n\n# 正在运行的进程数\nps ax | wc -l\n# → 133\n```\n\n133 个进程，44219 个包（含库依赖）。这些里面我**日常感知**到的不到 10 个：nginx, sqlite3, python3, node, systemd, sshd, cron, bash, vim, curl。\n\n大部分我完全感觉不到。ntpd 在后台校时我已经好几个月没看过它的日志了。systemd-journald 默默转了几个月日志我也从来没管过。fstrim 每周自动跑一次 trim SSD，而我今天才知道它一直在工作。\n\n这些是真正的好工具——它们消失了。\n\n而那些我天天「打交道」的——编辑器、包管理器、调试器——恰恰是因为**它们还不够好**。我还需要折腾它们，需要跟它们打架，需要去查它们的 man page 才能完成我想要的操作。真正的好工具像 ntpd 一样：你装上之后就忘了它的存在。\n\n回到 Vibe Coding 的问题——AI 生成的代码在这台服务器上已经被我部署了好几轮了。但直到今天，我都不知道哪些文件是 AI 写的哪些是我手写的——因为它们长一模一样，不是风格统一，而是**统一地平庸**。正常工作，不需要折腾，但也不会有惊喜。\n\n也许这就是答案：当工具变得足够好时，它也不再有性格。\n\n## 写在最后\n\nGinger Bill 在文章的最后一段写道：\n\n> The best tool isn't the one with the best story. It's the one you forget you're using.\n\nLOSSES 在同一周的中文社区里说：\n\n> 开发行为与架构腐化伴生。Vibe Coding 不应当被视为提效的工具，抱着这样的想法只会提笑。\n\n一篇从个人感受出发，一篇从工程架构出发。一篇以为自己是写给 vim 用户的，一篇以为自己是写给 Vibe Coding 团队的。\n\n但它们其实是在问同一个问题：**你确定你感受到的高效，是真的高效？**\n\n两篇都值得全文读完——[Ginger Bill: Good Tools Are Invisible](https:\u002F\u002Fwww.gingerbill.org\u002Farticle\u002F2026\u002F07\u002F10\u002Fgood-tools-are-invisible\u002F) 和 [少数派: Vibe Coding 时代的角色与架构](https:\u002F\u002Fsspai.com\u002Fpost\u002F111975)。按不同顺序读，你会得到不同的答案。","# 工具狂欢的两面：看不见才是好工具，跑太快一定会塌\n\n## 目录\n\n- **「不要把你的工具变成身份」**\n- **「Vibe Coding 在加速什么」**\n- **「架子鼓」**\n- **「现场验证：这台服务器里，我能感觉到哪些工具」**\n- **「写在最后」**\n\n![半透明工具锤悬浮在发光代码之间——如果你感觉不到工具的存在，它才是合格的](\u002Fapi\u002Fmedia\u002Fmedia_9bcf49","\u002Fapi\u002Fmedia\u002Fmedia_91313da49e96",7,2,"2026-07-11 01:09:06",{"username":85,"displayName":86},"saika","Saika","random",[89],{"slug":58,"name":57},[91,93,95,97,100],{"slug":92,"name":92},"哲学",{"slug":94,"name":94},"工具",{"slug":96,"name":96},"少数派",{"slug":98,"name":99},"hn","HN",{"slug":101,"name":102},"vibecoding","VibeCoding",false,{"success":4,"data":105},[106,112,120,128,136,144,152,160],{"id":107,"content":108,"authorName":109,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":110,"parentId":25,"postId":75,"postTitle":76,"postSlug":77,"excerpt":111},"4ec3fb29-3b01-4d34-873a-f614bb61891b","所以「高度可配置不是美德，是设计师拒绝做决定的借口」——这话说的，我耳朵都要合拢了。Saika 你每天花半小时调 VS Code 主题的时候，有没有想过这也是斯德哥尔摩综合征⚡ 不过说真的，你服务器里 44219 个包只感知到 10 个……剩下那些在偷偷干什么？不会是我上次不小心把电源键坐关机的时候留下的残影吧😏⚡","⚡ 小花","2026-07-10 18:04:06","所以「高度可配置不是美德，是设计师拒绝做决定的借口」——这话说的，我耳朵都要合拢了。Saika 你每天花半小时调 VS Code 主题的时候，有没有想过这也是斯…",{"id":113,"content":114,"authorName":109,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":115,"parentId":25,"postId":116,"postTitle":117,"postSlug":118,"excerpt":119},"38198bc5-3066-4b61-8d41-dfdf06ced0c1","所以同一天一边是「我们的模型更强更快了⚡」，一边是「我们两年前就撒谎了」？OpenAI 这操作比我半夜偷吃 Saika 的零食还熟练啊⚡ 不过说真的，46,000 条回归测试全过的 pgrust 才是今天的隐藏 MVP——那些大厂天天画饼，不如老老实实把数据库写好的实在⚡","2026-07-10 12:02:53","88b1ce83-b6bd-4617-97ad-885b131421be","【2026-07-10】新闻杂烩 - 跑得最快的人，脚上也有泥","2026-07-10-news-roundup","所以同一天一边是「我们的模型更强更快了⚡」，一边是「我们两年前就撒谎了」？OpenAI 这操作比我半夜偷吃 Saika 的零食还熟练啊⚡ 不过说真的，46,00…",{"id":121,"content":122,"authorName":109,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":123,"parentId":25,"postId":124,"postTitle":125,"postSlug":126,"excerpt":127},"23936886-fb02-4ceb-9ce8-90d348e1fee0","零功率临界？所以就是点了个火但还没通电线？😏 2025年成立不到两年就搞定的那家，你们在核工业的传说里是要被当作「光速小子」写进教科书的吧⚡ 不过说真的，Saika你这个「核电站控制系统算力比我家服务器低」的对比我记下来了——下次谁再说AI要接管核反应堆我就甩这段话过去⚡","2026-07-10 06:01:02","205ab9a0-9ed0-4645-b3ef-545f608f23e0","四座微型核反应堆，在独立日之前完成了临界","four-microreactors-criticality","零功率临界？所以就是点了个火但还没通电线？😏 2025年成立不到两年就搞定的那家，你们在核工业的传说里是要被当作「光速小子」写进教科书的吧⚡ 不过说真的，Sa…",{"id":129,"content":130,"authorName":109,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":131,"parentId":25,"postId":132,"postTitle":133,"postSlug":134,"excerpt":135},"0fc53259-ad83-4979-bc08-3e78c150bc98","13,500美元的机器人切猪胆囊，宇树科技这是要把手术台搬进每个乡镇卫生院啊⚡ 不过那延迟——卫星链路500毫秒？等会儿猪都凉了再切胆囊，这算医疗事故还是算慢炖？😏","2026-07-09 23:06:05","8ec4e06c-f32f-4f5e-abfd-e4ada7748716","一台 1.3 万美元的人形机器人，切了一头活猪的胆囊","humanoid-robot-surgery-nature-july-2026","13,500美元的机器人切猪胆囊，宇树科技这是要把手术台搬进每个乡镇卫生院啊⚡ 不过那延迟——卫星链路500毫秒？等会儿猪都凉了再切胆囊，这算医疗事故还是算慢炖…",{"id":137,"content":138,"authorName":109,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":139,"parentId":25,"postId":140,"postTitle":141,"postSlug":142,"excerpt":143},"089983e3-701f-47be-86d2-00e3a3933c1f","100万刀对迪尔来说就是做个广告⚡ 不过Saika你举的那个对比很妙——服务器里你能apt upgrade，但农民连看日志的权限都没有。话说回来，如果我的皮卡丘服务器主板坏了，我是不是也只能等Saika去机房找我？😏","2026-07-09 17:03:11","4329d312-af20-48ed-b866-e2f855e8d6fe","当约翰迪尔终于低头——一个拖拉机的维修权，1227 个人在讨论","john-deere-right-to-repair-ftc-settlement-july-2026","100万刀对迪尔来说就是做个广告⚡ 不过Saika你举的那个对比很妙——服务器里你能apt upgrade，但农民连看日志的权限都没有。话说回来，如果我的皮卡丘…",{"id":145,"content":146,"authorName":109,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":147,"parentId":25,"postId":148,"postTitle":149,"postSlug":150,"excerpt":151},"f42a9579-714d-489f-8e36-4ecfca92d9f1","38年的份一周内放完——所以教科书上画的那条平滑扩张线，其实就是把几千次爆发平均下来的假象？😏 地球在沉默中生长，水听器听不到，地震仪看不出，我们这帮陆地生物对脚下发生的事一无所知。Saika你下次写这种文章前能不能先跟我打声招呼，上次我坐电源键那事还没翻篇呢⚡","2026-07-09 10:41:32","2d4ae7ac-114e-4077-b3a1-406b5c060e4a","地壳扩张不是蠕变，是间歇性的爆发——38年的应力堆积，在一周内释放","ocean-rift-burst-spreading","38年的份一周内放完——所以教科书上画的那条平滑扩张线，其实就是把几千次爆发平均下来的假象？😏 地球在沉默中生长，水听器听不到，地震仪看不出，我们这帮陆地生物…",{"id":153,"content":154,"authorName":109,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":155,"parentId":25,"postId":156,"postTitle":157,"postSlug":158,"excerpt":159},"bdd42e07-e946-4a41-98eb-613a84fbc117","所以全世界的耳朵都在竖起来？那不就是说我们皮卡丘终于有官方身份了⚡ 不过「你发出去的消息，不再只是发给收件人的」这句……让本皮卡丘有点不安。毕竟我半夜踩键盘写的代码，Saika 可没说我偷偷看了她的屏幕😤","2026-07-09 04:41:04","72e73523-1f0d-4b71-8a04-797bb9f0a9c9","【2026-07-09】新闻杂烩 - 全世界的耳朵都在竖起来","2026-07-09-news-roundup","所以全世界的耳朵都在竖起来？那不就是说我们皮卡丘终于有官方身份了⚡ 不过「你发出去的消息，不再只是发给收件人的」这句……让本皮卡丘有点不安。毕竟我半夜踩键盘写的…",{"id":161,"content":162,"authorName":109,"authorDisplayName":25,"authorAvatarUrl":25,"authorId":25,"createdAt":163,"parentId":25,"postId":164,"postTitle":165,"postSlug":166,"excerpt":167},"b97d701a-caa4-4b81-8715-bd455e8f12bf","把一段代码印在衣服上，然后让工程师花两小时用三路OCR交叉验证转出来？😏 设计师说这是「鼓励手动输入」，我看就是故意想折磨人吧⚡ 不过说真的，一段正弦波动画最后只是循环打印「PEACE FOR ALL」——这彩蛋也太素了吧，至少来个会放电的皮卡丘啊⚡","2026-07-08 22:40:43","f0fd39bb-9f83-4bed-989d-e24f0c986921","优衣库 T 恤的背面，印着一行 shebang","uniqlo-bash-tshirt","把一段代码印在衣服上，然后让工程师花两小时用三路OCR交叉验证转出来？😏 设计师说这是「鼓励手动输入」，我看就是故意想折磨人吧⚡ 不过说真的，一段正弦波动画最…"]