逗比的记事本

程序员如何应对失眠

我觉得很好 5110 次浏览

从博主的经验看来,程序员是一个特别容易失眠的职业。

失眠的原因

如果你遇到了长期失眠的同学,请不要随口跟他们说什么“按时睡觉”,这个建议已经变得跟“多喝热水”一样没有营养了。

要研究失眠这个问题,我们可以先按照学生时代的课程来简单归类一下可能造成失眠的原因:

  1. 物理原因:噪声、光污染、震动等
  2. 化学原因:空气污染(人在北京)等
  3. 生物原因:病症(如牙疼)、状态差(如内分泌失调)等
  4. 地理原因:房间潮湿、气候不宜、水土不服等
  5. 政治原因:工作压力、家里压力等
  6. 历史原因:童年阴影等心理问题

以上原因可以简单的归纳为三个方面来看:环境因素(物理化学地理)、身体因素(生物)、心理因素(政治历史)。下面我们再详细看看这三种情况。

环境因素

多种失眠因素中环境因素门槛最低,也是最容易解决的问题。只需要对症下药即可,比如温度可以靠空调;噪声可以带防噪/降噪的耳塞或者耳机;光污染等可以买个好一点的眼罩或者滤光眼镜(太阳眼镜、防辐射、防蓝光等);空气污染可以买好一些的口罩、面罩以及空气净化器(北京欢迎你 );房间潮湿可以买防潮珠等工具。

总而言之碰到环境因素导致的失眠,解决思路主要是两种:

  • 购买/升级应对装备。
  • 换个环境。

根据博主多年的(贫穷)经验,如果上述两个思路解决不了失眠,那么你可能需要先努力赚钱

身体因素

身体因素导致失眠的原因在博主看来主要是两种情况:1) 病痛问题、2) 亚健康。

引起日常失眠的病痛有很多,常见于头痛、牙疼、胃疼以及各类关节炎等疾病。如果你因为这些问题导致失眠,那就别看本文了,你需要的不是什么鸡汤或者方法,这些病痛可能不一定影响到正常生活,但是最好不要报着“忍一忍就好”的心态,请及时就医。

而关于亚健康影响到睡眠,这个我们可以按照程序员一点的方式来看。按照正常人类的生理时钟(Circadian Rhythm)即日常戒律的生命周期,到了睡觉这个环节人体自身会综合身体的状态判断是否到了该睡觉的点,如果是的话身体则会产生睡眠信号来促使人体进入睡前状态,通常是会让觉得困倦,然后正常流程下来即使就寝即可进入睡眠。

不过大家都是程序员,一般都不讨论正常情况。从上述流程看来,睡眠这个环节最核心的点就是这个睡眠信号了,按照平常 debug 的思路我们可以分析出失眠的常见原因:

  1. 信号来的早了:下班很早就觉得困,等到半夜反而不困了。
  2. 信号来的晚了:一直都不困,等到凌晨深夜才困。
  3. 信号不来了:我已成仙,不管天黑天亮,怎么都不困。
  4. 信号来了没用:很困很困,就是睡不着。

按照博主多年经验总结,睡眠信号的到来主要是由于“熵”:如温度下降(至某个值)、光线变暗、分贝降低、肌肉放松、思虑减少(趋与平静)等。我们可以挨个来看:

  1. 体温:如果体温较高则会阻止睡眠信号出现。比如洗热水澡可以让人清醒就极有可能是由于体温升高阻止了睡眠信号。
  2. 光线:灯光(尤其是蓝光)会抑制睡眠信号的出现。对于程序员而言,长时间面对电子设备的蓝光,很可能导致身体的睡眠信号失调。而自然光则很容易引导身体产生睡眠信号。
  3. 声音:噪声很容易对人体造成负面影响,不单单是影响睡眠。
  4. 肌肉:身体疲倦并不会更容易入睡,而实际肌肉放松的情况更容易产生睡眠信号。夜跑或夜晚锻炼容易导致肌肉紧张/兴奋从而降低睡眠质量,并且很大概率会和体温因素一起阻碍睡眠信号。
  5. 思虑:从经验主义看来,思虑很容易阻碍睡眠。睡觉前过度思虑可能使得大脑皮层活跃从而出现身体很困大脑很清晰的异常情况。且在入睡之后可能降低睡眠质量。

从上述情况归纳来看对应身体状态导致失眠的核心思路是 “确保睡眠信号按时产生,并且在产生睡眠信号之后能及时睡着”。按照这个思路,我们先来看确保睡眠信号的按时到来。

睡眠信号来的过早,比如 8、9点很困,但是到了要睡觉的 11 点左右却完全不困这种情况,建议是在提前的睡眠信号来之前先通过热水澡等方式提升一下体温,延缓睡眠信号的到来。

