打開思維:技術不是什麼神奇的事物

相信很多的技術朋友平時都會看很多的技術文章和技術的書籍,很少涉獵其他的相關書籍。在以前讀書的時候,可能看的書涉及的方面還多一點,一旦參加工作之後,所看的書基本上就全都是與技術相關的了,看的視頻、講座也是的,爲自己建立了一個“非常好”的技術氛圍。

這不是壞事,但是這樣下去久而久之就出現了思維能力的偏差和看問題不全面等問題。舉個簡單的例子,在做設計或者編程的時候,我們總是需要考慮很多的問題,如使用哪種方式實現某個功能。對於這樣一個很簡單的問題,很多人就出問題了:因爲他們總是不會選擇,總是不會分析幾個不同方法之間的利弊,總是不會按照當前的情況結合現有的能力和資源來決定,總是希望有個標準答案。於是很多的人就把技術作死了,也把自己的思維給固定死了。


上面提到的問題,可能在現實的生活中,在其他的方面,不會出現這樣的情況,但是一旦把需要選擇的情況拿到技術領域,出問題。如果我們是在商場買幾件衣服,或者其他的實物,我們確實比較幾個物件之間的價格,款式,使用時間,和保修時間等,會從各個方面來權衡考慮。但是一到了技術上面需要做的時候,就暈了,總認爲技術領域和其他的領域不同。其實,都是一樣的,思維的方式就是雷同的。

有時候想起來,可能使我們的受應試教育事件長了,導致了思想無法改變過來(雖然說現在提的是素質教育,但是你懂的)。就好像在現在的中國人的思想中,有些東西是根深蒂固的,因爲兩千年來的封建統治深深的在人的思想上打下了烙印,不是那麼容易改變的。同理,應試教育對人思維的影響也是根深蒂固。

這一切不能怪別人,因爲之前十幾年的教育,我們無法選擇,或者選擇的能力太小,但是之後的道路,完全是由我們自己把握,我們可以改變自己的思維方式和做事的方式。

於是不要以爲社會上面有人像我們的高中老師一樣,什麼東西都手把手的叫你。不要成天的把自己和其他的人比,凡事要比個高低,爭個名次,一個人的心懷有多大,他的成就就有多大。不要總是把自己的視野侷限於當前的小圈子,其實技術就是生活的一部分,很多的道路是一通百通的。



可能有人會說,這不行啊,精力有限。確實,但是,看看其他的方面和事物,不一定是浪費時間,完全取決於你任何從這些事物中進行領悟,舉兩個簡單例子。

古人爲什麼總是說:讀萬卷書,不如行×××路。就是因爲書中所寫的一方面要實踐,體會,另外一方面就是從生活的其他方面,讓你更書,對你的思維有一個側面的補充和驗證。

對於技術而言,也是一樣的,就例如,當初自己在第一次學習.NET的時候,那時候接觸到了面向對象的東西,同時也看到裏面有很多的新的概念提出,例如事件,我當初就想,什麼是事件?我問別人,別人就來句:例如點擊按鈕,這就是一個事件。這就是一句廢話,簡直就在用“事件就事件”“因爲愛所以愛”等類似的答案在回答你。

因爲很多的東西,如果總是生搬硬套的來糊弄自己,以爲自己明白,但是這些你的東西在思維層面上,頂多就是處於“記憶”的程度,沒有達到理解,掌握。於是,我開始從所謂的面向對象,想到我們的現實的生活,既然那麼面向對象的大師們從現實中領悟到了現象對象,而.NET平臺也是包含了OO的精髓,那麼這個“事件”的概念,說不定可以在生活中找到原型。於是自己就開始不斷的想:例如,每個按鈕,就是一個人,這個人有很多的特徵,例如頭髮是白的,升高很矮,那麼這些就是所謂的屬性。這個人喜歡喝酒,一旦喝高了,就喜歡打人。那麼喝酒就喝高的促進因子,打人就是喝高之後產生的行爲,那麼這個關係就是:喝酒->喝高->打人。只有喝高才打人,不喝高,不打人(因爲性情很溫和),那麼喝高就是一個人的某一種狀態,只有處於這個狀態之下,他纔會去幹什麼樣的事情。也就說,只有處於喝高的情況,纔打人。一個按鈕只有處於被點擊的狀態下,纔會做一些事情。所以事件其實就是某個狀況發生了,使得某個人處於某種狀態。

於是,不斷的思維和對比,對事件有了自己的理解。

再如,爲什麼我們看到的很多的武林高手都要不斷的靜思,去一些大山中打坐,就是因爲他們知道,現在的武功修爲已經到了極限,無法提升了,所有的招式和心法都已經到了頭,現在如果他們想要有更多大的修爲,他們必須要不斷的突破自己現在的思維定勢,不斷的悟出新的東西。

雖然例子不是很確切,但是可以知道:這一個個看似與原本初衷無法的東西,其實都是對你最終目的的一個補充和提升。例如,可以看一些人文,瞭解一下文化習俗,這一點在以後的項目中接觸不同地方的客戶有些幫助;例如讀一讀管理,以後不一定要走管理,到時候你起碼可以明白,你的上司爲什麼要這樣,起碼可以讓你懂的如何去和人溝通,交流等。
 
甚至你在乘車,陪朋友逛街的時候,可以領悟很多的對技術有用的東西。其實這就類似:誰說編程一定要坐在電腦前面,其實在哪裏都可以編程,只要你思路清晰,搞清楚了調理,最後的上機僅僅就是把你的思維呈現出來而已。
其實,就我個人而言,我開始的時候,也是非常喜歡的看技術方面的內容,對其他的東西,不怎麼碰。後來我發現:學習技術,和看技術的書籍,我學到的僅僅只是一種動作上面的能力提升,例如,我知道如何實現一個東西,如何設計一個東西。強調的過多的是行動上面。當然,如何從高層的視角看問題,如何把問題抽象出來,然後在深入的分析。這一點,很難做到。

很多的時候,以爲做的所謂的設計因爲很正確了,後來在實現的過程中,發現總是漏洞百出,很多的地方思考的不周到。而這些,固然在技術的書中有一定的提及,倒是,終究只是別人的說法和看法,照搬的過來反而使得自己絆手絆腳。很簡單的例子,很多的人一談架構,就來三層,已建立項目就是三個。問他們爲什麼?因爲架構就是三層,三層就是架構,三層就是所謂的UI,BLL,DAL。當然還有其他的回答。其實這就是一直思維定勢。完全沒有按照實際的情況來考慮是否要三層,還是N層?爲什麼要這樣?很多的問題都回答不上來,完全沒有按照自己的思考在做,而是一直照搬的形式。

大家可以試想:這樣下去,能力和技術可以提升嗎?思維上不去,動手能力再強,也只是一個很好用的工具而已。關羽的武藝在高強,沒有諸葛亮的思維和合理的利用,關羽頂多就是個耍大刀的莽夫。

建議大家多多涉獵其他的書籍,多多從生活中的其他方面進行思考,然後在將之應用在技術上面,你會發現很多原先不一樣的東西。
 
 
此文只在agilesharp,51cto,chinaunix,itpub發佈,其他社區和站點嚴禁轉載,一旦發現,必會窮追猛打,如果誠意轉載,請告訴我們,原創不易,感謝您的體諒!
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章