寫程式的時候,為了求效率、求簡潔,能否達到自動化這件事情是個很重要的指標,舉幾個例子來說:

  • 透過 linter(一種程式碼的撰寫風格檢查器,可以幫你抓一些小錯誤)檢查並且自動修正程式碼
  • CI/CD 當程式碼更新時自動執行對應的腳本
  • 將日常的開發流程做一定程度的自動化

這些都是以「懶」為原動力而所延伸的結果,透過程式的幫助我們可以將精力專注在更重要的地方。我們通常用工程師的三大美德來形容:「傲慢、懶惰、不耐煩」。

我相當認同這句話,畢竟很多事情不是靠勤奮努力就能解決的,例如檢查程式碼這件事,如果沒有程式輔助會是一件相當耗時且容易出錯的事情。而「不耐煩」則是會讓工程師想要盡可能地去優化效能。

但最近這樣子的風氣似乎變得有些扭曲,有些工程師可能就是「懶」,所以不去理解自己使用的工具是什麼,也盡可能避免造輪子但事實上是光靠自己造不出來;盡可能地推託任務或是以時程趕或實作困難為由來避免複雜的功能開發,框架用的開開心心卻不知道背後是怎麼運作的。效能差一點也沒關係反正大家 CPU 跟記憶體都很多,疊在一起就彷彿變成一座沙塔一樣,看似雄偉但一搖就垮。

不要誤解我的意思了,我的意思並不是叫每個工程師都從原子開始探究計算機科學,而是對自己工作上使用的工具、原理掌握等,不應該用偷懶跟得過且過的心態應付,我甚至覺得前面所做的事情就是為了讓你能專注在這裡,如果連對自己的專業都偷懶的話不就本末倒置了。

另外在生活上,我發現很多事情也不能太偷懶,像是為了省時間結果餐餐吃外食搞壞自己的身體;一直拖延不去處理的行政工作到頭來堆成一坨害到自己,類似這樣的事情都是因為偷懶的本性在作祟。

對於拖延跟偷懶這件事情,其實在天性上來說是很難改過來的,不過可以靠習慣來解決。例如將行政工作統一整理到某天批次處理,並且前一天就準備好需要的文件,執行起來的阻力就會比較小一些;料理的部分可以先從簡單並且可以煮大量的料理開始,像是馬鈴薯燉肉這種幾乎不會失敗的好吃料理下手,養成習慣之後就會變得比較容易一些。

不過說真的,人生是自己的選擇,如果拖延跟偷懶能讓自己快樂一點的話,好像也沒有什麼不好。只是感覺很多寫程式的 practice 套用的人生都不是那麼適用。人生怎麼可能只有單一職責,沒有 Exception 的人生應該也很可怕吧。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s