帮助软件开发者提高效率的10个小窍门

    参加了关于效率和时间管理话题的研讨会,并阅读了一些这方面的书籍,我了解了许多深刻的观念,用我一贯的工作方式做出了许多改变。运用这些新知识,我彻底的重新设计我的工作流程框架——这让我的工作效率有了惊人的提升。

我愿意和你一起分享能够提高效率的最重要的小建议,这不但能够增加工作量,还能把更多的时间用在其他方面。

1.早上不要看邮件

如果有事情阻止你写这篇文章,说不定就是看邮件这件事情。再强调一遍,千万不要在一大早看邮件,如果你看了,那么我们原本想要的积极地乐观的情绪将会被消极的情绪所代替。

查看并回复邮件只能是在一天当中规定的时间内完成,可以在午休之前,姑且说12:00-13:00之间,下午4点左右再看一遍邮件,总之呢,在精力充沛的时候做更有意义的事情。不要认为“紧急邮件”真的很紧急。

2.尽量避开会议

在企业里,会议可能是生产力第一的杀手,接下来我要说说你知我知大家都知道的但未必都承认的“会议杀手”。

“开会是一项有瘾的高度放纵的活动,公司和其他大型组织习惯性地搞,只是因为他们不能实际意义上的解脱”——Dave Barry如是说

更有趣的是会议在同一时间内扼杀了大多数员工的生产力,实在是令人惊讶!所以如果不是至关重要非去不可的会议的话,就忽略掉吧。就说你有很多事要做,会后找同事了解一下会议的重要内容即可。如果会议真的很重要(事实上这是很罕见的),那么记住以下几点:

  • 尽量下午去开会,因为那个时候的工作效率比较低
  • 围绕话题的议程进行讨论,不要偏离主题
  • 制定严格的结束时间,时间到了就叫停会议
  • 离开会议室之前一定要有清晰可行的下一步计划

3.消除干扰信息

这个干扰信息很大,在这个信息时代,世界充满了来自各个方面的干扰信息,阻碍你的工作。我可以把这些干扰信息分为两大类:我们自己产生的干扰信息和别人产生的干扰信息。

先来说说我们自己产生的干扰信息,这听起来很奇怪,但事实是我们设法不让自己成为工作效率很高的人造成的,而且不是有意识这么做的。比如,有重要事情发生时,你设置 e-mail或社交媒体账户来“提醒”自己这一行为让你感到“疯狂”,因为你要在不同的任务之间来回切换。

一旦你真的要执行任务,那么你应该严格设置工作关键,避免让自己分心。首先,关闭所有的通讯,包括短信,Facebook等等。退出E-mail或者不退出,但前提是要保证自动发送/接收选项是不可用的。然后,取消进入(或关闭)用不着的网站,比如DZone,Hacker News等等,注意我没说“不能用”,我只是说“取消进入”。大家都是怪才,我相信你能找出完成它的技术方法。你可以用低级点的方法:编辑设备主文件使facebook.com 指向127.0.0.1回送地址,或者用一个插件暂时阻止进入网址。我个人使用的是Blocksite插件。有了这个装备,你就能避免大多数本质上自身造成的干扰。

让我们接着说说别人制造的干扰。你可能狡辩说上面的干扰内容都是别人造成的,但事实是没人强迫你去检查Twitter或Facebook呀。我这里所说的是强加于人的干扰,比方说你可能经常遇到这样的情况,你的经理发了封邮件给你,然后又打电话问你有没有收到那封邮件。

谈论生产力,不如来看看这个:当你调试代码的时候,一同事戳了你一下问你怎样用Java完成一些不重要的东西的时候,你第一反应就是“混蛋,用谷歌搜索去!”

现实当中,要想预防这些干扰确实有点棘手,因为这些干扰信息很容易穿透社交所能接受的底线。有些想法认为用耳机把打进来的电话收到语音信箱,之后再检查,挂一张纸在电脑上,上面写着“请勿打扰,程序改进中”等等。首先明确工作内容是什么,然后逐步开展工作。这样做的目的就是为了工作的不间断。

4.准备一份任务清单

