聽人說了一個詞兒,叫作“Comfortable Zone”,中文是“舒適區”。
? ? 這個詞兒讓我瞬間聯系到程序員的能力邊界問題,我畫了能力拓展模型圖。如下:

? ? 我覺得這個能力拓展模型,適用于一個人的方方面面,但這次我打算只拿程序員來扯一下。
## 能力拓展模型
? ? 圖中左側是我們的現狀,最內層的原型是我們感到舒適的區域,我稱之為“舒適區”。
? ? 以程序員為例,當程序員的技術能力和解決問題的能力達到一定水平之后,就能夠輕松勝任某些開發任務,解決特定實際問題,給用戶帶來某方面的便利。他的能力與他接觸到的問題匹配,此時程序員處于舒適區。這個舒適區的大小是由他解決問題能力的大小定義和界定的。
? ? 當問題超出程序員先有技能和經驗說明,他能看到并了解,但還不能解決。那這些問題就是這個程序員隨時可能面對的挑戰區,也就是圖中的黃色圓型。
? ? 圖中的大片的紅色區域,對程序員來講,就是未知區域,未知即迷茫,未知即痛苦。這個區域往往是程序員看不清或看不到的,是百慕大三角的一片未知而神秘的區域,貿然跳入,可能折戟沉沙鎩羽而歸。
? ? 假如一個程序員愿意跳出舒適區,踏入挑戰區,接受一定的不適,那他就能夠有機會拓展他的能力,將自己的舒適區擴展得更大,他的能力模型就變成上圖右側部分,舒適區變大,挑戰區變大,痛苦區變大,這也是符合人類認知規律的:知道的越多,不知道的也越多。
? ? 如果一個程序員連輕微不適都不愿意接受,那他就會漸漸固步自封,落后于別人,落后于時代,漸漸被這個日新月異的時代所拋棄,成為一個別人眼中沒什么用的老家伙。
## 在開發過程中擴展舒適區
? ? 一個程序員的能力,是可以通過鍛煉不斷變強的。就像人的肌肉,一段時間讓鍛煉強度超負荷一點,適應了,習慣了,肌肉變得比原來強了,就再超負荷一點,通過這樣的螺旋式遞進,肌肉就會越來越強。程序員也是一樣的,你的學習能力、代碼能力、設計能力、溝通能力、管理能力等等,都是可以通過鍛煉來加強的(我們得考慮一個人適合做什么,如果他沒有某方面的才干,雖然通過鍛煉也可以加強,但違背天性的事兒通常為事倍功半)。
? ? 在軟件開發過程中,一個程序員,他會什么語言懂什么框架水平如何,自己心里有數,項目經理通過他的表現也認為自己心里有數。那么在有新的項目要做時,通常的做法是,哪個程序員熟悉實現Tx任務相關的技術,就讓這個程序員做Tx任務,這通常又是出于交付期、生產率、成本等各方面的考慮。
? ? 在這種情況下,每個人都做自己駕輕就熟的事情,對整個項目來講,自然是最經濟的。可是對程序員自己來講,卻是不經濟的。因為你無法接受新的挑戰,你的能力邊界的拓展就會很慢。所以,合理的情況是,項目經理在劃分任務時,要對程序員負責,既給一個程序員能輕松完成的任務,也要給他需要費點兒勁兒才能完成的任務,通過具有挑戰性的任務來鍛煉這個程序員,讓他更好更快的成長。但是這樣做的管理成本太高,所以,現實當中,很少公司的項目經理會主動這么做(沒合適人手take某個任務時會被動這么做)。
? ? 鑒于這種現實,作為程序員自己,如果你想更快地成長,就要表現得勇敢一些,主動走到挑戰區域,去搶具有挑戰性的任務。(如果不好意思主動,也可以在有挑戰性的任務落在自己頭上時屁顛屁顛地接受。)一旦你拿到了對你來講具有挑戰性的任務,那你就賺到了。沒錯,我是故意這么說的,你賺到了。雖然你會為此殫精竭慮,雖然你可能為此加班,雖然你可能為此在別人看不見的地方付出,但是你擁有了機會和更多可能性,如果你順利完成了,那你的舒適區會擴大,你接觸新挑戰的機會也會變大,你就進入了良性循環,你會越來越強大。你終將走上七龍珠中悟空的變身之路,成為賽亞人,超級賽亞人,超級賽亞人2,超級賽亞人3,……直到成為超級賽亞人之神。
? ? 想想看,這是多么美好的事!
? ? So,某個技術沒搞過?不是問題。某個語言沒學過?不是問題。軟件結構太復雜,一時掌控不了?不是問題。業務不熟悉?不是問題。如果你覺得這些是問題,OK,請坐看云起,等待時光帶走一切然后把你丟在原地。
? ??**在渴望成就自我的程序員眼里,問題即機會**。只有抓住機會,我們解決問題的能力才會在痛苦的歷練中像雪球一樣越滾越大。
- 前言
- 受刺激啦,開篇啦
- 群星閃耀的黃金時代
- 3D打印能打印出程序猿嗎
- 程序員零門檻?
- 看看你離優秀有多遠
- 程序員的生活就這樣嗎
- 別說“我已經很努力了”
- 無BUG不生活
- 一張圖道盡程序員的出路
- 薪資,你是我不能言說的傷
- 找工作的辟邪劍譜
- 誰是為加班而生的
- 程序員到底是什么角色
- 讓程序員蛋疼的那些事兒
- 噢,我不想成為問題!
- 軟件開發的十八般樂趣
- 你的幸運女神呢
- 怎樣成為技術達人
- 程序員該不該考慮初創公司
- 那些害死程序員的細節
- 一個老程序員的2014年終總結
- 千奇百怪的程序員
- 咦,你也在混日子啊
- 任性,春節前辭職
- 請區別對待女程序員
- 傷心小箭,你中了幾枝
- 怎么告別“混日子”
- 神奇的四步編程法
- 快來約這些女生,保你脫單
- 程序員跳槽神級攻略
- 程序員的神秘等式,你造幾個?
- 這10個問題去哪兒啦
- 程序員保值的4個秘密
- 她發現了一個Bug……
- 別被技術綁架
- 程序員如何變身IT講師
- 程序員的能力拓展模型
- 軟件項目9步神曲
- 史上最全的程序員求職渠道總結
- 樂觀的程序員
- 三個因素決定你的薪水高低
- 給新程序員的10條建議
- 項目進度估算難題
- 程序員被人喜歡的13點原因
- 怎樣新學一門技術
- 月薪3萬的程序員都避開了哪些坑
- 如何快速定位自己熱愛的工作
- 這8種武器點亮程序員的個人品牌
- 程序員,這12個問題讓經理比你痛苦多了
- 親愛的程序猿們怎么找工作
- 漫談選人與培訓
- 自我發現,找到適合自己的職位
- SMART原則助你設定有效目標
- 培訓機構畢業的程序員被歧視的背后邏輯