去年年終的時候吧,一天半夜,翻來覆去睡不着,就發了條飯否。突然想到「能不能通過我發飯否的時間推算下我一般都什麼點睡覺?」
生活中,我們會蹦出若干稀奇古怪的問題。這些問題中雖也有「我是誰」「我從哪裏來」「我將去向何方」這般終極問題,可大部分卻是關於自己、關於周遭、關於當下的隨口一提。但最後,絕大多數都不了了之了。我們可以說,這些問題大多很蠢、沒什麼意義。卻也可能是「我們沒有能力去解答」罷了。很多這類問題並不需要難產似的痛苦思考,僅僅是因爲手頭沒有數據。
當然,我們可以像柳比契夫那樣精確地記錄自己工作、生活、思考的一切,也可以養成一個發狀態的習慣,記錄生活的大概,以便日後估算。我覺得,把這些關於自己的數據叫成「近數據」,也不失爲一個好名字吧。透過「近數據」,可以大致回答生活中關於自己的很多問題,幫助我們從一個更定量的層次認識自己。
最典型的「近數據」也許就是「個人收入&支出」了吧。我有記賬的習慣(但是想想,好多大錢也沒記上,尤其是有人在場的時候,怕被說是葛朗台),但從來沒分析過大項開支之類。有天我突然想知道「我一般多長時間去打次牙祭啊?」一統計,除了兩週,我週週都會去打牙祭。看來印象還真是不準,原來我是個這麼饞嘴的人啊。生活的素顏往往和人們想象的樣子相去甚遠,還真是。可就算我們只是想瞭解生活的概貌,也需要數據支撐。
很多人沒有隨手記賬的習慣,大多是因爲記賬太麻煩。可你看「發狀態」也不見得多省事,可就是有這麼多人樂此不疲。我們非得「支出類別」「支出金額」「收款人」……如此這般一項項填表嗎?就不能像「發狀態」那樣記賬(e.g. 「今天去避風塘叫了杯原味奶茶,才6塊,巨大杯😋」)嗎?我還真想過,做這樣一個記錄生活瑣事的 app,智能地整理我的「近數據」。
拋開我們自己產生的數據,更多的時候是,數據就擺在那裏,我們卻因爲工作量太大望而生畏。有段時間迷上在線看漫畫,但又嫌在線不流暢,想 down 下來看。當然,要是一張張「另存爲」的話,還不如在線看。就不能有個「幫手」,幫我搞定這一切嗎?!計算機技術發展至今,可我們還得忍受這樣的無奈。一方面是因爲這樣的需求太太太零碎,不可能出現一個一勞永逸的解決方案。就像交通技術如此發達的今天,出行還得自己開車。另一方面,抓取數據、篩選數據、整合數據的知識已然成爲一個過於龐雜的體系,面對這樣的巨獸,大衆往往有點無從下手,而如此之長的學習週期讓大多數人望而卻步。其實,只需要很少的知識,就可以「立即」完成這一系列動作。
過去,當我們心生疑問,只能到書中翻、找智者問,而如今,我們多了另一條可能更通用的解決途徑——靠自己算。當你靈光一閃,立即可以操刀驗算,一分對生活的操控感油然而生。想想這樣的畫面,或許你就會對我接下來所要講的多一分耐性了。是告別「大概」「差不多」,用數據來支撐你的思考,還是讓你的「近數據」一直沉睡下去,自己選吧。
好吧,我們從如何抓取數據講起。以 Ruby 爲例,只需一句話open #uri#
,就可以拿到任何網頁或是本地文件數據,甚至是網絡服務(e.g. 飯否 API )。就這麼簡單。
接下來是篩選數據。只需要把拿到的數據丟到scan("巴拉巴拉...")
裏頭就可以篩選出包含特定內容"巴拉巴拉..."
的部分了。要想更靈活的篩選,就得靠「正則表達式」了,那玩意其實也很簡單。
再後面該是整合數據了。弄出來的數據就可以投到史上最成功的編程環境——電子表格——裏頭了。以 Excel 爲例,我只想說一個函數vlookup()
。
最後當然是展示數據啦。
以上就是「把大象塞冰箱的三個步驟」利用「近數據」的步驟。
現在,你可以做什麼?你可以從網上抓漫畫打包看,你可以知道「自己喜歡幾點入睡?」(更準確地說,是「喜歡發狀態的那些時日,你都是幾點睡的?」),你可以統計「我一年都發了多少篇 blog,多少字?」,還可以知道「我平時唸叨女王大人的頻率?」……你找出規律,定義規則,剩下的就甩手交給機器去完成枯燥繁瑣的部分吧。
現在,你問「我超喜歡吳軍的文章,你說他這種風格的成分到底是什麼?是喜歡用短句,還是上帝視角主打動詞?」,聽的人依然可能會把你當作理工死宅。但你知道,它就是個問題,無視這樣的問題,你「不能忍」。
以前,你也只能把類似的疑惑作爲一個不敢言說的遺憾深埋心底。現在,卻可以邁開步子去丈量它,看是不是真的句子比較短、動詞比較多。你終於可以糾正這種錯誤。是的,無視「蠢問題」就是一種錯誤!這是我從 Bret Victor 那看來的今年最震憾的觀點。
一直以來,我都爲迷茫而焦慮。小時候爲「長大了會成爲什麼樣的人」而焦慮。那時候,竟會蹦出這樣的念頭「我太喜歡這個人了,但是聽他說教多了會不會變得思考不能啊?」那時候,別人要說我「人品不行」,也不管何種場合下說的,總會讓我抑鬱好幾天。那時候……當我瞭解了「成長就是改變」,學會了「接納對自己的反叛」,甚至是找到了從此可以掛靠的智慧樹以後,我還是迷茫。這時候,迷茫的是缺少一個長期的願景(long term vison),無處使勁。我給自己找來一些短期目標(short term goal),什麼「每年做件瘋狂事」啦、什麼「每年看上52本書」啦、什麼「每年學門手藝」啦……現在看來,「格物」還真能「致」些「知」出來。正如 Bret Victor 給出的線索,當看到那些「不能忍」的錯誤,哪怕在別人看來再正常不過,注意啦,這可能就是我苦苦追尋的人生信條。