安静的机器

关于「不做多余的事」的一点想法

随笔杂谈# 随笔# 工程哲学

一台安静的机器,通常意味着设计者替使用者做完了大部分决定。

好的构建工具不该让你读完它的文档才能用起来。它应该有一个能跑通的默认值集合,然后在你真的需要时,才把旋钮交出来。

我越来越喜欢这种顺序:

  1. 先把最小的闭环跑通;
  2. 再把闭环里的每一环做得可控;
  3. 最后才考虑把可控的环做成可替换的。

反过来做 —— 先设计可替换的抽象,再找地方用 —— 得到的通常是一堆看似灵活、实际没人用的接口。

复杂性不会消失,它只会被搬到不会伤人的地方。

这句话我在很多场合引用过。它解释了为什么静态站点生成器比 CMS 更让人安心:把复杂度提前到构建期,运行时就没有东西可以出错了。

当然,代价是构建期要处理的东西变多。这就是增量构建存在的理由 —— 让「提前处理」这件事本身也变得便宜。

至于什么样的复杂度算「不会伤人」,我的判断标准很简单:出错的时候,能不能在一分钟内定位到具体是哪个文件、哪一行。

除非特别说明,本站文章采用 CC BY-NC-SA 4.0 许可协议。

在 GitHub 编辑

相关阅读

1 阅读里程碑

开站

为什么又写一个博客

平台换过好几个,文章搬来搬去,最后剩下的只有一堆打不开的链接。 所以这次换个思路:内容就是文件,文件就在仓库里。 写作 = 编辑 发布 = 归档 = Gi…

随笔# 随笔# 建站