[转]优秀的程序员不会觉得累成狗是一种荣耀
原文转载:http://blog.jobbole.com/99123/
先介绍一下作者 DHH,他是 Ruby on Rails 作者。Basecamp 创始人&CTO。《重来》(rework)作者
缺乏睡眠就像是借高利贷。确实你会多得到几个小时做你以为几个小时就能做完的工作,但是代价是什么?你迟早要把这些时间还回去,如果你不还,会破坏你的创造力,士气,待人的品行。
我们都会偶尔熬夜加班,如果你知道这会带来的一系列影响并且不要成为习惯就没什么。有一个晚上我这么做了。我们推送了一个更新到Basecamp的系统上,这让我一直工作到了凌晨一点半。如果不是早上五点因为代码出了问题我被叫醒这也不算糟。但是随后几天造成的损失是典型的,可以数出来的,并且很高:
固执: 当我非常累的时候,就会不经思考一直傻做下去即便用错误的方式而不是重新思考用正确的方式。终点就像一个永远那么到不了的海市蜃楼而我就却在沙漠里一直朝它走着而不是找到正确的方法。
缺乏创造力: 一个10倍效率的程序员和普通的程序员的区别不是写代码快10倍。而是能通过创造力用10分之一的努力就解决了问题。然而当你疲惫的时候,你的创造力下降,就想不出这1/10的解决方案。
士气降低: 当我的大脑没有全力以赴的时候,它就会喜欢偷懒。比如这已经是早上我第五次刷朋友圈或者一份员工的报告还没读完就去刷微博了。解决真正的难题的积极性就会降低。
易燃易爆: 如果你看到某人不在状态,很可能他就是没睡好。在你累的时候你保持耐心的能力显然会受到影响。在你睡眠不足的时候就是你状态最差的时候。
这还只是当你睡眠不足的一些代价。没有一条是我们想要的结果。然而不知道为什么科技界却以熬夜加班为荣。有时候看起来只是为了有吹嘘的本钱。为了什么?让自己显得很重要、非常被需要。就这么希望领导虐你?真正的事实是你没那么特别,没有那么被需要,要做的工作也不是什么紧急的事。
软件开发不像一次百米赛跑,更像是一场马拉松。实际上是好几个马拉松。所以某天做出110%的表现意味着你明天只能做到70%。综合后,你最后只表现了77%。这不划算。
所以我每天都睡满8个半小时。这可以让我保持最佳的输出。也许你不需要睡8个半小时,但是如果你觉得你睡6个小时就够了那肯定是你的错觉。睡眠不足的人经常会大大低估对他们的能力,研究造成的影响。
所以好好睡觉吧。别再吹嘘自己加了多少班了其实你没有得到什么好处。让自己每天都能处于巅峰的状态。