以往從來沒有一種技能被神化到這樣的高度:
你不僅得有天賦,還得具備激情,才能成為一名優(yōu)秀的程序員 。
好像那些寫代碼的人是早就決定干這一行似的熄捍,“當他們還是孩子的時候,他們就打算將來去寫代碼”母怜。如果你缺少這兩個因素之一余耽,那么你要么是一個騙子,要么不會走得太遠苹熏,不論是哪種碟贾,其實都是因為你不適合編程的緣故。這種根深蒂固的成見不僅是完全錯誤的轨域,而且還是有害的——但是許多成功的程序員都贊同這個觀點袱耽。
Jacob Kaplan-Moss (Django的創(chuàng)建者)
在這篇描述中,Jacob Kaplan-Moss指出:
神化“天才程序員”是極其危險的干发。一方面朱巨,它設置了極高的準入門檻,嚇跑了許多想成為程序員的人枉长。另一方面冀续,它也困擾著那些已經(jīng)成為程序員的人,因為這意味著必峰,如果你沒有編程“天分”洪唐,那么基本上,你將一事無成吼蚁。導致的結(jié)果是凭需,作為一個程序員,你所有的時間都用在了學習編程和工作上肝匆,從而對生活質(zhì)量產(chǎn)生極大的影響……(略)…….我們需要擺脫這種態(tài)度功炮。編程只是一堆可以學到的技能,它不需要太多的天分术唬,而且成為一個平庸的程序并不可恥薪伏。
在他的Twitter個人資料中,他形容自己為“不是一個真正的程序員”粗仓,以表明他對這種誤解的深惡痛絕嫁怀。
Jacob Thornton(Bootstrap的創(chuàng)建者)
Jacob Thornton之前是Twitter的一名程序員,現(xiàn)在就職于Medium借浊,并且是Bootstrap的創(chuàng)建者——Bootstrap在Github上收獲了超過8萬個星塘淑。他在以下對“編程神話”的采訪回應中給出了另一個反例:
Jacob Thornton討厭計算機
他說,“我討厭計算機蚂斤,”面容一本正經(jīng)存捺,完全沒有開玩笑。 “我本來打算在New School中學習社會學“浦危”
接著他描述了他的第一份工作:
“我被雇用去做一份我甚至有點不合格的工作岗钩。每天,我都可能會被炒魷魚肖油。我辛辛苦苦地工作兼吓,努力學習更高級的Javascript語言,因為我不知道代碼中發(fā)生了什么事情森枪∈硬”
“我坐在那里,思維放空县袱,就是這樣浑娜,我居然搞定了。我不會被解雇了式散,哦也筋遭。”
“我生命中最真實的時刻是當這家初創(chuàng)企業(yè)的整個團隊聚集在我身邊杂数,要求一個XHR請求的時候宛畦。我從來沒有做過瘸洛,我只知道那是什么揍移。因此我開始敲鍵盤和刷新瀏覽器,但什么都沒有發(fā)生反肋。我試了幾次那伐。我開始慌了,我擔心他們會知道我是個騙子石蔗,我是濫竽充數(shù)的罕邀。突然我意識到,我已經(jīng)忘了添加‘.send()’了——我添加并刷新之后养距,頁面出現(xiàn)了诉探,然后團隊成員紛紛贊揚說‘哦,真酷棍厌!’肾胯。然后他們回到了各自的辦公桌。
這個故事聽上去感覺和“天才程序員”如何執(zhí)行工作的描述無關耘纱。那么敬肚,堅持走編程這條道路的動機來自于哪里呢?Jacob說:
“我的動機很現(xiàn)實束析,并且當我搞不明白或某些東西在特定瀏覽器中看上去很糟糕的時候艳馒,我的那些搞前端開發(fā)的朋友會十分明確地告訴我。這真的很好员寇。于是我開始想要編碼弄慰,以及和我的朋友一起工作第美。”
在他的Twitter個人資料中曹动,他形容自己是一個“計算機loser”斋日。他最火的Twitter帖子中他把自己描述為“公司中最糟糕的工程師,但卻是第三酷的”墓陈。這種態(tài)度和我們對刻板的程序員的看法完全相反恶守。
Rasmus Lerdorf(PHP的創(chuàng)建者)
Rasmus Lerdorf的言論經(jīng)常引發(fā)爭議:
*其實我真心討厭編程,但我熱愛解決問題贡必。
*有些人的確是真的喜歡編程兔港。但我不理解為什么他們會喜歡編程。
*我不是一個真正的程序員仔拟。我會把東西扔到一塊兒衫樊,直到它能工作,然后就繼續(xù)前進利花。真正的程序員會說“是的科侈,雖然它可以工作,但你泄漏了內(nèi)存炒事。我們應該解決這個內(nèi)存泄漏的問題”臀栈。而我會每隔10個請求就重新啟動Apache。
從他的話中挠乳,我們很難看出他對計算機的激情权薯。像Jacob Kaplan-Moss和Jacob Thornton,他們對神化編程嗤之以鼻睡扬,所以盟蚣,Rasmus Lerdorf或許也會稱呼自己為偽程序員。
David Heinemeier Hansson(Rails的創(chuàng)建者)
當被Big Think采訪時卖怜,DHH提到:
這其實挺有意思的屎开;當我習慣于使用PHP或Java開發(fā)的時候,我總是在找別的可替代的東西马靠。我一直在尋找另一種編程語言奄抽,另一種……不一樣的東西,在某種程度上能夠讓我覺得正在使用的語言不那么無聊的東西虑粥。
我是絕對不相信我會成為一個程序員的如孝,當我用PHP和Java工作的時候。
他的自我介紹娩贷,看起來和“計算機天才”毫不相干第晰。而且最后,他愛上的并非計算機本身,而是Ruby——這種語言的優(yōu)雅茁瘦。如果Ruby沒有被發(fā)明品抽,那么DHH可能現(xiàn)在正在做完全不同的事情。
從上面這些事例中甜熔,我們證明了有無數(shù)文章都對老一套的程序員神話持反對意見圆恤。下面是幾個程序員最喜歡的笑話:摘自《關于軟件開發(fā)者的59條令人捧腹但真實的
編程語錄
*One man’s crappy software is another man’s full time job.(Jessica Gaston)
一個人寫的爛軟件將會給另一個人帶來一份全職工作。
*Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
傻瓜寫計算機能理解的代碼腔稀。優(yōu)秀的程序員寫人類能讀懂的代碼盆昙。
*Software and cathedrals are much the same?—?first we build them, then we pray.(Sam Redwine)
軟件和教堂非常相似——首先,我們建造它們焊虏,然后我們祈禱淡喜。(Sam Redwine)
如果程序員的確都有這樣多的天賦和激情,那么為什么這些笑話在程序員之中會如此受歡迎诵闭?
我在一篇Medium文章中發(fā)現(xiàn)了一些很有趣的語錄炼团,讓我產(chǎn)生了共鳴:
*總有人告訴你,你這樣做是錯的
*總有人告訴你疏尿,你不是一個真正的程序員
*擔心“極客聲譽(geek cred)”相當于慢性自殺
這篇文章無疑挑戰(zhàn)了我們對編程的傳統(tǒng)看法——成為程序員需要天分和激情瘟芝。但是我只希望對那些開始編程之路的初學者,正在懷疑他們是否適合是否合格的程序員說:多嘗試一些不同的學習方式褥琐,不要擔心什么資格锌俱,不要輕信那些毫無根據(jù)的故事,也不要改變你學習編程的心態(tài)踩衩。不要放棄嚼鹉,除非你在嘗試多種不同方法之后真的依舊一頭霧水贩汉。編程不需要天賦驱富,也不需要激情!