每一位小白程式設計師都應學會的 3 項技能

2020-12-02 開源中國

在最近的一次訪談中,Joel Spolsky(StackOverflow的聯合創始人)表示,一個新從事編程工作的小白需要學會3項技能:經濟學、寫作和C語言。乍一看,這三項技能除了C語言以外也許與程式設計師關係不是太大,但是經過深入挖掘後你就會發現這其中的奧妙。

Spolsky建議程式設計師學習經濟學的原因是「programmers often don’t know that and consequently don’t understand how they add value to a business.」(程式設計師往往都不知道如何在軟體產品中注入商業價值)。花一分鐘時間想一想,我們是否經常都會聽到設計師與開發員抱怨如噩夢般的客戶 和他們不合理的需求?其實這樣的客戶肯定會存在,一個很容易被忽略的事實是開發者的主要作用就是為客戶創造商業價值。只有理解到這一點才能夠與客戶建立良 好的合作關係。

此外,對經濟學有一定了解能夠幫助自由職業者更好地推銷自己。當客戶出現不合理的要求時,經濟學能夠幫助他們(普通的web開發者)體現出自己的價值,用一個成功的站點為客戶帶來商機。

Spolksy也建議程式設計師學習寫作技能並練習溝通能力,因為「essentially, the most successful people are the ones who can explain their ideas the best.」(實際上,最成功的人就是能夠最完美地表達出自己想法的人)。他說得沒錯!溝通是最重要也是常被忽視的一項技能。無論你是否是頂尖程式設計師,如 果你不能將你的想法正確地傳達給團隊中的其他成員,那這些想法都會變得毫無意義。

這並不僅僅適用於編程,日常生活中也是如此。作為一名編輯我不得不審閱大量的文章,只有清晰、有深度的文章才能更快地通過審核。

Spolsky的最後一項建議是學習C語言。當我聽到這項建議後第一反應是「什麼鬼?!」我明明能夠使用擁有更優雅語法的JavaScript或者Ruby語言,為啥還要學習C語言?我可不想讓我的程序爆炸。

如今的大多數程式設計師會學習一些高等級的語言—例如Python、Ruby或者Java,但是確對在這些語言中的代碼的執行沒有一個好的把控,導致編 程工作變得緩慢或者無法突破瓶頸。其實這就像建議一個想學習jQuery或者JavaScript框架的人停下腳步去學習這門技術的由來。花時間去學習所 在領域的基礎知識,能夠讓你在正確的道路上走得更遠(例如在調試程序時程序未按預期工作)。

您怎麼看呢?換做是你,你會向新從事編程工作的小白提出哪三項建議?

稿源:evget

