Posted on 2010-01-09 11:09
dennis 阅读(3128)
评论(7) 编辑 收藏 所属分类:
涂鸦 、
工作随笔
你不得不承认,写代码的效率跟周期性的情绪相关。以我为例,总存在着周期性的情绪波动,那段时间内基本不想写代码,上班就是收收邮件,看看网页,遗憾的是每个月都有那么几天。事实上,我认为在一天8小时的工作中,能有2、3个小时能达到忘我状态的工作,那已经是非常不错的事情。如果你是程序员,你肯定知道我说的忘我状态是什么。我在这里说的局限了,其实任何工作都可能进入这种忘我状态,这种状态下你的思维非常活跃,全神贯注,哪怕有人跟你说话你也会听而不闻,这种状态在你读一本非常有趣的小说的时候也会出现。这种状态下的你效率会非常高,例如我前段时间内就在一周内写了13000多行代码,600多个测试用例,为我们的系统重新实现了一个通信层。
看过很多讨论程序员工作效率的文章,据称研究表明要进入这种状态是至少要15分钟的时间,因此频繁地打断工作会阻碍你的工作效率,毕竟酝酿情绪也是需要时间的嘛。我有思考过怎么去尽量多地保持这种状态,排除那种对工作厌烦的情绪,毕竟拿着工资不干活心里还是会不安,况且看到周围那么多高效率的人,压力是难免的,让人担心的不是每天只有两个小时的高效工作,而是那段什么都不想干的时间。最后让我发现一个方法,说起来很简单,就是在出现这种低效状态的时候,强迫自己打开eclipse,而不是 firefox,强迫自己去写几行代码,如果这段时间内没有被其他事情打断,那么你还是容易进入一种不那么高效和愉悦的工作状态,至少能做到专心致志。当然,跟自己的情绪对抗可能不是世界上最困难的事情,也是其中之一,不过请你相信,只要你打开eclipse开始写代码并进入思考状态,那么你至少是可以暂时遗忘那些负面情绪的,甚至你的情绪可能因为解决了某个难题而高昂起来。
这个方法肯定不是什么新发现,我估计很多人会有同样的经验,今早在看《joel说软件》其中一篇文章《开火与运动》也谈到了同样的问题,joel也提到相同的经验:开了头就好。你不知道要费多少劲才能将一辆带齿轮的山地车运转起来,不过一旦它转起来之后,一切都跟骑一辆没有齿轮的自行车没什么两样。Joel还延伸了更多,开火的策略不仅仅是工作效率的问题,也是竞争策略,当你向敌人开火的时候,同时向敌人靠过去,活力会迫使敌人低下头而不能向你开火。竞争也是如此,压迫性的不断推出新东西让你的竞争对手疲于奔命,反而遗忘产品的根本性的目的,这些新东西可能只是为了替换过去不易用的东西,为什么不易用的东西在过去也会被推出来?那只是了为每天进步不断开火,让敌人忘记开火。