寫給即將學習編程的大學新生

jopen 9年前發布 | 12K 次閱讀 編程

寫下這篇文章,是由于我想和即將進入大學有意學習編程的同學談談關于編程的事,因為你可能需要一些建議,來步入這個新的階段。

編程是非常有趣的一件事情,學會編程就像成為魔術師,你可以創造任何你想創造的東西。在我出生到現在的這 20 年里,除了文學,沒有比編程更吸引我的活動。就像 Zed Shaw 所說的,『編程作為一項智力活動,是唯一一種能讓你創建交互式藝術的藝術形式。你可以創建項目讓別人使用,而且你可以間接地和使用者溝通。沒有其他的藝術形式能做到如此程度的交互性。電影領著觀眾走向一個方向,繪畫是不會動的。而代碼卻是雙向互動的。』

一些困惑

但是當你開始接觸(我所在的)大學的計算機相關課程,你會發現,所謂的編程學習,無非是老師教一章內容,要求你用學到的語法去解一些數學題。于是很多人選擇放棄,認為編程乏味無趣,用很長的課時學習,卻只能寫出簡單的四則運算,或者解數學題。

然而這并非編程的全部,因為這恰恰能生動地表明編程語言只不過是一種工具,你可以用它來解數學題,也能做其它更有趣、更實用的程序。

在(我所在的)大學,計算機相關課程教 C/C++。有一次,一位大三的朋友問我說,『我學 C 學了一段時間,為什么我還是感覺很沒用?』我是這樣回答他的:

你學 C 學了一段時間感覺沒有用處并非你個人的問題,我無法跟你解釋為什么,不過我可以告訴你的是,Linus Torvalds 用 C 寫了 Linux 和 Git; Antirez 用 C 寫了數據庫 Redis. 你可能連 Git 是什么都不知道,如何用 C 寫出這種水平的程序呢?

</blockquote>

所以,當你學習 C/C++ 基礎后進入困惑期時,不要因為用它寫不出實用的程序而止步不前,而應該開始接觸其它的編程語言。當你所學和所做的東西越來越多的時候,你慢慢就會發現,編程語言只不過是一種工具,重要的在于你想做什么,用什么語言合適去做(華軟的校內游戲直播網站 SISE Game 就是例子,網站的后端用 Ruby on Rails 寫,但實時聊天是用 Node.js (JavaScript) ,因為相對于 Ruby, Node.js 更加適合處理 WebSocket)。 你之所以感覺 C/C++ 沒用,是因為你暫時還沒有足夠的眼界和能力去使用他去進行創造。

應該去學什么?我的建議是一門嚴謹的強類型語言(如 Java)和一門愉快的腳本語言(如 JavaScript, Ruby, Python)。當然了,如果你想學一些能立竿見影的技能,你也可以寫寫前端(HTML, CSS)。

So, How?

對于應該如何去學習,我不打算在這里論述,我只想列出一些有用的建議:

0. 無論你要學什么,你讀的第一篇文章應該是《提問的智慧》

1. 用 Google 搜索技術相關的信息

2. 購買付費可靠的KX上網服務,不要吝嗇一頓飯的錢。

3. 不要害怕英文,英文非常重要。

幾乎所有最新的技術在剛出來的時候只有英文文檔,優質的 Tutorial 大多數也是英文的。

4. 參與一些質量高的社區,關注一些值得關注的人。

這一點很重要。學校所教的內容是陳舊、過時的(雖然這也許不是學校的錯),你必須和社區保持同步,不斷接觸和學習新的技術。AngularJS 發布至今都有 6 年了,但在我們學校仍然在教 ExtJS,很多學生甚至畢業出來找工作的時候,連 AngularJS 都沒聽說過。

國內的 V2EX 和國外的 Hackernews 都是不錯的社區。

一些現狀

你并不能指望大學的課程或者大學老師能給你帶來什么,一切都應該靠你自己。無論在多優秀或者多差勁的學校,學校本身能影響你的是輔助性的,而不是決定性的。在我的學校,幾乎都在打游戲和應付考試,據我所知,即使是重點大學,這樣的學生也大有人在,我漸漸明白,『你今后人生的艱難,恰恰不是因為你沒能考上一個滿意的學校,而是在這所學校里,在一個能讓自己自由充分成長的黃金四年里,把自己給荒廢了』采銅的回答

為未來鋪路

如果你以后有意從事編程的相關工作,你應該要知道,在找工作時和其它競爭者拉開差距的,并非你從哪里畢業,在學校當什么干部,而是你有足夠的能力,并且能清楚地讓別人看到你的能力。

讓別人看到你能力的方法是開源社區和博客,所以我建議你在學習的過程中,多為開源做貢獻,甚至可以維護一個自己的開源項目。另外還可以把自己的所學記錄和總結到獨立博客中。一個好的 Github Account 和好的獨立博客是一份最好的簡歷。也許你也只有在大學這自由的四年才能有時間做這兩件事情。

最后

我在廣州大學華軟軟件學院讀書已經有一年了,這一年里我遇到過許多對現在對未來感到迷茫的朋友,他們對教育抱有希望,對知識懷有渴望。我曾經試圖做一些事情去改變現狀,但是效果都不大,該混日子的還是繼續混日子,到畢業后才開始抱怨就業難。我呸,互聯網行業都缺人缺到什么地步了你跟我說就業難?

不過,只要我還沒被學校開除,我還是會盡我所能地為迷茫的朋友做一些事情。至于做些什么,我還沒想好,我不知道應該怎么做,如果你有好的建議,歡迎聯系我。

如果你看完這篇文章,還有問題可以聯系我的 Email: randypriv@gmail.com,只要你讀過《提問的智慧》,問的問題經過自己思考,我都會盡快地詳細地回復。

『你會編程。他們不會。這真他媽的酷。』

來自:http://www.jianshu.com/p/3bfc5185a390

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