从月球轨道望向地球

从足够远的地方回头看,许多曾经压得人喘不过气的事,只占很小的一块地方。

图片:NASA,Apollo 8 “Earthrise”,公共领域。

我很熟悉一种状态。

项目还有几个接口没接,测试覆盖率不够,文档只写了一半,比赛材料明天要交,新的技术栈也想学。电脑屏幕上开着十几个窗口,脑子里还挂着更多没有关闭的任务。

一天结束时,明明做了不少事,心里留下的却很少是“今天完成了什么”。更常见的念头是:还有这么多没做。

做项目久了,人很容易把项目管理的方法用到自己身上。

我们给自己排版本,列里程碑,找短板,做复盘。学业、工作、创业、技术、社交、身体,每一项都像仪表盘上的指标。只要其中有一块不够漂亮,就觉得当前版本还不能发布。

项目需要验收,这很正常。麻烦在于,人一旦也开始等待验收,日子就会变得很累。

那个永远不会到来的“完成状态”

写软件时,我们至少知道一个版本什么时候算完成。需求可以冻结,测试可以通过,代码可以打标签,服务可以上线。

人没有这样的时刻。

你学会了一门语言,还会看到另一门语言;做完一个项目,还会看到更复杂的项目;拿到一次成绩,下一次比较很快就会开始。收入、能力、影响力、关系、身体状态,没有哪一项会在某一天弹出绿色提示:

All checks passed.
You are now good enough.

这个提示永远不会出现。

可很多人仍在等它。等自己更优秀一点,再允许自己放松;等事情全部处理完,再认真生活;等得到足够多的认可,再相信自己做得还不错。

结果通常是,休息像一次违规操作,快乐要先通过审批,连吃顿饭、散个步,都带着“我是不是在浪费时间”的负罪感。

我们以为自己在追赶目标,其实是在把生活不断延期。

指标很有用,也很危险

数据能让模糊的问题变清楚。代码行数、测试覆盖率、提交次数、阅读量、排名、收入,这些东西方便比较,也方便制定计划。

但指标有个天然缺陷:它只能记录方便计算的部分。

一次耐心的沟通很难量化。你在一个错误方向上及时停手,报表里看不到。你花几个小时把一个朋友从低谷里拉出来,任务列表可能仍然显示“今日进度不足”。你拒绝了一次看起来很漂亮、实际会拖垮团队的机会,也不会生成一张增长曲线。

当一个人太依赖指标,他会慢慢只承认那些可以展示的价值。

于是学习变成证书,写作变成阅读量,开源变成 Star,创业变成融资数字,运动变成手表上的卡路里。事情本身退到后面,证明自己正在做事变得越来越重要。

这也是为什么,有些人的日程排得很满,心里却越来越空。他完成了大量可以截图的成果,却说不清这些成果把自己带去了哪里。

我不是反对计划。没有计划,很多事情确实走不远。只是计划应该服务于生活,而不是接管生活。

人不是等待修复的缺陷集合

工程训练会让人习惯发现问题。看到系统,我们先找瓶颈;看到代码,我们先找漏洞;看到流程,我们先找能够优化的地方。

这种能力放到工作中很有价值,放到自己身上时要小心。

一个人如果每天只盯着自己的缺点,很快就会把自己理解成一张 Bug 清单:表达不够好,技术不够深,执行力不够强,情绪不够稳定,人脉不够广,身体也没练好。

然后开始逐项修复。

可人不是等待修复后才能投入使用的软件。你在不完整的时候,也已经在生活;你有缺点的时候,也仍然值得被认真对待。

接受这一点并不会让人停止进步。恰恰相反,它能让进步少一点恐慌。

出于恐惧的努力通常很急:我必须马上赶上别人,我不能落后,我要证明自己有价值。

出于选择的努力会稳定很多:我愿意把这件事做好,因为它值得;我想成为这样的人,所以今天向前走一点。

两种努力看起来都很忙,长期结果却完全不同。前一种会把每次失败解释成对自我价值的否定,后一种只会把失败当作一次具体反馈。

有些事情不该被优化

技术行业很喜欢效率。更快的构建、更短的反馈、更少的人工步骤,这些进步当然值得追求。

但生活里有些东西,一旦开始优化,味道就变了。

和家人吃饭不需要吞吐量。朋友聊天不需要严格控制议题。读一本暂时派不上用场的书,不必计算投资回报。走一段没有目的地的路,也不需要产出总结。

这些事情看起来没有帮助你“升级”,却在悄悄决定升级之后的你还剩下什么。

很多人并非没有时间,而是无法接受时间没有产出。他们可以连续工作十小时,却很难心安理得地发呆半小时。不是因为发呆真的有罪,而是因为没有任务完成时,他们不知道该怎样确认自己的存在。

这很危险。

当一个人的价值完全依赖产出,停下来就会感到空虚,失败就会感到崩塌。工作不再是生活的一部分,它成了证明自己配得上生活的证据。

完成一些事,也放过一些事

人的精力有限,这句话听起来像常识,真正接受却不容易。

接受精力有限,意味着你必须承认:有些想法不会实现,有些技术不会学到精通,有些机会必须放弃,有些人会误解你,有些阶段就是做不到面面俱到。

这不一定是失败,也可能只是选择开始有了代价。

《一个人做全栈,最后往往是在替六个岗位加班》里,我写过个人开发者经常承担远超“写代码”的工作。类似的事情也发生在生活里。我们同时要求自己做优秀的学生、开发者、创业者、朋友、家人,还要自律、健康、情绪稳定,最好每一项都有漂亮结果。

没有哪个系统能在资源不变的情况下无限增加职责。人也一样。

真正困难的部分,往往不是坚持,而是承认某些事情暂时不做。把几个真正重要的目标留下,允许其他部分普通一点。不是所有模块都要在同一个版本里上线。

生活没有最终发布日

我们总觉得等这个阶段忙完就好了。

等考试结束,等项目上线,等公司稳定,等论文投出去,等下一次迭代完成。

阶段会结束,新的阶段也会很快出现。今天用来等待,明天通常也会继续等待。

所以我现在更愿意提醒自己:事情可以分阶段,生活不能一直处于预发布状态。

可以认真工作,也可以在工作没有完全结束时去吃饭。可以对未来有野心,也可以承认今天已经很累。可以继续改进自己,也可以在尚不完美的时候,为已经走过的路感到一点高兴。

AI时代,我们更应该学会什么?判断、验证、创造,这些都很重要。可还有一件事容易被忽略:不要把自己的价值外包给任何一套评价系统,包括成绩、市场、算法、流量,也包括自己脑子里那个永远不满意的验收员。

项目失败了,可以复盘,可以重构,可以重新开始。

人累了,需要的有时不是新的优化方案,只是睡一觉,见见想见的人,或者暂时什么都不证明。

你当然还可以继续向前。

只是别等到所有检查都通过,才允许自己活着。