`

程序员为什么喜欢半夜工作(转)

阅读更多

http://www.36kr.com/p/200791.html

有种流传甚广的说法:如果你想将咖啡豆磨成代码,那就去买台“程序员”好了。确实,如果你在一家编程高手云集的互联网公司工作,问问你身边那些程序员们,他们一般什么时候效率最高,点子最好?得到的答案,大部分是半夜——不管前半夜,还是后半夜。有些习惯在早上四点起床,然后工作到日出,还有些人则是习惯在早上四点后才睡觉。

如果只是为了避开无谓的干扰,何不关上门,带上耳机,为何一定要在深夜工作呢?

我认为主要有三条原因:创作者的日程表、困倦的大脑,以及闪亮的屏幕。

创作者的日程表

通常来说,这个世界有两种日程表,一种属于管理者,一种属于创作者。传统的管理者日程表将一天按小时划分,而通常十分钟的打扰,对于程序员来说,可能需要一个小时去重新整理思路。

而创作者的日程表,著名投资教父Paul Graham在 2009 年也曾就创造者的日程表专门撰文。这个日程表是适用于比如作家或是程序员的。这类人的工作通常需要在内心建立起一个庞大而抽象的系统,不仅如此,在创作过程中,他们还需要不断的与自己的心理作斗争。

有个非常好的类比说,创作或编程的过程就好像拿昂贵而易碎的水晶搭建一所房子,一旦有人来打搅你,你所有的努力都可能会毁于一旦,倾注的所有心血可能就瞬间摔成碎片。

这就是为什么程序员在别人打搅他们时,异常愤怒的原因。
正因如此,他们通常会在确定有一连好几个小时无人打扰的情况下才会开始工作。

事实上,你同一些程序员聊天时会发现,他们自己都会有种白天不能完成工作的感觉。持续不断的打扰、很多重要的事情需要打理、邮件要回等等,都会打乱你的节奏,不能让你安心工作。这也正是他们选择日出而息,日落而作的原因。

困倦的大脑

但就算习惯半夜工作的程序员,他们也是白天精神,夜里犯困。

那么为什么他们会在困倦的时候做非常复杂,需要脑力劳动的事情,而在大脑最活跃、最兴奋的时候,反而做一些非常简单的工作呢?

因为疲倦会让他们成为更好的 " 攻城狮 "。

这跟鲍尔默效应类似,疲倦会让程序员更加专注,因为在大脑疲倦的情况下,就必须得非常专注的做一件事情。你仅存的脑容量已经不足以应付多余的事情了,只能专注于手头的事。

喝太多茶或是在一个糟糕的时间点喝了功能饮料之后,工作效率是最低的。兴奋会让你一会儿看一下 Twitter,一会儿瞅一眼 Hacker News,在社交网站上跳来跳去。

你可能感觉精力充沛的状态非常适合工作,但真实的情况却是你常常会做一些让自己注意力分散的事,大脑就是无法安静下来,把所有的注意力集中在一件事上。

反而当你有点困意的时候,你只想窝在椅子或者沙发上专心编程。而半夜,安静的不止是周边的环境,互联网也是如此,你会不知疲倦的写上好几个小时的代码,根本不会想到 Twitter 和 Facebook。

大部分程序员都是这样,白天你写出一个算法,然后加上十倍的量来搭建一个可供算法运行的环境。大部分时间里,你都只是做着一些“清理”工作,或是想办法让最终的结果以一种舒服好看的方式呈现。

闪亮的屏幕

这一点就更简单了。

如果你持续的盯着一个很亮的光源,睡眠周期便会往后延,如此即使是在早上三点,你也不知疲倦。而当夜晚再次降临之时,你也感觉不到疲惫,因为你上午 11 点才起床。这就好像你生活在另外一个时区一样,更有趣的是,一旦你习惯了这种作息时间,你很难再回去了。

当然,即使你 4 点才睡,你的闹钟还是会调到上午 8 点,这个世界最常有的偏见就是如果你下午两点才吃早餐的话,你一定是个失败者。

总结

总结一下,晚上给你一种更轻松、更安静的环境,你的大脑不会受到外界的干扰,并且显示屏的亮光也会让你保持清醒。

Via BI

分享到:
评论

相关推荐

    程序员-工作日志示例

    工作日志是程序员日常工作中不可或缺的一部分,它可以帮助程序员更好地管理自己的时间、提高工作效率、记录工作进度、总结工作经验等。本文档是一个程序员工作日志示例,旨在帮助程序员更好地管理自己的工作,提高...

    程序员工作经验之谈总结工作经验

    作为一名程序员,工作经验的价值在于不断积累和提升个人技能。在面试过程中,面试官通常会通过一些基础问题来评估应聘者的编程功底,例如询问冒泡排序等基础算法。这并不是为了测试候选人是否知道这个特定的算法,...

    2021年前端程序员的年终工作总结.docx

    8. 知识积累:前端程序员通过一年来的学习和锻炼,积累了许多的知识和经验,为自己的未来工作和学习奠定了坚实的基础。 9. 个人经验:前端程序员通过对自己的总结,明白了自己的经验和收获,也明白了自己的不足之处...

    程序员转正述职报告 程序员转正述职工作规划.docx

    * 程序员转正述职报告的主要内容包括职业规划、职业发展和工作总结 * 程序员转正述职报告的目的是为了总结试用期的工作经验和学习体验,并对未来的职业发展进行规划 二、java 开发语言和环境 * java 开发语言是...

    普通程序员如何转向AI方向

    普通程序员如何转向AI方向普通程序员如何转向AI方向普通程序员如何转向AI方向普通程序员如何转向AI方向

    程序员的工作经验分享大合集+个人经验+创业血泪史+工作几年的一些感悟+程序员如何高效学习

    个人独家收藏,小编愿意在这里和大家分享程序员的工作经验。 一位程序员工作10年总结的13个忠告+一名程序员的十年工作经历+程序员(工作十几年)的创业血泪史,万字长文,与君共勉!+程序员工作几年的一些感悟+...

    什么样的人适合做程序员?程序员应该具有什么样的素质程序员四大禁忌

    那么,什么样的人适合成为程序员呢?程序员应具备哪些素质?同时,又有哪些禁忌需要避免呢? 首先,程序员需要耐得住寂寞。编程工作往往需要长时间集中精力,沉浸在代码的世界里,这需要一种静心专注的能力。静不下...

    程序员转型的必备路线

    程序员做到一定程度,就很快达到了自己瓶颈。该如何提升,往那方面提升,如果拓展自己,本文中的内容,帮助你找到适合自己的突围策略

    程序员项目交接文档

    程序员项目交接文档概要 IT 项目交接文档概要是程序员在项目交接过程中的重要文件,它对项目的开发、测试和维护起着至关重要的作用。本文档概要将对程序员项目交接文档的主要内容进行概要介绍。 人事模块是程序员...

    程序员专用 编程输入法

    标题中的“程序员专用编程输入法”指的是专门为程序员设计的特殊输入法工具,旨在提升编码效率。这类输入法通常具有以下特点: 1. **快捷代码输入**:程序员输入法能够通过快捷键、组合键或者自定义短语来快速输入...

    程序员个人工作自我评价总结.doc

    【程序员个人工作自我评价总结】 作为一名程序员,个人工作评价与总结是评估自身职业发展和技能提升的重要环节。从给出的部分内容来看,这位程序员在自我评价中涵盖了以下几个关键知识点: 1. **快速适应与学习...

    程序员计算器

    程序员计算器是一款专为编程人员设计的实用工具,它在传统计算器的基础上扩展了功能,以满足程序员在日常开发工作中的特定需求。这款计算器不仅能够执行基本的数学运算,如加法、减法、乘法和除法,还包含了对程序员...

    《Java程序员》

    从生存、制胜、发展三个方面入手,为大家展示出程序员求职与工作的一幅3D全景图像。本书中既有在公司中的生存技巧,又有高手达人的进阶策略,既有求职攻略的按图索骥,又有入职后生产环境的破解揭秘。 本书中浓缩了...

    程序员的工作总结-述职报告

    【程序员的工作总结-述职报告】 在程序员的工作中,总结与述职报告是个人成长与团队协作的重要环节。以下是对这份报告的详细解读: 1. **工程部PDA运维系统** - 这个系统包含了三个主要功能模块:工单管理、消息...

    10x程序员工作法笔记.xmind

    10x程序员工作法笔记

    Python-程序员找工作黑名单换工作和当技术合伙人需谨慎啊

    在IT行业中,特别是对于Python程序员来说,找到一份合适的工作至关重要。然而,这个过程中可能存在许多陷阱和潜在的问题。标题“Python-程序员找工作黑名单换工作和当技术合伙人需谨慎啊”揭示了这一主题,它提醒...

    一本关于程序员面试的书籍,希望大家喜欢

    这本书涵盖了编程基础、数据结构、算法、操作系统、计算机网络、数据库等多个核心领域,为读者构建了一个全面的面试知识体系。 在编程基础部分,书中详细介绍了各种编程语言的关键概念和语法特性,包括但不限于Java...

    程序员-年度工作总结

    程序员工作内容总结,年度工作总结,工作内容报告。需要朋友可以下载

    程序员第二步:从程序员到项目经理

    9. IT行业的相关知识:尽管从程序员转型为项目经理不需要直接编写代码,但仍然需要对当前IT行业技术趋势有基本了解,以便更好地理解技术团队的工作,并能和客户及干系人进行有效对话。 10. 适应性与学习能力:项目...

Global site tag (gtag.js) - Google Analytics