讀《程序員的思維修煉:開發(fā)認(rèn)知潛能的九堂課》有感
本文關(guān)鍵詞:程序員的思維修煉:開發(fā)認(rèn)知潛能的九堂課,由筆耕文化傳播整理發(fā)布。
讀《程序員的思維修煉:開發(fā)認(rèn)知潛能的九堂課》有感--1&2章
這幾天閑著無聊,在實(shí)驗(yàn)室看起了Andy Hunt的《程序員的思維修煉:開發(fā)認(rèn)知潛能的九堂課》,講這本書之前我覺得有必要先講講本書的作者。
Andy Hunt,敏捷開發(fā)權(quán)威人士,敏捷宣言首倡者之一,著名IT圖書出版公司Pragmatic Programmers創(chuàng)始人。除本書外,他還與人合著有多本獲獎(jiǎng)圖書,深受讀者歡迎,包括《高效程序員的45個(gè)習(xí)慣——敏捷開發(fā)修煉之道》,《程序員修煉之道——從小工到專家》等。
從簡介中可以看出作者是敏捷開發(fā)的領(lǐng)軍人物,上面介紹的兩本書,我想學(xué)習(xí)軟件工程或是研究敏捷開發(fā)的人士想必都知道吧。不說了,開始講講第一二章所學(xué)到的內(nèi)容了。
隨著社會(huì)各個(gè)相關(guān)團(tuán)體的復(fù)雜交互影響和社會(huì)的持續(xù)變化,有兩項(xiàng)技能應(yīng)是當(dāng)前最重要的:
1.溝通能力。
2.學(xué)習(xí)和思考的能力。
軟件行業(yè)正在逐步提高溝通能力。特別是敏捷開發(fā)[1],強(qiáng)調(diào)了團(tuán)隊(duì)成員之間、最終客戶和開發(fā)團(tuán)隊(duì)之間的溝通交流,F(xiàn)在越來越多的人也意識(shí)到簡單、有效
的溝通非常的重要。相比之下,提高學(xué)習(xí)和思考能力要更難一些。
程序員需要不斷地學(xué)習(xí)——不僅僅是學(xué)習(xí)新技術(shù),還包括應(yīng)用的問題域、用戶社區(qū)的奇思妙想、同事的古怪習(xí)慣、行業(yè)的八卦新聞和項(xiàng)目演進(jìn)的重要特征,我們必須學(xué)習(xí)學(xué)習(xí)再學(xué)習(xí),持續(xù)不斷地學(xué)習(xí),然后把學(xué)習(xí)成果應(yīng)用到解決日常遇到的一切新舊問題上。也許,這些聽起來都相當(dāng)?shù)娜菀,但是學(xué)習(xí)能力、批判性的思考能力和創(chuàng)造力——所有這些擴(kuò)展思維的能力,都取決于你自己。沒有人教你這些東西,你必須學(xué)習(xí)。我們往往錯(cuò)誤地看待老師和學(xué)生的關(guān)系:不光是老師在教,學(xué)生也要在學(xué)。學(xué)習(xí)完全取決于你自己。
人們不斷的學(xué)習(xí)學(xué)習(xí),都希望自己能成為專家,技能獲取鄰域的德雷福斯模型是研究如何超越新手層次、如何不斷精通技術(shù)的有效方法。我們將在下面的內(nèi)容中探討德雷福斯模型,并特別關(guān)注成為一名專家的關(guān)鍵要素:應(yīng)用你自己的實(shí)踐經(jīng)驗(yàn)、理解情境和利用直覺。
在德雷福斯模型中,從新手到專家要經(jīng)歷五個(gè)階段(1.新手,2.高級(jí)新手,3.勝任者,4.精通者,5.專家)。
階段1:新手
有定義可知,新手在該項(xiàng)技能鄰域經(jīng)驗(yàn)很少或者根本沒有經(jīng)驗(yàn)。這里提到的經(jīng)驗(yàn),指的是通過實(shí)施這項(xiàng)技術(shù)促進(jìn)了思維的改變。舉個(gè)反例,可能一個(gè)開發(fā)人員聲稱擁有十年的經(jīng)驗(yàn),但實(shí)際上只是一年的經(jīng)驗(yàn)重復(fù)了九次,那么這就不算是經(jīng)驗(yàn)。
新手非常在乎他們能否成功。沒有太多經(jīng)驗(yàn)指導(dǎo)他們,他們不知道自己的行為是對(duì)是錯(cuò)。新手不是特別想要學(xué)習(xí),他們只是想實(shí)現(xiàn)一個(gè)立竿見影的目標(biāo)。他們不知道如何應(yīng)付錯(cuò)誤,所以出錯(cuò)的時(shí)候,他們非常容易慌亂。但是,如果給新手提供與情境(新手與專家的重要區(qū)別)無關(guān)的規(guī)則參照,他們就會(huì)變得能干起來。也就是說,需要這種形式的規(guī)則:“當(dāng)X發(fā)生時(shí),執(zhí)行Y。”換言之,需要一份詳細(xì)的指令清單。新手所面臨的問題是,對(duì)于某種情境,不知道哪條規(guī)則是最相關(guān)的。當(dāng)一些意想不到的事情發(fā)生時(shí),他們就會(huì)不知所措。
階段2:高級(jí)新手
一旦經(jīng)過新手的歷練,人們開始以高級(jí)新手的角度看待問題。高級(jí)新手能夠開始多多少少地?cái)[脫固定的規(guī)則。他們就可以獨(dú)自嘗試任務(wù),但仍難以解決問題。他們想要快速獲取信息,他們不想某個(gè)問題上尋根究底,或者重新溫習(xí)一遍基礎(chǔ)知識(shí)。
階段3:勝任者
在第三階段,從業(yè)者現(xiàn)在能夠建立問題域的概念模型,并有效地使用它們。他們可以獨(dú)立解決自己遇到的問題,并開始考慮如何解決新的問題——那些他們之前沒遇到的問題。他們開始尋求和運(yùn)用專家的意見,并有效利用。與更高水平者追隨下意識(shí)不同,勝任者會(huì)探尋和解決問題,他們的工作更多是基于謹(jǐn)慎的計(jì)劃和過去的經(jīng)驗(yàn)。如果沒有更多的經(jīng)驗(yàn),在解決問題時(shí),他們將難以確定關(guān)注哪些細(xì)節(jié)。
階段4:精通者
精通水平的從業(yè)者需要全局思維。他們將圍繞這個(gè)技術(shù),尋找并想了解更大的概念框架。對(duì)于過于簡單化的信息,他們會(huì)非常的沮喪。在德雷福斯模型中,處于精通水平的從業(yè)人員有一項(xiàng)重大的突破:他們能夠糾正以往不好的工作表現(xiàn)。他們會(huì)反思以前是如何做的,并修改其做法,期望下一次表現(xiàn)得更好。到了這一階段,自我改進(jìn)才會(huì)出現(xiàn)。同時(shí),他們會(huì)學(xué)習(xí)他人的經(jīng)驗(yàn)。作為精通者,他能夠閱讀案例研究,傾聽有關(guān)失敗項(xiàng)目的流言蜚語,觀察別人怎么做,從故事中認(rèn)真學(xué)習(xí),即使他們沒有親自參與。
階段5:專家
專家是各個(gè)鄰域知識(shí)和信息的主要來源。他們總是不斷地尋找更好的方法和方式做事。他們有豐富的經(jīng)驗(yàn),可以在恰當(dāng)?shù)那榫持羞x取和應(yīng)用這些經(jīng)驗(yàn)。他們著書、寫文章、做巡回演講。專家知道哪些是無關(guān)緊要的細(xì)節(jié),哪些是非常重要的細(xì)節(jié)。也許不是有意識(shí)的,但是專家知道應(yīng)該關(guān)注哪些細(xì)節(jié),可以放心地忽略哪些細(xì)節(jié)。專家非常擅長做有針對(duì)性的特征匹配。
從新手到專家的過程涉及的不僅僅是規(guī)則和直覺。在你提升技能水平的過程中,有許多方面會(huì)發(fā)生改變(可見下圖)。最重要的三個(gè)變化是:
1.從依賴規(guī)則向依賴直覺轉(zhuǎn)變。
2.觀念的改變,問題已不再是一個(gè)相關(guān)度等同的所有單元的集合體,而是一個(gè)完整和獨(dú)特的整體,其中只有某些單元是相關(guān)的。
3.最后,從問題的旁觀者轉(zhuǎn)變?yōu)閱栴}涉及的系統(tǒng)本身的一部分。
可悲的是,研究似乎表明,大多數(shù)人的大多數(shù)技能,在他們生命的大多數(shù)時(shí)間里,從來沒有高于第二階段高級(jí)新手,“執(zhí)行他們需要做的任務(wù)并根據(jù)需求學(xué)習(xí)新任務(wù),但是從來沒有對(duì)任務(wù)環(huán)境獲得更廣泛的,概念上的理解。”
此外,元認(rèn)知能力,或者自我認(rèn)知的能力,往往在較高的技能層次中才會(huì)具有。不幸的是,這意味著處于較低技能層次的從業(yè)者會(huì)明顯高估他們自己的能力——有研究表明高出50%。正確自我評(píng)估的唯一辦法就是提高個(gè)人技能層次,這反過來又會(huì)提高元認(rèn)知能力。你可以把這種現(xiàn)象稱為二階不勝任:不知道自己不知道多少。新手盡管能力差但是信心十足,而專家在情況異常時(shí)會(huì)變得愈發(fā)謹(jǐn)慎。專家會(huì)更多的自我懷疑。
那么,你想成為專家嗎?你需要大約投入大約十年的努力,不論哪個(gè)鄰域。研究人員已經(jīng)研究了下棋、音樂作曲、繪畫、鋼琴演奏、游泳、網(wǎng)球和其他技能。幾乎在每種情況下,從莫扎特到甲殼蟲樂隊(duì),你會(huì)明顯發(fā)現(xiàn)在成為世界級(jí)的專家之前至少需要十年的辛勤工作。而且需要辛勤工作——只是在某個(gè)鄰域工作十年是不夠的。你需要實(shí)踐,積極實(shí)踐需要四個(gè)條件。
1.需要一個(gè)明確定義的任務(wù)。
2.任務(wù)需要有適當(dāng)難度——有挑戰(zhàn)性但可行。
3.任務(wù)環(huán)境可以提供大量反饋,以便于你采取行動(dòng)。
4.提供犯錯(cuò)誤和糾正錯(cuò)誤的機(jī)會(huì)。
但是,有一些好消息。一旦你成了某個(gè)鄰域的專家,在別的鄰域成為專家就會(huì)變得更容易。至少你已經(jīng)有了現(xiàn)成的獲取知識(shí)的技能和模型構(gòu)建的能力。
從德雷福斯模型學(xué)到的最重要的收獲之一就是,認(rèn)識(shí)到新手需要與情境無關(guān)的規(guī)則,而專家使用與情境相關(guān)的直覺。在系統(tǒng)思維中,如面向?qū)ο蟮木幊,往往是事物之間的聯(lián)系最讓人感興趣,而不是事物的本身。這些聯(lián)系有助于形成情境,而正是情境讓這些事物各不相同。在日常的德雷福斯模型的應(yīng)用中,首先,請(qǐng)記住,無論是對(duì)你自己或?qū)λ,一種規(guī)則并非處處適用。正如從模型中看到的,你的需求取決于你所處的技能水平。隨著時(shí)間推移,你的個(gè)人學(xué)習(xí)和成長所需的東西會(huì)改變。新手需要快速成功和情境無關(guān)的規(guī)則。你無法指望他們能獨(dú)自處理新的情況。
所學(xué)習(xí)到的訣竅:
1.始終關(guān)注情境。
2.新手使用規(guī)則,專家使用直覺。
3.知道你不知道什么。
4.人們往往是通過觀察和模仿來學(xué)習(xí)的,實(shí)時(shí)上,如果你有孩子,你可能已經(jīng)注意到他們很少照你所說的去做,卻總是模仿你的所作所為。
5.對(duì)于形式模型的過度依賴往往會(huì)鼓勵(lì)羊群行為[2]而貶低個(gè)人創(chuàng)造力。
[1]敏捷方法:敏捷方法在很多重要的方面都與傳統(tǒng)的基于計(jì)劃的方法不同,最顯著的就是擺脫了死板的規(guī)則,丟棄了陳舊的日程表,注重實(shí)時(shí)的反饋。在本書中會(huì)經(jīng)常提到敏捷方法,因?yàn)楹芏嗝艚菟枷牒蛯?shí)踐都是與良好的認(rèn)知習(xí)慣相融合。
[2]羊群行為:也稱“羊群效應(yīng)”或“從眾心理”,指人們具有與他人保持一致,和他人做相同事情的本性。
posted @
本文關(guān)鍵詞:程序員的思維修煉:開發(fā)認(rèn)知潛能的九堂課,由筆耕文化傳播整理發(fā)布。
,本文編號(hào):168180
本文鏈接:http://sikaile.net/wenshubaike/mishujinen/168180.html