写点什么

“番茄”让时间变成我们的朋友

2009 年 12 月 16 日

编者按:InfoQ 中文站不久前发布了两篇与 Pomodoro 时间管理方法相关的新闻《用“蕃茄”来减轻时限压力》和《 Pomodoro-敏捷方式的时间管理》,本文可算是前文的延伸和实践验证。作者是 AgileChina 2009 大会上的讲师,本文即来自他在自己团队内部实践经验的总结。

在我们所有的对手中,最强大的是时间。面对时间,我们丝毫没有欺骗的机会,时间一分一秒的流逝,最终的胜利者总是时间。我们经常会觉得“哦,两天过去了,任务丝毫没有进展,明天就是截止日期了,该怎么办?”我们经常忙于应付一个接一个的任务,没有时间去学习充电,享受生活,并由此陷入很大的焦虑情绪。随着社会不断发展,工业文明极大地丰富了人际间的交流手段以及获取信息的手段,我们的时间利用效率却变得越来越低了。沉下心思专心做一件事情,对绝大多数人来说已经变成一件不可能的任务。究其原因,主要有两个:

  • 干扰太多。人们不能专心把一件事情做完后,再去做另一件事情。经常是正在全神贯注工作的你,突然收到一封邮件,接着放下手头的事情,回邮件。发出邮件后,切换回原来任务。每一次任务切换,往往要花更多的时间完成原来的任务。(平均每次切换要使原任务增加 25% 的时间。引用 3、 4)。设想一下,很多人一天要查看邮件 50 次、100 次,还有 MSN、电话等等。
  • 缺少明确的目标和优先级。所有时间都在应付紧急任务,不停地救火。这些紧急任务可能来自于老板、团队其他成员也可能来自于家人、朋友。为了应付新的紧急任务,经常要放下手头工作,在完成新任务过程中又出现中断,最终在不停的任务中断和切换中迷失了方向。一天下来不知道忙了些什么。

排除干扰,确保首先完成最高优先级的任务,是提高个人时间利用效率必须解决的问题。这与敏捷软件开发(Scrum、XP、Lean)要解决的问题何其相似。针对软件开发中的类似问题,九十年代起 Ken Schwaber、Jeff Sutherland、Kent Beck、Martin Fowler 等大师们提出的敏捷开发解决方案,其中包括时间箱、不受干扰的迭代、具有优先级的代办任务列表、拉动(Pull)任务、承诺、计划与反省等等。无独有偶,从九十年代初开始,意大利人 Francesco Cirillo 也基于相同的策略设计并发展了番茄技术(The Pomodoro Technique,Pomodoro 意大利语“番茄”)来管理我们的个人时间。用到的工具很简单,一个厨房定时器(Pomodoro Timer),三个简单表格(当天任务列表 To-Do,任务清单 Activity Inventory 和记录历史数据的表格 Records)。

番茄时段

在敏捷开发中一个迭代的周期通常是一到四周,番茄技术的一个迭代是 25 分钟,称为一个番茄时段。跟敏捷开发的迭代类似,在一个番茄时段开始时需要从当天任务列表中找出目前最高优先级的任务,然后不受干扰地去完成该项任务,一直到定时器的铃声响起。每个时段结束后可以有三五分钟时间自由支配,然后再开始新一个时段。在敏捷开发的迭代过程中,团队只会集中精力完成当前迭代中的任务,不会对新的任务需求做出响应,所有的新任务都放到产品 Backlog。在番茄时段中,个人也是采用相同的策略,在紧急情况下,新的任务会放到当天任务列表,作为一个当天的一个未计划任务;而一般的任务,只需要在任务清单上加一个新的任务项目。然后不受干扰地继续当前的工作。即使任务完成时,定时器还没有响,处理方法也很简单,用剩余的时间去“重构”完成的任务,使它更好一点儿。

工作日程表

以下以一个使用番茄技术的程序员的工作日程表为例。

在这个日程表很好地融入了戴明环 PDCA(计划 Plan;执行 Do;检查 Check;纠正 Act)。每一天总是从计划番茄时段开始,最后一个番茄时段以分析反省结束。每天的历史记录一般包括计划执行情况、未计划任务情况、估计与实际,干扰次数,干扰内容等等。通过这些历史数据我们可以很容易地观察自己:

  • 计划执行是否有效
  • 估计是否准确,偏差有多少
  • 未计划任务有多少,分别做什么
  • 工作中的干扰多不多,主要干扰有哪些

通过切实的数据对自己的时间利用情况有了清晰的了解后,我们就可以在反省中有针对性地设计解决方案。如此不断反复时间效率就会不断得到提高。

消除干扰

番茄技术最大的好处是能够帮我们集中精力,消除干扰。每个番茄时段只有 25 分钟,除非是十分紧急的情况,一般情况下都是可以在完成当前时段后再去响应。通常我们会遇到两种干扰:

  • 内部干扰,主要是自己想做某些事情,比如喝水、查邮件、网上聊天、上网等等。针对内部干扰,主要有两种解决方法,第一种就是有针对性的计划一些处理这种任务番茄时段,比如上面日程表中的专门用来处理邮件的时段;另外一种方法就是利用番茄时段之外的时间,比如那些自由支配的时间以及午饭时间。
  • 外部干扰,比如电话、同事来问问题等。与内部干扰不同,外部干扰需要与其它人打交道,因此需要采用不同的策略。具体策略是“通知 Inform,商量 Negotiate,晚些时候响应 Call Back”。可以用留言机接电话,邮件也可以暂时放到收件箱中稍后处理。如果有人当面过来,可以告诉他:“我先忙完手头工作,二十分钟后去找你。”,然后继续手头的工作。晚 25 分钟或者一两个小时对通常意义上的紧急任务来说,是可以接受的。对对方来说需要等待 25 分钟可能不是什么很大的问题,但是对自身来说却有极大的意义,我可以继续专心把我手头上最重要的事情。当然很难避免的,也会出现不得不取消当前番茄时段,着手处理十分紧急的任务的情况,这其实跟在 Scrum 中取消当前 Sprint 一样,只有万不得已才会为之。

