[译]优秀的程序员不会觉得累成狗是一种荣耀

缺乏睡眠就像是借高利贷。确实你会多得到几个小时做你以为几个小时就能做完的工作,但是代价是什么?你迟早要把这些时间还回去,如果你不还,会破坏你的创造力,士气,待人的品行。

我们都会偶尔熬夜加班,如果你知道这会带来的一系列影响并且不要成为习惯就没什么。有一个晚上我这么做了。我们推送了一个更新到Basecamp的系统上,这让我一直工作到了凌晨一点半。如果不是早上五点因为代码出了问题我被叫醒这也不算糟。但是随后几天造成的损失是典型的,可以数出来的,并且很高:

固执: 当我非常累的时候,就会不经思考一直傻做下去即便用错误的方式而不是重新思考用正确的方式。终点就像一个永远那么到不了的海市蜃楼而我就却在沙漠里一直朝它走着而不是找到正确的方法。

缺乏创造力: 一个10倍效率的程序员和普通的程序员的区别不是写代码快10倍。而是能通过创造力用10分之一的努力就解决了问题。然而当你疲惫的时候,你的创造力下降,就想不出这1/10的解决方案。

士气降低: 当我的大脑没有全力以赴的时候,它就会喜欢偷懒。比如这已经是早上我第五次刷朋友圈或者一份员工的报告还没读完就去刷微博了。解决真正的难题的积极性就会降低。

易燃易爆: 如果你看到某人不在状态,很可能他就是没睡好。在你累的时候你保持耐心的能力显然会受到影响。在你睡眠不足的时候就是你状态最差的时候。

这还只是当你睡眠不足的一些代价。没有一条是我们想要的结果。然而不知道为什么科技界却以熬夜加班为荣。有时候看起来只是为了有吹嘘的本钱。为了什么?让自己显得很重要、非常被需要。就这么希望领导虐你?真正的事实是你没那么特别,没有那么被需要,要做的工作也不是什么紧急的事。

软件开发不像一次百米赛跑,更像是一场马拉松。实际上是好几个马拉松。所以某天做出110%的表现意味着你明天只能做到70%。综合后,你最后只表现了77%。这不划算。

所以我每天都睡满8个半小时。这可以让我保持最佳的输出。也许你不需要睡8个半小时,但是如果你觉得你睡6个小时就够了那肯定是你的错觉。睡眠不足的人经常会大大低估对他们的能力,研究造成的影响。

所以好好睡觉吧。别再吹嘘自己加了多少班了其实你没有得到什么好处。让自己每天都能处于巅峰的状态。

