什么影响了程序员的工作效率?

什么影响了程序员的工作效率?

我走进办公室,到处闲逛,十秒钟就检查一次电邮,看网页,甚至干些不用脑子的事,比如支付美国运通的账单。但就是不会回到写代码的流程上来。

这样的低效症一发作一般都要持续一两天。但在我的职业生涯里,作为程序员,曾经好几次一连几个星期什么事都干不了。就像他们说的,我心不在焉,我状态不好,我根本不在状态。

这篇文章我读了五六遍,仍然深感震动,因为这样一个程序员界的标志性人物也会有这样菜鸟的问题。

还好,不只是我有这样的问题。这里我没有保持高效的秘诀分享,但是我可以告诉你们

什么让我的效率低下

  1. 开放式房间布局
  2. 程序员争论JAVA与PHP哪个好
  3. 程序员笼统的争论
  4. 同事过来问:“嘿,我的邮件你收到没?”
  5. 嚼东西的声音。很明显我有恐音症
  6. 对于我手上的问题还不理解
  7. 怀疑这个项目
  8. 手上有多个任务要完成,它们都是十万火急的
  9. 有十万火急的事,其他事都别干了
  10. 手机微博消息提示音
  11. 电邮提示弹窗
  12. 任何弹出窗口
  13. 即时通信软件
  14. 老婆问:“嘿,可以拿一分钟来帮我做件事吗?”
  15. build时间很长
  16. 噪音
  17. 办公桌前老有人走来走去
  18. 公司集体活动
  19. 维基百科(我是说真的,不要点任何链接)
  20. Hacker News
  21. 总体来说,互联网都会影响效率

过去这些事让我工作效率不错

  1. 安静的环境
  2. 安静的办公室(个人专用办公室太少见了)
  3. 理解项目下一步我该干什么
  4. 对于问题有透彻的认识
  5. 没有打扰
  6. 我是认真的:没有打扰
  7. 远离微博
  8. 远离Hacker News
  9. 硬件不出问题
  10. 热爱正在工作的项目
  11. build和debug的时间不长
  12. 不要在网上争论政治
  13. 总是带着耳机。 你没必要在听音乐,但是这会阻碍别人接近你。
  14. 假装无能。这是一个应用之前规矩的很有策略的方法。

很明显,低效因素中有一半是我自找的,但是有些不是,例如开放式办公室布局。

根本上讲,我们每个人都能控制造成我们低效的因素。我不会和平对抗。我要不就强硬表态,要不就坐着任由其他人在我身边走动。对此我真不擅长应对。所以,我在处理外部低效因素方面没有好建议,但是我知道这一条:控制我能控制的。意思是:

  • 关闭我iPhone上的提示(还有个好处就增加了待机时间)
  • 连续编码3小时就给我自己一个奖励(通常形式是“上网时间”,看看黑客新闻或是微博)
  • 当真的真的有事要干才在家工作
  • 投资一个性价比高的抑噪耳机
  • 在日历上安排“无会”时间,向别人表明你在这些时间很忙,这是我的工作时间。
  • 不要卷入办公室程序员的争论;人们有强烈的个人观点,而程序员的特性就是喜欢争论。如果真是有业务问题需要解决,让我们去会议室去,把每种方法的优缺点都摆出来。用数据说话,别只是争吵。
  • 把办公桌摆在不会被过路人打扰的地方。
  • 先看一遍问题,然后再请另一位程序员为我详细的解释一遍,这样我可以对要干的工作有更好的理解。这样做实现了两点:第一,这使我能掌握形势,使得我至少能对工作的要点有个基本了解。第二,它让我在求助时能问出更聪明的问题。

是什么让你效率低下,而你又是怎么与之抗争?