1.长期的任务,要尽早开始
一般来说,长期任务总是比较烦人,也有难度,而人心里总有逃避困难的趋势,最后的结果或者是最后干脆放弃,或者是剩下一点点时间手忙脚乱地赶工;我自己之前也有这样的教训,自欺欺人地说“要轻松生活,抛开烦扰”,到最后几天才着急办理,搞得狼狈不堪。
后来,我发现这做法其实是事与愿违的,如果调整好心理状态,尽早了解情况并不必然带来的心理压力,反而因为时间充裕,有信心把握进度,即便中间遇到突发的问题,也留有时间解决;更重要的是,尽早着手,可以充分利用边角余料的时间:比如说,接到一份文档,需要在三天后给出意见,我一定会在当天大致浏览一遍,下面的三天里,就能在坐车、走路等等零碎的时间来思考,而且效果不错,如果没有尽早了解,这些时间就浪费了,什么有意义的事情也没干。
电子邮件的情况也是如此,我常看到有人讨论电子邮件是马上回好还是过一段再回好,我的经验是,收了电子邮件要尽快看,至少了解邮件里说了什么,如果不是着急的,等想清楚了再回。
2.时常想清楚自己正在做的事情
一般来说,我们做的工作总是有一个目的和意义的,但工作的形式又是非常具体的,忙起来往往就钻到死胡同里,忘记了真正的目的和意义,“想不清楚”自己真正要做什么了。前几天,我需要搭建一个演示环境,手上有两套方案A和B,方案A估计要半小时,方案B估计要一小时,于是我选择了方案A,可是动手之后才发现服务器缺乏一个必要的组件,于是先费劲添加好这个组件,再编译自己需要用到的软件,又发现在64位环境下会编译出错(以前我只在32位机器上编译过),上网查发现需要打一个补丁,于是又四处去寻找这个补丁……此时已经用掉一个多小时了,下面还不知道会有多少问题;我忽然想到,自己真正要做的无非是演示程序,解决打补丁、找软件之类的问题虽然很有意思,但其实从任务的角度考虑,是浪费时间,于是果断选择方案B,一小时后就顺利解决了。
据我观察,很多技术人员都热衷解决纯技术问题,温伯格称之为“hacking (神游)”;神游很好玩,容易上瘾,但我们都不是不食人间烟火的神人,要想真正做点事情,就不能放任神游。
3.给自己设定明确的时间点
我承认自己也喜欢玩,没事的时候上Twitter、看看论坛、聊聊天,确实很有意思,信息不断更新,总有自己感兴趣的东西冒出来,可是这样守在电脑前,大量的时间就浪费了,什么有意义的事情也没有做,即便做了,效率也很低——专注才能保证效率。摸索反思之后,我觉得比较合适的做法就是,给自己设定明确的时间点:比如现在八点二十,我可以告诉自己,上网玩二十分钟,八点四十开始学英语。因为有了明确的时间界限,反而会想在这二十分钟之内,尽可能高效地把自己感兴趣的内容都看了,而不会慢慢“浏览”;到设定的时间点,一定要令行禁止,专注地做之前决定的事情。
更重要的是,从小事开始给自己设定明确的时间点,对培养执行力很有好处——如果许多小事都能做到“说做就做”,慢慢的,复杂一些大一些的任务,也能够“说做就做”了,有惯性、也有信心去完成。
4.写日记
正规一点的网站,都有详细的访问日志(记录),即便不做数据挖掘,一旦网站的访问出现异常波动,就会在日志上体现出来,而且检查日志,可以发现问题所在;网站是这样,人也是这样。我从08年翻译温伯格的《技术领导之路》开始,也开始每天记日记,发现日记和网站的访问日志有相同的功能:比如我一般到公司都在8:35左右,前后误差不超过5分钟,但上周有几天都在9:00左右,检查日记,就可以发现这种变化,而且可以找出变化的原因——是早上做事的顺序改变了。而且,根据日记,我还可以观察评估这种变化的影响,是好是坏。
关于日记还要多说一点,我以前总不理解,很多记多年日记的人,他们的日记为什么那么简单?只记录哪天做了什么,加一点简单评论,而没有太多抒情。我从翻译《技术领导之路》开始到现在记了一年多的日记,逐渐明白了,持续的日记就需要这样记录:当天的主要行为,加上一点评论和反思。日记不太适合作为抒情的载体,更合适的功能是真实记录生活的痕迹,用以分析、反思,然后自己才有可能提高。
5.培养预见能力
古话说“凡事,预则立,不预则废”,这是很对的。拿软件项目来说,尽管项目的开发时间很难预测,但有经验的技术人员,往往能更进行更准确的判断,这就是因为他们具有预见能力:能预见到开发中会遇到的问题,这样做出的安排,时间上更充裕(也就能保证效率),心理上也更有准备。
另一方面,我也亲眼见到许多技术人员,只管完成手上本阶段的任务就万事大吉,从来不去预见这些问题:自己的程序能够负载多大的规模和压力,超出这个负载能力,会出现怎样的问题,应该怎样解决,这个问题,照目前的发展速度,大概多久会出现……结果就是,等到问题真正出现了,手忙脚乱焦头烂额,“迭代开发”就成了“拆迁开发”——到某个时间点就要推倒全部重来过一次,质量无法保证不说,自己也累得苦不堪言。
软件行业有本名著叫《重构》,这本书的核心思想是,软件需要不停地重构,要不就会僵化(decay),如果仅仅满足于眼下没有问题,持续的重构也无从说起。
6.树立大局观
前些天有个朋友与我讨论跳槽的事情,眼下有两个选择,很难决定;我听了他的详细描述说,这样吧,你暂时不看薪水、职位这些,你这样想:十年,或者五年之后,你希望自己是个怎样的人,是怎样的生活状态?拿着这个答案来衡量你现在的两个选择,看看会怎样。结果,过会儿他就很痛快地做了决定。我想,这就是大局观的作用。
我自己也会遇到许多取舍、抉择的问题,比如我总觉得自己关于计算机的基础还不够扎实,我的英语还不够好,书也读得太少,我的照片拍的还不够好……于是想去补习基础、去学英语、去读书、去看大师的照片……做其中的任何一件,都会给人成就感,但人的时间和精力都是有限的,不可能兼顾;在需要做出选择的很多时候,我都会努力摆脱一本书、一门知识、一件事的局限,跳出来想一想,宏观看来自己现在究竟在怎样的状态,重要的任务是什么,将来希望做一个怎样的人……清楚了最迫切的需求,才可以从容抉择,即便放弃了一些看来还不错的机会也不可惜——况且,正如李笑来老师说的,诱惑许多时候是伪装成机会出现的,拿着大局观的照妖镜,许多诱惑才会显出原形。
7.在生活中细心观察
我每个周末要去麦德龙买购物一次,最开始的几周,我会选择不同的时间点去:早上八点,上午十一点,下午一点,下午四点……这样就能大概地知道,什么时候购物最省时间。这一点,光靠想是很难判断准确的,因为人多的时候有可能结帐窗口也多,人少的时候结帐窗口也少。有了这点了解,就可以妥善安排,尽量减少购物时排队的时间。此外,还可以知道停车场在不同时段的状况,下雨天,也可以选择合适的时段去购物,把车停在有遮挡的车位。
再比如,从家到公司的路不止一条,开始的时候我会尝试每一条路,看看是否拥堵,是否平坦,大概要花多少时间;如此,遇到各种情况,都可以迅速地选择相对来说最合适的路径;如果只走一条路,或者不留意观察,就不会了解这些情况,遇到情况也就没有这么多选择。
8.培养分寸感
分析事物,除了定性之外,还有定量,而且定量分析往往更有意义——世界上非此即彼、非黑即白的问题太少了。可惜,许多时候我们却不自觉地在用定性的思维看待世界,往往丧失了很多机会。
举个例子吧,《把时间当作朋友》里提到了一本传记《奇特的一生》,作者详细描述了苏联科学家柳比歇夫管理时间的做法——柳比歇夫每天对时间的把握可以精确到分钟,他每天认真记录自己花多少时间做多少事情:写作35分钟,读书50分钟…虽然“精确到像一座钟”,但传记作者也承认,自认为“还充实”的生活比起柳比歇夫,确实差了太多。我读《奇特的一生》感触很深,我也深知自己虽然无法做到柳比歇夫那么精确,但至少可以偷学一招半式,让自己的生活更有条理,效率更高。但是给一些朋友推荐时,我遇到的第一反应就是:生活那么精确,都成机器人了,多可怕!潜台词就是根本不想了解,不愿意了解。但我想说的是,认真了解柳比歇夫的生活,并不要求我们都像他那样做到极致,而只是提供一个机会借鉴他人的经验和生活习惯(如果不知道,连借鉴都无从说起),至于借鉴几分,这个分寸是可以也需要自己把握的。
我深以为,分寸感是非常重要的,它让我们淡定看待各种情况:看到不好的,提醒自己保持距离,看到好的,告诉自己努力借鉴,至少不要被拉大差距。这样才能坦然面对生活,找到自己所处的坐标。化用我喜欢的科学哲学家卡尔·波普的说法,我们的自我感觉良好,必须是建立在比较和判断的基础上的——越是了解这个世界,看得越多,知道的越多(当然也要把握、自我克制的越多),这种感觉才真正越“良好”(关起门来固步自封的“良好”,其实很脆弱很黯淡)。哲学家维特根斯坦在临终前说的话:“多幸福啊,我度过了美好的一生”。他说那句话,是有底气的。