愚蠢的項(xiàng)目經(jīng)理與聰明的程序員
工作在第一線的軟件開發(fā)人員是程序員和程序經(jīng)理,他們決定著軟件的命運(yùn)。良好的程序員隊(duì)伍和出色的管理是軟件項(xiàng)目成功的必要條件。管理不是管制,不是去卡住人家的脖子,因?yàn)槌绦騿T不是一群野鴨子。管理的目的是讓大家一起把工作做好,并且讓各人獲得各自的快樂和滿足。當(dāng)一個(gè)組織被出色地領(lǐng)導(dǎo)時(shí),雇員甚至不知道他們已被領(lǐng)導(dǎo)。在項(xiàng)目完成時(shí),他們會(huì)自豪地說:“看看我們通過努力取得的成績吧”。所以管理者不能老惦記著自己是一個(gè)官,而應(yīng)時(shí)刻意識(shí)到自己是責(zé)任的主要承擔(dān)者。我們經(jīng)常會(huì)聽到有經(jīng)理頭銜的人在高談闊論:“編程我不會(huì),做個(gè)項(xiàng)目還不easy?派個(gè)人去搞系統(tǒng)分析,回頭再叫幾個(gè)程序員把需求譯成程序,不就OK了嗎?”不懂英語的人準(zhǔn)以為easy和OK是貶義詞。要讓軟件項(xiàng)目失敗很容易,只要符合下列條件之一即可:(1)項(xiàng)目經(jīng)理對(duì)軟件一無所知;(2)技術(shù)負(fù)責(zé)人對(duì)編程不感興趣;(3)真真編寫代碼的程序員是臨時(shí)雇用的。如果上述三個(gè)條件同時(shí)具備,就請(qǐng)放心失敗好了。
讓我們少幻想自己是比爾·蓋茨,先當(dāng)好程序員和程序經(jīng)理再說。
2.1 了 解 程 序 員
早期的程序員干活能從軟件直通硬件,個(gè)個(gè)生猛無比。又因他們的作息時(shí)間、言行舉止與常人不太一樣,久而久之就給人們留下了“神秘”、“孤僻”的印象。如今軟件行業(yè)被炒得熱火朝天,有能耐的程序員即便躲在大山岙的軍工廠里也能被挖出來。而更多原本不是程序員的人操起幾本“速成”、“二十一天通”等書籍也加入了這個(gè)行業(yè)?,F(xiàn)在國內(nèi)號(hào)稱有上百萬程序員,這支大軍魚龍混雜,已搞不清那些是正規(guī)軍,那些是民兵游擊隊(duì)了。真正的程序員都有如下秉性: 一、誠實(shí)程序員在學(xué)習(xí)與工作期間幾乎天天與機(jī)器打交道,壓根就沒有受欺騙或欺騙人的機(jī)會(huì)。勤奮的程序員在調(diào)試無窮多的程序Bug時(shí),已經(jīng)深深地接受了“誠實(shí)”的教育。不誠實(shí)的人,他肯定不想做、也做不好程序員。有一名市場營銷員和一名程序員都在新聞發(fā)布會(huì)上發(fā)言,將一項(xiàng)新技術(shù)的消息公布于眾。市場營銷員說:“這項(xiàng)技術(shù)比電話、晶體管和原子彈三項(xiàng)發(fā)明加起來對(duì)世界文明的影響都要大。”程序員說:“這項(xiàng)技術(shù)在有限的領(lǐng)域內(nèi),在有限的程度上,解決了一些技術(shù)性的問題。”看來為了讓我們的民族更加誠實(shí),學(xué)電腦真的要從娃娃抓起。二、簡單——實(shí)用主義有人問一個(gè)數(shù)學(xué)家,一個(gè)物理學(xué)家和一名程序員:“一個(gè)盒子有幾個(gè)面?”數(shù)學(xué)家回答說:“有六個(gè)面,因?yàn)楹凶邮情L方體。”物理學(xué)家回答說:“有12個(gè)面,分為6個(gè)外表面和6個(gè)內(nèi)表面 。”程序員回答說:“只有兩個(gè)面,里面放電路板和硬盤,外面放顯示器和鍵盤。”目前即使最先進(jìn)的計(jì)算機(jī)也不具備智能,程序員的基本工作就是把復(fù)雜的問題轉(zhuǎn)化為計(jì)算機(jī)能處理的簡單的程序。如果一個(gè)問題復(fù)雜到連程序員自己都不能理解,他就無法編出程序讓更笨的計(jì)算機(jī)來處理。所以程序員信奉“簡單——實(shí)用”主義。也有不少做計(jì)算機(jī)“學(xué)問”的人顛倒行事。本來幾句話、幾行程序就能說明白的事,非得要抬高到理論創(chuàng)新的程度,寫成玄乎的文章去評(píng)教授或者弄個(gè)博士學(xué)位。所幸在第一線工作的程序員大多是實(shí)干的。三、愛憎分明程序員大都喜歡技術(shù)挑戰(zhàn),不喜歡搞測試與維護(hù)。高水平的程序員喜歡與高水平的程序員一起工作,因?yàn)樗麄兣?ldquo;與臭棋佬下棋,棋越下越臭”。程序員大都厭惡拉幫結(jié)派、耍政治手腕。不信,數(shù)一數(shù)你認(rèn)識(shí)的程序員,有幾個(gè)是黨派人士?四、工作單調(diào)但不乏味有人問編程大師:“程序設(shè)計(jì)的真正含義是什么 ?”大師回答說:“餓了的時(shí)候就吃,困的時(shí)候就睡,只要時(shí)機(jī)恰當(dāng)就進(jìn)行程序設(shè)計(jì)。”其實(shí)程序員的生活和工作已融為一體,盡管單調(diào)卻不乏味,還能獨(dú)享孤獨(dú)。有詩為證:
我編程三日
兩耳不聞人聲
只有硬盤在歌唱結(jié)論:優(yōu)秀的程序員沒有理由不讓人喜歡,他們遠(yuǎn)比怪僻來得可愛。
2.2 了 解 程 序 經(jīng) 理
這里程序經(jīng)理是指一支程序員隊(duì)伍的領(lǐng)導(dǎo)者,不管他的職務(wù)是開發(fā)組長,項(xiàng)目經(jīng)理,還是部門經(jīng)理。程序經(jīng)理是技術(shù)性的基層或中層干部,是軟件企業(yè)得以發(fā)展的生力軍。程序經(jīng)理的選拔是不容草率的事。不象有些事業(yè)單位,只要政治口號(hào)喊得勤快、能左右逢緣不犯錯(cuò)誤就可混個(gè)領(lǐng)導(dǎo)當(dāng)當(dāng)。也不象一些官僚機(jī)構(gòu),只有兩個(gè)人的辦公室也要設(shè)正主任和副主任。如果碰巧正主任姓傅,副主任姓鄭,還會(huì)斗個(gè)沒完沒了。在一個(gè)管理混亂的軟件公司里,如果某個(gè)程序員能大喊大叫并且干勁十足,那他就能成為一名程序經(jīng)理。微軟公司在選擇經(jīng)理人員時(shí),總是把他們的技術(shù)知識(shí)和運(yùn)用技術(shù)去賺錢的能力放在首位。程序經(jīng)理一般就是程序員隊(duì)伍中最聰明的那個(gè)家伙。比爾·蓋茨曾這樣描述聰明人[Cusumano1996]:聰明人一定反應(yīng)敏捷,善于接受新事物。他能迅速進(jìn)入一個(gè)新領(lǐng)域,給你一個(gè)頭頭是道的解釋。他提出的問題往往一針見血、擊中要害。他能及時(shí)掌握所學(xué)知識(shí),并且博聞強(qiáng)記,他能把本來認(rèn)為互不相干的領(lǐng)域聯(lián)系在一起使問題得到解決。他富有創(chuàng)新精神與合作精神……
好的程序經(jīng)理應(yīng)該具備以下幾個(gè)條件:
一、技術(shù)水平是程序員隊(duì)伍中的最高級(jí)別每個(gè)程序員骨子里頭都有一股傲氣,如果你不能技?jí)喝盒?,他們就不?huì)聽你指揮。一個(gè)技術(shù)水平較差的人被任命為程序經(jīng)理真是個(gè)悲劇,就象一個(gè)略有權(quán)勢的太監(jiān),表面上有人對(duì)他點(diǎn)頭哈腰,背后卻被人鄙視。
二、能做最多且最難的工作程序經(jīng)理編程要快且好。別人要干一天的活,他半天就能做完,這樣才會(huì)有精力去搞管理。程序經(jīng)理應(yīng)負(fù)責(zé)系統(tǒng)分析、系統(tǒng)設(shè)計(jì)這類最難的開發(fā)工作,并指導(dǎo)不同水平的程序員把各自的工作做好。如果人手不夠,程序經(jīng)理要能同時(shí)干幾個(gè)人的活。
三、有人格魅力軟件開發(fā)是智力創(chuàng)作過程,你不能指望僅通過執(zhí)行規(guī)章制度來產(chǎn)生好的作品。很多軟件公司的程序經(jīng)理都不是管理專業(yè)出身的,他們也不可能為了搞好管理而成天玩弄心機(jī)。技術(shù)出色的程序經(jīng)理一般少有心術(shù)不正的,所以管理的重點(diǎn)應(yīng)是“以身作則”、“公正待人”。如果程序經(jīng)理在上班時(shí)趴在桌上睡覺,其他程序員也會(huì)這樣干。如果程序經(jīng)理發(fā)現(xiàn)有兩個(gè)程序員趴在機(jī)器旁睡覺,不能只對(duì)其中一個(gè)大聲吼叫:“你一編程就想睡覺,看看人家,在睡覺時(shí)都想著編程。”如果管理者沒有人格魅力,就沒有人信服你,團(tuán)隊(duì)就不會(huì)有凝聚力,烏合之眾不可能開發(fā)出優(yōu)秀的軟件。結(jié)論:一個(gè)有活力的軟件公司的各級(jí)經(jīng)理都不會(huì)這樣感嘆,“因?yàn)槲疑兑膊粫?huì)干,所以只好當(dāng)領(lǐng)導(dǎo)。”
2.3 程序員升為經(jīng)理后是否還要編程
讓我們先看看Microsoft公司的系統(tǒng)軟件部門與應(yīng)用軟件部門的領(lǐng)導(dǎo)是怎樣看待這個(gè)問題的[Cusumano1996]。Windows NT 3.0項(xiàng)目的軟件經(jīng)理婁·帕雷羅里讓他手下的經(jīng)理們像他一樣每天花一半的時(shí)間編寫代碼:我在組內(nèi)制定了許多規(guī)則,其中最重要的一條是每個(gè)人都得編程,誰也別想坐在那兒發(fā)號(hào)施令……我發(fā)現(xiàn)管理者很容易失去目標(biāo),他們總是無法認(rèn)識(shí)到問題的本質(zhì)并且反應(yīng)遲緩。如果你始終不放棄編寫代碼,你就能對(duì)項(xiàng)目的進(jìn)展情況了如指掌,及時(shí)發(fā)現(xiàn)并解決問題……我大概每天花一半的時(shí)間編寫代碼并尋找項(xiàng)目的缺陷。作為應(yīng)用軟件領(lǐng)域的經(jīng)理,克里斯·彼得斯也持同樣的看法。在他任Word項(xiàng)目總經(jīng)理時(shí)就認(rèn)為:在一些大公司內(nèi)部,各部門經(jīng)理把具體操作的層次向下移。你一旦當(dāng)上開發(fā)部門經(jīng)理,很快就會(huì)以自己身居高位、日理萬機(jī)為由放棄編程;同樣地,開發(fā)小組的組長會(huì)以自己重任在肩而不愿編程;至于程序員也會(huì)覺得自己十分繁忙、分身無術(shù)而不再多編寫程序。雖然我是270名員工的領(lǐng)導(dǎo),似乎不再需要做什么具體的工作了,但我還是為Word新版本編寫了一個(gè)特性。程序員升為經(jīng)理后一定要編程,這個(gè)道理已經(jīng)說得很清楚了。最怕的是“虛心接受,堅(jiān)決不做”;或者僅是做個(gè)樣子,每天花一分鐘時(shí)間編程,編譯器還沒運(yùn)行完就關(guān)掉了。
2.4 經(jīng)理與技術(shù)隊(duì)伍的建設(shè)
如果是經(jīng)營一個(gè)加工廠或一個(gè)飯店,經(jīng)理們可以不必懂技術(shù)。因?yàn)樗麄兊某WR(shí),以及通過耳聞目睹或者咨詢都能解決實(shí)踐中的問題。在軟件領(lǐng)域,技術(shù)的力量是無窮的,一天之內(nèi)就可使整個(gè)產(chǎn)業(yè)發(fā)生巨變。也許你在商業(yè)上很精明,但無法保證自己在技術(shù)浪潮中安然無恙。軟件公司的各級(jí)經(jīng)理最好既精通技術(shù)又懂管理。一個(gè)出色的領(lǐng)導(dǎo),加上一支技術(shù)過硬的隊(duì)伍,才有可能創(chuàng)造業(yè)績。不能光指望請(qǐng)來孫子或諸葛亮當(dāng)教練,就能讓弱不禁風(fēng)的男足去捧世界杯。不少人總喜歡自吹中國人很聰明,最適合搞軟件開發(fā)??芍两褚矝]有做出幾個(gè)很光彩的軟件來,這與十三億人口不呼應(yīng)啊。新中國歷來喜歡與可憐的印度相比較來展現(xiàn)豐富多彩的優(yōu)越性,可是軟件產(chǎn)業(yè)沒法與人家比。工作在第一線的程序員與程序經(jīng)理應(yīng)該意識(shí)到:好兵好將都不是天生的,是后天練出來的;既要學(xué)會(huì)冷靜地分析問題,又要充滿激情地去工作。軟件公司總希望能物色到既精通技術(shù)又善長商業(yè)的優(yōu)秀人才做經(jīng)理。但已經(jīng)出名了的優(yōu)秀人才難以請(qǐng)到,也難以留住。所以把公司中的普通員工培養(yǎng)成為優(yōu)秀人才是重要的舉措。公司的老板不要對(duì)程序員抱有偏見,以為他們只配與機(jī)器打交道。一個(gè)高水平的程序員既然能學(xué)好數(shù)字邏輯,能理得清楚軟件中很多象“嵌套”這類“雞生蛋并且蛋又生了雞”的錯(cuò)綜復(fù)雜的關(guān)系,從理論上講當(dāng)個(gè)縣長也不成問題?,F(xiàn)在很多女士不會(huì)燒菜,卻能把菜的營養(yǎng)講得頭頭是道。雖然這是個(gè)值得哀嘆的社會(huì)問題,但我們應(yīng)該有信心期待:如果她們非得天天燒菜不可,那么不久就能把菜燒得又好吃又有營養(yǎng)。許多程序員不懂商業(yè),不是智力上的原因,主要是個(gè)人興趣和環(huán)境所致。軟件公司的老板應(yīng)該這樣鼓勵(lì)有靈氣的員工:“你能把技術(shù)做得那么棒,還怕搞不好管理?放心干吧!”的確,很多技術(shù)人員是在工作中領(lǐng)悟如何管理的,他們經(jīng)過挫折與磨練,逐漸升為組長、項(xiàng)目經(jīng)理,乃至成為公司重要的決策者。優(yōu)秀的程序員喜歡與優(yōu)秀的程序員一起工作,這是一種理想的愿望。一個(gè)普通的軟件公司不可能有非常多的優(yōu)秀程序員,即便有,他們也不可能天天聚在一起干同一件事并且和睦得無法形容。中國自封建社會(huì)起就有喜好內(nèi)斗的風(fēng)俗習(xí)慣,幾千年下來早已滲透到社會(huì)各個(gè)角落,那怕黃河水流斷了,估計(jì)這民風(fēng)也會(huì)延襲下去。要使程序員隊(duì)伍穩(wěn)健,必須有合理的等級(jí)制度來維護(hù)。等級(jí)制度并不限制自由和民主,它能讓自以為聰明絕頂、誰也不服的人們懂得如何合作與奮斗。就象有了一架梯子,每個(gè)人才有機(jī)會(huì)爬上墻頭摘下那向往已久的野花。當(dāng)梯子散成一堆木棍時(shí),只可能造就幾個(gè)賣炭翁。下面我們嘗試著建立一個(gè)程序員隊(duì)伍的等級(jí)制度。把技術(shù)水平分為四級(jí),第一級(jí)最低,第四級(jí)最高。第一級(jí)技術(shù)水平的程序員主要考核編程基本功,要求質(zhì)量合格(他們主要來自剛畢業(yè)的大學(xué)生)。第二級(jí)技術(shù)水平的程序員編程質(zhì)量要高,做過幾個(gè)軟件項(xiàng)目,有數(shù)年的工作經(jīng)驗(yàn),并能指導(dǎo)新手的工作。第三級(jí)技術(shù)水平的程序員主要考核系統(tǒng)分析與系統(tǒng)設(shè)計(jì)的能力,要求其技術(shù)有足夠的深度和廣度。第四級(jí)技術(shù)水平的程序員是成功的軟件產(chǎn)品的設(shè)計(jì)師,他不僅技術(shù)超群,并且能使技術(shù)轉(zhuǎn)化為有價(jià)值的商品。把管理(這里僅指軟件業(yè)務(wù)的管理,不考慮行政事務(wù))水平也分成四級(jí)。第零級(jí)最低,第三級(jí)最高。第零級(jí)管理水平的人沒有管理職務(wù),就是普通員工。第一級(jí)管理水平的人是開發(fā)小組的組長,可帶領(lǐng)幾名程序員工作。第二級(jí)管理水平的人是項(xiàng)目經(jīng)理。第三級(jí)管理水平的人決定某些產(chǎn)品是否要開發(fā),以及如何去占領(lǐng)市場。每個(gè)程序員都有明確的技術(shù)級(jí)別和管理級(jí)別。技術(shù)級(jí)別與管理級(jí)別有一定的聯(lián)系。一般地,第一級(jí)技術(shù)水平的人只能做普通員工;第二級(jí)技術(shù)水平的人可以當(dāng)一名組長;第三級(jí)技術(shù)水平的人可以當(dāng)一名項(xiàng)目經(jīng)理;第四級(jí)技術(shù)水平的人可成為公司產(chǎn)品的決策者。如圖2.1所示。本書作者目前的技術(shù)水平當(dāng)屬第二級(jí),管理水平符合組長的要求。作者在讀中學(xué)和大學(xué)時(shí)就曾美滋滋地當(dāng)過課代表,也就是組長級(jí)別。
2.5 向錯(cuò)誤與失敗學(xué)習(xí)
不管是生活或工作,人們都應(yīng)該向錯(cuò)誤與失敗學(xué)習(xí),目的是讓我們?cè)诙虝旱慕】的耆A中少犯錯(cuò)誤、少失敗,多做幾件正確的對(duì)社會(huì)有貢獻(xiàn)的事。導(dǎo)致軟件項(xiàng)目失敗的因素很多,如果不去找借口的話,就會(huì)發(fā)現(xiàn)錯(cuò)誤的根源在自己身上:知識(shí)貧乏、才能低下、經(jīng)驗(yàn)不足、驕傲自負(fù)……。我們必須正視自身的不足與缺點(diǎn),才會(huì)學(xué)到經(jīng)驗(yàn)教訓(xùn)。可人們常有太多的虛榮,為了克服心理障礙,白白浪費(fèi)了很多本該用于創(chuàng)造的精力。假設(shè)犯錯(cuò)誤的人是誠實(shí)的并且是勤奮的。他愿意不帶虛榮地改進(jìn)自己。當(dāng)這個(gè)人突然面對(duì)失敗時(shí),可能覺得自己一無是處,也許會(huì)不知所措,也許會(huì)病急亂投醫(yī)。程序員都有一種共同的體會(huì):在調(diào)試程序時(shí),時(shí)常碰到只有十幾行的程序竟會(huì)產(chǎn)生上百個(gè)編譯錯(cuò)誤;最后發(fā)現(xiàn)這么多的錯(cuò)誤其實(shí)是由某一行程序錯(cuò)誤引發(fā)的。當(dāng)我們?cè)诠ぷ髦信龅酱煺蹠r(shí),先要冷靜地分析問題(事出有因哪),找出問題的內(nèi)因與外因。內(nèi)因是最主要的,應(yīng)該予以最先解決。前幾年,中國出現(xiàn)了一個(gè)叫“FLG”的邪教,教徒達(dá)數(shù)百萬之多,人民群眾深受其害。不久前,全國的主要媒體對(duì)“FLG”進(jìn)行連續(xù)數(shù)月的聲討與揭露。目睹了很多受害人的哭訴后,相信人們能夠明白“FLG”是邪惡的、反動(dòng)的。但在憤怒與心痛之余,我們不禁要反思:為什么那么多人輕信邪教?人們是否接受了教訓(xùn)?在電視上看到很多人的確作了深刻的檢討:“我真是后悔啊,跟錯(cuò)了李洪志(FLG的頭頭)這個(gè)壞蛋,我對(duì)不起社會(huì)……。以后我一定要聽黨組織的話,黨叫我干什么我就干什么,決不上壞人的當(dāng)。”我覺得這些受害人一點(diǎn)都沒有醒悟:他只知道FLG是個(gè)邪教,并不知道自己為什么信了邪教。有些事情只要用腦袋去想一想就能分辨是非,可人們就是不去思考,卻渴望能跟對(duì)“福星”,甘愿把自己的腦袋拴在別人的褲帶上。所以說“迷信”是傻子碰到騙子的結(jié)果。傻是內(nèi)因,被騙是外因。傻子碰到好人未必能做出好事,傻子碰到另一個(gè)騙子就會(huì)做出另一件傻事。為了不讓自己“傻”,善良的人們應(yīng)該用腦子去多學(xué)一些知識(shí),努力讓自己來把握命運(yùn),不要急著把一生托給某個(gè)人或某個(gè)組織。軟件人員在遭受項(xiàng)目失敗并開始反省時(shí),不要只是就事論事地僅把眼光鎖在特定的項(xiàng)目上,吃一塹應(yīng)該長好幾個(gè)智才對(duì)。本書作者剛剛失敗過,樂意乘熱講講感受。我在讀本科和碩士研究生時(shí),一直信奉“創(chuàng)造性的事業(yè)要靠激情來推動(dòng)”。我把這個(gè)口號(hào)貼在辦公室里,并扔掉物理學(xué)專業(yè)天天編程。在讀碩士研究生的第一年,我賣出了第一份軟件。到我讀博士研究生的第一年,我心想事成地獲得了全國大學(xué)生電腦大賽軟件展示第一名。那時(shí)候我自以為翅膀已經(jīng)硬了,再回顧前些年的艱苦,不禁有“媳婦熬成婆”的悲壯感覺。于是我在杭州這個(gè)小地方略作宣傳,在1997年10月份開了一家軟件公司。我開始把“振興民族軟件產(chǎn)業(yè)”列入日程,并且提前擔(dān)憂將來錢掙得太多用不完該怎么辦。半年之后,我開始為軟件產(chǎn)品作宣傳,可并沒有出現(xiàn)訂單如潮、接應(yīng)不暇的形勢(事實(shí)上壓根就沒有反應(yīng))。我已經(jīng)意識(shí)到市場沒找對(duì),但仍覺得軟件中的技術(shù)很有價(jià)值,準(zhǔn)備再開創(chuàng)“東方不亮西方亮”的新局面。于是我向只有一面之緣尚在北大方正工作的一位朋友求助。他是真真的軟件高手,當(dāng)我小心翼翼地展示約10萬行C++代碼的軟件時(shí),他競在十幾分鐘內(nèi)就指出多處重大的設(shè)計(jì)錯(cuò)誤,使我目瞪口呆地意識(shí)到整個(gè)軟件系統(tǒng)的價(jià)值為零。那種心痛啊,就象眼睜睜看著孩子被狼吃掉一樣。1998年10月,這位朋友再一次從北京飛到杭州,三下五除二替我把只活了一年的公司給關(guān)閉掉。他放心不下,覺得我“惡病需用猛藥補(bǔ)”,于是意尤未盡地把我捉到北大方正插在他管轄的部門,讓我學(xué)習(xí)怎樣做事情。北京寒冷的冬天可以營造一種凄涼的氣氛,沖去一切可以自我原諒的借口。我并不是太愛虛榮的人,知道這次失敗是我的毛病積累到一定水準(zhǔn)忍不住噴發(fā)出來的結(jié)果。我絕不能以年紀(jì)尚輕不太懂市場與管理為理由輕率地敷衍過去。我把自己察覺到的數(shù)十個(gè)毛病列出來,日后一個(gè)一個(gè)克服掉。……本書的大部分內(nèi)容取自我在一年前的教訓(xùn)錄。改錯(cuò)之后,現(xiàn)在我不僅不難過而且挺快樂。覺得第一次失敗很浪漫,值得懷念。剛開始寫這本書時(shí),我那位北京的朋友把腳伸到杭州來散步,順手又給了我?guī)滋?,可以用到我畢業(yè)。看來缺點(diǎn)是改不完的,補(bǔ)短和揚(yáng)長要一起來。
2.6 提高綜合素責(zé)
前面給軟件開發(fā)人員加了過多的贊譽(yù)。一個(gè)技術(shù)出色的程序員可以自豪,但不可以目空一切。上天不可能賦于一個(gè)人太多的優(yōu)點(diǎn),以致于他沒有表示謙虛的余地。我們?cè)谇髮W(xué)時(shí)可能太功利太挑剔,導(dǎo)致知識(shí)結(jié)構(gòu)非常單薄,只怕到了晚年也成不了大器。當(dāng)程序員擅長技術(shù)時(shí),還要時(shí)刻留意彌補(bǔ)自己并不擅長的非技術(shù)才能。揚(yáng)長補(bǔ)短才能提高綜合素質(zhì)。假如能回到中學(xué)時(shí)代,我希望能把文科學(xué)好。那時(shí)侯盛傳“學(xué)好數(shù)理化,走遍天下都不怕”。我讀中學(xué)時(shí)很無知,鄙視一切文科,現(xiàn)在后悔莫及。高考語文成績54分(只比我的期望值低6分)。寫作文的最高目標(biāo)就是不逃題,考試前我總是反復(fù)祈禱:我沒干過壞事,保佑我作文不逃題吧!上大學(xué)的第一天我竟然無法用普通話說出“去洗澡怎么走”,只好晃動(dòng)澡票與輔導(dǎo)員打啞語。中學(xué)的歷史、地理課也被我糟踏了,考試時(shí)只會(huì)填寫任課老師某年某月某日在我家鄉(xiāng)英勇就義,比誰的成績更接近零分。更讓我沮喪的是,這些行徑都不是我發(fā)明的,我頂多是個(gè)跟屁蟲而已,一點(diǎn)回憶的自豪感都沒有。扔掉文科只學(xué)理科并不等同于 “放下包袱,輕裝前進(jìn)”,倒象是摘掉了控制系統(tǒng)的機(jī)車,開不了多遠(yuǎn)就翻車了。我搞了八年的軟件開發(fā),沒做出象樣的軟件來。倒是有同行意外發(fā)現(xiàn)我的文筆不錯(cuò),是當(dāng)作家的料。我發(fā)現(xiàn)自己在不該開花的地方結(jié)了一顆瘦澀的果子。曹操之子曹彰曾建議:“大丈夫當(dāng)學(xué)衛(wèi)青、霍去病,立功沙漠,長驅(qū)數(shù)十萬眾,縱橫天下,何能為博士耶?”要后悔的事情太多了,只能現(xiàn)在做得勤快些。明知自己不成大器,但愿意亡羊補(bǔ)牢,力求學(xué)得更深更廣。不要讓人覺得程序員只管鉆研技術(shù),可以不懂世事并且應(yīng)該自由散漫。程序員不該因?yàn)橛字啥@得單純,應(yīng)該是成熟了才變得單純,才配得上這個(gè)充滿活力的職業(yè)。
2.7 小 結(jié)
本章講述做好程序員和程序經(jīng)理的一些道理,為了剝?nèi)プ璧K我們進(jìn)步的那些虛偽,多嘮叨了幾個(gè)故事?! ?/p>
中國經(jīng)歷了很多打斗、整人的革命,卻沒有一次趕上工業(yè)革命。在如今計(jì)算機(jī)橫行的形勢下,我們不能再掉隊(duì)了。90年代初期,中國出現(xiàn)了一些程序員英雄,曾讓我們激動(dòng)過、崇拜過。但這些孤膽英雄們很快地幾乎全消亡了,他們只留下故事,沒留下更多的價(jià)值。再一次讓我們意識(shí)到“振興民族軟件產(chǎn)業(yè)”不能依靠幾個(gè)人一朝一夕的輝煌。軟件人員勤奮學(xué)習(xí)和工作,不該只圖將來能做成幾件事情的快意,而應(yīng)力求事業(yè)長盛不衰,才能推動(dòng)整個(gè)民族軟件產(chǎn)業(yè)持久穩(wěn)健地發(fā)展。
【編輯推薦】
- 淺談項(xiàng)目管理中該如何review與重構(gòu)
- 淺析關(guān)于物流客戶服務(wù)平臺(tái)規(guī)劃討論
- 軟件開發(fā)團(tuán)隊(duì)中的個(gè)人績效評(píng)價(jià)
- 項(xiàng)目設(shè)計(jì)與范圍管理之項(xiàng)目啟動(dòng)
- AgileEAS.NET實(shí)現(xiàn)醫(yī)院信息系統(tǒng)的解決方案