一個(gè)程序員要扔掉多少代碼,才能成為真正的程序
程序員這行當(dāng),不貧不富,靠技術(shù)吃飯,一直還算個(gè)體面職業(yè)。進(jìn)了程序員這行的兄弟們,即便日后飛黃騰達(dá)了,談起早年的編程生涯,都還是自豪的。不過(guò)呢,程序員這個(gè)職業(yè),有個(gè)挺悲哀的地方,那就是無(wú)效工作的占比極高。直接點(diǎn)說(shuō),程序員辛辛苦苦敲的代碼,大部分都是沒(méi)用的,都是要扔掉的。
這個(gè)特點(diǎn)非常鮮明,和別的職業(yè)差距相當(dāng)大。和農(nóng)民比,農(nóng)民種的作物,幾乎很少浪費(fèi)。有的年景里,白菜豐收價(jià)格太低,但也能喂豬吧? 即便只能爛在地里,那也能肥田呢,不算完全浪費(fèi)。和建筑工人比,那建筑工人砌磚蓋房都是要用上幾十年的。 雖然也有爛尾樓,但占比非常低吧? 蓋了一半的樓,因?yàn)橘|(zhì)量不行拆了重新打地基的,也很少見(jiàn)吧? 即便有新蓋好的房子,被強(qiáng)拆了,但那也是少數(shù)。有一種職業(yè),無(wú)效工作比例高,那就是軍人。軍人天天苦練,要打千萬(wàn)發(fā)子彈,但大部分軍人終其一生,都不曾將子彈射進(jìn)過(guò)人體。但是呢,從另一個(gè)角度看,軍人的有效工作還得把震懾算進(jìn)去,扛著槍晃悠晃悠效果就很好了。這樣說(shuō)來(lái),軍人的無(wú)效工作比例那就真不算低。
可程序員就不一樣了。隨便在上地西二旗攔住一個(gè)塵滿面、鬢已霜的男子,問(wèn)他這十年或者二十年所寫的代碼,有百分之多少,還在運(yùn)行中?他細(xì)想之下,怕是要淚千行的。要是有程序員反駁說(shuō),不對(duì)啊,我多年來(lái)寫的代碼幾乎都跑起來(lái)了,都用起來(lái)了啊。那他肯定是做企業(yè)應(yīng)用項(xiàng)目的,而不是做產(chǎn)品的。企業(yè)應(yīng)用項(xiàng)目么,怎么著胡亂對(duì)付也能用個(gè)幾年。做產(chǎn)品的,不扔個(gè)幾版,能出精品么?程序員的宿命啊,就是被扔,這代碼啊,是寫了扔,扔了寫。而且,程序員的代碼扔了就徹底扔了,一點(diǎn)用處都沒(méi)有。衣服扔了還可以捐給災(zāi)區(qū),廢代碼是不能捐給災(zāi)區(qū)的,更不能喂豬,爛在硬盤里也不能肥硬盤。
兄弟連里,有句話是這樣說(shuō)的:我們是傘兵,注定要被包圍。聽(tīng)來(lái)特別過(guò)癮,特別有英雄氣概。程序員應(yīng)該說(shuō):我們是程序員,注定代碼是要被扔掉的。這句話聽(tīng)起來(lái),卻是別有一番凄涼滋味啊。不要拿 Ken,Linus之類的大牛來(lái)說(shuō)事,他們是“創(chuàng)造者”,“創(chuàng)造者”不是職業(yè),也不能用百分比來(lái)衡量有效工作。扔就扔吧,好在,程序員們都是有佛性的,懂得色即是空空即是色,一切皆是虛幻,本來(lái)都是虛擬數(shù)碼,扔吧。再說(shuō),扔的多,開(kāi)發(fā)工作機(jī)會(huì)就更多。
有些行業(yè)追求作品的流芳千古,比如繪畫寫作這類藝術(shù)行當(dāng)。但有趣的是,其行業(yè)中的頂尖人物,卻容易逆反。例如,作家卡夫卡死前燒掉自己的小說(shuō),畫家高更死前燒掉自己的畫作,這些天才覺(jué)得沒(méi)必要跟滿世界的傻逼廢話,沒(méi)人能看懂自己,自己死了更沒(méi)法去解釋奧義。唉,才高寂寞啊,燒掉干凈。程序員不會(huì)。 程序員首先就不會(huì)流芳千古,更不用死前燒掉自己的硬盤。程序員的代碼,在離死前很久,就都已經(jīng)扔掉了,徹底扔干凈了。萬(wàn)一在臨死時(shí)分,竟然還有自己寫的代碼在世界上運(yùn)行,程序員就會(huì)很恐慌:我操,我死了,代碼誰(shuí)來(lái)維護(hù)啊?
我們擁有國(guó)內(nèi)頂級(jí)的設(shè)計(jì)、技術(shù)團(tuán)隊(duì)和多年互聯(lián)網(wǎng)軟件開(kāi)發(fā)經(jīng)驗(yàn)。