學一點程式設計,長一點人生

故事開始

筆者是個軟體技術從業者,故事就從這裡開始吧。我們不探討哪些因程式設計名利雙收的人生贏家,只想聊聊普通人到底有沒有必要學點程式設計?

真實的小事

講個發生在筆者身邊的真實小事。公司的小夥伴因為工作需要,要儲存網頁上的幾百張圖片。沒辦法工作需要還是要去做的,存了幾張發現這不是個辦法,幾百張怕是要存半天吧?怎麼辦呢,小夥伴過來找筆者並說明了情況。瞭解情況後,抽空幫他寫了個程式,自動抓去圖片並儲存在本地,問題解決。

學一點程式設計,長一點人生

為什麼不試試呢?

上述事件並非偶然,時有發生,但這個事情太小,小到你會覺得為了這麼大點兒小事還要跑去學個程式設計?為什麼不試試呢?你會說這太麻煩了,程式設計哪是一時半會兒能學會的。

其實在自己不熟悉的領域,有時候你無法判斷做這個領域的事對自己而言到底難不難。我們每個人在成長的過程中都遇到過,沒有學會某些技能之前覺得很難,而學會後發現原來並沒有自己想象的那麼難。

入門簡單精通難

學一點程式設計,長一點人生

這也是大家都明白的一個道理,很多技術都適用。按筆者個人的經歷來看,就是:入門的成本不高。也就是說我們可以既有深度又有廣度,技多不壓身嘛。然後筆者發現,有些技能不僅入門成本不高而且入門的收益就相當可觀。如同上面講的故事的需求,其實只需要少量的python語言基礎,就能獨自做到。完成這種需求,並不需要你精通,因為你本也並不是要以此為生。

這就好比你會燒幾道好菜,但並不是就要去做廚師一樣,幾道菜也不足以支撐廚師這個職業。很多時候,它給我們的是更多選擇、更多思路。程式設計其實也一樣,你可以只學會扒圖片或者批次改名字,實現的成本很低,甚至有時從網上把程式實現邏輯直接搬過來都跑的通。所以再筆者看來難不難,試過才知道。

普通人需要程式設計來幹嘛?

學一點程式設計,長一點人生

上面的故事講的無非是一個關於效率的話題。沒錯,程式設計可以提升效率。因為大量重複性的勞動往往都是枯燥且收益很低的,這種勞動也往往比較容易被代替。為什麼會有那麼多工具型的軟體?其中很重要的一個因素就是提高效率。

工具型軟體往往解決的都是大需求、大問題,提高效率所帶來的價值足以支援此類軟體的誕生及可持續發展、迭代。而對於哪些非常細小的需求,因其價值比較小(往往只是滿足極小部分人或偶發或瑣碎的需求),不足以支撐一款為此而生的軟體。

但這種需求也確實存在,個人的需求就不重要嗎?是的。對於市場來著,就是不重要。但於個人而言就很重要,人生不長,誰都更希望把時間用在更有意義的事情上。

評估長期收益

讓我們來算一筆賬,筆者親身經歷過,當然符合此假設的或許只是很小一部分群體。假設一週有2小時的重複性勞動,可使用程式代替(低成本的程式實現),一年52周,工作40年(好漫長),2小時*52周*40年=4160小時,這可是將近半年的時間。

如今程式設計的門檻越來越低,低到筆者認為只需要付出極小的代價去學習程式設計(160小時足以完成簡單的任務),就可完成原本需要4160小時才能做完的事情。這不僅僅是在提高效率,這也是在節約時間,你可以自由支配的時間變多了,意味著你可以有更多時間做其他的事情。

不過話說回來,隔半年甚至一年才偶爾有這麼一次需求,2小時*40年=80小時。很明顯,如果不是因為愛好,這恐怕就不太划算了。

少一些工作 多一些生活

學一點程式設計,長一點人生

人生很長,很多美好事物等著我們去探索。

人生苦短,工作永遠做不完,偶爾停下來,休息一下。

希望當我們老了,可以少一些後悔,後悔當年花太多精力在工作上,而沒有好好去陪家人。