如何根據你想要的生活選擇第一門編程語言

 

程序員的生活輕鬆。工做機會衆多,並且薪資也不錯。程序員

即便你不想從事程序員這個職業,學點編程仍然是沒錯的。尤爲是對於那些網頁設計、數字營銷、企業和IT行業的工做崗位來講。面試

可是你應該學習哪門語言呢?編程

Udacity網站製做了一張很棒的信息圖(見下文),有助於你選擇。可是我還想講得更深刻一點。瀏覽器

在它們那張信息圖的基礎上,我會根據你的願望,分門別類地給出個人建議。好比,我會針對於旅行愛好者、設計師、IT人員或者其餘職業的人員給出建議。bash

過去一年中,我面試了不少人,面試的崗位也不同。我常常和其餘也在招聘的技術公司交流,對比各自的筆記。這使得我比較瞭解技術的長遠發展方向(跟你們透露一下,我在IBM工做)。服務器

怎麼作到在任何地方能找到工做?

你熱愛旅行嗎?若是是的話,你應該選擇像Python這樣的網絡開發語言,在C語言上投入的時間要少一點。網絡

推薦一些幫助學習的雲平臺:要去高水平的網站,好比HerokuBlueMixAzure。若是瞭解亞馬遜的AWS也不錯,可是與其餘選擇相比,學習曲線比較陡。做爲初學者,你應該關注的是編程概念,而不是如何配置。編程語言

你能夠在Stack Overflow CareersAngel.co兩個網站上找到遠程工做機會。工具

如何打造出色的硬件

若是你計劃打造實實在在的東西,推薦給你兩個很棒的原型開發用板:樹莓派和Arduino。能夠看這篇兩者的對比文章詳細瞭解。oop

在我看來,樹莓派是一個更好的選擇,由於Python語言比C語言更容易學。可是若是你想要打造硬件,最終你是不得不學習C語言(和C++)。

可是,若是是作我的「物聯網」項目的話,有時候購買一臺便宜、碎屏的iPhone或Android手機會更簡單些。

經過IBM的BlueMix IoT演示項目,不須要編程,你就能夠當即追蹤智能手機的3D位置和震動狀況。以後,你能夠修改用於演示的Python代碼,作些本身認爲酷的事情。(好比說,把iPhone藏在你前任的牀墊下面,看看能不能找出些規律。)

BlueMix IoT2 演示

BlueMix IoT2 演示

我是一名程序員,如何提升薪資水平?

除了學習一門新語言外,還有一個策略就是學習、掌握更多的利基企業系統。例如,你能夠學習像Hadoop和Spark這樣的大數據系統。(網上有不少免費學習這些技術的地方,好比IBM的大數據大學Edx.org

若是我選擇的職業不是編程呢?

對於IT和網頁設計,我有以下建議。可是其餘行業呢?有一些編程知識會不會有幫助?首先,若是你不知道sumif()是 什麼,那你應該花點時間學習一門Excel課程。Excel表格比你們想象的要強大的多。大多數程序員在進行編碼以前,都會嘗試使用Excel進行計算 (若是能算出來的話)。舉個例子,Excel中利用數據製做一張精美的圖表,只要幾分鐘,可是純編程的話,可能須要不少個小時(甚至幾天的時間)。

以後,你應該學習下面這些知識:

  1. HTML:每個網站使用了HTML。(並且,不少移動應用如今也在使用。)不論你如今嘗試深刻掌握WordPress,或者須要設置數字營銷工具,懂一點HTML都是有好處的。
  2. CSS:CSS,又稱爲「層疊樣式表」。它是網站用來選擇網頁的字體和顏色時,所使用的一種特殊排版語言。
  3. JavaScript:懂一點JavaScript,在你須要給老闆調整網站插件時是挺有用的。
  4. PHP、Visual Basic或者ASP.net中的一種:這些是很是容易學習的語言,可讓你快速地作出些有用的東西來。另外,它們仍是平常編寫腳本和建設網站時所使用的 語言。懂相似Python或Java這種語言,對於解決普通員工平常碰到的編程問題沒有太大幫助。(由於它們主要用於更大規模的計算機服務器編程,網絡應 用開發或者是編寫系統腳本)。值得說明的是,瞭解JavaScript或者PHP以後,以後能夠很容易地轉到Python語言。它們的基本概念是一致的。

我是一名IT從業人員,應該學習哪一種編程語言?

若是你是Windows管理員,那麼就學HTML和PowerShell。若是你是Linux管理員,就學HTML和bash腳本。

在IT行業,你不須要學習編程就能夠賺大錢:擁有企業級技術證書或資質的話,和程序員的薪資是差很少的,有時甚至更好。可是懂得如何編寫bash腳本就是一個優點。

網頁設計師應該學習哪一種編程語言?

學習SASS這種基於CSS的語言是個很好的起點。以後,重點學習JavaScript。最後學習Node.js,也就是不依賴於瀏覽器運行的 JavaScript。Node.js市場如今很火熱,以後長期都會如此。不要偏離JavaScript領域。相反,要專攻Node.js,深刻學習。 (注意,之後io.js可能會取代Node.js。因此你要與JavaScript社區保持技術上同步更新。)(譯者注:最近io.js與Node.js 已經合併了代碼庫,不過做者說的保持技術更新是沒錯的。)

關於信息圖的最後一點說明

Udacity在描述JavaScript的發展趨勢時,我想他們應該沒有把這點考慮進去,即Node.js只是不依賴瀏覽器運行的 JavaScript。2015年,對Node.js工程師的需求異常的高。若是開不出6位數的薪資(截至2015年十月),很難招到一名擁有豐富 Node.js經驗的工程師。隨着愈來愈多的人學習Node.js,市場也許會慢慢平靜一些。最後一點忠告:Node.js比原生JavaScript要 難掌握的多。因此,若是你是初學者,請先學習原生JavaScript,而後再轉到Node.js。

最後,奉上Udacity製做(EarlGrey@codingpy.com編譯)的信息圖。 

如何選擇你的第一門編程語言

如何選擇你的第一門編程語言

相關文章
相關標籤/搜索