相關焦點

  • 國外程式設計師推薦:每個程式設計師都應讀的書
    其他書籍則處理算法。這些書都有自己所屬的位置。然而《電腦程式的構造和解釋》與這些不同。 這是一本會啟發你的書,它會燃起你編寫出色程序的熱情; 它還將教會你認識並欣賞美; 它會讓你有種敬畏,讓你難以抑制地渴望學習更多的東西。其他書或許會讓你成為一位更出色的程式設計師,但此書將一定會讓你成為一名程式設計師。
  • 程式設計師編程入門必知!程式設計師需要學什麼
    學習語言的過程中還要有機會進行檢驗,不能只編寫代碼,還要檢驗代碼的結果運行是否正確,也就是某些可以運行結果的軟體我們要有,不過許多的程式語言都要求有被程式設計師設計來講代碼轉換成機器能理解的語言的編譯器。其他一些語言,比如Python,使用可以立即轉換成程序而不需要編譯。一些語言有自己的往往包含著代碼編輯器、調試器和/或者翻譯以及調試的IDEs(集成開發環境)。
  • 2021年之前,這6項技能最賺錢?
    單純的和大家聊聊在今年,也就是當下這個時間,擁有什麼樣的技能,就可以在未來起碼3~5年裡,都能穩定的賺到高收入。大家不用擔心我今天要說很多諸如金融、編程或者人工智慧之類高大上的玩意兒,需要很系統的學習那些很複雜的專業知識的技能。因為我知道,那個對於大多數人來講,的確很難,非常容易半途而廢。所以,我今天要和大家講的技能,一定是相對比較簡單,只要你願意全力以赴的花些精力就可以輕鬆得手的技能。
  • 如何度過程式設計師的菜鳥階段?
    近些年,IT行業薪酬水平穩居榜首,70%的程式設計師薪酬在十萬以上。那麼想要進入IT行業成為一名程式設計師該怎麼度過自己的菜鳥階段呢?主動問不管是實習生還是已經初入職場的小白,領導最怕的是哪一種人?是那種明明不會,自己也琢磨不出來,卻又不問的人。只能說這種人是在白白地浪費時間。不是讓你所有的事情都來問,但至少你不會的東西要懂得主動去問,別人如果一直在忙的話,根本不會注意到你有沒有學會。所以你一定要主動去問。
  • 一位美女PM親述:如何不被程式設計師嫌棄
    哎,我發現PM們都特喜歡說這句無比勵志的話呢!面對他,我的心突然惆悵起來。幾年前的自己也差不多是這個模樣,懵懂如白紙,但誰又知道這樣的PM,在很多RD的眼裡就是個傻逼吧。身為一位女性PM,我至今為止並肩合作過的RD團隊超過8組共200多人(動蕩曲折的職業生涯啊),受過的委屈流過的淚就不在這裡贅述了,打算留著以後寫小說。
  • 高級程式設計師是如何從初級程式設計師演變的?工作經驗不再是唯一途徑!
    在工作的那些年裡你到底獲得了多少經驗和技能?這正是面對開發人員的求職和面試如此複雜的原因。度量技能是很困難的,所以我們在面試中給開發人員進行了很多有難度的測試。但這些測試充其量也只是了解一個大概,無法度量其究竟具備多少完成該項工作所需的經驗或專業技能。 這就引出了下一個問題。
  • 每個業務分析專家應具備的9個關鍵技能
    學位證書可以讓你找到工作,但學會多種技能可以擴大你的行業增長前景。本文將探討業務分析專家(Business Analytics Professional)所需的最重要技能。此列表並不詳盡,但絕對涵蓋了你應該掌握的核心技能。本文接下來將要介紹商業分析師(BA)與業務分析專家(BAP)之間的區別,以及成為業務分析專家所必須的9項基本技能。
  • 數據分析入門學習指南,零基礎小白都能輕鬆看懂
    然而,讓很多朋友困惑的是,我是沒有編程基礎的小白,能學會數據分析麼?該如何學習數據分析呢?其實,如果你打算成為一名數據分析師,如何出身並不重要,數據科學是一門應用學科,你需要系統提升數據獲取、數據分析、數據可視化、機器學習的水平。下面我就簡單提供一個數據分析入門的路徑。第一階段:Excel數據分析每一位數據分析師都脫離不開Excel。
  • 世界上第一個程式設計師竟是一位名媛,讓男人汗顏
    程式設計師這個職業很多人的第一印象是不修邊幅,鬍子拉碴的男人。但是你知道嗎,世界上第一位程式設計師卻是一位女性,而且是一位名媛。阿達·洛芙萊斯出生在1815年的英國。母親是一位認真嚴肅的數學家,父親是英國的著名詩人拜倫。阿達從小在母親的影響下有著極高的數學天賦。
  • 為什麼每一位工程師都應該學習分析和編程技能?
    因此,筆者強烈推薦非計算機科學工程師和專家們都去學習分析和編程技能,並且希望它同樣能給你們帶來一定幫助。「連接人類、技術,與商業。」作為一名工業和系統工程師,筆者的主要目標是將工程與管理聯繫起來,並且分析和改造其聯繫過程,或者創造全新的聯繫。
  • 程式設計師的這108個笑話 你都看得懂嗎?-程式設計師,笑話,編程, ——快...
    3、還沒上大學的時候,高三暑假,跑到家那邊的圖書城想買傳說中的C++的書,然後看到一本C#,我一看,嘿,這個++還寫得挺藝術的,重疊起來了,於是把C#買了回來……4、問:程序猿最討厭康熙的哪個兒子?答:胤禩,因為他是八阿哥(bug)。5、有一天,程序猿們突然發現他們要漲的工資掉到井裡啦!大家都很害怕,連忙一個吊著一個,從樹上伸到井裡去撈工資。
  • 想成為嵌入式程式設計師應知道的0x10個基本問題
    這些問題都是我這些年實際碰到的。其中有些題很難,但它們應該都能給你一點啟迪。這個測試適於不同水平的應試者,大多數初級水平的應試者的成績會很差,經驗豐富的程式設計師應該有很好的成績。為了讓你能自己決定某些問題的偏好,每個問題沒有分配分數,如果選擇這些考題為你所用,請自行按你的意思分配分數。預處理器(Preprocessor)1 .
  • 被嫌棄的35歲程式設計師
    一位 35+ 程式設計師在求職網站自述,他在今年年初被裁後的 2 個月裡,瘋狂海投簡歷、面試,只拿到了 6 個非大廠 offer,最終他決定平薪入職其中一家。打擊面並不僅限於職場。在某社交平臺上,一位程式設計師憤憤表示,新認識的交友對象對「程式設計師到了 35 歲就退休」的定律感到介意,以致於感情快告吹了。
  • 1萬小時理論都是騙人的?學會一項技能只要20小時就夠了!
    可是等我仔細算了算,發現即使我每天苦練8個小時,也得用整整3年半的全年無休的學習才能達到這個水平,如果把雙休日再去掉。同樣每天苦練8個小時,我就得全年無休的學習5年.別扶我,讓我在地上躺會兒。現在,不用10000小時也能學會技能。《關鍵20小時--快速學會任何技能》的作者喬西考夫曼大帥哥告訴我們:其實只需要20小時,任何新技能都可以快速上手。
  • 學會這6項技能,你就能在喪屍爆發後活下去
    因為很多朋友都在和我說,他們最擔心的是如果喪屍危機爆發後,即便自己不會在第一時間內變成喪屍,也很難生存下去,因為要面對的事情簡直太多了。今天在這裡,我就和大家聊聊,其實,只要你學會了下面這六種技能,你絕對能在喪屍爆發後活下去。
  • 初中學歷可以轉行做程式設計師?
    初中學歷可以轉行做程式設計師,但是能否有更好的發展很難說。我本人普通本科畢業,做了六年程式設計師,而且我本科期間所學專業也不是計算機,後來成為程式設計師也是自學轉行的,自認為轉行做程式設計師並不難。但是我並不建議你這麼做,我說一下自己的看法:1.程式設計師是腦力勞動,需要具備一定的知識儲備和較強的邏輯思維如果只是學會寫程序,去IT培訓機構培訓幾個月就可以實現,成為一名初級程式設計師真的不難。
  • 阿里傳奇程式設計師,只會寫代碼,卻從一名員工做到了合伙人
    多隆原本是金庸小說《鹿鼎記》裡的人物,是一位對主子非常忠心憨厚,也很善良的武功人士。他為了韋小寶闖刀山下火海,面對眾多的財權誘惑時,仍然忠心於韋小寶,甚至有一次為了保護韋小寶差點喪失了自己的性命。好在韋小寶也仗義,不僅和多隆結為拜把子兄弟,還助力多隆的事業,讓他得以實現人生價值。
  • 2020年最重要的10項工作技能——信息圖
    我不知道,但是根據鳳凰城大學研究中心未來學會的研究,到 2020 年的時候,最需要的工作技能並不是挖掘機技術。研究人員分析了未來的 6 大變革驅動力,並在基礎上分析出屆時最重要的 10 項工作技能。3、可計算的世界傳感器的不斷增長和處理能力的不斷增強令世界成為可編程系統。隨著傳感器、通信及計算能力滲透到日常物體和環境中,現實世界將逐步數位化,人類將有機會獲得海量的數據以及對模式的洞察,人類的決策將越來越多地依賴於對數據的分析,我們對這個世界的思考將會以可計算、可編程、可設計的方式進行。
  • 如今獲得最高薪酬的10項IT技能
    為了準確掌握這些高薪酬技能的情況,Foote Partners公司自1999年以來一直在跟蹤IT技能的薪酬數據,以了解哪些技能和認證在任何時候都能帶來最大的薪酬提升。Foote Partners公司的「IT技能和認證薪酬指數」季度報告使用了美國和加拿大83個城市的3,305家私營和公共部門僱主提供的數據,以跟蹤各項技能的市場價值的漲跌,以及跟蹤超過1,000種技術技能和認證的支付薪酬。 隨著IT工作變得越來越複雜,關於如何在不同公司之間界定職位以及僱主如何為擁有不同技能組合的同一角色的人才支付薪酬的問題變得更加模糊。
  • 程式設計師是做什麼的?未來計算機變得智能,就不需要程式設計師了嗎?
    甚至不少程式設計師對他們是做什麼的都沒有清晰的概念。 與之相反,所有計算機語言都是準確、直接的,與上下文無關。 2.細節層次。人類的溝通是籠統而不帶有過多細節的,例如:「我想讓這該死的程序運行起來」。這樣可以節省時間與精力,但由於缺少詳細信息,會產生兩個比較大的問題——誤解和不確定性。而計算機需要所有細節——每件事都要說清楚。