====================================分割线================================
文章转载自 开源中国社区[http://www.oschina.net]

时间: 2024-09-16 14:04:04

[译]优秀的程序员不会觉得累成狗是一种荣耀的相关文章

[转]优秀的程序员不会觉得累成狗是一种荣耀

原文转载:http://blog.jobbole.com/99123/ 先介绍一下作者 DHH,他是 Ruby on Rails 作者.Basecamp 创始人&CTO.<重来>(rework)作者   缺乏睡眠就像是借高利贷.确实你会多得到几个小时做你以为几个小时就能做完的工作,但是代价是什么?你迟早要把这些时间还回去,如果你不还,会破坏你的创造力,士气,待人的品行. 我们都会偶尔熬夜加班,如果你知道这会带来的一系列影响并且不要成为习惯就没什么.有一个晚上我这么做了.我们推送了一个更

想成为优秀的程序员这些码德不能缺

我把这些看成是作为一个程序员的基本素质,多数是编码之外的事情: ●代码每天备份:(预防意外导致的任何损失) ●上传代码时写清楚log信息:(为维护这个模块的人着想,有可能是你自己) ●提供接口时不要把问题抛给使用接口的人,升级或者变更接口时不要删掉原来的接口:(为使用你接口的同事着想) ●变量命名要见名知意:(起码不能误导别人) ●在工程中新建一个doc文件夹将项目相关的文档放在该目录下,方便后面维护的人员理解项目和代码:(为维护这个模块的人着想,有可能是你自己) ●签署bug或者转办bug时写

什么原因成就了一位优秀的程序员?

这些年我曾和很多程序员一起工作,他们之中的一些人非常厉害,而另一些人显得平庸.不久前因为和一些技术非常熟练的程序员工作感觉很愉快,我花了一些时间在考虑我佩服他们什么呢?什么原因让优秀的程序员那么优秀,糟糕的程序员那么糟糕?简而言之,什么原因成就了一位优秀的程序员呢? 根据我的经验,成为一个优秀程序员同年龄,教育程度,还有和你赚多少钱没有任何关系.关键在于你的做法,更深入地说,就是你的想法.我注意到我所钦佩的程序员都有一些相似习惯.不是他们所选语言的知识,也不是对数据结构和算法的深入理解,甚至不是

10个习惯助你成为一名优秀的程序员

当谈到编程时,很多人应该都有听过10x程序员的说法. 据说一个10x程序员的效率大约是其他程序员的10倍. 这是一个有争议的话题,无论你选择相信10x程序员,还是认为这十分可笑,下面的10个习惯可以在一定程度上助你成为一名势不可挡的优秀程序员. 1.积极使用搜索工具 作为开发人员,你需要了解如何利用搜索解惑,查看其他人对你正在研究的主题所讨论的话题和内容,并将学到的知识应用于手头的项目. 当面临一个问题,优秀的程序员应该知道如何花很少时间去查验和解决手头的问题. 2.保持初学者心态 技术发展如此

想要成为真正优秀的程序员是不是真的很难?

很多人认为要想成为一名优秀的程序员,那就需要一天24小时每天不断地编程--睁开眼睛要编程,闭上眼睛睡觉的时候还要梦到编程--我认为这是一种矫枉过正的方法.沿着这条路走,只会让你精疲力尽,犹如夸父逐日一般,死在半道上. 我觉得问题的关键是要想明白你为什么要编程.坦率地说,我编程是因为我喜欢别人用我的程序,这也是我之所以在读书的时候成绩不怎么优秀的原因(我并 不热衷于参加编程竞赛以及类似事情).因此,我也不喜欢参与纯研究的项目--只在论文上讨论各种点子,而不付诸于行动不去写代码(除非恰巧碰到的是研究

&amp;amp;#9733;漫画:优秀的程序员具备哪…

漫画:优秀的程序员具备哪些属性? 东方头条12-2717:20 很多人问我,你是一个优秀的程序员吗? 我还差得远,但我在朝这个目标努力. 那么,怎样才能成为一个优秀的程序员呢? 优秀的程序员往往具有几方面的特点,这些特点里有的更重要,有的作用略低,我以个人的见解,为这些特点从低到高划分了5个星级. 1.兴趣 重要程度: 毋庸置疑,无论是IT还是其他领域,兴趣都是成功的第一推动力. 或许有人会问了:我对所有正经事都没兴趣,天生就喜欢吃喝玩乐,那我该怎么办啊? 没办法,对自己狠一些吧,想一想努力事业

优秀的程序员是在穿过一条单行道的时候还会往两边看的人

作为一个IT行业的软件程序员,每天驱使我们日复一日的辛勤工作的,是来自我们对编程的兴趣和激情.但是要让编程变得始终有趣,我们必须学会坚持某些成为优秀程序员的基本原则. 我并不是要写出一些咒语,你照着执行就可以成为一个优秀程序员了.我的目的是想记录下我学习到的和用过的一些有用的经验,它们帮助我获得比较好的结果.对于优秀程序员是没有明确定义的,这里我们指的是那些创造出了优秀IT解决方案的以及帮助这个行业增长的那些人. 0. 掌握基础 对于任何行业任何工作来说,融会贯通是获得成功的关键.一个人想要成为

深入理解你的代码才能成为优秀的程序员

为什么有些程序员似乎有着一种神奇的能力,能够在眨眼间提取代码的意思? 为了回答这个问题,我先从科学的角度来研究我们理解代码的过程. 事实证明,理解代码是有其心理过程的,我们可以利用这方面的知识成为一名更优秀的程序员.它能有助于你理解开发过程中的各个环节,这样你就不会因为编程中的技术瓶颈而裹足不前. 本文将对有关编程理解的知识略有涉及,并从三个方面来讨论如何利用这些知识成为一名更优秀的程序员. 关于成为更优秀的程序员的方法有三种: 首先,你得知道理解代码的能力取决于三个方面: 知识--解决问题所需

在有限的时间内,专注于一件事,重复直至成为优秀的程序员(转)

  晚上看到一篇博客,作者是翻译<黑客与画家>的阮一峰.他说一个网站上有人提问:"最让你感到吃惊的信息是什么?" 有人回答:"人生只有900个月."九百除以十二,计算器准确的告诉我等于七十五,这也差不多是现在的人均寿命.这当中还包括了睡觉吃饭闲扯漫无目的的时间,如果用一张A4纸打印出30x30的表格,每个月过完打一个钩,我们就能清楚地看到这一生是多么有限. 想到这里,我又想到另外一个关于时间的理论,那就是"一万小时天才理论".看到一些