← 返回 我的博客

知错能改的飞驰人生

程序员眼中的人心 · 改一行,或继续走

一件事让你反复回想的时候,怎么区分它是复盘还是回放?——判据只有一个:回来的时候手上有没有东西。
本系列第 5/5 篇:程序员眼中的人心。这是本系列最后一篇。

先说这一系列在讲什么

这个系列写下来,其实只在讲一件事:代码怎么活的,人怎么活的。
代码只往前跑、只认当下这一行、过去改不了、看镜子只为定位。人反过来:总想回滚、总被过去的残影干扰、把复盘做成回放。
不是要你去模仿机器。是提醒你:那个 bug 是有名字的。 它叫"总想运行昨天的那行代码"。

三个动作,收成日常

我在自己身上真正做到的,只有三件事,说得土一点,但有效。
一、动手前先想"这一行"。
要改代码、要开会、要发消息之前,停半秒,问一句:现在这一行是什么。这一行的方向对了,效率就已经定了。它不需要什么宏大的顿悟,只需要不被"我当时要是"劫走。
二、给回望设一个专门的时机。
回望本身不坏,坏的是它在工作日早上八点半随机弹出,劫走你最重要的一段时间。做法很土但有效:每天固定一个时间(比如下班前十分钟)专门回望,其他时候来了一律记下来、推迟到那一刻。
不删,只推迟。回望一旦有了固定去处,它就不再劫持当下的推进。
三、用一个具体的问题结束回望。
不是"这件事怎么样",是"下一次遇到同类情况,第一件事做什么"。这是整系列的判据,也是我唯一真正会用的那一句。
有了答案,回望就结束;没有答案,它就是在原地重演。

我现在的一行代码

写这个系列的时候,我脑子里的图是这样一个画面:
人每天跑着几万行代码,其中很大一部分,本该用 undo 实现的操作,被我们用另一种方式写了出来——反复地读同一段日志、反复地刷同一段对话、反复地在脑子里重跑那个已经结束的会议。
程序没有 undo。人有。人的 undo 不删任何东西,它只是让你回到你出发的地方。
而 undo 之后,真正的动作只有两个:改一行,或者继续走。
改一行,就写下来。 因为下一次你想 undo 的对象,只能是你自己写下的东西。
这是我目前唯一还在练的事,也是这个系列唯一想留下的东西。
写代码的人,最该向代码学的一件事是:它永远只往前跑。而我们能向它学的,全部内容就是这一句。

本系列完。共 5 篇:代码只活在当下这一行 → 会说话就能写代码 → 过去只能读,不能回滚 → 回望即重写 → 知错能改的飞驰人生。
本系列完。共 5 篇:代码只活在当下这一行 → 会说话就能写代码 → 过去只能读,不能回滚 → 回望即重写 → 知错能改的飞驰人生。

评论0

暂无评论 · 来做第一个说点什么的人
评论经邮件直达博主,博主整理后公开显示。参考 sive.rs 的静态评论理念。
💬评论