高手教你快速學習編程語言
背景介紹:
Paul在牛津大學獲得了哲學、政治學及經濟學學士學位後,曾在微軟,sybase,Hyder和QA培訓等公司做軟件以及技術培訓工作。目前他是專業技術培訓公司Mallon Associates的董事,並總管一家跨國金融服務公司的全球技術培訓生項目。
你從當初自學編程到現在運作和掌管貴公司的專業技術培訓業務,並總管一家跨國金融服務公司的全球技術培訓生項目,這其間經歷了多少年?
國中時學Basic的經歷不算在內,我第一次正式學習編程是在1992年到1993年吧。
2013年的時候我成為我們公司的首席培訓師。
2015年起我開始負責我們最大的客户的全球技術培訓生項目。
這樣算下來20多年吧!
我知道C++之父Bjarne Stroustrup請你喝過酒。
有很多人好奇你和Bjarne是怎麼認識的。
我從是2003年開始為我們最大的客户提供技術培訓服務的。
在我的職業生涯中讓我特別驚喜的一個事件就是2013年的時候Bjarne Stroustrup加入了該公司。
那之後我有過幾次和他面對面交談的機會。
能和我心目中的偶像聊生活和技術實在是太興奮了!
你本科所學的專業是PPE(Philosophy,Politics and Economics哲學、政治學及經濟學),它和計算機編程並沒有多少關係。
你是怎麼想起來要自學編程的?
你的第一份編程工作是怎麼得來的?
1992年到1993年我在牛津讀書的時候突然生了一場重病。
當時為了方便治療我不得不離開牛津回到家鄉。
回到老家看病的那一年裏我要養活自己所以不能無所事事(本文作者注:在英國大部分年滿18歲的人都自己工作掙錢不再依賴父母。除少數情況外,住在父母家的成年子女要給父母交房租和分擔水電等生活費用。)。
看病之餘,我需要找一份全職工作。
我的一個朋友當時在一家公司的技術部門工作,他的推薦幫我贏得了一次面試機會。
那次面試很順利,那之後我就開始邊工作邊學習。
我記得最開始學的是兩門語言,Visual Basic for Application和C++。
我當時的工作內容之一是在excel裏面用VBA編程。
可是如果你之前並沒有學習過編程的話,你是如何通過那次面試的呢?
我當時用了一個週末做了一些準備。
一個週末?
是的。
你已經做了很多年的專業技術培訓,到現在你總共掌握了多少種編程語言?
我數一下。
Java,Scala,Perl,Python,JavaScript,C,C++,C#,SQL MDX,SQL的各種版本,Q,VB,F#,Forte,swift和ObjectiveC。
十六種?
差不多吧。
下面我想是程序員們最關心的一個問題了。
當客户要求你提供某種你原本不熟悉的編程語言的培訓時,你是如何做到在非常短的時間內掌握,甚至能夠給有過實際使用該語言工作的學員授課,讓他們從中有所收穫的並得到他們的好評的?
你有什麼特別的學習方法嗎?
我覺得學習編程語言和學習任何一門人類語言一樣,你不能只是被動學習,你必須主動使用。
僅靠一本入門書學習語法並能寫出一句可以編譯通過的語句是不夠的。
我會給自己佈置題目,選擇一些有趣的小項目,然後用這門新語言實現。
在項目的選擇上你有什麼考量嗎?
我只選擇自己已經用其他熟悉的語言做過的項目,這樣可以把未知因素降到最低。這是其一。
其次我會根據要學的這門語言的特點去選擇最合適發揮該語言優勢的項目。
比如説Scala是一門函數語言,我會選擇一些和數字處理相關的項目,而不會用Scala去做一個用户界面。
通過實際做項目來學習是個非常好的主意!
除此之外,你還有其他的學習途徑嗎?
學習編程語言和學習一門外語是類似的,在你着手寫代碼同時你也要學習如何閲讀別人的代碼。
就像你不會僅僅學了某門外語的基礎單詞和語法就立即去寫作文一樣。
你要花大量的時間去精讀和泛讀經典的作品,有了足夠的輸入才能自己有所輸出。
你這樣一橫向比較就很清楚了。
學英文的時候,我們是從第一天就開始閲讀簡單的課文,然後在學習的初期,中期和所有的學習過程中要始終堅持閲讀。
是的。
像要學好英文必須持之以恆地閲讀原汁原味的英文作品一樣,程序員必須堅持閲讀他人的優秀代碼。
我一直奇怪為什麼人們學習編程的時候就把這一點給忽略了。
是不是有些程序員水平提高得慢也和平時工作中光寫不讀有一定的關係?
要做到不停地進步就必須堅持閲讀優秀的代碼對不對?
那你一般是從哪裏去找合適的代碼來讀的呢?
假如你所在的公司需要你學習一門新語言好做一個新的項目,或至少你有相應的權限,那你就可以直接閲讀公司內部已經上線的工作代碼。
工作代碼的質量雖然良莠不齊,但通過閲讀你會慢慢體會到它們之間的差異,並從中學習。
-
車四十四真實故事原型
車四十四真實故事原型,第58屆威尼斯電影節最佳短片劇情獎的電影《車四十四》於2001年上映,車四十四電影真實故事原型是發生在伏虎山區,女司機代替了她生病的丈夫。以下分享車四十四真實故事原型。車四十四真實故事原型1真實故事原型發生在1999年的伏虎山區。女司...
-
孩子讀書笨試試學習外語
閲讀障礙症的症狀通常表現為患者注意力不集中,對詞彙記憶、拼寫、朗讀存在一定的困難,對閲讀無法提起興趣。醫學界對閲讀障礙的認識與治療主要是針對西方語系的患者,而香港大學一項最新的研究發現,使用中文的閲讀障礙患者發病原因與使用西方語系的患者是不相同的。...
-
教寶寶學習説話的誤區
對寶寶的要求反應過快寶寶指着水瓶,成人馬上明白這是寶寶想喝水了,於是馬上把水瓶遞給他,這樣寶寶失去了説話的機會。正確的做法應該是,當寶寶指着水瓶,你可以引導孩子説出來她想幹什麼,就算僅僅説一個“水”字,你就應該鼓勵他,因為這是不小的進步。他懂得用語言表達自...
-
什麼樣的孩子適合學習少兒編程
如今少兒編程教育高速發展,呈現出低齡化的態勢,在多地舉辦的不同類型的少兒編程、教育機器人比賽中,都不乏學齡前兒童的身影,最小的參賽選手甚至只有4、5歲。身處人工智能時代,編程教育的不斷升温也引發了家長們的全新思考——少兒編程教育到底適合怎樣的孩子?我的孩...