我优化性能的那几天,其实在优化自己的情绪
我优化性能的那几天,其实在优化自己的情绪
那几天我盯着一个冷启动数字,从 380ms 改到 310ms,再改到 260ms。
后来我看清了:我不是在追求快,我是在用”能测的数字”来压住”测不到的不安”。
一、可测的东西会变成镇静剂
x-notepad 冷启动那阵子,我每天打开一个秒表。
改依赖加载顺序,快 20ms;把首屏那个重组件延后,又省 30ms;字体预加载去掉一次往返,再省十几毫秒。每省一点,心里就稳一点。
问题在于,同一时间真正让我不安的事,一件都没解决:
- 编辑器换来换去,我还没确认 CM6 是不是终局
- 插件走 WASM 之后,安装体验比以前麻烦,用户会不会因此不装
- 两个笔记应用功能重叠,我不知道该往哪个押注
这三件事都没有数字可测。而冷启动有毫秒,有对比,有”变好了”的即时反馈。于是我一遍遍回去改启动速度——因为那是我唯一能确定自己在进步的地方。
二、一个只有我自己在意的指标
回头看,260ms 这个数字对我的实际体验几乎没有意义。打开软件,260ms 和 380ms 的差别,人是感知不到”快”,只能感知”不慢”。而我为这 120ms 花了大概三天。
真正值得花时间的是别的事:第一次打开时,界面会不会空着等半秒;大文件打开时滚动会不会顿;搜索是不是打完字就出结果。这些才是用户能感觉到的部分,而它们都不在我那个秒表里。
我不是在测性能,我是在测”我还能不能控制点什么”。
三、这种心态的其他出口
想清楚这一点之后,我开始能认出同一套心理的其他变体:
- 反复调整 CSS 的圆角与间距,改了又改,因为视觉上”感觉差一点”——但差的那一点说不出来
- 给项目补齐 README、LICENSE、CONTRIBUTING、CI 徽章,文档比功能完善得多,因为整理这件事有明确的完成态
- 在一个已经能用的构建脚本上继续抽象,抽出三层配置,因为”更干净”是可以判定的
这些事本身都不坏,甚至可以说是好习惯。但它们的共性是:成本可控,收益可测,风险为零。而真正决定项目成败的那些事,恰恰全都不可测、有风险、可能白做。
懒惰不会让我做这些事,焦虑才会。
四、我现在怎么打断这个循环
给自己定了一条粗糙的规矩:当一个动作的预期收益小于 10%,而我已经做了超过两小时,就停下来问一句「我是在解决它,还是在躲另一件事」。
这句话问出来的时候,答案通常很难看。但至少能把我从秒表里拽出来,回到那个真正卡住的地方——那个没有数字、没有对比、也没有人告诉我该选哪条的地方。
于是我又开始做那些更难受的决定了:哪个功能该砍、哪个方向该停、哪个项目该让它就这样放着。这些事做完之后不会有任何数值变绿,脑子里也不会有”我又优化了 20ms”的清脆感觉。
只有一种很闷的踏实。
五、关于”感觉差一点”
我还是会为了一个间距改十遍。我不打算戒掉这个习惯,它是手艺的一部分。
但我现在会先问一句:这个”差一点”,是因为用户会感觉到,还是因为我不安心?
前者该改,后者改不完。
- 相关仓库:xfm0797/x-notepad
评论