潛意識的牢籠------為什麼這件事情這麼難

可健康了發表於2013-09-08

  經常聽到身邊的朋友對我說,“你竟然是做演算法的…”,”程式設計這麼難,畢業以後再也不程式設計了…”,”你怎麼會喜歡程式設計?“。聽到這些話我總是很詫異,是什麼原因讓大家覺得程式設計這麼難呢,什麼樣的事情才可以被人們稱為一件難事?

       在以前,我所理解的難事是人的經驗範圍之外的事情,也就是一個人沒有嘗試過的事情。比如對於大部分人來說,學習一門程式語言很難,開一家飯館很難,想當上一家跨國公司的總材更難,因為這些事情大部分人來說,他們都沒有嘗試過,所以他們沒有任何這方面的經驗,不知如何下手去做這些事情,這當然是一件難事了。我想,這也許是一些人認為程式設計很難的一個原因:自己的程式設計經驗少,所以認為它很難,遇到難事不會做,所以不能收穫經驗,如此形成了一個惡性迴圈,即永遠學不好程式設計。

  也許有人說,我的興趣是玩遊戲,玩遊戲一點都不難,我不喜歡程式設計,所以才覺得程式設計很難。但是細想一下這個藉口是不成立的,在你第一次玩dota的時候,這個遊戲對於你來說其難度之大不可想象,你必須記住100多個英雄,幾百個技能,幾十件物品,甚至還有一些英雄的隱藏屬性(想想看c++的關鍵字才幾十個,卻沒幾個人能全部熟練使用,難道c++比dota難嗎)。dota這個遊戲這麼難為什麼你越來越喜歡它呢,是因為你在戰勝對手之後有了勝利的喜悅,隨著你的喜悅,你會越來越愛玩這個遊戲,然後你會收穫大量的經驗,技術得到提高,勝利也比以前更容易了,這是一個良性迴圈,遊戲如此,程式設計亦如此。

  所以,要想做好一件事情,首先要讓它變得簡單,那麼,怎樣才能讓一件事情變得簡單呢?

  一個比較的方法就是從惡性迴圈跳到良性迴圈中去,上文的這兩個迴圈可以概括為:

  良性迴圈:成功 --> 興趣 --> 增長經驗 --> 事情變得簡單 --> 更容易成功

  惡性迴圈:失敗 --> 厭惡 --> 沒有經驗 --> 這件事情好難 --> 更容易失敗

  很多人在娛樂的時候會進入良性迴圈,如玩遊戲,打牌,唱歌,攝影,在學習或工作的時候會進入惡性迴圈,如程式設計,上課,開會。不要小看這兩個迴圈圈,它們之間的差距是如此之大,以至於你身處哪個圈子會直接決定了你後半生的命運!良性圈會讓人產生正向的加速度,惡性圈會讓人產生負向的加速度,套用一個網際網路上比較勵志的公式來說明:

1.01  ^ 365 = 37.78

0.99 ^ 365 = 0.02

  當你的程式設計工作處於良性圈子時,你每天進步0.01(正向加速度),一年以後你的技術水平就提升了37倍。當你處於惡性圈子時,即使你沒有退步,一年以後你的技術水平還是1,三年以後,那些良性圈子裡的人的程式設計水平就變成了你的53939倍,所以相比於那些月入六位數的人,你的月薪只有四位數就很正常了,因為他們的生產力是你的幾萬倍,而且這些人的進步速度有的還不止1.01。

  所以說,想要提升自己的水平就要把那些“你自以為的難事”變得不那麼難,從而形成自己的興趣,想把工作變成興趣就要從惡性迴圈跳到良性迴圈中去。

  怎樣從惡性迴圈跳到良性迴圈呢?

  告訴自己這件事遠沒有你想象的那麼難

  惡性迴圈中有一個最薄弱的環節,從這裡下手跳出這個迴圈是最容易的,那就是“這件事情好難”,人的潛意識會將沒有做過的事情認作比較難的事情,然而事實真的如此嗎?未知的事情對於我們來說,它的難度是未知的,也許很容易,也許很難,但是人們習慣於以潛意識來估計它,認為它肯定很難,這是一個坑!

  潛意識認為這個問題難,所以不敢嘗試,這個問題還沒入手,你就已經跳入惡性迴圈圈了。我自己身上也發生過類似的問題,以我自己為例來說明,上週公司要做識別臺標的專案,需要提取影象的HOG,LBP特徵等,以前我只用過Haar特徵和一些邊緣角點特徵,完全沒有使用LBP特徵的經驗,上級要求我對opencv的LBP特徵進行改進,我心想以前從來沒有玩過LBP,這個工作一定很難,保守估計也要一月時間才能完成吧(這種潛意識極大的降低了我的工作效率),然後各種查文獻,認為這個演算法很難,直到我看了OpenCV的原始碼,才發現這不過是個200行程式碼的貨,這個演算法原來這麼簡單。結果出乎我的意料,從查資料到重新寫完一個draw LBP feature的類只用了一個下午,它遠沒有我想象的那麼難。

  對於未知的事物,它的難度是小馬過河,河的深淺是個未知數,關鍵是要勇於嘗試,只有嘗試過之後你才能發現它只是一條小溪,否則你會永遠停在河的一側不敢下水。通過反覆的嘗試和試錯,你的惡性迴圈圈很快就會就變成了這樣:

  失敗 --> 增長經驗 --> 再次嘗試-->事情變得簡單--> 成功 --> 興趣

  不要把嘗試的機會留給下一次,現在就去嘗試!

相關文章