30個(gè)糟糕的程序員抵不過一款好工具
時(shí)不時(shí)地我們可以聽到有人在說(shuō),我們需要更多的程序員。現(xiàn)在的孩子應(yīng)該在學(xué)校里就學(xué)習(xí)編程。編程的地位就應(yīng)該像曾經(jīng)的寫作文一樣。
我不同意這樣的觀點(diǎn)
每個(gè)領(lǐng)域都會(huì)有一些人登上金字塔的頂端,成為這一行業(yè)的權(quán)威,更多的人則只能被稱為優(yōu)秀,當(dāng)然更多更多的人位于平均水平,庸庸碌碌,以及,還有一些人就像溺水之人一樣在苦苦掙扎。
讓我們面對(duì)現(xiàn)實(shí)吧,并不是每個(gè)人都適合每一份工作。正如大多數(shù)程序員成不了銷售、演員、醫(yī)生和律師,同樣的,大多數(shù)律師、演員和銷售也干不了程序員的工作。萬(wàn)金油型的天才總是很***的。
如果你硬是要將更多的人塞到某一行業(yè)中去,那么唯一會(huì)流動(dòng)的群體只會(huì)是那些平庸的甚至是更低水平的人群。但是這樣一來(lái),最終只會(huì)降低該行業(yè)的平均技能水平。
現(xiàn)在,我們還有一個(gè)全球性的問題,即產(chǎn)品越來(lái)越依賴于軟件。所以,我們需要滿足軟件開發(fā)不斷增加的需求。
因此,有再多的程序員也無(wú)濟(jì)于事。而且有的程序員(低于平均水準(zhǔn)的)越多,反而越會(huì)降低軟件的質(zhì)量。很多人對(duì)此深有體會(huì)。所以,真的不要再讓事情變得更糟了。
我們需要的,是更好的工具
幾乎每個(gè)人都會(huì)認(rèn)為隨著時(shí)間的推移工具變得好多了。事實(shí)真的如此嗎?
我14歲就開始編程,距今已經(jīng)30多年了。我的***臺(tái)電腦還只有一個(gè)4MHz的CPU和一個(gè)16KB的RAM。這之前我從來(lái)沒有寫過代碼,也沒人來(lái)教我怎么做。我只有計(jì)算機(jī)附帶的文檔以及文檔附帶的工具。這意味著我只有一個(gè)內(nèi)置的BASIC解釋器。但是,我還是設(shè)法在幾個(gè)小時(shí)之內(nèi)寫出了我的***個(gè)(很簡(jiǎn)單)游戲。
想象一下,如果這樣的情況發(fā)生在今天。給一個(gè)14歲的從未使用過計(jì)算機(jī)的人一臺(tái)還在包裝盒中的電腦,看看他需要多少時(shí)間才能寫出自己的***個(gè)程序。我猜啊,他要么只需要幾周時(shí)間要么就根本完不成。
因?yàn)楸M管我們?cè)谶^去幾十年間取得了很大的進(jìn)步,讓計(jì)算機(jī)變得越來(lái)越易于使用,但也更復(fù)雜了。你要做的不光是拆箱,插好插頭,開啟機(jī)器。你還需要?jiǎng)?chuàng)建用戶帳戶,填寫注冊(cè),下載所有***的安全更新,尋找并下載開發(fā)工具,然后還得閱讀和理解一些超級(jí)復(fù)雜的文檔,來(lái)為自己選擇合適的編程語(yǔ)言。
只需要看看今天的API和類庫(kù)的大小就一清二楚了。如此龐大的規(guī)模搞不好已經(jīng)阻礙很多人進(jìn)一步的探索。很多東西學(xué)過就忘記了。
我們需要一些簡(jiǎn)單易學(xué),適合初學(xué)者的工具。
我們需要能夠讓我們輕松地從Windows編程切換到Mac編程、Linux編程和Web編程的工具。
我們需要可以協(xié)助日常工作的工具。
我們需要能讓我們專注于實(shí)際任務(wù)的工具。
這才是解決問題的方法。程序員不在多,關(guān)鍵是工具要好。