Posted on 2008-01-11 13:28
匪客 閱讀(960)
評(píng)論(5) 編輯 收藏 所屬分類:
開發(fā)技術(shù)
有個(gè)相聲說,某人買了一丈布,要找裁縫做大褂。其妻自告奮勇,稱自己也會(huì)做,就接手做了。兩個(gè)月后問她,說做是做,只是把布剪壞啦,改做小褂吧。如此循環(huán),從大褂變成小褂,小褂變成肚兜,肚兜變成內(nèi)褲,內(nèi)褲變成口罩,最后只好扎了墩布。
閑話表過,再表閑話。
話說Mitch Kapor以數(shù)十億美金高價(jià)把一手創(chuàng)建的Lotus公司賣給IBM后,做了一段投資人,又回歸技術(shù)界,創(chuàng)立一家開源基金會(huì)。為了實(shí)現(xiàn)心目中“最好的PIM軟件(個(gè)人信息管理,類似Outlook那樣的)”,投入百萬美元,聘請(qǐng)了一群最NB的程序員(包括Netscape元老級(jí)程序員、Macintosh操作系統(tǒng)核心程序員、微軟資深開發(fā)工程師……),動(dòng)手開干。有近乎奢侈的資源(財(cái)力、人力、時(shí)間),照說項(xiàng)目應(yīng)該順利進(jìn)行吧。其實(shí)不然。這個(gè)名為Chandler的項(xiàng)目,從2000年開始立項(xiàng),開發(fā)過程中軟件功能列表一再縮減,直至今日尚未推出1.0正式版本。測(cè)試版本在我的Windows 2003操作系統(tǒng)上,仍然無法運(yùn)行。
看過上面兩樁閑話,讀者大概知道我想說什么了。雄偉的愿景往往流于空想,做軟件難,第一難就在于藍(lán)圖太宏大。常有朋友找我?guī)退麄冏鲱檰枺纯此麄兊能浖?網(wǎng)站項(xiàng)目。通常的過程會(huì)是這樣——
(演示、講解項(xiàng)目目標(biāo)、功能等等)
我:請(qǐng)問,這是你們真正想要的東西嗎?
對(duì)方:是,我們想做最好的xxx。
我:請(qǐng)問,你們打算花多長時(shí)間來做這個(gè)項(xiàng)目呢?
對(duì)方:三個(gè)月。
我:坦率地說,你們不可能做得到。我的建議是,把剛才說的功能先砍掉一半,再砍掉三分之二,剩下的部分,大概就是三個(gè)月之內(nèi)你們能完成的部分了。
對(duì)方:……
產(chǎn)品設(shè)計(jì)者往往會(huì)想得太多,把所有可能路徑都設(shè)想在內(nèi)。而開發(fā)者則往往會(huì)低估項(xiàng)目難度,做出太過樂觀的判斷。這樣的結(jié)果就是,以為可以在過短時(shí)間內(nèi)完成過于龐雜的功能。危害有二:其一,項(xiàng)目無限期延誤;其二,功能不斷縮減。六個(gè)月甚至一年之后,大褂沒做成,千瘡百孔內(nèi)褲倒是有一條。與其如此,不如一開始就以內(nèi)褲為目標(biāo)好了。
昨天有人問我,為什么是“先砍一半再砍三分之二”而不是“砍掉六分之五”。我說的“砍”,不是簡單按字母順序嚓嚓嚓,而是一個(gè)討論、思考的過程。第一步去除一半,第二步去除一半的三分之二。起初設(shè)想出那么多功能,肯定花了不少心血。現(xiàn)在要砍,每一項(xiàng)都顯得那么寶貴而舍不得丟棄。反復(fù)斟酌、流淚放棄,最后剩下的,是軟件/網(wǎng)站項(xiàng)目最最核心和關(guān)鍵的功能,也是以目前資源所能完成的工作。以后,再視運(yùn)營情況加以增補(bǔ)。
我想,做其它事,或許也可以采用類似的方法吧。大褂還是內(nèi)褲,這是一個(gè)難題。以我之愚魯,大褂不敢妄想,甚至沒準(zhǔn)內(nèi)褲也做不出來,那就踏踏實(shí)實(shí)、裁剪縫制一個(gè)真有用的口罩吧。