每当有干扰的时候,都要在每日任务列表上做一下标记,如果需要,同时在每日任务列表(如果是紧急任务)和任务列表上填加一个未计划任务。把干扰放入任务列表使得我们有机会重新思考一下每一个任务是否那么重要,是否真的需要,很可能过了一段时间我们任务列表上的很多任务变得不必要了。另外,所有的干扰都被显式地标记在每日代办任务列表和历史记录表上。每天都可以反思每天的干扰次数以及内容。干扰数据能够是我们更有意识地关注时间效率的问题,促使我们通过重新计划,调整策略等等方式把干扰降到最低。比如对于电话太多的情况的一个有效的策略是,每天应该固定一段时间把电话放到留言,到会议室去办公,然后告诉其他同事,在紧急情况在哪里能够找到自己。而对于邮件太多的情况,可以多安排几个番茄时段集中处理邮件。

任务计划与估计

番茄技术的另一个好处是给我们提供了一种全新的估计和计划的手段。在任务列表上的每个任务都需要有一个规模估计值,这个值其实是标明完成该任务需要花的番茄时段的数目。由于每个时段都是不受干扰的“纯”投入的时间,因此可以通过番茄时段数目有效地把任务的规模与时间建立联系。通过把实际花费的番茄时段数目与估计值相比较,分析,可以帮助提高自身的估计能力。同时,通过分析历史记录中非计划任务的数目以及内容,也可以帮助我们对自身的时间利用情况有更好的了解,从而更有助于计划个人的时间。

转变时间的观念

番茄技术能够改变我们对时间的态度。时间变成了一个个番茄时段。每一段 25 分钟,滴答滴答从 25 分钟减到 0。从而给我们一种紧迫感 (Eustress),督促我们尽快完成任务,尽快做决定,从而有效的提高效率。效率的提高能够有效地提升自信心和成就感。

关于番茄技术的详细介绍可以参见它的网站(引用 1)以及 The Pragmatic Bookshelf 的新书《 Pomodoro Technique Illustrated 》。

引用

  1. The Podomoro Technique
  2. The Pompatus of Pomodoro, PragPub Issue #5, November 2009
  3. Manage Your Effort Not Your Time, Harvard Business Review, October 2007
  4. Perfection: An Unrealistic Goal - The Challenge of Being Agile

作者简介:滕振宇(Daniel Teng),Irdeto BSS 高级软件经理,CSP,敏捷教练。创建并领导 Irdeto BSS 上海研发团队,负责大型付费媒体计费以及客户管理系统软件产品的开发。


给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家加入到 InfoQ 中文站用户讨论组中与我们的编辑和其他读者朋友交流。

2009 年 12 月 16 日 01:188800

评论

发布
暂无评论
发现更多内容

LeetCode题解:83. 删除排序链表中的重复元素,递归,JavaScript,详细注释

Lee Chen

LeetCode 前端进阶训练营

Git:改变世界的一次代码提交

华为云开发者社区

git Linux 代码

week03

SuperLab

7周作业-性能测试与优化

飞雪

学习Java的三个阶段(学习目标+知识点),一起努力吧!

Java架构师迁哥

iOS造轮子 - UITableView字母索引条

iOSer

ios 面试题 UITableView iOS面试

小前端探索HTTP

Lam

Java 面试 前端 网络 HTTP

Week06总结

SuperLab

Week09

SuperLab

双亲委派模型与 Flink 的类加载策略

Apache Flink

flink

你的页面健康吗?

Lam

Java 前端 浏览器 性能分析 web前端

深入分析CRM系统对现代企业的作用

Philips

企业管理 CRM 客户关系管理

网上黑平台系统风控不能出款怎么办

其实很简单

大数据 网络 系统检测

Week04

SuperLab

99%的人都能看懂的分布式系统「补偿」机制

华为云开发者社区

分布式 高可用 系统

Week02

SuperLab

英特尔重磅发布物联网增强处理器,产品性能、AI能力、功能安全提升显著

intel001

Week12

SuperLab

10个常见的软件架构模式

GuoYaxiang

架构模式 软件架构 架构设计

极客大学架构师训练营 - 同城快递业务架构设计 - 大作业一

叶鹏

极客大学架构师训练营-架构师技术图谱-大作业二

叶鹏

flutter之踩坑的日子(3)

霜蓝手环

Flutter Android Apk

Week07总结

SuperLab

Week10总结

SuperLab

Week11

SuperLab

架构师 0 期 | 大数据相关技术

刁架构

架构师训练

Java经典面试题详解,突围金九银十面试季(附详细答案)

Java架构师迁哥

Week05 总结

SuperLab

10周作业-微服务

飞雪

Week08总结

SuperLab

英特尔扩大技术及用户端部署,加速推动智能边缘发展

intel001

InfoQ 极客传媒开发者生态共创计划线上发布会

InfoQ 极客传媒开发者生态共创计划线上发布会

“番茄”让时间变成我们的朋友-InfoQ