写作是思考的压缩
一句“这个方法更好”怎样变成可以讨论的判断?从一个小例子出发,练习压缩、反驳与展开。
你准备写一句:“这个方法比原来的好。”
手停在“好”字后面。是更快、更准确,还是更容易维护?在什么输入下?代价是什么?脑子里仿佛已经完整的判断,到了纸上,却连第一句话都站不稳。
写作在这里像一次压缩:把同时涌来的例子、直觉和条件,放进读者能依次理解的句子。但压缩并不只是把字删少。你必须决定,哪些东西一旦省略,意思就会变。
第一次压缩:先找一句能被追问的话
先用一句话说清主张,不急着让它漂亮。拿一段构造的测量记录练习:两种处理程序在同一输入上分别用了 10 秒和 8 秒。
“新方法更好”过于宽泛。“新方法在这份输入上的运行时间少了 2 秒”就有了可讨论的形状。它保留了比较对象、指标和范围,读者也知道该追问什么:测了几次,是否包括加载,输出是否一致?
一句话版本的用途,是让主张显形。它不必独自承担完整证据。
第二次展开:替一个认真反对你的人说话
最有帮助的反驳往往不激烈:“是不是只是第二次运行有缓存?”
如果这个问题会动摇结论,正文就应该回应。可以补充冷热启动对照,也可以承认当前只测了一个条件。不能用更肯定的语气填补缺少的测量。
试着写下:什么观察出现以后,我愿意收回或缩小这句话? 若完全想不出来,主张可能还太模糊,或你还没有认真检查它。
反驳是不是越多越好?
不必把所有想象得到的例外堆进正文。优先处理那个最可能改变读者决定的反驳。其他条件可以放在批注里;尚未解决的问题就明确留下。
第三次压缩:用一个例子试试它能不能落地
“记录要有上下文”听起来没有错,却很难指导下一次记录。换成一个例子:git restore 文件 默认恢复的是暂存区版本;暂存区与提交不同,就不能把它记成“回到上次提交”。
这个例子让“上下文”变得具体:它至少包括文件在工作区、暂存区和 HEAD 里的状态。想完整走一遍,可以读一周后还能用的笔记。
例子也会检查你的主张。若只有一个特定情形说得通,就把范围写成那个情形,不必让小发现冒充普遍规律。
留给下一段文字的练习
找一段最近写下的观点,按顺序做三件事:
- 写一句保留必要条件的主张。
- 写一个会改变结论的反驳。
- 写一个别人能独立理解的例子。
再回到原文,只补上真正缺少的部分。你可能会发现,需要修改的是判断本身,而不只是句子。
这里把“压缩”当作写作的比喻,并不声称字数越少,思想越好。一篇教程为了让读者走通,常常需要展开步骤;一张私人便条则可以依赖双方已有的背景。合适的长度,取决于读者拿到文字后还缺什么。