這(zhè)些(xiē)賺到大錢(qián)的、少數的、頂尖的程序員(yuán),創造了(le)世界上(shàng)絕大多數優秀的軟件。可以說(shuō),最頂尖的5%的程序員(yuán)寫出了(le)全世界99%的優秀軟件。
為(wèi)何會出現(xiàn)這(zhè)種現(xiàn)象?能(néng)否用大量普通的程序員(yuán),取代個(gè)别優秀的程序員(yuán),通過堆大量的時(shí)間(jiān),來(lái)創作(zuò)優秀的軟件?
答(dá)案顯然是否定的。為(wèi)什(shén)麽?
不僅僅因為(wèi),在工作(zuò)效率上(shàng),一(yī)個(gè)優秀的程序員(yuán)可以抵10個(gè)甚至更多的、普通的程序員(yuán);更因為(wèi),不管多少普通的程序員(yuán)、工作(zuò)多長時(shí)間(jiān)所做出的東西(xī),都無法像個(gè)别優秀程序員(yuán)做的那樣好(hǎo)(hǎo),更别說(shuō)做出卓越的軟件。在開發普通軟件上(shàng),他們可能(néng)隻是效率的區别,但(dàn)是在創作(zuò)優秀軟件、卓越軟件上(shàng),普通程序員(yuán)與優秀程序員(yuán)之間(jiān),是有和無的效用差别,而不是60和100的效率差别,就(jiù)如(rú)同,100個(gè)普通的畫家,再怎麽努力工作(zuò),也(yě)無法創作(zuò)出媲美梵高作(zuò)品的傳 世之作(zuò)。
歸根到底,編程是一(yī)種藝術創作(zuò)(注:艾茲格 · 迪科斯徹:程序設計是一(yī)門藝術)。創作(zuò)優秀軟件的很多部分(fēn),并不與科學相關(guān),它更多地需要程序員(yuán)具有藝術家一(yī)樣的特質:
- 想象力與創造力
黑客搞懂“計算(suàn)理(lǐ)論”的必要性,與畫家搞懂顔料化(huà)學成分(fēn)的必要性差不多大,黑客新(xīn)想法的最佳來(lái)源,并非那些(xiē)名字裏有“計算(suàn)機”三個(gè)字的理(lǐ)論領域,而是來(lái)自于其解決問題的創作(zuò)領域;
- 追求卓越、專注細節的态度
正如(rú)他們所說(shuō):
“電影人(rén)似乎不能(néng)理(lǐ)解創業者創建一(yī)樣東西(xī)純粹的是因為(wèi)他們喜歡創建東西(xī)。” ——馬克 · 紮克伯格評電影《社交網絡》。
“我們不停地添加代碼,像畫家添加色彩,作(zuò)曲家添加音(yīn)符,每一(yī)個(gè)小細節都必須有依據……努力使每件事(shì)情完美地組合在一(yī)起,以一(yī)種前人(rén)未曾做過的方式。這(zhè)使得工程師稱為(wèi)真正的藝術家。”——斯蒂夫 · 沃茲尼亞克 。
矽谷創業孵化(huà)公司Y Combinator創始人(rén)保羅 · 格雷厄姆的說(shuō)法則更為(wèi)直接:“程序員(yuán)是現(xiàn)存最大的手工藝人(rén)群體(tǐ),黑客與畫家的共同之處,在于他們都是創作(zuò)者,都試圖創作(zuò)出優秀的作(zuò)品。”