原文地址:
http://hustkiwi.javaeye.com/blog/224814
前兩天與同學(xué)交流時,同學(xué)讓我談?wù)勡浖_發(fā)與測試的區(qū)別,我說撇開技術(shù)和工作細(xì)節(jié)不談(除了時常輔助地寫些Unit Test外,實在對測試不甚了解),二者對待同一問題的心態(tài)上本該不同——測試人員大抵悲觀而懷疑,開發(fā)人員往往樂觀而執(zhí)著。作出這樣的推斷,一方面作為一名開發(fā)者,我既品嘗過編寫代碼的巨大樂趣(源自創(chuàng)造和控制的本能自豪與成就),也都經(jīng)歷過面對蜂擁而至的缺陷與復(fù)雜決策的困惑,因此竊以為若非迫于生計,一個沒有萬丈雄心與執(zhí)著信念的人很難把編程作為一項長久事業(yè)的。反觀一個出色的測試者,他必然疑心重重,極力對項目作出種種悲觀預(yù)期并證明之,也往往只有這樣才能挖出隱藏在程序深處的缺陷。
當(dāng)然,這里無意深入探討開發(fā)與測試的異同,感興趣的話
dreamhead最近恰好有篇blog 對此做了引申。然而無論認(rèn)可與否,開發(fā)與測試種種看似矛盾的觀念恰恰為軟件項目的復(fù)雜與艱辛做了很好的詮釋。在項目漫長而未知的周期中,總是充滿太多的偶然與選擇,站在不同維度的思考與權(quán)衡也很容易推出截然相反的判斷,最終除了依賴時間的檢驗,在決策之初,無論是局內(nèi)人還是旁觀者都很難總攬全局、明辨是非。《夢斷代碼》就是這樣一部記述了
OSAF團(tuán)隊 心路歷程與IT行業(yè)興衰史的奇書。作者Scott Rosenberg憑借自己對OSAF團(tuán)隊那個野心勃勃曾立志超越Outlook的項目Chandler的三年潛心追隨,與作為業(yè)內(nèi)久負(fù)盛名的技術(shù)編輯對 IT行業(yè)數(shù)十年的洞察與積淀,用優(yōu)美的文本及獨到的視角向我們揭示了做軟件為什么會那么難。
Chandler的產(chǎn)生始于一個簡單而美好的愿景——讓人們能隨心所欲地切合數(shù)據(jù),更靈活友善地管理紛繁而瑣碎的個人信息。然而誠如譯者后記,眾多程序員以心血養(yǎng)育它,惜乎全不見成效,六年半時間,上百萬美元,幾十號頂尖高手,換來夢幻一場,時至今日Chandler仍無定型......
厭倦長嘆,造化弄人!即便如OSAF團(tuán)隊這般衣食無憂、高手云集,在實現(xiàn)其“改變世界的夢想”時仍然受到現(xiàn)實的無情嘲弄,作為新來者,我們憑什么會認(rèn)為自己與眾不同?最讓人難以接受的是OSAF團(tuán)隊從始至終一直在努力著,你很難斷言究竟是什么過失使項目深陷其中,一切的發(fā)生既自然又出乎意外——就像一輛平穩(wěn)行駛的火車,雖不曾出軌,但從上路的那一刻就已然駛上了一條不歸路。資源不夠?Mitchell Kapor可不是自私小氣的人,6年半時間數(shù)百萬美元的投資無不顯示了其耐心。能力不足?能加入OSAF的隊員就算不是功成名就的大師也是在業(yè)內(nèi)早也揚威立萬的高手,在開發(fā)Chandler項目的過程中他們也創(chuàng)建了諸如CVS,pyLucene等一批優(yōu)秀的開源框架或工具,證明了自己的價值。決策錯誤?也許您會說Chandler不應(yīng)該使用python,與其構(gòu)建基于vxPython的桌面應(yīng)用還不如構(gòu)建基于瀏覽器的應(yīng)用。但是OSAF團(tuán)隊的每項重要技術(shù)決策都是業(yè)內(nèi)專家經(jīng)過深思熟慮后的選擇,當(dāng)時誰又能料知數(shù)年后Ajax技術(shù)的風(fēng)行會帶動Web應(yīng)用的普及?同樣的關(guān)于項目延誤、偏差的設(shè)問還能提出許多,但是每一項都沒有足夠的證據(jù)證明其是失敗的根源,甚至有些因素在某種情形下對推進(jìn)項目進(jìn)展還起了積極作用。
這真是一種莫大的諷刺——在軟件項目中,程序員與管理者都力求以一種理性的方式精確、縝密地安排任務(wù)并估量進(jìn)度,然而現(xiàn)實中本就不存在這種憑空的假設(shè),任何計劃都會被意外變化無情地打亂,最后整個項目淪為令人沮喪的一拖再拖,不可收拾。所以對于軟件項目而言,沒有絕對正確的規(guī)范或一成不變的流程,有的只是失敗的教訓(xùn)與從中汲取的經(jīng)驗。在我看來,一個成功的管理者一定是經(jīng)驗豐富的(反之不成立),因為他切身經(jīng)歷了眾多不同類型亡羊補(bǔ)牢的改進(jìn)過程,對相似項目的至少在方向的把握上不會再輕易地重蹈覆轍。
談這些,主要源自我在大學(xué)時也曾組建并帶領(lǐng)過學(xué)生開發(fā)團(tuán)隊,其間可以說既取得了出人意料的成功又經(jīng)歷了刻骨銘心的失敗,就連畢設(shè)論文也專門針對軟件工程專業(yè)四年的學(xué)習(xí)與團(tuán)隊管理方面的東西進(jìn)行了反思,雖然多數(shù)觀點不很被老師們認(rèn)可,但至少個人以為這樣的反思算得上對自己過去經(jīng)歷總結(jié)與理念的提升,比較有意義。《夢斷代碼》這本書是在4月份構(gòu)思論文時從韓磊老師博客中獲悉的,韓老師的翻譯沒有辜負(fù)我?guī)讉€月的期盼,當(dāng)然也不得不佩服作者Scott的巧妙構(gòu)思與妙筆生花,在此一并感謝并極力推薦。
PS: 《編程之美》的封底上有這樣一句話,“據(jù)說編程的人都懷揣著一個改變世界的夢想:編程神奇而充滿力量。無數(shù)的年輕人投身其中,用夢想和思考改變世界。”雖然談不上感同身受或十分認(rèn)可,但我很欽佩這種夢想。在我看來能堅持逐夢的人都是偉大而幸福的,況乎如此盛舉?
前幾天在校內(nèi)上分享過兩個同學(xué)(
Jay 和
庫燕 )的反思,都與理想有關(guān)。看了后很有感觸,因為他們說出了我想說的一些話。這里附上我的部分回帖,是為一己拙見:“前兩天也跟高中同學(xué)一起談過類似問題。作為一種社會型動物,我覺得人們多數(shù)需要的是種認(rèn)同感,尤其是自己所在意的人們認(rèn)同。所謂理想也多為立志獲得這種認(rèn)同感的目標(biāo)與抉擇,而現(xiàn)實的殘酷就可理解為實施目標(biāo)時對自己預(yù)估的偏差或反駁。至于你提到的那四種“理想“或說病態(tài)的表現(xiàn),我看是每個人的閱歷迥異讓他們的價值觀和衡量認(rèn)同感的標(biāo)準(zhǔn)不同罷了。但是,無論如何,興趣并不同于理想,但能合二為一無疑最優(yōu)。實際上我們的興趣也往往來自于自己的成就,或說自己在某方面的成績得到了別人或自己的認(rèn)可,進(jìn)而有更大的動力主動去做,因此這樣看,理想與興趣也許并不矛盾,關(guān)鍵還是實現(xiàn)理想的過程與歷練能否與各人的心理承受所匹配。共勉一下:機(jī)會遠(yuǎn)比安穩(wěn)重要,事業(yè)遠(yuǎn)比金錢重要,未來遠(yuǎn)比今天重要。”因此,從這個意義上講,Chandler項目遠(yuǎn)未行將就木,OSAF團(tuán)隊為了“改變世界”的夢想所付出的六年努力也絕非幻夢一場,因為他們毅然選擇了機(jī)會、事業(yè)與未來!其志可嘉,其情可嘆!最后,推薦大家下載并試用下OSAF的
Chandler ,緬懷下創(chuàng)造它的那群逐夢高手,及其所承載的夢想。
posted on 2008-08-07 09:24
周銳 閱讀(302)
評論(1) 編輯 收藏 所屬分類:
Other