掌握5点关于开发者的时间管理秘诀后,我的生活状态得到了救治

作者:星前线 2018-01-07阅读:3101次

掌握5点关于开发者的时间管理秘诀后,我的生活状态得到了救治

没有时间学习、没有时间优化代码、没有时间写单元测试、没有时间写文档或者注释。

……没有!时间!思考!

我曾今以为成为伟大的开发者的唯一途径就是工作到病得不轻。我的健康,友谊,和家庭都为此遭殃。

不过,理解了以下5点关于开发者的时间管理秘诀后,我的这种生活状态得到了救治。

1. 你不需要学习所有的新东西

掌握5点关于开发者的时间管理秘诀后,我的生活状态得到了救治

毫无疑问,一个优秀的开发者应该一直学习,但是你学习的重心很大程度上决定了你花费的时间。

“The old thing is dead. Long live the NEW, about-to-be-old thing!”

“旧物已死。新事万岁,将之陈旧!”

首先,不要被每37秒就发布的新功能所冲昏头脑。大多新技术,框架和功能永远也不会成功并且你永远用不着去知道他们。新技术的传播需要时间,大公司也在自己的技术上而不是小小的科技创业公司上投资。所以,放轻松,你的职业是安全的。

将你的学习专注于这3个方面,由重到轻:

1)基础

如果你有坚实的基础,学习新东西很容易。

比如,如果你深刻地理解 JavaScript,那么任何 JavaScript 框架都很容易。如果你深刻地理解面向对象,任何面向对象语言都很容易。深刻地理解基础知识会让你的学习效率十倍于常人。提高基础永远最重要。

2)你最常使用的技术流的最新版本

你大概会有一个每天都使用的技术流。这些是为你和你家庭把食物放到桌上的工具。当新版本发布时,值得花时间去学习。

3)由市场领导者罩着的技术

如果像 Google、Facebook、Microsoft 这样的公司发明了什么新技术并取得了一些成绩,值得看一看。这里有上百种 JavaScript 框架,然后 Angular 和 React 出现了,席卷了市场。我不是说不会有黑马冲出来。但是,通常不会有。

学习应该是你日程的一部分。每天规划出一部分时间。不需要很多,25分钟都可以。日积月累。

2. 写好代码比写烂代码更省时间(但通常感觉不到)

掌握5点关于开发者的时间管理秘诀后,我的生活状态得到了救治

你大概觉得,如果一个功能做好了,就结束了。但是这才是开始。在一个功能上花费的时间包括调试、重构、改需求的各种时间。如果你在实现这个功能的时候做出了糟糕的决定,那么就呵呵了。然后你就会开始明白,从长线来看,更好的设计是值得的。

这里有两件你可以减少代码错误和提高设计的事。

1)测试导向的开发

先写测试,再写满足测试的代码。这不仅仅带来更少的漏洞,也带来更好的设计,因为你必须将代码组织成可以测试的方式。结果你有了更简洁的函数和更少的依赖。

2)迭代地开发

在把代码弄得可以运行之前,不要花时间把代码弄得完美。你永远不可能在脑中做对所有的。你必须有可以运行并满足预期的代码。问题在于,开发者通常都犯了一个错误:想太多,做太少。或者没有花足够时间完善第一次的解决方案。铭记这话:“做出,做对,做快” — 并以这个顺序开发。

3. 二十四小时都工作不能让你成为英雄。

这次差点把我弄死了。我曾经会向老板或者客户给的任何疯狂要求作出承诺。我害怕说“不”。我害怕让人失望。我会干一切来达到目的。我真的在桌子底下睡觉过,并摄入大量咖啡因,40个小时的编程马拉松。

一开始我是耀眼的明星,我感觉自己是个英雄。但是我给别人制造了一个不可能的预期。这般工作是不可持续的。最终,我将身体掏空了,生病,错过截止日期。我开始有了不可靠和不稳定的名声。

我最终懂得的是,并且你也应该学习的是,真正的英雄是总是可靠的。他们所言即所为,并说到做到。成为这种英雄的唯一方法就是管理预期。

你永远都得控制自己的时间线,所以你总是可以交出成品。一开始这非常困难。这意味着说“不”并且拒绝别人。

一开始你的老板或者客户并不会觉得你的反对有什么好,但是一旦你展示了你是可靠的,一切都会改变。

慢慢的,其他的开发者会迟,交出糟糕的结果,或者被掏空变得不可靠。然后你就成了你团队的英雄。事实上,学会这个让我成为了这个市场中最炙手可热的顾问。我建立起了质量和守时的名誉,因为我知道如何管理预期。

4. 不是所有优化代码的时间都有回报

掌握5点关于开发者的时间管理秘诀后,我的生活状态得到了救治

花时间是一项投资。就像所有投资一样,很合理地要去期待一个投资回报。你应该至少得到你投入的一样多,或者更多。

我们讲到“做出,做对,做快”。但是,对不代表完美,快不代表最快。

“对”代表代码稳定地运行并且易于重构。

“快”代表运行速度不影响用户体验。

最重要的是,你的程序让用户感觉很快。

所以,不要在鸡毛蒜皮的小函数上花费过多时间。不要因为仅仅是你学到了一些新技巧就花时间去优化已经很良好地运行的代码。

5. 给生活留白,让你变得更高产

我很艰难地才学到并接受了这一点。当你没有一直工作时,你怎么可能变得更高产?嗯,这是真的。

研究表明,人的脑力是有限的。每个决策,每个活动都要消耗一定的脑力。如果你一直在工作,你的脑力就会下降。处在一个紧张焦虑的状态下,生产力会下降。

你的身体和头脑都需要休息。所以,安排休息时间。给生活留白。在你的日程表上规定出休息时间,这样你就不会有愧疚感了。这会让你的工作时间更容易。