晚上你就应该着手制作一个第二天要完成的重要任务的清晰列表。内容繁冗的计划列表是没有什么用的,只需要列出两到三项重要任务就行,计划一旦完成了,你的工程项目上就能体现出重大的进步。可以这么说:“如果我今天完成了这两项任务,我会感觉这一天很有收获吗?”如果是的,那就把它写下来。

5.先做最重要的任务

如上所述,邮件不是第一件要处理的事情,重要的任务在你列的清单上!已经鉴别出最紧要的任务了,那就坐下来心无旁骛的把它完成。理想情况是一次性完成第一个任务,稍作休息处理清单上的第二要紧的任务。

6.批处理不仅仅用在数据库上

大部分人都很熟悉查询批处理,简单地说,你“批处理”有很多类似的数据库查询,只发送了一个请求,并获得更好的性能。最优化在这里起到了很大作用,在你任务中你可以用同样的规则,能够最小化一些任务所带来的激活成本和日常开支。任务批处理比较好的例子是邮件检查,手机来电还有通常的重复性工作。

7.自动化的未来无穷尽

另一件添加到生产力工具箱的是自动化概念。作为程序员,我们基本上是生活在一个非常自动化环境里,但依然能看到需要人们手动解决的一些事情。很多情况下,动手会引发许多失误。人们决定人工处理一些枯燥、平凡的事务,而这些事务可以轻易的被自动化处理。瞧,人类衰退了,比机器更不可靠了,当手头的事务无趣而又微不足道的时候就更加衰退了。让尽可能多的事务自动化处理。例如:实现一个只需单击一下的完整应用;只用一个脚本就能部署到生产服务器等等。说真的,不要为了那些机器能够处理的更快的事情,而损失精力和体力,没有你参与会更可靠。

8.劳逸结合追求结果最大化

现在是时候讨论怎样真正构建一个工作框架,我建议分配具体时间段,工作时间段,休息时间段和玩的时间段。比如,可以花连续的45分钟在指定的工作上,接下来用15分钟休息上网,升级社交媒体,阅读最新的Java Code Geeks文章等等,这期间要离开电脑做一些柔和的运动,站起来走动走动,久坐伤身体哦。做其他的事情的时候,“玩”的理念就是给自己在工作时间里的奖赏。我们的大脑是一个很神秘的东西,我敢担保,制定一个像站起来走走一样的奖励机制能够让你完成更多的事情,同时得到快乐。

9.记下你所做的一切

在这里提到的习惯都是可以做到的,不管是你的新想法,还是想要遵循的解决问题的方法,亦或明天付钱的账单。你必须确保你的大脑不是被所“记忆的东西”消耗的,而是专注于你正在试图完成的具体目标。

把你的大脑想象成电脑CPU,你所指配的东西和幕后开启几个程序是相似的。最终导致暂停无法工作,记录东西的程序将会卸载大脑并允许它以最佳方式运行。

使单独的列表并将你的这些想法进行分类。列表可以包括“潜在的项目”、“要买的东西”、“发展”等等,这样,你以后可以快速扫描他们。

10.利用“流”量  在“区”内工作

这是必杀技,这就是我们通过合理设计工作框架想要达到实现的。上面所提到的所有建议会帮助你实现目标,我肯定你经历过“流”或“正在在区域中”的状态,因为在程序员之间这是众所周知的。这个时间段你完全投入到工作当中,专注于特别的任务甚至忘记了时间,除了代码什么都不存在了。外部刺激干扰不到你的大脑,只有你和你最喜欢的IDE,我敢打赌80%的程序员在编程过程当中都经历过“流”事件。真见鬼,写这篇文章的的时候我掉进了“区”里!

你不得不把自己放在长时间站着就容易进入的“流”的位置,这就是文章的本质。这就是长时间工作当中大脑进化的模式,不断提升工作能力。我相信你和我一样很享受在区间工作,所以为什么不多给自己体验的机会呢?

现在你知道了,一些简单的建议能够充分利用我们的时间。花一两周试试就知道了。 分享就是关怀,要是你觉得这些小建议有用的话,就不妨和你的同事分享一下,让我们一起创造更优越的工作环境。

posted @ 2013-06-09 00:26  jake强  阅读(378)  评论(0编辑  收藏  举报