做技術的「五比一」原則

張鐵蕾發表於2017-08-20

前些日子看到了一篇文章,很有意思。不光內容有意思,而且很巧,是我個人很喜歡的一位「網紅」寫的文章,文章裡又恰好提到了我更喜歡的一位作家。這篇文章的名字叫《分享劉慈欣的一段話》,作者是六神磊磊。

當然啦,把六神磊磊稱為「網紅」,有些貶低他了。六神並不是一位普通的「網紅」,他更是一名文筆很出色的寫手。在《分享劉慈欣的一段話》這篇文章中,六神提到了劉慈欣的作品《球狀閃電》中對一個叫「江星辰」的人物的描寫,然後做了如下評論:

劉慈欣這段話,寫出了兩種男人。
其中一種人,隨時都在尋找和創造機會,展示自己的成功,好讓別人產生哪怕一秒鐘的自卑。
另一種人,就是江星辰這樣的,會懷著善意,小心隱藏力量,避免自己的強大讓他人不適。

這段評論確實很有趣,它寫出了兩種人生的境界。前一種人,假裝自己強大,實際上卻是害怕別人看到自己的弱小;後一種人,才是真正的強大,已經到了不需要炫耀來證明的地步。

六神磊磊在文章中又列舉了一些金庸小說中的例子:比如左冷禪之流,比武之前抽個劍,都要用內力摧出爆炸音,“咣噹”一聲,震得山谷鳴響。這就是前一種人了,自己水平有限,只能靠一些看似厲害的「小伎倆」來引人注目。而像張三丰、風清揚這樣的武學宗師,可以想象,拔劍時自然就不會如此賣弄了。

我相信,劉慈欣也是後一種人,一個隨時收斂自己鋒芒的人。他曾多次在採訪中很坦誠地提到,自己的文筆和文學素養並不算出色,但誰也不會因此就否認他的強大。劉慈欣的真正強大之處在於他恢弘的想象力和高超的敘事技巧,我相信他在這兩方面的造詣已經超越了絕大多數的小說作家了,至少在我看過的小說作品中,也許只有金庸金老爺子才能達到這樣的水平吧。


實際上,後一種人能達到那樣高的境界,絕不僅僅是他們的個人性格使然,更是因為他們確實在某一方面做到了真正的強大。他們的成就和能力已經有目共睹,實在沒有必要隨時隨地吹噓自己了。這其實是一種內在的「厚積薄發」的治學態度的對外延伸。

關於治學態度,宋朝的大文學家蘇軾在《稼說送張琥》一文中做過很有意思的一番評論,翻譯成現代漢語大概意思是說:

富人是怎麼種莊稼的呢?他們的田又好又多,因此可以實行休耕輪作,使得土地的肥力能夠保全;他們的糧食充足而有餘,那麼耕種就能夠常常不誤季節,收割也常常能夠等到莊稼完全成熟之後進行。所以,富人的莊稼質量好,產量高。
而窮人呢?由於土地有限,每一寸土地都拿來利用,把莊稼種得像魚鱗一般密集,因此土地養分就被用盡了(地力竭矣)。耕種常常搶不上季節,收割又往往來不及等到莊稼成熟。怎麼還會有好收成呢?

治學之道也是如此,我們應該努力學習「富人種田」的方式,「博觀而約取,厚積而薄發」。首先要博覽群書,獲得廣博的學識,將內在積累到足夠深厚的程度,然後才慢慢地釋放出來。只有這樣,我們說出來的話,做出來的事,才能具有大智慧。

之前在讀《故事:材質、結構、風格和銀幕劇作的原理》一書的時候,也看到過類似的一番道理:

創作是五比一,甚至十比一、二十比一。這個行當要求你發明比你可能的用量要多得多的材料,並從這貼合人物角色及世界真實的大量優質事件、新穎瞬間中做出明智之選。

這段話本來講的是創作電影劇本的道理。劇作家要寫出一部優秀的作品,他所要做的絕不僅僅是坐在電腦前在鍵盤上敲出一篇文字那麼簡單。實際上,他的工作量可能是這個的五倍、十倍,甚至二十倍,他要創造一個完整的世界,並對這個虛構的世界中的一草一木都有細緻的瞭解,他的人物在想什麼、做什麼?他們「如何購物、如何祈禱、如何做愛」,他都需要了如指掌。最後他要做的才是從中挑選出最合適的材料寫成文字。

我們做技術的道理其實也是如此。我們追求的一種狀態大概是這樣的:面對某個實際問題,我們希望能夠進行充足的相關知識儲備,直至遠遠地超過我們要解決的問題,最終我們的頭腦中在該專業領域的知識結構達到比較完整而自成體系的狀態,這時候就能夠很自然地(也是符合邏輯地)從中找到解決問題的方案。如果我們能達到這樣的境界,我們定能心中坦然、處事從容,大概也不會故意假裝自己什麼都懂,生怕別人的質疑,因為每一個技術決策都經過了深思熟慮和充分對比,已然成竹在胸。

