JavaScript之父Brendan Eich,Clojure 建立者Rich Hickey,Python建立者Van Rossum等編程大牛對程式員的職業建議

來源:互聯網
上載者:User

標籤:問題   size   type   語言   john   types   png   javascrip   guid   

軟體開發是現時很火的職業。據美國勞動局發布的一項統計資料顯示,從2014年至2024年,美國就業市場對開發人員的需求量將增長17%,而這個增長率比起所有職業的平均需求量高出了7%。很多人年輕人會選擇編程作為自己職業生涯的起點。如何學好編程?如何成為優秀的程式員?如何規劃好程式員這個職業?是許多年輕人關注的問題。在Infoworld最近做的一次調查中,邀請到了JavaScript之父Brendan Eich,Clojure 建立者Rich Hickey,Spring Framework建立者Rod Johnson,Npm 建立者Isac Schlueter, 以及發明了Python的Guido Van Rossum接受了採訪。這些編程界的大牛們分別就“教育背景”、“程式設計語言”和“編程實踐”這三個方面,對年輕程式員的職業規劃提出了建議。讓我們一起來分享這些大牛的見解吧。

 

 

教育背景

“在人生中最大的挑戰不是技術可以解決的。”Eich說,“所以我們要學習曆史、語言、藝術、還有其它人類的知識,而不是只學習與電腦有關的東西。”

 

Hickey贊同了Eich的觀點。他認為,要把編程放在一個更寬的視野中。“在具有曆史性的事物中,編程是一個全新的成果。我們不要以為已經懂得了怎樣用最好的方法去追求它。”Hickey建議年輕人應該追求其它的學習興趣去協助理解在編程中的各種問題。“最好的程式員是那些在他們所擅長的領域裡,有理解能力的,善於溝通的,以及能夠解決問題的人。軟體只是一個工具而已。”

 

 

Johnson認為,要成為程式員的話,應該要探索電腦科學和數學以外的學科。這樣可以協助程式員拓寬他們的教育背景,因為最終“編程是關於人的,而不是關於數學的。”即使是當談及把電腦科學作為一種學曆時,Johnson也有著不同觀點。他說:“絕大多數時候,我們學習是為了工作。 良好的電腦科學背景的確是有價值的,但我已見到過有許多優秀的程式員,他們擁有不同的教育背景。”

 

Schlueter 認為,這是作為一名出色程式員的重要一面。“無論你是否上大學,都要盡量花時間,而且要儘早閱讀大量的文學和哲學,並儘可能寫作,”他說。如果你不打算上大學,那麼儘快找一個導師,讓他給你布置寫作任務和幫你的文章潤色。這項工作發生在互連網上,書面語是人們在互連網上交流時使用的。你能寫得越有效,你就越會越好。”

 

程式設計語言

一旦你坐下來開始學編程了,哪種語言是首先應該考慮的呢?

 

“OCaml,Haskell,Rust,C++,TypeScript,JS,Racket 或者Scheme,”Eich說。當然,我不是要求每個人都去學習所有這些語言,但只要在合適的時間和地點學好其中幾種就很好了,這對那些有興趣和能力的大學生尤其有用。”

 

 

Hickey也建議要有學習多種語言的計劃,但他的觀點更具哲學性,他提出要把現有的廣泛的程式設計語言中具有代表性的,整合在一起。“選擇一種很有代表性的語言,電腦是如何工作的(C),一種封閉式的語言(Haskell,Prolog),一種靜態函數語言(Haskell),和一個動態函數語言。我喜歡Clojure,”他說。

 

Johnson提議學習程式設計語言要用對比的方法。“語言可以影響編程的思維,所以學習一門以上的語言是很重要的,而且學習不同的語言要有不同的方法,”他說。“例如,一個物件導向的語言和一個函數語言,而不是說Java和C#。”

 

編程實踐

一旦你已經開發過了一些項目,你如何把自己的技能提升到更高水平呢?

 

Eich建議要向早期的或現在的編程大牛們學習如何寫出很棒的代碼。“閱讀高品質的代碼,有時候甚至要把它們列印出來,在有需要的地方做好筆記。”Eich說。“說到高品質的代碼,我覺得經典的仍然是Kernighan & Ritchie‘s The C Programming Language, 還有 The Unix Programming Environment”。近年來值得一讀的代碼是‘Solving Every Sudoku Puzzle,或者是 norvig.com的代碼。”

 

要瞭解更多這些編程大牛們的觀點和建議,可以瀏覽全文:http://wp.me/p6WSQY-1G5 。

 

JavaScript之父Brendan Eich,Clojure 建立者Rich Hickey,Python建立者Van Rossum等編程大牛對程式員的職業建議

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.