上个月有人问我,半年前那次接口超时最后是怎么修的。我说我记得查过,好像是连接池的问题。对方没再追问,我自己心里却发虚:我确实处理过,但说不清是哪一天,改了哪个参数,为什么那么改。
那天晚上我翻了两小时聊天记录和提交历史,最后在一个分支的 commit message 里找到答案。找到之后我坐了一会儿,感觉不太对劲:一件事我花了半天解决,半年后连当时的结论都调不出来,那这半天等于只解决了一半。
第二天我开始每天记三个小观察。
三条的规矩
定规矩比记内容重要。我给自己定了几条,回头看,真正起作用的也就这几条:
数量固定为三条。 上限三条是为了防止我把它写成日记。一旦允许写第五条,我就会开始写「今天很累」这种第二天自己都不想再看的话。下限三条是为了防止偷懒:只写一条很容易,但常常是在凑第二条的时候,我才想起白天某件被自己忽略的小事,而那件往往比第一条更有价值。
至少一条要具体到能复述。 具体的标准是:换一个人看这句话,能知道改了什么、改成了什么数字。比如「给 nginx 的 proxy_read_timeout 从 60 调到 120,导出报表不再 504」是具体的;「优化了超时配置」不是。
允许一条是别人的原话。 同事、领导,甚至某篇评论区里的一句话,只要当时让我停顿了一下,就抄下来,并且带上是谁说的、在什么场景下说的。这条后来出奇地有用。
允许一条是没想通的问题。 我给它打上 #疑问,不要求当天解决,也不要求解决。
保存方式我用最简单的纯文本,一个月一个文件,追加写入。手机上用备忘录写,同步回本地的仓库目录。格式大概是这样:
1 | 2024-03-06 #操作 给 nginx 加 proxy_read_timeout,60 -> 120。超时发生在下载阶段,不是查询。 |
三条写满就停,不追加。写不出来就写「今天没有」,不补,第二天也不补昨天的。周末不写。允许重复,同一天想记两条同类的东西也没关系。
第一个变化:我开始抓细节
用这套规矩记了大概两周,我发现自己白天的注意力变了。以前开完会,我记得的是「会上讨论了一下发布流程」,现在我会去抓那个能被复述的点——谁提出了什么、最后定成了什么、有没有人明确反对。这倒逼我在会上认真听,而不是一边听一边等散会。
第二个变化来自检索。我习惯每周日花十分钟 grep 一下当月的文件。第三个月的时候,我发现「超时」这个词出现了七次,集中在两个模块上。单看每一次都是独立的偶发问题,攒到一起才看出这是模式,不是个例。这个结论我拿去做了一次专项排查,比继续一个个救火划算得多。
第三个变化是引用变得可靠。以前跟人沟通,我常说「我记得之前有人提过……」,对方通常不认。现在我能翻出原话,带上日期和场景,讨论就从「有没有这回事」直接跳到「那要不要改」。这个差别比我预想的大。
顺带还有一个副产品:写周报、写月总结,甚至写点东西投稿,素材不用临时想。翻一翻这个月记的东西,挑出三条展开就够。
它没解决的部分
有段时间,大概在第四个月,这件事变成了任务。我下班路上会突然想起今天还没记,然后打开备忘录,写两条不痛不痒的,再凑一条。那种状态下记下来的东西,我后来一次都没翻过。所以我干脆停了两周,恢复之后再写,反而正常了。这条经验是:宁可空一天,不要凑数。 凑出来的记录会稀释整个文件,让你以后不愿意打开它。
我也不用它记情绪。「今天很烦躁」写下来,第二天看只会更烦躁,而且没有任何可执行的信息。情绪该处理就去处理,不该进这个文件。
入口的摩擦是个真问题。我试过用网页版的笔记工具,结果因为要点开浏览器、登录、找对页面,三天就放弃了。现在的做法是手机上有一个能一键打开的备忘录,本地文件同步过来,写入到添加文件的过程不超过十秒。超过这个时间,习惯就养不住。
最麻烦的是 #疑问 那类条目会堆积。我现在攒了三十多条,真正回头解决的不到十条。有些是当时的问题后来自己消失了,有些是当时以为重要、现在看根本不重要。剩下几条还挂着,每次翻到都有点刺眼。
我也说不清这个方法本身有多大的功劳。也许不记这三条,我照样会记住重要的东西,只是没意识到。但我能确认的是:回看的时候,这个文件确实在替我想事情,而我的记忆不会。
这个月我把 #疑问 里最早的三条拎出来重看了一遍,其中一条已经挂了一个月没动过。我打算给自己定个期限:下个月底它如果还在,就删掉,承认自己根本不会去查它。留着一个假装要解决的问题,比没有这个问题更消耗人。
评论