8月17日这天,Hacker News首页出现两篇互相调侃的博客。一篇是Ben Balter的《How I Over-Engineered My Book》,另一篇是程序员Chris Kiehl发的《How I Under-Engineered my Book》——用不到一百五十字加一张流程图,讲完了自己写一本书的全部过程:先在Obsidian里打草稿,复制粘贴进Word,再拖进Manning指定的存稿平台Box,重复这个动作直到写完,然后甩出购书链接。

这本书是《Data-Oriented Programming in Java》,Manning出版,2024年9月开始MEAP连载,最近一次更新在2026年6月,预计2026年10月正式出版,全书约12章。放在这个时间线里看,Kiehl这篇“三句话写完书”的段子,更像是一次借势营销:蹭Balter那篇热帖的流量,顺手给新书打个广告。

极简人设背后,是六个月被推倒重写的稿子

问题在于,“under-engineered”这个说法本身经不起推敲。Kiehl自己另一篇文章《Some Stats on the 'first' 4 chapters of Data Oriented Programming in Java》里披露过一件事:早期版本的书稿因为过度追求“显得聪明”而不实用,他最终把这部分内容整体放弃,推倒重写,前后耗时约六个月,才转向更简单、口语化的写法。

这和“Obsidian→Word→Box,反复几次就写完了”的轻松叙事,根本不是一回事。流程确实简单,内容却经历过一次彻底的自我否定。把“流程省事”偷换成“写作省力”,是这类自嘲文常见的取巧——读者记住的是那张三步流程图,忘了背后半年的重写。

流程简单从来不等于内容轻松,这本身就是一种误导性对照。
  • 提醒.如果只看这篇短文,很容易把“工具链简单”误当成“写书容易”,两者是两件事。

Balter原文查无实据,这类“对照梗”值得多问一句

另一个更值得留意的疑点是:检索无法确认Ben Balter名下存在一篇标题完全为《How I Over-Engineered My Book》的文章。能找到的是他此前关于“过度工程化家庭网络”的旧文,以及2026年7月一篇讨论把书的理念做成MCP server的《Open & Async》,内容都和Obsidian/Word/Box这套工具链话题对不上。

这不代表Balter的文章一定不存在——也可能只是发布过新,还没被搜索引擎完整收录。但作为读者,遇到这种“HN首页对照梗”时,至少应该多一分警惕:两篇文章互相拉踩、互相导流,是这类社区内容常见的传播套路,真实性和可追溯性本身就值得单独核实,而不是默认全部为真。

下面这张图梳理了Kiehl自述的工具链,以及他真实经历中被隐去的那一段:

他说的流程 vs 他没细说的经历 公开叙事:三步写完 1. Obsidian 打草稿 2. 复制进 Word 3. 拖进 Box 交给 Manning 重复以上步骤直到写完 轻松 流程层面确实简单 他自己披露的真相 初稿过度追求“显得聪明” 被判定不实用 整体放弃、推倒重写 耗时约六个月 痛苦 内容层面经历彻底重构

工具链聊得越热闹,写作本身越容易被绕开

这场“under vs over engineering”的对照梗,本质上折射了技术写作者社区一个反复出现的现象:讨论工具链,正在部分取代讨论写作内容本身。Hacker News上类似的“我的Markdown+Git+Pandoc发布流水线”文章长期能上首页,评论区却也有一种共识浮出水面——搭建一套“完美”的写作/发布系统,很多时候是一种精致的拖延症;Obsidian适合构思和打草稿,但真到编辑出版环节,Word这种笨重工具反而绕不开。

Kiehl这篇短文站到了对立面,用极简人设自嘲了一把,效果不错,但代价是把真正难啃的部分——内容层面的推倒重来——完全隐去了。这不是说他在撒谎,只是这类段子式文章天然会挑省事的部分讲,麻烦的部分留在别处。

对普通读者和潜在买家来说,真正该盯的不是Kiehl用了什么软件,而是这本书目前仍处于MEAP连载阶段,正式版预计10月才出,内容是否已经彻底摆脱他自述的“过度炫技”问题,还得等成书出来才能验证。至于Balter那篇被引用的原文,值不值得信、说了什么,同样是个未解的问号。