我以为能够归结为三件事:职工的时刻表、疲乏的大脑和亮堂的电脑屏幕。
职工的时刻表
Paul Graham在2009年写过对于职工的时刻表的疑问 —— 基本上,在世界上有两种类型的时刻表。传统管理者的时刻表是涣散地切割成小时和一个个十分钟的方法绩效,通常是按一个小时的价值给你酬劳。
另一种,叫做职工的时刻表——对于咱们这些程序员。作业于大型虚拟体系时,需要把一切触及的事都记在脑子里——有人从前比方这就像用贵重的水晶缔造房子,一旦有人打扰,房子就一股脑塌落并碎成一片。
这即是为何当有人打断程序员的思路时,他们那么动火。
由于这种无穷的精力投入,使得咱们无法简略地开端作业,直到咱们能连续几小时不被涣散注意力才行。刚在脑中构建了全部模型,成果半小时后就毁了可不值得。
事实上,跟许多职工攀谈后你会发现,他们感受底子不能在白日完结任何作业。连续不断地被打扰、重视主要的事物和回复邮件都不能让他们放心作业。所以他们挑选在他人睡觉的深夜来完结大多数的作业。
疲乏的大脑
就算是程序员,黑夜也应当睡觉。咱们不是超人。也会感到白日更机警。
那为何咱们要在大脑想睡觉的时分做最杂乱的作业,而在大脑最敏锐和灵敏的时分做简略的使命呢?
由于疲惫成果十分好的程序员。
与巴尔默峰值相似,疲惫让咱们更易集中精力,由于当你的大脑疲惫时,它就有必要集中精力!没有剩余的脑力让你不集中精力。(《“10倍功率”程序员/开发人员的习气》第5点:集中精力)
我好像在喝茶过多或不合适的时刻喝能量饮料后完结的作业起码。这些让我很活泼,一瞬间检查Twitter,一瞬间看看Hacker News,我好像一向在处处阅读。
你应当在想我能极好地作业——这么有精力,这么有脑力。可是相反,我一向在阻绊自个由于我不能集中精力超越两秒。
但是,当我微感疲倦时,我就能坐下来编码了。用有点疲惫的大脑,我能一小时又一小时地编码,甚至都不想检查Twitter或许FaceBook。就好像互联网不存在了。
我觉得这适用于大多数程序员。咱们有太多的精力去完结80%的作业——面对现实吧,一个好的算法,需要用10倍的代码量来营建使用它的环境。即便你做的是第一流的机器学习(或许是别的的),许多作业也仅仅只是整理数据和将成果以友爱的方法出现出来。
当你的大脑并不是尽心竭力地作业时,它就会找别的的事做。疲惫使你弛禁,从而使你只能顾及手头上的作业。
亮堂的电脑屏幕
这条十分简略。在夜晚一向盯着亮堂的光源而且使你的睡觉周期拖延。你直到清晨3点才感到疲倦。然后正午11点起床,当夜晚来暂时你并不感到疲惫,由于,呵呵,你正午11点才起床!
通过足够多的重复,本质上是把你带到了不一样的时区。更风趣的是,它会坚持相对安稳,一旦你进入清晨3、4点睡觉的节奏中,你就会一向坚持那样。
结语
综上所述,程序员黑夜作业是由于没人强行规则你有必要什么时分停止作业,这能够给你更轻松的方法,你的大脑不再一向寻觅分神的事而且亮堂的屏幕使你坚持清醒。