我以前一直觉得自己有拖延症。
很多事情明明知道应该做。
但就是迟迟不开始。
文章想写。
先放一放。
项目想做。
再研究一下。
运动计划制定好了。
明天开始。
一个重要决定需要做。
先等等。
有时候甚至已经把所有准备工作都做好了。
工具装好了。
资料找好了。
时间也留出来了。
但真正到了开始的时候,还是会出现一个很奇怪的念头:
“要不再等等。”
以前我会骂自己。
不自律。
执行力差。
意志力不够。
想得太多。
行动太少。
然后开始制定新的计划。
结果计划本身也开始拖延。
后来我突然意识到:
作为程序员,我如果遇到一个系统问题,不会一上来就骂系统。
我会问:
Bug 到底是怎么产生的?
那为什么面对自己的拖延,我第一反应却是责备自己?
于是我开始尝试用一个很老的工程方法:
5 Whys。
也就是:
连续问五次“为什么”,一直追到问题背后的根因。
拖延,可能只是表面现象
假设:
我有一篇文章一直没有写。
第一个为什么:
为什么没有写?
因为我总觉得没有准备好。
那继续问。
为什么觉得没有准备好?
因为我担心写出来的东西不够好。
再问。
为什么担心不够好?
因为我希望这篇文章能够代表自己的水平。
再问。
为什么它必须代表自己的水平?
因为我担心别人评价。
再问。
为什么别人的评价会影响我?
因为我把一次内容输出,和“证明自己有没有能力”联系到了一起。
到这里,我突然发现:
原来的问题是:
“我拖延写文章。”
但真正的问题可能是:
我把一次普通的输出,变成了一次对自我价值的考试。
这时候再告诉自己:
“你要自律一点。”
其实没有太大意义。
因为真正的问题根本不是不会写。
而是:
启动成本里混进了心理成本。
第一个为什么:为什么我没有开始?
这是最表层的问题。
通常答案都很简单:
没有时间。
太累。
没准备好。
事情太多。
不知道怎么开始。
没有动力。
这些答案没有错。
但它们通常还不是根因。
比如:
“没有时间。”
那就继续问:
为什么没有时间?
是事情太多?
还是优先级太低?
还是不敢拒绝别人?
还是自己把时间都分配给了即时任务?
“没准备好。”
那继续问:
为什么一定要准备好才能开始?
是信息真的不足?
还是害怕犯错?
“没有动力。”
那继续问:
为什么需要等有动力才能开始?
很多时候,所谓的“拖延”,只是一个现象。
真正的问题藏在后面。
第二个为什么:到底是什么让我不愿意开始?
这一层开始有意思。
我后来发现,拖延背后经常不是懒。
而是某种阻力。
可能是:
害怕失败。
害怕做不好。
害怕被评价。
任务太模糊。
任务太复杂。
回报太遥远。
结果不确定。
甚至只是:
不知道第一步是什么。
比如“做一个副业”。
听起来是一件事情。
但实际上里面可能包含几十个任务:
研究方向。
确定用户。
设计产品。
做内容。
找渠道。
测试需求。
定价。
交付。
复盘。
大脑面对这样一个模糊任务,很容易选择:
先不做。
所以有时候不是拖延。
而是:
任务没有被正确拆解。
第三个为什么:为什么这个阻力会存在?
如果发现自己害怕失败。
继续问:
为什么害怕失败?
如果发现任务太复杂。
继续问:
为什么没有把它拆开?
如果发现害怕评价。
继续问:
为什么一次输出会让我感觉自己正在接受评价?
这一步非常重要。
因为它开始从“行为”进入“认知”。
同样一个任务。
不同的人会有完全不同的启动成本。
有人觉得:
“写篇文章而已。”
有人觉得:
“我要证明自己有没有能力。”
两个人面对的是同一件事。
但心理成本完全不同。
所以:
拖延的严重程度,有时候取决于我们给任务附加了多少额外意义。
第四个为什么:这个模式从哪里来的?
继续往下。
如果我发现:
“我总是害怕做不好。”
那我会继续问:
为什么我这么在意“做好”?
是不是过去长期形成了一种习惯:
只有做好,才值得被认可?
是不是长期把结果和自我价值绑定?
是不是已经习惯先把事情想得非常完整,再开始行动?
这些东西往往不会在一天之内形成。
它们可能来自:
过去的工作方式。
成长经历。
长期形成的思维模式。
甚至只是职业习惯。
程序员尤其容易掉进一个坑:
希望先把系统设计完整,再开始编码。
因为我们习惯确定需求。
设计架构。
考虑边界。
处理异常。
最后才开始实现。
但人生里的很多事情,没有办法这样做。
你根本不可能在开始之前知道所有变量。
所以:
有些人生问题,必须在运行中设计。
第五个为什么:真正应该改变的是什么?
最后一个为什么,不是为了找到一个听起来很深刻的答案。
而是为了找到:
真正可以改变的地方。
比如最终发现:
我拖延写作,不是因为懒。
而是因为我把“写一篇文章”理解成了“证明自己的能力”。
那么解决方案就不是:
每天逼自己写两个小时。
而是重新定义任务:
第一版只负责写出来。
不负责优秀。
不负责获得认可。
不负责证明什么。
甚至允许:
写得很普通。
发布以后,再根据反馈迭代。
这样一来,任务的心理成本就下降了。
再比如:
如果发现拖延做副业,是因为任务太大。
那么就不要写:
开始做副业。
而是改成:
今天只访谈一个潜在用户。
如果发现拖延学习,是因为不知道学了有什么用。
那就不要再制定:
每天学习一小时。
而是先定义:
我要用这个知识解决一个什么真实问题?
根因改变以后,行为才有可能真正改变。
我后来发现,拖延其实有很多种
以前我把所有拖延都叫“拖延症”。
后来发现,这其实很粗暴。
至少有几种完全不同的情况。
不清晰型拖延
不知道从哪里开始。
解决方式不是逼自己行动。
而是把任务拆小。
完美主义型拖延
担心做不好。
所以迟迟不开始。
解决方式可能是降低第一版的质量要求。
先允许 V0.1 存在。
恐惧型拖延
知道应该做。
但害怕结果。
解决方式不是增加执行力。
而是降低失败成本。
价值冲突型拖延
嘴上说重要。
内心其实并不认同。
这种情况下,再强的时间管理也很难解决。
需要重新检查:
这件事情真的重要吗?
精力不足型拖延
不是不想做。
是真的没有资源。
睡眠不足。
长期疲惫。
工作已经消耗了大部分精力。
这种时候继续骂自己“不自律”,反而可能是在掩盖真正的问题。
所以现在如果我发现自己拖延,我不会马上说:
“我怎么又拖延了?”
我会先问:
这是什么类型的故障?
5 Whys 最重要的,不是“五次”
其实“5 Whys”并不意味着一定要机械地问五次。
有时候问三次就找到根因。
有时候问七次,才发现真正的问题。
甚至有时候:
第一个“为什么”得到的答案就是错的。
所以真正重要的不是数字。
而是:
不要停在第一个解释上。
“我懒。”
通常不是根因。
“我没时间。”
通常也不是根因。
“我没动力。”
更不是。
这些很多时候只是现象的描述。
继续往下追:
为什么?
为什么?
为什么?
直到找到一个真正可以改变的系统变量。
我现在会给自己的拖延做一张简单的 Debug 表
以后再遇到长期拖延的事情,我会尝试这样写:
Bug:
我一直没有开始做某件事。
Why 1:
为什么没开始?
Why 2:
为什么会出现这个原因?
Why 3:
这个阻力从哪里来?
Why 4:
我背后的假设是什么?
Why 5:
真正需要改变的是任务、环境,还是我的认知?
最后再加一个非常重要的问题:
我能做的最小修复是什么?
不是:
“从明天开始彻底改变自己。”
而是:
今天把任务拆成一个10分钟可以完成的动作。
把一个大项目变成一个小实验。
把“必须做好”改成“先完成第一版”。
把一个模糊目标变成一个明确的问题。
把一个高风险决定变成一次低成本测试。
这才是真正可执行的修复。
写在最后
我现在越来越不喜欢“拖延症”这个词。
因为它很容易把一个复杂的问题,直接变成对人的定义。
“我就是拖延的人。”
“我就是执行力差。”
“我就是没有自制力。”
一旦这样定义自己,问题就结束了。
因为你已经把 Bug 写进了自己的身份。
但如果换一个角度:
我只是遇到了一个还没有找到根因的行为问题。
事情就完全不同了。
它可以被观察。
可以被拆解。
可以被验证。
可以被修复。
甚至可以重新设计。
所以现在,当我再次发现自己迟迟不愿意开始一件事情时,我会先停下来。
不急着骂自己。
也不急着制定一个新的计划。
我会打开自己的“人生 Debug”日志。
然后写下:
Bug:我又拖延了。
接着问:
为什么?
再问:
为什么?
再往下。
直到找到真正的问题。
因为很多时候,
我们以为自己缺的是执行力。
最后才发现:
真正需要修复的,从来不是“行动”本身。
而是那个让我们一直不愿意行动的系统。
继续 Debug。
找到根因。
再决定,
到底是给自己打一个补丁,
还是重新设计一次。