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