公告:九九网站目录为广大站长提供免费收录网站服务,会员可在线完成投稿无需添加友情链接。只收录内容正规合法的网站;快审网站软文10元

点击这里在线咨询客服
新站提交
  • 网站:8453
  • 待审:19
  • 小程序:9
  • 文章:3601
  • 会员:2182

 

原标题:万万没想到,程序员半夜写代码竟是为了……

程序员喜欢深夜写代码,跟三个因素有关:创作者的时间表、困倦的大脑、明亮的电脑屏幕。

本文作者为Swizec Teller,他是一名自由职业者兼连续创业家,有超过17年以上的软件开发经验,自称A Geek with a Hat。几年前因为在inside.com上发了一篇文章《Why programmers work at night》,解释为什么大部分程序员,包括他本人,总是遵循着吸血鬼的生活作息来写代码。

《Why programmers work at night》最后还被编撰成了一本书,可以在Swizec Teller的网站上购买电子书或实体书籍。书的内容主要是其文章的延伸,加上他做程序员以来的个人经验、采访其他程序员的心得、以及针对程序员的心理学研究。

很多人开玩笑说:程序员是可以将咖啡因转换成代码的机器,他们喝的是咖啡,挤出来的是代码。

他们会告诉你,工作最有效率的时段是在夜深人静的时候。有些人比较早,有些人比较晚,最常见到的作息时间大概是这两种:凌晨四点起床做事的,跟凌晨四点做完事去睡觉的。

这种作息时间的用意就是为了减少分心的机会。不过你可能会问,锁上房门不是可以达到一样的效果?何必熬夜伤身写代码?原因如下:

01

创作者的时间表

Paul Graham在2009年写了一篇文章《Maker’s Schedule, Manager’s Schedule》,他认为基本上世界上主要分成两种时间表,一种是管理者的时间表(Manager’s Schedule),适用于总经理、总监、产品经理等管理者;另一种则是创作者的时间表(Maker’s Schedule),适用于软件程序员、设计师、开发者、作家等创意工作者。

首先先简单介绍一下管理者的时间表,这种时间表以小时为基本划分单位,每小时都有不同的事情需要处理,大部份的人都是在这样的时间表下工作。Paul Graham 认为这是一个适合下命令的时间表(Schedule of command),因为时间可以弹性安排、拆开再重组,所以这个小时去开会、下个小时要整理会议记录、再下个小时去拜访厂商,即使不小心分心了,十分钟的分心顶多耗掉一个小时的时间,每件事情都可以立即处理。

另一种则是创作者的时间表,也就是我们这些程序员所遵循的时间表。Paul Graham 认为对创作者而言,每个时间单位至少要有半天这么长,因为程序员不可能在一个小时内写完一个功能,一个小时可能还不够他们准备开始写代码,毕竟创作是需要时间酝酿的。

这样的时间表就像在一个庞大的抽象系统中投入大量的精力工作,有人比喻成用昂贵的水晶玻璃来盖房子,一旦有人分散你的注意力,整项工程就会瞬间崩塌,碎成千万片。这就是为什么程序员非常讨厌工作时被别人打断或分心。

也因为程序员非常需要集中精神来工作,所以除非能连续好几个小时不被打扰,不然我们根本不想开始工作。好不容易在脑子里勾勒出设计流程、进入状况,一旦被打断,一切都得重来。

事实上,如果你和创业家们讨论这个问题,就会发现他们在白天根本没办法完成任何开发工作。最普遍的障碍就是受到一连串的干扰,像是临时出现许多急事需要处理、重要的电子邮件需要回复等等。因此创业家大部分都选在深夜里、其他人在休息的时候,再进行这些开发工作。

02

困倦的大脑

不过程序员们晚上也还是得睡觉,毕竟我们又不是什么不用休息的新新人类,而且白天的精神一定还是比晚上好上许多。那为什么我们要把这些复杂的开发工作留在大脑困倦的时候做,然而头脑最敏锐清晰时,却做些相对简单的事情呢?

因为累反而能让程序员编码效果更佳。

听过Ballmer Peak吗?一点点的微醺可以让程序员发挥超人般的Coding技巧,然而一点点疲倦也可以达到这样的效果。当你的大脑开始累了、困了的时候,根本没有多余的精力可以分心,你不得不集中精神完成工作。

以我个人的经验来说,在喝了太多茶或能量饮料、精神最充沛的时候,我工作反而最没效率。照理说,有这么多的精力跟脑力,应该能用来写代码、找bug,但事实上因为大脑跟身体太嗨,我根本静不下心来好好做事,一下子上Twitter、一下子看Hacker News,没办法专注在同一件事情上两秒钟。

相反的,当有点累时,我才会把屁股好好的黏在椅子上开始写代码。在大脑稍微有点疲倦的情况下,我可以写代码连续写上好几个小时,根本不会想到Twitter或Facebook,完全忘记网路的存在。

而且我发现大多数的程序员、开发者们都有和我一样的情况。日常生活中百分之八十的事情,都不需要大脑全力运作就能解决,因此在脑力过剩的情况下,你就会去找其他事情做。疲倦会让你笨得刚刚好,没有多余的脑容量塞其他东西,脑力只够把手边的工作做完,根本没办法分心。

03

明亮的电脑屏幕

这点倒是很好理解,晚上长时间地盯着电脑萤幕工作,会延迟你的睡眠周期,让你忘记疲倦,直到凌晨三、四点才去睡觉,然后睡到隔天中午才起床。然而当夜晚再次来临时,你会感觉精神很好,这是当然的!毕竟你睡到中午才起床啊。

重复这样的作息一阵子后,你的身体会适应这样的规律,活在一个不同的时区。更有趣的是,我发现这样的睡眠周期不会一直向后延,而是在凌晨三、四点左右达到一个平衡,然后停留在这个时区里。

这可能是因为,如果一直向后延,睡到下午、甚至傍晚才起床的话,其他人会认为你是个无可救药的大懒虫,这种社会压力逼得我们不得不停留在四点入睡、中午起床的时区里,毕竟再更晚睡的话,中午肯定是起不来啦!

总而言之,程序员之所以偏爱在三更半夜写代码,就是因为在深夜里工作时间没有限制,可以更灵活地运用时间,而且大脑疲倦的时候,更容易集中精力去做一件事,而且狂盯着电脑屏幕可以保持大脑的清醒。

写在最后:作为一名程序员,虽然看起来工作高大上,但免不了经常加班、熬夜,工作辛苦程可想而知。他们在写代码过程中,最害怕别人打扰自己,为了提高工作效率,他们宁愿在夜深人静的时候熬夜加班,希望各位程序员都能爱护自己的身体,不要经常熬夜,也希望大家对我们的程序员多一些关怀哦。

分享到:

  admin

注册时间:

网站:0 个   小程序:3 个  文章:0 篇

  • 453

    网站

  • 9

    小程序

  • 3601

    文章

  • 82

    会员

赶快注册账号,推广您的网站吧!
热门网站
最新入驻小程序

跳一跳2022-08-22

跳一跳是微信开发的一款小游戏,有

数独大挑战2018-06-03

数独一种数学游戏,玩家需要根据9

答题星2018-06-03

您可以通过答题星轻松地创建试卷

全阶人生考试2018-06-03

各种考试题,题库,初中,高中,大学四六

运动步数有氧达人2018-06-03

记录运动步数,积累氧气值。还可偷

每日养生app2018-06-03

每日养生,天天健康