|
人類心理學研究中的一個基礎(chǔ)支撐科目就是分析人的潛意識和意識。弗洛伊德是最早的一位能夠清楚的認定和描述我們的心理活動“領(lǐng)域”的人。在他這著名的一生的早期,他就指出我們的意識里分“潛意識”,“前意識”,“意識”。
如果我們想能清楚他們分別跟我們的思想、感覺、認知、判斷和動機(這這些在我們每天的生活,職業(yè)生活中都是關(guān)鍵因素)有什么關(guān)聯(lián),我們可以把我們自己描述成一個冰山。冰山的尖端,唯一能從水面看到的一部分,可以當作是我們的的意識。它是有邏輯、有組織的,我們可以控制它,但這部分很小。這龐大的水下的部分是我們的意識不到的。它們是無組織、無邏輯、無關(guān)聯(lián)的,但它們?nèi)∧軟Q定我們的行為特征。
現(xiàn)代心理學上一直試圖通過觀察一個人能夠在這個冰山上打多深的孔來分析一個人能夠什么程度的掌握一種技能。人們把一個人能夠到達的能力描述成四個階段。這篇文章里,我將試圖把這種分類應(yīng)用的我們每天都會應(yīng)用的技能上,它就是編程。
階段一:無意識,無能力
約翰是一個年輕的網(wǎng)站開發(fā)者。他以前是一個法律科的學生,但是他認為他的錢途不在這方面,所以他眼睛一轉(zhuǎn),做了轉(zhuǎn)行的決定。他曾經(jīng)幫他的朋友修過計算機,而且很成功,所以他認為這方面應(yīng)該都很容易。他很快找的了一些能夠讓他學習這些工作的地方(當然,都是靠近他家的地方)。六個月后,他開始聲稱自己是個網(wǎng)站專家了,他的簡歷上已經(jīng)列舉了不少編程語言、應(yīng)用程序,以及開發(fā)平臺。
約翰,實際上,是一個冷酷的“拷貝/粘貼”者。他以為能夠成功的顯示一個windows提示框,就表示對Javascript已經(jīng)掌握了。 php? 簡單:他成功的安裝了Wordpress。 Linux? 他從LiveCD上啟動了Ubuntu系統(tǒng),他能夠搭建一個Apache負載均衡集群服務(wù)器。他的意識告訴他,他已經(jīng)無所不知了。
問題就在于,約翰沒有意識到他可以學到更多的東西,所以他就簡單的停止學習了。他一直處在一個氣泡中,他經(jīng)常訪問的在線論壇和郵件列表里有很多人都非常客氣的告訴他,他的問題在于他膚淺的知識,但沒有人能捅破他的氣泡。而且更悲哀的是,他在論壇里的能力值比你我加起來都高。
約翰是無意識的無能力。
階段二:有意識的無能力
馬克是個數(shù)學老師。他在一個小鎮(zhèn)的大學里工作,他希望他的大學里能夠擁至少是五倍于現(xiàn)有數(shù)量的資料庫。他知道在科技領(lǐng)域方面他的大學先對于其他研究機構(gòu)落后很多,所以他決定自己動手去做這個工作。他想建立一個在線平臺,能在社團里共享他們的課程。
馬克是天生的邏輯型的思維。他知道為了實現(xiàn)這個東西,他需要去做研究,搜集信息。他的搜索從維基百科開始,但最終在大量的瀏覽閱讀后他明白其實世界上已經(jīng)有不少團隊對他的這種問題提供了開源方案。
他從那些工程中選擇了一個最能滿足他的需求的一個。他開始著手閱讀在它的網(wǎng)站上找到的文檔和手冊,最后他把源程序下載下來。他的興奮狀態(tài)逐步退去,因為他看到了’數(shù)據(jù)庫連接錯誤’。他試了又試,不至三次的檢查他的每一步驟,還是不成功。馬克并不惱怒,因為他知道自己在這個領(lǐng)域并不是專家。
他開始轉(zhuǎn)向它郵件列表平臺,在里面,他用他所知道的(其實很少)最精確的語言描述了他的問題。他提醒每個人,他并不清楚他所做的這個東西,所以,他希望能得到更多的文檔去閱讀,或人們給他提供這方面的提示。他不需要等待很久就能得到解決方案,因為他采取了正確的方法。
馬克是有意識的無能力
階段三:有意識的有能力
自從阿德拿起他的第一本HTML書至今已經(jīng)有兩年了。很顯然這是一條不歸路,對于阿德來說,每天思考的問題都是如何去提高自己喜愛的這個專業(yè)。在他拿起第一本書幾個月后他得到了他第一個作為自由工作者的身份開發(fā)一個網(wǎng)站的工作,他投入了極大的熱情,不管這個工作的薪酬有多低,這個工作有多基礎(chǔ)(甚至是對于他的水平)。
他深信一點:最好的學習的方式就是堅持不懈,屢戰(zhàn)屢敗,屢敗屢戰(zhàn)。他經(jīng)常去研究如何以最好的方式執(zhí)行一個功能,因為他知道最好的代碼不是第一次就能獲得的。他必須去優(yōu)化代碼,他一遍又一遍的審查。他一次又一次的修正。
之后,他又給他自己寫了一個大概有30到40行的程序。幾天之后,他忍不住感到失望,因為他在上網(wǎng)時發(fā)現(xiàn)了一段更省事的、而且更簡潔的程序,代碼行只有他的一半。他渴望知道何時他才能輕松的寫出如此高質(zhì)量的代碼。然而,經(jīng)過一段思考之后,他開始分析他自己的代碼。他知道必須去重寫這些代碼,否則睡覺都不會安穩(wěn)。他不愿意去拷貝粘貼它們。
阿德正走在成為一個優(yōu)秀的專家的路上,但他不會給自己加上這個稱號,他愿意去等。
阿德是有意識的有能力。
階段四:無意識的有能力
這是編程水平的終極階段。 它不僅僅是知識積累的結(jié)果,更是一系列的邏輯規(guī)則在數(shù)年里慢慢的刻印到一個人的腦海里的結(jié)果。
我們面對這樣的一個人時不得不由衷的佩服他對如此復雜的問題能更如此輕松的應(yīng)對。 這種編程者看起來就像是能夠嗅出問題的解決方案,而不是思考出的。
優(yōu)化的編寫,可維護的、安全性的程序,應(yīng)用各種設(shè)計模式,使用正確的開發(fā)工具組合,這些會自動的在他的工作中體現(xiàn)出來。這種人能夠輕松的使用多種語言在多種操作系統(tǒng)平臺上工作。
結(jié)束語
經(jīng)過閱讀上面的例子,我希望你能夠跟我一樣信服:心理學的這種分類模式用在我們這個特定的專業(yè)領(lǐng)域是有效的。
值得一提的是,一些作者提出第五中階段:成熟的有能力,定義為有能力去教育和傳承他所學的、甚至是還未意識到的知識。我們可以從一些才智超凡的人哪里看到這些特征,他們可以教學和講解(甚至在大廳廣眾),這些很顯然是后天培養(yǎng)的技能。
it知識庫:編程能力的四種境界,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。