番茄工作法——原理剖析与实践
是否还在为专注工作时被打断而苦恼?
是否因为久坐而导致颈肩与腰椎的疼痛?
是否每天喝水都不足1L?
那不妨试一试:番茄工作法。
即每工作25分钟休息5分钟。工作的25分钟称为一个番茄。
流程
step1 早上或前一天晚上,准备今日清单(今天要做的事情)
step2 准备开始一个番茄。倒计时25分钟。
- 关闭通信软件。
- 戴上降噪耳机
step3 25分钟执行的过程。
- 如果脑海中有冒出其他的想法,不要切换现在做的事情,把想法先记下来。
step4 25分钟的番茄结束,休息5分钟
- 打开通信软件、回复留言消息。
- 喝水、接水。
- 到楼梯附近走几步。
step5 准备下个番茄。再从第2步开始循环执行。
虽然步骤很简单,但涉及很多重要细节,下面从原理方面来逐一介绍。
一 计划。待办清单与今日清单
任务:即指工作、生活、学习中需要做的事情。
其实对于任务管理系统,有专业的GTD理论。本文暂不讨论这些。对于番茄工作法,所有的任务只分为两类:
- 待办清单
- 今日清单
待办清单指的是近期的规划,可能是明天,或者是下个月的任务。比如一个项目的排期一周,可以将其拆分成很多个以半天、或几个小时为颗粒度的待办任务。
今日清单,每天上班之前,从待办清单中挑选出一些,转移到今日清单。这是承诺今天要完成的任务。
今日清单与待办清单的区别
今日清单是自己的承诺,当天完成、能更好得给予自己反馈,让自己有成就感。
为何有人喜欢游戏带来的成就感?因为游戏20多分钟就能带来反馈:奖励(胜利,翻盘,队友的点赞等)。而一个几周、甚至几个月的计划,可能没有非常强的成就感。所以将其拆解成周、日计划,即冲刺目标。甚至是25分钟的番茄工作周期,这样能带来更快的反馈。
今日清单排序的原则
时间管理的二维因素
当今天计划已确定时,如果突然插入一小时的任务,就要替换掉原计划的一小时的任务。即,一小时换一小时,那这种思维方式就是一维的时间管理方式。
但是自从小时我们就会发现,同样是一堂课,一个班上的同学,学习的效果有非常大的差别。
工作中可能更明显了,其实每天的工作量 = 时间 * 效率。所以不像一维那样,只考虑时间,还要加上效率这个维度。
那如何分配任务,才能有更高的效率呢?
先做困难的、需要高度专注的任务。
对于简单、熟悉的开发需求,其实在什么时间都能做。而且一下午,持续写3个小时不成问题。但是如果是看陌生的源码,你会发现,根本看不了3个小时就会难受,特别是在晚上,看进来效率是更低。
这是因为人的精力是有限的,通常来说早上精力充沛,而到了晚上,因为一天的忙碌,势必精力缺失,再看有挑战、需要专注力的,看陌生的源码,必定会比较累。
当然,并不是说晚上精力就是最弱,如果下午进行适当的休息或运动,晚上也能有很好的精力。
如果早上就先看邮件、做一些简单的工作,把困难的放在晚上,势必浪费了早上精力充沛这一段时间。
批处理整合任务,避免上下文切换带来的消耗
在计算机领域,上下文切换指在两件事情之间切换,会造成额外的切换成本。
批处理指的是对某对象进行批量的处理。在工作的领域,可以认为是一种聚类工作的集合,即将一类的任务整合在一起,尤其是琐碎的事情。比如将某些2-5分钟即可完成的事情,整合在一个番茄钟内处理。
二 为何每次工作25分钟?
专注力的极限与精力恢复
普通人专注力只有15分钟,练习过一段时间可以达到25分钟,但是很难超越45分钟。世界顶级的运动员经过特殊的训练也最多只能达到90分钟。有时候会发现世界级比赛,某些顶级的选手失误了,出现了一个业余观众都感觉可笑的失误,其实这就是因为没有得到很好的休息,专注力已经超出极限了。
所以为了能够及时的恢复精力,对大部分人来说25分钟比较合适,当然也可以根据自己的情况做上下调整。
三 执行番茄钟的过程,被打断了怎么办?
打断有3种:心中杂念造成的内部打断,通讯软件的声音与振动,他人来找我。
1 内部中断,杂念
工作时脑海可能会突然冒出一个想法:xx事还没有做,现在要做吗?张三会不会给我发了一条消息、赶紧看看吧。书包里有块巧克力,要不现在吃掉它?
这些都是来自人体内部的本能,放弃现在的任务转而做其他事,很有可能是准备拖延。
如果你强制继续工作,脑海中的想法可能会一直浮现。其实解决方法很简单,写下来,加入到待办清单中,如果确实是今天必须得做的东西,那就加入到今日清单中,稍后休息的时候再来决定是否下一个番茄钟就要执行。
2 通讯软件
想要达到极致的专注状态,很多书的作者都建议工作时切断网络、不使用电子设备。但是咱不能用纸写代码啊,所以,我的做法是把IM类软件关闭。有人可能会担心如果PM问我问题,我25分钟之后再回复他,PM会不会很伤心。
这个完全不用担心,如果是普通的问题,25分钟后再回复,并不晚,你想想如果你发出的消息25分钟之内一定收到回复,你应该很高兴才对吧;如果是紧急的问题,PM直接就打电话了,甚至直接当面来找你了,不可能很着急、还一直等你回复消息。
3 外部中断,有人来找我
如果直接有人来找你,要紧急的开会,那只能先去开会了。
那开会结束之后,是否要继续刚才暂停的番茄钟呢?
原子性
番茄钟具有原子性,不可分割,25分钟是这套流程中最小的货币单位。如果任务被暂停了,无论是短期、还是长期的暂停,当前的番茄钟都必须作废。
因为如果暂停,休息一会再继续,就失去了达到一个稳定节奏的目的,不能太容易屈服于中断的诱惑。因为转做其他更紧急的事情而作废番茄钟并不意味着工作的失败,只能说明自己的流程不够完善。每天“完成的番茄钟数”不是拿来衡量工作能力的标准,年底的时候你不会拿着这个去找老板谈加薪吧?记录完整的番茄钟个数,只是为了总结时对比,改进自己的流程。记录跟踪数据,是为了进行自我改进和流程改进。
数量与质量
番茄钟的数量,其实是质量与数量哪个更重要的问题。
再看一个类似的跑步的例子。跑步时有一种MAF跑法,即跑步时最大心率要低于180-年龄。假如25岁则配速不能超过155。在刚开始训练的时候,会发现按自己正常5分的配速,心率可能达到170;如果严格按照MAF规则155的心率,配速可能只有7分。所以有人感觉速度太慢了,不好看,就超过了最大心率跑,确实截图给别人看的时候,看着配速挺快,但是这样练一年,速度依然不会有提升。反之如果按照规则练习,虽然配速会暂时降到7分,但是几个月之后,就会发现有氧能力有了很大的提升。
再看一个写代码的例子。如果每天都是写printf,一个月写了一万行,确实可以很自豪得说:我一个月工作量是1万行代码,但是就算是写了10万行,几年之后,水平还是那样。但如果是做一些更有意义的算法优化,可能只写了100行,对自己的成长就会有质的提升。
所以,质量与数量,要选择能对自己长期成长更有利的,而不是拿出来看的。
四 休息5分钟的意义
如果工作了25分钟,我还是不累,那有必要休息吗?
及时的休息,有利于恢复更高的效率。如果感觉灵感迸发,实在不想休息,那也最好站起来站1分钟。
如果口渴,再喝水,说明体内已严重缺水,因此喝水不能等到渴了再喝。
如果感觉累了,说明精力已经严重不足,不如早点休息尽快恢复精力。
但是注意这5分钟的休息,并不是传统意义上的娱乐休息。
休息5分钟,可以干什么
- 冥想。
- 若有插入任务,重整之后的计划。
- 喝水、接水,站起来走一走,缓解久坐的问题。
冥想是一种公认的高效休息的方式,其目的就是要专注当下的呼吸。
站起来,主要目的是缓解久坐的问题。可能有人感觉自己没有很明显的腰椎问题。但是一旦出现症状再治就比较困难了,预防还是要平时多注意。
休息5分钟,不能干什么
不要做视觉类的娱乐的事情,比如刷抖音,看朋友圈。这会极大得消耗精力,影响自己的节奏。
尽量不要打重要的电话、回复重要的文字。因为其会影响下一个周期,如有必要,可以设置一个紧急插入的番茄周期来完成。
5分钟休息,是从专注状态切换到全局状态的时间,是一种状态模式的切换。及时的切换,可以保持一个好的节奏。
五 节奏的重要性
状态模式的切换
有一种状态叫心流,这是一种非常神奇的感受,会让你感受到工作的自豪感与幸福感。
工作的25分钟,可能会进入心流状态,专注力与创造力强。但是缺乏全局观,缺少统筹力。
5分钟的休息时间,可以换上战略眼光,观察全局。然后再回到心流中。这就是节奏。
为啥要戴上降噪耳机,一方面,确实可以让环境更安静,另外它是模式切换的开头。戴上耳机,告诉自己,现在是专注工作的模式。
生物节律
人体器官的运转,激素的分泌都是有节律的,正如每周、每月,每年一直在循环。工作的专注也是有周期的。保持好的周期节奏,可以及时得恢复最高的专注效果。
一个比较明显的例子就是睡眠,如果某天熬夜打破了正常的睡眠周期,就很容易在白天时感觉精力不足。
有人对此不以为然,认为今天熬夜了,过几天不是可以补回来吗?
假如今年春节要求你加班,不让你回家,因为明年还有春节呢,可以明年回家嘛,你的心情如何呢?
其实你不是一个人在战斗,大脑中有两个“我”,一个是理性的,另外一个可以理解成潜意识。比如有些比赛之前,有些世界顶级运动员对自己说“放松,我一定可以稳定发挥的”,这就是在对潜意识的我对话。
所以打破节奏,也是在损害“潜意识的我”的利益。
六 软件的选择
工具使用的三重境界:器、术、道
比如学习编程,如果只会用一个函数式编程的框架,那是“器”。如果了解框架的源码,可以做少量的定制化修改,这是“术”。如果明白函数式编程的重表达式轻运算、无副作用、引用透明的特点,那么我们就可以在自己的需求中,做更适合自己的框架,这就是“道”,这是一种思维方式,最高的境界。浅显的学习只会使用,而深入的学习、明白底层的原理,拥有自己的思维方式,才能拓展性发散使用。
在软件使用层面,基本都属于“器”的层面,我们要做的就是明白“道”,或最起码达到“术”的境界,知道我们的真正的需求是什么,才可以选择自己的软件,不能过多纠结与软件的选择上。所以没有好与坏的软件,只有是否适合自己的软件。
推荐软件
在我使用众多种番茄钟软件当中,如果只推荐一款,我认为session是最优秀的,高度还原了番茄钟的各种原理与细节。session,免费版可以满足基本的功能。收费的订阅制高级版本,有更多的自动化能力。