反之,如果面對一個技術問題,我們的技術儲備不能夠很好地覆蓋它,或者剛剛勉強夠用,那我們做起事來恐怕只能誠惶誠恐了,自己也不知道哪裡可能會出岔子。

這就是做技術的「五比一」原則。


然而,現實世界總是更復雜,「五比一」原則暗示的是一種理想的狀態,我們大概沒法做到在任何情況下都能遵循它。那麼面對複雜的實際情況,我們如何去解決這其中的矛盾呢?

切實可行的兩條路,可能是這樣的:

  • 因地制宜,搞清適用範圍;
  • 保持學習,一步步積累。

做技術開發的,難免碰到時間點很緊張的專案。特別是對於創業公司來說,能否快速把產品實現出來,有時候是生死存亡的事情。這時候如果再碰到一些自己不熟悉的技術,確實是壓力很大的一種情況。不管用什麼方法,是向社群求助也好,還是向熟人求助也好,總之如果能做到先把東西實現出來,也未嘗不可。但是,要知道這樣勉強做出來的實現,往往不夠優化,或者隱藏著風險,等到時間充足的時候就需要重新去審視它,補充相關知識。

另外,時間長了,工作中反覆用到的常用技術,也需要有計劃地去積累。一邊做事,一邊彌補自己的知識體系,最終使得自己的知識儲備和日常工作中的實際用量達到「五比一」的程度,然後就能更從容地解決更多的問題,向技術專家邁進了一步。這也是為什麼我從《技術的正宗與野路子》一文開始,就一直推崇閱讀Spec的原因。反之,長期來看,做技術應該儘量避免簡單地Copy+Paste網上的程式碼,而應該去關注解決方案背後的深層的知識結構。

如果換一個場景,比如做研究(意味著要發表研究成果),寫技術文章或者寫書,從事這類可能影響別人的事情,那麼就應該嚴格遵守「五比一」原則。技術的東西,細節和邏輯層次牽涉甚多,如果不做深入而廣泛地研究,只是略知皮毛就寫出來的話,勢必沒法達到應有的嚴謹和深度,輕則浪費讀者的時間,重則誤導他人,甚至貽笑大方。

還有一些比較特殊的場景,比如我們都經歷過考試和麵試,這時就不是需要隱藏力量的時候,也不是胡亂吹噓的時候,而是需要實事求是。在面試的時候,面試官的任務,是在比較短的時間內摸清面試者的知識結構,從而對他進行一個整體的評估,尤其是摸清他到底擅長什麼。所以,面試官不應該問一些「偏、難、怪」的題目,而應該從面試者的知識結構和經歷出發,大致遵循一個知識體系應有的結構去發問。反過來,面試者也應該儘量把自己的知識結構「一比一」地釋放出來,而不是「五比一」地隱藏起來。當然了,如果是反過來「一比五」地去自吹自擂,甚至炫耀自己聽說過的一知半解的技術名詞,一般也是過不了關的。


讀書破萬卷,才能下筆如有神;長期深厚的積累,才能孕育出真正的知識的財富。

德國古典哲學的巨擘——康德,思考他的哲學體系花了整整十二年的時間,而體系一旦成型,他只用了幾個月就寫完了他的一本大書——《純粹理性批判》。這就是厚積薄發的典型例子。

還有一個例子,是愛爾蘭的數學家哈密頓(William Rowan Hamilton)。他曾致力於將二維的複數(complex numbers)擴充套件到更高的維度,為此他花了十三年的時間去尋找一個三維的代數系統,但最終失敗。終於,在1843年的10月16日,他獲得了他的頓悟,發現了神奇的四元數(quaternion)。四元數是個什麼東西呢?其實它離我們的生活非常近。我們都玩過手遊對吧,但很少有人知道一些遊戲引擎(比如Unity)裡面對於3D空間中旋轉的處理就是基於這個四元數的。

我們大部分都是普通人,也許不會像數學家或哲學家們那樣發現舉世震驚的東西。但是,海納百川,有容乃大,這樣的道理我們都懂。大至人生態度,小到具體問題的解決,努力追求這樣的一種境界,是我們普通人也能做到的。也許,一點點地積累,早晚有一天我們也會變得足夠強大,讓自己的內心更加富足和平靜,最終收起鋒芒,完成蛻變。就像六神在他的文章中說的一樣:

年輕人步入社會,都會渴望把自己煉成寶劍,寒氣逼人,但只有強到一定程度,才會主動給自己一把劍鞘。

(完)

最後,借這個地發則招聘小廣告,方向是計算機圖形學、計算機視覺和AR,座標北京。不佔用更多篇幅介紹了,以免影響無關的讀者,任何感興趣的同學歡迎到公眾號後臺勾搭我^-^

其它精選文章

相關文章