1. 程式人生 > >自動化是節省腦力,而非時間

自動化是節省腦力,而非時間

【導讀】:花60分鐘寫了個每次執行可節省2分鐘的自動化指令碼,但該指令碼使用頻率極低,還有必要花時間寫這個指令碼嗎?從節省時間上看沒太大好處;但相比手動操作還是有好處的:手動操作會忘了,會敲錯命令,有心理負擔。

自動化並不總是能節省我們所期望的那麼多時間或精力。

XKCD 漫畫把自動化視為一種投資。和最初的工作量相比,我最終的工作量有減少嗎?即使回答是“否定的”,自動化也許還是非常值得一試。

自動化可以像電池和投資。將能量充到電池是一項不好的投資,因為你永遠得不到所有你之前充到電池的能量。但是那並不是你給電池充入能量的原因。只有在你能夠給電池充入能量的時候這麼做了,那麼當你以後需要它的時候,你才能使用一部分電池的能量。

當你有時間、精力和動力,並且其他事不是很重要(如果你正想給拖延找一個藉口並且沒有負罪感,或許可以說成你對其他事不感興趣。這就是所謂的“道德補償”)的時候才去寫自動化指令碼。和你投入到寫指令碼的工作量相比,你也許實際上節約了更多的工作量。當你需要它的時候,你可能還節約了腦力。

假設你花了 60 分鐘寫一個指令碼,但是之後這個指令碼僅僅給你節約了 2 分鐘時間。如果那 2 分鐘在關鍵時刻已經分散了你的注意力,但是這跟你的指令碼沒關係,因為寫指令碼本身也許已經收回成本,即使你花費 60 分鐘最後僅僅節約了 2 分鐘時間。

如果你的目標是節約腦力而不是時間,你有一個不同的自動化策略。如果一個指令碼比手動處理執行地更快,但是需要花費很多時間在找指令碼和如何執行指令碼上,這可能並不是一樁好買賣。某個指令碼你用到的越少,它的介面就應該越詳細。

相同的考慮也適用於學習第三方軟體。我懷疑我在學習 Emacs 一些功能的時候,例如,投資的時間將比節省的時間更多。 但是我已經投資了閒暇時間來節省時間,當我努力工作時,不是可以節省按鍵,而是為了手頭的專案節省腦力。