你是怎么沦落为一名0.5倍速程序员的?
邓艳琴
讲述:丁婵大小:2.15M时长:04:41
不可否认,这个世界确实不缺少天才人物。在问答网站 Quora 上一个关于“是什么造就了 10 倍速程序员”的问题中,一位名叫米切尔·温特拉布(Mitchel Weintraub)的程序员介绍了他的一位 10 倍速同事。
这位 10 倍速程序员通常可以在 6 小时内搞定所有工作并提前离开,而他完成的工作几乎是 10 个人的量。米切尔认为,这位同事也许是自己见过的最聪明的人。其与普通人不同之处在于:他掌握多个领域的知识,似乎知道如何分析和查看问题;他完成的项目非常复杂,比如需要集成几个不同的软件系统;他有良好的调试技巧;他使用测试用例来约束自己的代码,等等。另外,这位同事的专注程度令人震惊,他甚至可以一整天都坐在电脑前,丝毫不分心。
如果你要怀疑这位 10 倍速程序员是不是把剩下的工作带回家了,那你可以打消自己的念头。“他忙着跟家人和孩子共度时光呢。”米切尔表示。
另外一位名为塞尔登·麦卡比(Selden McCabe)的程序员觉得自己就是 10 倍速程序员。当他在微软工作时,团队里有 4 名程序员和 4 名测试人员,他们使用数据库去跟踪每个人修复的 Bug 数目。在这项竞赛中,塞尔登获得了第一名,因为他修复了 1300 个 Bug,而第二名仅仅修复了 250 个。
塞尔登透露了自己的高效秘诀,就是经常被分配非常困难的 Bug 修复工作,在这个过程中,他学到了许多用于跟踪代码问题的技术。其他让他工作高效的因素还包括高效的工作环境、对知识的渴求态度、定期与更高级的员工进行软件评审等等。塞尔登表示,当别人指出自己代码中的错误时,他会发誓永远不要重复这种错误。
不过,也有许多人对 10 倍速程序员这个名头持怀疑态度,他们认为压根儿没有 10 倍速程序员这种东西,但肯定有 0.5 倍速程序员或更差的 0 倍速程序员,甚至这些人可能就在你的身边。
争论 10 倍速程序员是否存在毫无意义,我们需要关注的问题是,普通程序员是否能通过某种方法提高自己的生产率而不是变成一名 0.5 倍速程序员。
IBM 开发技术推广工程师塞巴斯蒂安·达施纳(Sebastian Daschner)认为,不少程序员在编程的时候都有一些坏习惯,如果能针对这些习惯做出改进,那么效率一定会有所提升。他举了 3 个例子。
第一,上下文切换。 与那些推崇 10 倍速程序员的言论相似,不少人也推崇“多任务处理”。可是,绝对意义上的多任务处理是不存在的,执行多线程任务是从一个任务切换到另一个任务,这就是上下文切换。它的弊端是每次切换任务都会产生一部分开销,这会使得程序员变得更容易疲劳。一般人需要不间断地工作 15 分钟才能沉浸到一项工作中,如果这个状态被打断,一次又一次地尝试同时完成几项任务,再想回到原来那样顺滑的编程状态是很难的。
第二,注意力不集中。 你得学会做一个心如止水的程序员,在编程的时候将自己从现实世界里剥离出来,全身心投入到代码的海洋。通常情况下,这种境界只有在半夜才能触发,触发条件是因白天的碌碌无为而产生的愧疚。但长期下来,你会因为发际线的走势而陷入恐慌。那为什么白天的工作效率不高?注意力不集中是关键。
第三,使用鼠标。 一款昂贵的鼠标可能会让你在玩游戏的时候如虎添翼,但是对于编程工作来说,它并不是那么必要的物件。其实,在键盘上打字、使用应用程序提供的快捷键,比起用鼠标点,高效得多。如果你熟悉了代码定位和文档操作的快捷键,脱离鼠标编程是完全可以实现的。所以从某种方面来说,使用鼠标降低了程序员的生产效率。
当然,除了本身的原因以外,影响程序员工作效率的还有一些外部因素。比如,工作环境、频繁的会议等。
就这样,在内部因素和外部因素的双重夹击下,你一步步地变成了一名 0.5 倍速程序员。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论