Quantcast
Channel: 神魂顛倒論壇-Flash--Front-end網頁前端討論最新50篇論壇主題-全文
Viewing all articles
Browse latest Browse all 735

[程式設計]然而程式開發學院並沒有什麼用

$
0
0
[程式設計]然而程式開發學院並沒有什麼用

類型:
程式設計



在新視窗檢視

編者按:斯蒂芬·尼克爾斯(Stephen Nichols)是 GameSalad 的首席執行官。

近年來,程式開發作為一種職業已經從技術宅的專屬領域走進了大眾的視野,但是真正擅長這項技能的人只有少數。在超過 20 年的職業程式開發生涯當中,我從來沒有見過任何人可以在幾周之內從一個程式開發新手成為一個合格的程式員,但是那些程式開發學院的宣傳語好像都是這麼寫的,它們對學員的承諾內容還包括快速就業、能夠買得起特斯拉的豐厚薪水,以及改善生活水平的能力。

目前來說這是一個不錯的商業樣式。現有的熟練程式員數量還遠遠不能滿足美國 500 萬個 電腦相關崗位 缺口。現在你只需花費低至免費,高至 36000 美元的學費,然後就可以在一年之內學會電腦程式開發。如果你足夠幸運的話,你將會發掘出自己的程式開發潛能,並逐漸愛上這種技能,甚至可以找到一份真正的工作。

在未來 15 年之內,這種來之不易的技能將會變得過時——如果有人還在堅持的話。無論程式開發學院給出了什麼天花亂墜的承諾,它們仍然無法生產出程式員。它們所做的只是在一大片還沒有接觸過程式開發的學員當中找出個別有天賦的人才。大多數人都認為程式開發是一件沉悶無趣的事情,所以他們很難在程式開發事業上有所進展。考慮到軟體本身是在不斷變化的,他們也許不能跟上這種變化。

對於那些想學程式開發的人來說,這裡有一條最佳的建議:先試後買,我的意思是在花錢報班之前先了解自己是否適合這個行業。不然的話,你到頭來可能無法在職業道路上有所進展,反而只是浪費了數萬美元。對於一個逐漸消失滅亡的職業來說,這樣做是非常不值得的。

逐漸萎縮的職業

我認為程式開發這個熱門職業的價值正在逐漸減少。這不是因為軟體正在消失,而是因為軟體的開發方式將會經歷根本性的改變。無需使用程式碼的軟體開發技術已經開始進入主流。包括 ScratchDWNLDTelerik 在內的視覺化內容生成工具將會繼續完善,使用者最終將無需編寫一行程式碼即可開發出自己的應用。

如果使用視覺化的構件,甚至是簡單的英語就可以描述含義的話,有誰還想去程式開發呢?自然語言處理和概念塑模的進步將會消除傳統程式開發的需要。軟體開發工具很快就能理解你所說的話。即使是在在含義消歧方面的細小進步也能帶來極大的改變。我們現在已經看到了 OpenCogNLTK 自然語言處理這樣的專案,而且麻 省理工大學已經證明了 人類語言可以用於向電腦發出指令。

程式開發學院剩下可以賺錢的時間已經不多,因為它們畢竟只是短期思維的產物。當無需程式碼的軟體開發技術出現之後,程式開發技術將會變得毫無用武之地,程式員也不再是一個有前途的職業。

不切實際的投資回報

經營程式開發學院是一個不錯的短期經營理念。這不只有因為程式員還算是比較新的職業選擇,而且它能夠激發起人類建造東西的慾望。你可以通過程式開發製作出交談式的數位內容,這就是人們喜歡這個想法的原因。

根據 CourseReport 的資料,全球程式開發學院的數量在 2013 年到 14 年增長了 175%,這裡還沒有計算非全日制的專案。全日制程式開發學院在 2014 年的總收入為 5900 萬美元,不過 研究人員 表示這是一個「保守的」估計,更為合理的估計是每所學校的平均年收入為 220 萬美元。2015 年的產業規模將會更大。至於學費方面,「高階程式開發學院的收費會高於公立四年制大學的平均學費(包括食宿費)。」

這樣的收費就有點離譜了。因為程式開發學院能夠做到的充其量只是激發起少部分學員的興趣,然後大肆宣傳極個別的成功案例,不斷向外界營造「人人都能學程式開發」的錯覺。事實上,學習如何將含義翻譯成非人類的外來語言是非常困難的,這顯然不適合大眾市場。



學習程式開發本身是一件沉悶的事情

結合我在過去 20 年的程式開發經驗,加上我對一些學習程式開發的兒童和學習 GameSalad 的使用者的觀察和了解,我注意到大部分人在學習程式開發的早期就會遇到障礙。宣稱自己擁有超過 2400 萬使用者的 Code Academy 也只有少數的成功案例,這背後的原因可能也是上面提到的問題。大多數人都無法堅持程式開發的學習,因為他們無法理解電腦的思維,所以他們會發現將自己的想法轉換成程式開發語言是一件非常困難的事情。

簡單來說,程式開發就是使用外來的語言編寫出文本檔案,而這些檔案中的指令要讓最愚蠢的機器都能理解。電腦跟人類不一樣,它們不能從模糊的文本中推斷出含義。所以一個程式員必須非常擅長於將問題分解成最簡單的步驟,然後一字一句地向愚蠢的電腦解釋這些步驟的含義。

擁有一定複雜度的應用都是由大量的文本檔案組建而成的。舉個例子,只有只有是我們的 GameSalad Creator 應用就含有 6972123 行程式碼,分別散落在 41702 個檔案當中。這已經相當於一本 116202 頁的書籍。



在新視窗檢視

GameSalad Creator 程式碼檔案的截圖(點選放大)

程式員實際上都是語言學家,他們將人類語言翻譯成能夠讓機器處理的變成語言。而且跟任何翻譯者一樣,他們都需要對源語言和目標語言有深入的了解才能做出可以接受的結果。任何忽視這個事實的程式開發教學都將會流於形式,而且達不到應有的效果。最好的程式開發教育來自多年的學習與實踐,別無他法。

先試後買

一行接一行的程式開發語言不過是一份細緻入微的電腦指令表。在報讀程式開發學院之前,無論這是不是一個免費課程,你都需要先問問自己這些問題:

我可以接受每天多個小時的文本輸入工作嗎?

我喜歡將將問題分解成詳細的指令清單嗎?

我擅長於抽象的概念思維嗎?

我能適應數位建築工人的工作嗎?

如果你對上面全部問題都給出了肯定的回答,那你應該適合嘗試程式開發。只要有理解力和決心的人都能掌握好這項技能——這也是我們能看到這麼多自學成才的程式員的原因。但是程式員是一種自然資源,擁有這種意志和能力的人是有限的。

學習程式開發,也就是將含義翻譯成非人類的外來語言是一件令人望而卻步的事情。向程式開發學院投入數萬美元似乎是克服這種畏懼的好方法,但是這樣並不能維持太長的時間。雖然這最終可能會成為你進入大型科技公司的門票,但是對於大部分人來說,這只是加入債務的另一種方式。除非你是熱愛程式開發的少數人,否則程式開發學院對你來說並沒有什麼用。

題圖來自:HOLLY KUCHERA/SHUTTERSTOCK(圖片經過調整)

翻譯:關嘉偉(@consideRay

Coding Academies Are Nonsense

想在手機查閱更多程式設計資訊?免費下載【香港矽谷】Android App

在新視窗檢視







原文站台: TechCrunch 中?











在新視窗檢視

分享到Facebook


Viewing all articles
Browse latest Browse all 735

Trending Articles