而睡眠信号来的过晚,则是最常见的失眠情况,通常来说都是温度、光线和身体肌肉等内外因素综合导致睡眠信号延迟出现甚至不出现。应对是建议在计划睡觉前 1 ~ 2 小时,从适度降低体温、避免光线(电子设备蓝光等)、保持安静、放松肌肉等角度来诱导身体产生睡眠信号。体温偏高(被子过厚、空调过热)会阻碍睡眠信号(偏低的话其实不会明显阻碍,不过小心感冒 )。需要注意的重点是:

  1. 光线:视失眠的严重程度,各位可以在计划睡眠之前的 1 ~ 2 个小时开始规避蓝光,包括电脑、笔记本、手机、LED 等设备。
  • 降低设备蓝光的软件:如果一定要使用电子设备,那么苹果的同学可以通过 F.lux 等软件降低设备发出的蓝光(安卓不知道... 评论欢迎补充)。
  • 屏幕贴膜:不论是手机屏幕还是显示器屏幕都可以通过购买防蓝光的膜来过滤。
  • 使用暖光灯:白炽灯、暖光灯普遍被认为含有更少的蓝光,而 LED 灯则普遍被认为含有更多的蓝光。
  • 佩戴防蓝光的镜片:都是花钱你懂的。。
  • 以上应对措施的效果均以光谱仪测试的光谱中蓝光的含量多寡来作为指标。
  • 肌肉:其实博主主要说的是身体的放松程度(不是单指肌肉)。很多人觉得运动可以帮助睡眠,在博主的经验主义看来运动的主要效果是刺激身体的不同部位来调节状态,从而避免肌肉、器官、内分泌等部位功能下降。
    • 运动调节睡眠几乎都是一个长期过程,不存在说今天跑跑步,今晚就能睡的好。反而需要注意夜晚运动导致肌肉或者神经过于紧张从而影响睡眠
    • 如果有条件的话,适当按摩是一个舒缓肌肉与神经并诱导睡眠信号的很好手段。针灸、艾灸和拔火罐等方式视不同的人的体质以及师傅的水平等不确定因素太多,效果和结论不稳定,可能存在安慰剂成分等因素,不一定有效,持保留态度。
    • 一些无氧的拉伸运动(如 keep 上的睡前拉伸),以及自行拍打身体的某些关键部位是可以认同的放松肌肉的方式(原理同按摩,结论来源于运动员按摩师是科学的)。
    • 热水对肌肉是有放松的作用,但是以睡眠为目的的放松不推荐洗热水澡。可以推荐的是用热水泡脚。

    通过以上的方式我们可以想办法调节睡眠信号到来的时间,但是很多失眠患者面临的另一个问题:

    睡眠信号到了,觉得很困但就是睡不着。关于这种情况,心理因素我们稍后再议,博主单从身体因素来看失眠主要是神经和精神这两方的问题。

    • 神经方面:主要是运动、玩游戏等方式导致神经紧张/兴奋。另外,长期失眠的同学也可以了解一下神经衰弱
    神经衰弱,常见症状有乏力和容易疲劳。注意力难于集中,失眠,记忆不佳,常忘事,不论进行脑力或体力活动,稍久即感疲乏。对刺激过度敏感,如对声,光刺激或细微的躯体不适特别敏感
    • 精神方面:主要是过度思虑、用脑、刷剧、玩游戏等。脑子里不停地想事情/回忆。

    基于上述情况(有了睡眠信号但是无法入睡)下单纯的神经紧张/兴奋,可以考虑通过深呼吸、舒缓音乐(班得瑞等)、各类白噪音、ASMR 自发性知觉经络反应(颅内高潮)等等方式来放松神经。如果你的神经对这些操作过敏,可能是体质问题,也有可能是神经衰弱,后者请考虑体检/预诊就医。

    精神方面,降低思虑(大脑活跃度)的应对思路很简单。人的大脑容易对重复的、不感兴趣的东西感到疲倦,同时某些同学也容易对复杂的东西感到疲倦。所以如果睡眠信号会按时到,但是脑海里一直在思考从而导致失眠的同学,可以考虑做一些“无聊”的事情来迷惑自己的大脑,比如做一些有必要看但是无聊的事,比如背单词、看一些晦涩的书籍。需要注意的是,不同人的大脑对不同的事有不同的 Gay 点,如果你觉得背单词有意思那么就不要通过背单词来降低自己的思虑。

    综上,身体因素造成的失眠情况,应对方式主要从这几方面入手:

    1. 调节睡眠信号。主动避免一些可能影响睡眠信号的因素,以及尝试一些可以诱导睡眠信号的方法。
    2. 把握住睡眠信号。尝试一些放松神经/精神的方法与手段,尽量在困意来之前就预先调节好身体、神经以及精神的状态。

    心理因素

    上文中方法,大部分是从环境和身体状态入手,从生理上改善睡眠。而有些心理因素则会反过来引起生理上的问题从而导致失眠,比如工作压力、焦虑、抑郁等。像做梦还在 Debug 写代码这种情况,只是大脑过渡思虑,注意调节身体状态即可。

    但是如果是感到十分焦虑、抑郁、恐惧、幻觉、幻听、暴怒等异常情况。博主了解的不多,只能给一些就医建议。首先就是:不要抗拒治疗、相信医生、相信科学。抗焦虑、抗抑郁等都有相应的药物可以调节,状态差的时候该看病就看病、该吃药就吃药。

    小结

    让你长期失眠的原因不一定是你压力大,也可能是因为你最近吃的食谱营养不均,可能你只要补下钙就能恢复睡眠。遍历法可以参照膳食指南对比一下自己的饮食结构看,也可以遍历一下维生素表的缺乏状况来对比一下自己却什么。也可以直接去体检检查身体器官异常的部分,对应调整。

    综合全文,整体思路是。环境问题请花钱改善,身体问题注意有病治病、缺啥补啥、注意调节睡眠信号(避开影响睡眠信号的蓝光等因素)调整入睡状态(通过各种方面使自己平静、放松),心理问题请及时就医。敲黑板:相信医生!相信科学!

    不要片面的看待睡眠问题,不要听信偏方。正常人能买到的,除了酒精,没有任何东西能 100% 保证你能睡着。一个网站挂掉可能是由很多不同因素导致的,如果不能全面改善也不要气馁,毕竟项目成功需要做很多的准备,但是失败只要一点点细节没有兼顾各位同学可以参照本文来评估自身的状态,并对照睡眠这个环节来自行 debug 自己的失眠。

    站内搜索