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