不要等准备好了再开始:完美主义者的自救指南

有时候,我们不是没有能力做好一件事。 我们只是花了太多时间,等待一个“不可能出现的完美开始”。


我曾经很羡慕那些行动很快的人。

他们想到一个想法,就马上开始。

想学一个东西,就直接打开电脑。

想做一个项目,就先写第一行代码。

而我不一样。

我经常会陷入一种奇怪的状态:

我知道自己应该开始。

我也知道这件事情很重要。

但是总觉得,还差一点准备。

“再看一个教程。”

“再了解一下这个技术。”

“等我把基础打牢一点。”

“等我规划完整一点。”

然后,一天过去。

一周过去。

一个月过去。

事情还是停留在“准备阶段”。

后来我才发现,有一种拖延,并不是因为懒。

恰恰相反。

它来自一种很强烈的期待:

我希望第一次做,就能做好。


那个永远没有开始的项目

以前我想做一个小工具。

一个很简单的网站。

功能也不复杂:

记录自己的学习进度,然后生成一些统计信息。

当时觉得这个想法很好。

于是我开始准备。

我先研究技术方案。

前端用什么?

后端用什么?

数据库怎么设计?

以后如果用户多了,架构怎么办?

要不要提前考虑性能?

要不要设计一个漂亮的系统结构?

这些问题越来越多。

然后,我开始搜索资料。

收藏教程。

看文章。

下载项目。

我甚至专门写了一份项目规划文档。

里面有:

项目目标。

开发路线。

功能列表。

未来规划。

那份文档看起来非常专业。

如果有人看到,可能会觉得:

“这个项目马上就要开始了。”

但是只有我知道。

两个星期过去。

代码目录依然是空的。


那时候我突然意识到一个问题:

我不是不会做。

我是不敢开始。

因为开始意味着暴露问题。

意味着写出不好的代码。

意味着承认:

“我的第一个版本可能很普通。”

而完美主义最害怕的,正是这个瞬间。

它希望你直接交付一个优秀的作品。

但是现实是:

所有优秀的东西,都是从一个很普通的版本开始的。


学习不是准备,学习是行动

后来我慢慢发现,完美主义者很容易犯一个错误。

就是把“学习”变成“准备”。

我们不断学习。

不断收集资料。

不断寻找更好的方法。

看起来一直在进步。

但实际上,我们只是停留在起点附近。

因为准备永远没有结束。

你今天觉得自己需要学习框架。

明天觉得需要学习设计模式。

后天觉得需要学习底层原理。

最后发现:

还有很多东西不会。

于是继续准备。

真正的学习,其实是在做的过程中发生的。

你只有写出代码,才知道哪里不会。

你只有遇到问题,才知道该查什么。

你只有把东西做出来,知识才真正属于你。


五分钟奇迹

后来我找到一个简单的方法。

叫“五分钟开始”。

规则很简单。

不要告诉自己:

“我要完成这个项目。”

不要告诉自己:

“今天我要学习三个小时。”

这些目标太重了。

只告诉自己:

“我做五分钟。”

五分钟以后,如果真的不想继续,那就停下来。

没有惩罚。

没有失败。

只是完成一个五分钟的小动作。

但奇妙的是,大多数时候,五分钟之后,我已经进入状态了。

因为真正困难的部分,从来不是工作本身。

而是从休息状态切换到工作状态。

开始,就已经解决了一半的问题。


先做一个垃圾版本

后来我又尝试了一件事情。

故意做一个很差的版本。

真的很差。

界面很简单。

功能很少。

代码也不漂亮。

但是它能运行。

当我第一次打开那个页面的时候,我突然觉得轻松了。

因为之前那个项目,一直存在于我的想象里。

想象中的它:

应该很完整。

应该很优秀。

应该很专业。

所以它越来越重。

但是当它真的变成一个粗糙的小东西以后,我发现:

其实也没什么。

它只是一个开始。

而开始之后,就有无限可能。


很多人害怕第一个版本太差。

但是换一个角度看:

第一个版本本来就应该差。

它的任务不是证明你的能力。

它的任务只是证明:

这个东西可以存在。

之后才是修改。

优化。

迭代。

完善。

不要憋一个“大招”。

先丢出一个“小石头”。

有东西以后,才有方向。


不要收藏一百个教程

还有一个变化,是我减少了自己的资料收藏。

以前我喜欢收集教程。

看到好的文章保存。

看到好的课程收藏。

看到好的项目收藏。

最后收藏夹越来越大。

但是项目还是没开始。

后来我发现:

太多资料,有时候也是一种负担。

因为你会觉得:

“我还没有准备充分。”

所以现在我会限制自己。

只选择一个最短的教程。

目标只有一个:

把项目跑起来。

遇到具体问题,再去搜索。

不要提前解决所有未来的问题。

因为很多问题,只有真正开始以后才会出现。


给自己准备一个“烂作品集”

后来我还做了一件有点奇怪的事情。

我建立了一个“烂作品集”。

里面放的都是一些不成熟的小东西。

一个简单脚本。

一个实验页面。

一个小工具。

一个失败的尝试。

以前我觉得这些东西没有价值。

现在反而觉得,它们很重要。

因为它们记录了一件事情:

我曾经开始过。

后来我给自己定了一个小规则:

每周做一个粗糙的小东西。

不用优秀。

不用发布。

甚至不用让别人看到。

只是训练自己:

不要害怕开始。


接受第一个版本的不完美

现在回头看,很多拖延其实来自一个错误的期待:

我们希望第一次尝试,就接近最终答案。

但现实不是这样。

写程序如此。

写文章如此。

做产品如此。

学习任何新东西都是如此。

第一个版本通常都不好。

这是正常现象。

允许自己先完成,再完美。

不是降低要求。

而是承认成长需要过程。

你不能站在岸边学习游泳。

也不能一直准备,直到自己自动学会。

很多事情,只有开始以后,才会越来越清楚。


写在最后

如果你现在也有一件事情,一直放在计划里。

一个想学的技能。

一个想做的项目。

一个想开始的改变。

不要等那个“完美时刻”。

它可能永远不会出现。

今天就做一点点。

五分钟也可以。

写第一行代码。

打开第一个文件。

做一个很粗糙的版本。

让它先存在。

很多路,不是在准备的时候出现的。

而是在你走出去以后,慢慢出现的。