當你無法解決眼前的問題時,試試跳出當前的思維維度

盜夢空間

十幾年前的小品《賣拐》中,趙本山問范偉:1+1在什么情況下等于3?大家都知道答案了:在算錯的情況下等于3。

我們都認為這只是一個腦筋急轉彎而已,但我說“1+1”是蘊含著大智慧的。

如果你看到“1+1”,你會想到什么?你會毫不猶豫地回答:等于2。但如果我告訴你,我們現在并不是使用十進制算法,而是在使用電腦中常用的二進制算法時,那結果是10,而不是2。這道題目,看似連幼兒園小朋友都會回答,現在卻難住了一些高學歷的人吧。

現在,我們再進一步,這下將要難住博士學位的人啦!

如果我告訴你,“1+1”是三個漢字,你會不會很驚訝?數字“1”實際上和漢字筆畫中的“豎”在字形上是完全一樣的,但這一“豎”本身就是一個漢字。簡化字里當然沒有這個字,但小篆和以前的古文字中卻包含這個字,這個字念“滾”。

因此我們需要從二進制還是十進制的糾結中跳出來,也需要從漢字還是數學題的迷惑中走出來,才能給出正確的答案。但我們不能僅限于驚嘆,我們還要弄明白這到底意味著什么?它能給我們的工作和生活帶來什么啟示?

【思維維度】

我認為,這實際上是關于思維維度的問題。

電影《盜夢空間》大概很多人都看過,電影里的三層夢境其實就是一個思維維度的問題。有了《盜夢空間》的三層夢境基礎,我們再回過頭來看“1+1”的場景就會容易一些。

當我們看到“1+1”并把它和2畫等號時,我們實際上已經跳過了兩個思維的維度,而直接到達了最終的第三個思維維度。第一個思維維度是:這是一道數學題還是漢字,或者是其他的什么。我們并沒有經過第一維度的判斷或詢問出題人,就自動認為這就是一道數學題,于是我們進入第二個維度:這是十進制還是二進制算法。于是我們又自動確定了這是十進制算法,直接進入了第三個維度:計算1+1。于是錯誤在某種情況下就發生了。

這種錯誤在絕大多數情況下是不會發生的,但一旦你在特定的領域工作,或者遇到了特定的情況,這個直接跳過思維維度的做法,就可能犯下方向性錯誤,而踐行了古人“南轅北轍”這個成語。

【軟件領域的案例】

下面這個真實的案例,說明了直接跳過高層的思維維度是多么可怕!

在軟件研發領域中,用戶發現了一個缺陷(叫Defect或Bug),程序員就需要修復這個缺陷。在修復的過程中,程序員找到了導致缺陷發生的那段代碼,發現有兩個條件判斷都有可能導致這個缺陷發生,經過分析之后,確認修改其中一個條件判斷就可以了,于是一切看起來很成功。

但這個缺陷發生的根源不在代碼那一層,而在于代碼之上數學模型!這個數學模型是驅動代碼邏輯的,所以代碼是無辜的。具體情況是這樣的:這段程序代碼是處理一個數學模型的,而這個數學模型會在合適的條件下,將某個SQL語句轉化為一種簡化的SQL語句。問題就出在“合適的條件”那里!

代碼忠實地執行了那個數學模型,但那個數學模型本身卻是錯的!所以再怎么修改代碼層的東西,都不會起作用,相反,可能會引起副作用。

最終程序員通過修復數學模型本身的錯誤,而修復了這個缺陷。這個修復方案,和之前的代碼層錯誤修復方案,差別只在于一行代碼,但這個方案在解決問題的同時避免了更大錯誤的發生。

【結束語】

其實,工作中還有很多更直觀的例子,也屬于本文描述的思維維度問題。例如,你的上級領導關注的是項目的時間,而你卻只是想把手頭的工作做到完美,想在崇尚速度的公司里踐行“工匠精神”。結果很顯然是:你越努力,越得不到重用,因為你的思維維度和公司的思維維度是不同的。

最后再說說我們能做點什么吧。確實,想在任何事情上都有思維維度的思考,是有相當難度的,因為我們無法確定:我們的領域或當下情況是否應該做思維維度的思考。我的建議是:一方面,我們進入一個新的工作領域時,應該有意識地思考一下;另一方面,我們也可以在錯誤發生之后,進行反思。

----------結束----------

作于2017-3-12。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容