网站首页 日常浏览正文

聊聊如何提高程序员的编码效率

优化你的工作环境

关掉所有干扰。 结论非常明确:'多任务'让人们 觉得 自己更高效,但研究发现它只会降低我们的效率。查收电子邮件的诱惑很强,但是频繁的中断会 让我们更笨 ,而且重新回到状态需要花费的时间 比你想象的多得多 。所以当你需要集中精力时:

  • 把手机调成'勿扰模式'。在 iPhone 上从手机底部向上滑动,然后点击月亮图标。

  • 关掉所有跟手头任务没有直接联系的浏览器窗口。

  • 如果撰写邮件是你工作的一部分,那么保证你在写邮件时不会看到新邮件提醒。

  • 退出与工作无关的聊天软件。

找到你的'心流'时间 。 如果你的白天不断的被各种会议打断,那么要进入 '心流' —— 一种你真正深度投入到复杂任务中的状态,会非常困难。

  • 在你的日程表中排入三小时的'会议时间',其实只有你一个人参与。同事们会避开这个时间段来安排其他事情,那样你就能不被打扰的完成工作了。

  • 如果你可以的话,让整个公司的人达成共识 —— 每周有一天不能有任何会议。在 Asana,我们有 '无会议周三' 。

  • 跟踪在一天中,什么点干什么活对你来说最合适。在你的'超人时间'完成最困难的那部分工作。这是我的判断过程: 找到你的'超人时间' 。我的超人时间是上午十点到中午。

精通你的工具。 如果你一天到晚都在用电脑,每一次你伸手去抓鼠标,都会让你慢下来一点,然后你丢失了一点点'心流'的状态。 让你操作电脑的速度跟上你思考的速度 ,这需要去学习那些你使用最频繁的软件的键盘快捷键。

  • 每次你发现自己在使用鼠标时,找找看有没有对应的键盘快捷键。通常情况下,它就被标注在菜单栏的旁边,或者在鼠标悬停按钮后弹出的小提示上。在 Mac 上:? 表示 Command 键, ? 表示 Option, ? 表示 Shift, ? 表示 Control。

  • 使用软件 SizeUp 来脱离鼠标调整你的窗口。

优化你的心智

关于这个主题,我最喜欢的书之一是 Tony Schwartz 的 The Power of Full Engagement: Managing Energy, Not Time, is the Key to High Performance and Personal Renewal 。就连这本书的名字都是一条有力的提示。

规律性的休息一会。 常识告诉我们,我们花在工作上的时间越多,能够完成的工作也就越多。但这并不是事实。人类并非机器人,我们的精神力需要时间来重新充能。研究结果建议,每工作 90 分钟休息 15 分钟,是帮助达到 '做的更少,完成更多' 很好的规则。

冥想。 这是我如何培养这个习惯的过程,见下面链接:

照顾好你的身体。

  • 水合物 (Hydrate)。 每一天开始时,我会在我的桌子上摆 5 大杯水。到这天结束时,我会把它们全部喝光。看到那些水杯摆在那,有很好的进度提示作用。

  • 健康饮食。 一顿高碳水化合物含量的中饭,通常会成为下午能量供给的灾难。

  • 参加体育锻炼。 每周至少进行两次有氧运动和你的工作效率息息相关。

  • 斋戒。 让一月一天变成 一周一天 。

简而言之,保证你有营养的度过工作以外的时间,那样你才能有足够能量在工作的时候全力以赴。

直面不适来克服拖延症。 我并不是因为懒而拖延,我拖延是因为我的最高优先级任务让我隐隐约约(或者没那么隐隐约约)的感到不舒服。当这事发生时你应该:

  • 诚实面对那些让你感到不舒服的东西。用怜悯的心态的把不舒服的根源写下来(或者和某个朋友分享)。为什么它让你感觉那么糟糕?

  • 找到一个舒适的下一步。

  • 关于如何通过直面不适来克服拖延症,我写了更多关于这个技巧的内容 。

  • 如果当下没有足够的能量来直面你的恐惧,那么至少去完成你清单上第二重要的事情,而不是转而去刷 Facebook。多产的斯坦福大学教授 John Perry 把这个叫做'结构化拖延症(Structured Procrastination)',在网站 StructuredProcrastination.com 上,他把自己大部分的成就都归功于此。

优化你的流程

弄清楚你的计划。 很多低效工作都起因于缺乏优先级概念。对于具体要做什么来达到目标、什么事情优先级最高这种事完全不清晰。

  • 如果下一步工作对你来说还不是 100% 清晰,或者你的团队成员没有达成共识,不要做 任何 更多的事情。

  • 开始之前打好基础:我们的目标是什么?为什么我们想要达到这个目标?为了达到目标需要哪些步骤?每个步骤的责任人都是谁?这些步骤应该以什么顺序被完成?

  • 这里是更多 关于弄清楚计划的内容 。

找个伙伴一起。 有些人就喜欢单枪匹马工作,但是对于复杂任务来说,我发现独自工作通常很痛苦而且非常容易分心。

  • 找一个乐于协作的同事。有时候我一个人需要花两天完成的任务,和合适的搭档一块两个小时就能搞定。'结对编程'在软件工程领域中很常见,但它其实适用于任何领域。

  • 换种方式,你可以通过文本编辑器或者日记和自己来一次对话:从问自己一些很宏观的问题开始,并写下你的答案。通过简单的用随意样式写下问题并回答它们,我有了一份战略、高效以及很长的和我电脑的对话。

公开的承认 deadline。 把压力当做动力。如果某个重要的任务没有 deadline,我会自信的告诉别人,'在这周五下班前,我会把拷贝发给你。'为了不在同事面前出丑,我自然会保证在周五一定把东西准备好。

用软件来追踪你的工作。 毫无意外,我相信 Asana 是干这事最好的去处。用它不光能追踪你自己的 to-do 列表,还可以管理整个团队的任务流,那样你就不需要通过无数的会议来让团队同步进度了。它还把对话放在了工作内容的旁边,让你你再也不必费力从邮件中找到你要的信息。

花一点时间来总结反思。 在每天结束前留下几分钟的预算,想想今天哪些事进行的不错、那些进行的没那么好。下一次能否对你的工作流做一些改进?如果每天你可以变得 1% 更有效率,那么到当年结束时,你将会变得更有效率 15 倍。


还没有人评论?赶快抢个沙发~

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。