程式設計師為什麼喜歡在晚上編碼
對許多開源程式設計師來說,夜間的工作計劃是創造力和生產力來源的關鍵。
如果你問大多數開發人員更喜歡在什麼時候工作,大部人會說他們最高效的時間在晚上。這對於那些在工作之餘為開源專案做貢獻的人來說更是如此(儘管如此,希望在他們的健康範圍內避免透支)。
有些人喜歡從晚上開始,一直工作到凌晨,而另一些人則很早就起床(例如,凌晨 4 點),以便在開始日常工作之前完成大部分程式設計工作。
這種工作習慣可能會使許多開發人員看起來像個怪人,不合時宜。但是,為什麼有這麼多的程式設計師喜歡在非正常時間工作,原因有很多:
製造者日程
根據 保羅·格雷厄姆 的觀點,“生產東西”的人傾向於遵守 製造者日程 —— 他們更願意以半天或更長時間為單位使用時間。事實上,大多數開發人員也有相同的偏好。(LCTT 譯註:保羅·格雷厄姆有一篇文章述及製造者日程和管理者日程。)
一方面,開發人員從事大型抽象系統工作,需要思維空間來處理整個模型。將他們的日程分割成 15 分鐘或 30 分鐘的時間段來處理電子郵件、會議、電話以及來自同事的打斷,工作效果只會適得其反。
另一方面,通常不可能以小時為單位進行有效程式設計。因為這麼短的時間幾乎不夠讓你把思緒放在手頭的任務上並開始工作。
上下文切換也會對程式設計產生不利影響。在晚上工作,開發人員可以避免儘可能多的干擾。在沒有不斷的干擾的情況下,他們可以花幾個小時專注於手頭任務,並儘可能提高工作效率。
平和安靜的環境
由於晚上或凌晨不太會有來自各種活動的噪音(例如,辦公室閒談、街道上的交通),這使許多程式設計師感到放鬆,促使他們更具創造力和生產力,特別是在處理諸如編碼之類的精神刺激任務時。
獨處與平靜,加上他們知道自己將有幾個小時不被中斷的工作時間,通常會使他們擺脫白天工作計劃相關的時間壓力,從而產出高質量的工作。
更不用說了,當解決了一個棘手的問題後,沒有什麼比盡情享受自己最喜歡的午夜小吃更美好的事情了!
溝通
與在公司內工作的程式設計師相比,從事開源專案的開發人員可以擁有不同的溝通節奏。大多數開源專案的溝通都是通過郵件或 GitHub 上的評論等渠道非同步完成的。很多時候,其他程式設計師在不同的國家和時區,因此實時交流通常需要開發人員變成一個夜貓子。
昏昏欲睡的大腦
這聽起來可能違反直覺,但是隨著時間的推移,大腦會變得非常疲倦,因此只能專注於一項任務。晚上工作從根本上消除了多工處理,而這是保持專注和高效的主要障礙。當大腦處於昏昏欲睡的狀態時,你是無法保持專注的!
此外,許多開發人員在入睡時思考要解決的問題通常會取得重大進展。潛意識開始工作,答案通常在他們半睡半醒的凌晨時分就出現了。
這不足為奇,因為睡眠可增強大腦功能,可幫助我們理解新資訊並進行更有創造性的思考。當解決方案在凌晨出現時,這些開發人員便會起來開始工作,不錯過任何機會。
靈活和創造性思考
許多程式設計師體會到晚上創造力會提升。前額葉皮層,即大腦中與集中能力有關的部分,在一天結束時會感到疲倦。這似乎為某些人提供了更靈活和更具創造性的思考。
匹茲堡大學醫學院精神病學助理教授 Brant Hasler 表示:“由於自上而下的控制和‘認知抑制’的減少,大腦可能會解放出來進行更發散的思考,從而使人們更容易地將不同概念之間的聯絡建立起來。” 結合輕鬆環境所帶來的積極情緒,開發人員可以更輕鬆地產生創新想法。
此外,在沒有干擾的情況下集中精力幾個小時,“沉浸在你做的事情中”。這可以幫助你更好地專注於專案並參與其中,而不必擔心周圍發生的事情。
明亮的電腦螢幕
因為整天看著明亮的螢幕, 許多程式設計師的睡眠週期被延遲。電腦螢幕發出的藍光擾亂我們的晝夜節律,延遲了釋放誘發睡眠的褪黑激素和提高人的機敏性,並將人體生物鐘重置到更晚的時間。從而導致,開發人員往往睡得越來越晚。
來自過去的影響
過去,大多數開發人員是出於必要在晚上工作,因為在白天當公司其他人都在使用伺服器時,共享伺服器的計算能力支撐不了程式設計工作,所以開發人員需要等到深夜才能執行白天無法進行的任務,例如測試專案、執行大量的“編碼-編譯-執行-除錯”週期以及部署新程式碼。現在儘管伺服器功能變強大了,大多數可以滿足需求,但夜間工作的趨勢仍是這種文化的一部分。
結語
儘管開發人員喜歡在晚上工作的原因很多,但請記住,做為夜貓子並不意味著你應該剋扣睡眠時間。睡眠不足會導致壓力和焦慮,並最終導致倦怠。
獲得足夠質量的睡眠是維持良好身體健康和大腦功能的關鍵。例如,它可以幫助你整合新資訊、鞏固記憶、創造性思考、清除身體積聚的毒素、調節食慾並防止過早衰老。
無論你是哪種日程,請確保讓你的大腦得到充分的休息,這樣你就可以在一整天及每天的工作中發揮最大的作用!
via: https://opensource.com/article/20/2/why-developers-code-night
作者:Matt Shealy 選題:lujun9972 譯者:Morisun029 校對:wxy
相關文章
- 為什麼程式設計師喜歡在半夜寫程式碼?程式設計師
- 為什麼程式設計師喜歡在深夜程式設計?程式設計師
- 為什麼程式設計師喜歡深更半夜寫程式碼程式設計師
- 程式設計師為什麼喜歡夜間工作?程式設計師
- 為什麼程式設計師喜歡熬夜工作?程式設計師
- 程式設計師為什麼喜歡程式設計這項工作?程式設計師
- 我為什麼喜歡程式設計程式設計
- 為什麼優秀的程式設計師喜歡命令列?程式設計師命令列
- 為什麼很多人都不喜歡做程式設計師?程式設計師
- 為什麼我喜歡單獨程式設計程式設計
- 趣文:為什麼有些程式設計師特別喜歡貓?程式設計師
- 程式設計師週末都喜歡做什麼?程式設計師
- 為啥程式設計師喜歡Android?程式設計師Android
- 為什麼我喜歡程式設計 程式設計充滿了樂趣程式設計
- 程式設計師喜歡什麼樣的產品經理?程式設計師
- 設計師更喜歡什麼作業系統作業系統
- 為什麼開發人員喜歡低程式碼?
- 程式設計師喜歡Linux系統的原因是什麼?程式設計師Linux
- 為什麼程式設計師會有最喜歡與最討厭的程式語言?(earthly)程式設計師
- 為什麼我喜歡 Lisp 程式語言Lisp
- 玩家為什麼喜歡在遊戲中擼貓?遊戲
- 為什麼我喜歡JavaJava
- 在中國,什麼樣的Java程式設計師最受歡迎Java程式設計師
- 為什麼程式設計師總是在熬夜程式設計師
- 為什麼程式設計師總是在熬夜?程式設計師
- 我喜歡程式設計師這份差事!程式設計師
- 10個程式設計師最喜歡的HTML和CSS等線上程式碼編輯器程式設計師HTMLCSS
- 10個程式設計師最喜歡的 HTML和CSS 等線上程式碼編輯器程式設計師HTMLCSS
- 我為什麼不喜歡框架框架
- switch和if else if哪個效率高?為什麼很多IT程式設計師都喜歡用switch判斷?程式設計師
- 程式設計師不喜歡開放式辦公室程式設計師
- 程式設計師被人喜歡的13點原因程式設計師
- 程式猿為什麼不招妹子喜歡的原因
- 為什麼程式設計師在學習程式設計的時候什麼都記不住?程式設計師
- 為什麼程式設計師千萬不要重寫程式碼?程式設計師
- 為什麼程式設計師應該少寫程式碼程式設計師
- 設計師為什麼要學程式設計,開發者為什麼要學設計?程式設計
- Java程式設計師不喜歡Golang的地方 - GavinJava程式設計師Golang