程序員都是天生的

jopen 10年前發布 | 4K 次閱讀 程序員

        英文原文:Programmers are born not made

        話說,程序員是一類特殊的品種,優秀的程序員更是如此——我們更愿意承認編程這種技能是一門藝術,而不是大家眼中艱苦卓絕的工科課程。編程可能更像是數學、音樂,或者是在電視劇《Firefly》中 Kaylee 所用的魔法,它是那樣讓人沉醉。

程序員都是天生的

        優秀的程序員常常有這種感覺,天才是很難得的,更難以復制。

        在數周以前,@zidarsk8 跑過來告訴我“天哪,竟然會有這樣的家伙,我才教會他怎樣寫代碼,一轉眼他寫得比我都要好了!可惡的是,這家伙在一個月之前甚至連變量是什么都不知道,這還是不是人啊!”

        我答應他在博客中如實寫出來。為什么有的人輕輕松松就能 get 編程這個技能?他們有什么特別之處?誰都能學會編程還是只有某些人才能成為一個合格的程序員,而想成為優秀的程序員是否更需要天生?

        一年前我給一個高中學生做家教,他因為早先的編程課沒有及格,然后他父母請了我來教他。在一個月的時間里我悉心傳授,把我所知道的一切都教給了他,在我看來至少通過考試是沒問題了的。

        到月末的時候,他已經對循環、變量賦值等等了如指掌,連函數是代碼包能做一定事情他都知道和理解了。臨走,我不得不對他父親這樣說“我已經沒什么好教的了,不過他還得需要練習來鞏固這些。”

        沒錯,內心里,我是很懷疑他是否能及格的。不過如果他的老師憐憫他的話,可能會過——不過,遺憾的是,我記得這個老師在我高中時代一點都不仁慈,特別喜歡看學生受苦受難。

        還有一點要聲明的是,我可不是個差老師——那個孩子還向別的學生推薦了我,并且所有孩子都給我發了感謝信——只是有些人天生就不是寫代碼的料,即便他們再努力,甚至還是連平庸二字都稱不上。

        沉默的羔羊

        Jeff Atwood 在 2006 年出版的《Separating Programming Sheep from Non-Programming Goats》一書中提到一項研究,聲稱可以用之檢測是否擁有編程天賦。

        這個測試相當簡單,例如:

a = 5 b = 20 a = b
What are a and b now?

        還有不少類似的測試例子。但是只有 44% 的學生形成了一個統一賦值的心智模型——即使是錯誤的。剩下的超過半數人失敗了或者根本就回答不了。

        更糟糕的是,在學了一個學期的編程之后,這個比例還是相同,還是只有 44% 的學生知道賦值如何作用。

        很明顯,有的人無論怎么學就是想不明白這些。

        下面我介紹一個我認為更為簡便的測試

        激情

        有時候,當那些擁有年輕心態的家伙(人人都能學代碼,年齡不是限制)拿到一個問題和兩個工具,他們會利用這區區兩個工具創造出四個工具,然后在網上搜索,找到更多的工具……這樣一來,很快他們就有二十個工具,好家伙!哦,對了,我還沒說這些家伙拿到的這個問題是什么?

        這個問題就是激情!

        寫代碼就是需要這種完完全全不帶丁點雜質的激情。當你為之深深陶醉,甚至興奮不已的時候,還怕什么問題是解決不了的呢。即使你正在解決的這個問題,你也知道是毫無意義的……這就是擁有激情的偉大所在!

        別擔心你開始編程的年紀比別人大——要知道,很多研究已經表明,經驗在這一行并不是重點——關鍵要看你對編程這玩意是否擁有百折不撓的激情。

        因為一旦被點燃了激情,那么其他的問題就不再是問題了。你,就是天生的程序員!

        譯文鏈接:http://news.html5tricks.com/programmer-is-born.html

        翻譯作者:IT 新聞 – 蔣麗麗

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!