自動寫程式碼可顛覆的只是“碼農” 而非程式設計師

網易科技發表於2014-11-14

  人類總是會對自己的未來充滿了焦慮,在我們對未來心存懷疑的時候,任何一則“消極”一點的訊息都能讓我們更加否認自己的未來,這一心理近日在對程式設計師前景心存質疑的人們身上,非常明顯。

  日前,據網易科技報導:美國萊斯大學表示,作為五角大樓的瘋狂科學部門,美國國防部先進研究計劃署(DARPA)對代號為PLINY的自動填寫編碼專案投資了1100萬美元,這一專案的研究人員期望在收集到大量的開原始碼編入索引之後,可以預測編碼人員將輸入的程式碼。

  該專案如果被順利完成,它或將為那些找不到合格程式設計師參與研究日益複雜的軟體專案的公司帶來福音。根據高考期間的報導,計算機專業是我國2014年高考志願填報最多的專業。由此一來,那些孩子學習計算機專業,有可能走上程式設計師道路的家長們,以及本身對程式設計師未來心存質疑的人們看到這一新聞之後更加焦慮,彷彿自動寫程式碼的工具讓大量的程式設計師下崗的事情已經板上釘釘。但事實真是如此嗎?

  碼農是程式設計師嗎?碼農與程式設計師的區別

  根據百度百科釋義,碼農是一個依靠寫程式碼為生的群體,表現在:低收入,工作時間長,這種職位只能強化職業者在單方面的技術領域技能。如果按照從業者們將自己自嘲為碼農的表現,那麼碼農的程式設計師分級中理應只屬於初級程式設計師,是屬於依靠複製貼上將各類程式碼連結的IT從業者。

  這個群體的數量有多少呢?大學計算機相關專業的同學們、大中專軟體專業學習者、畢業不久的程式設計師、廣大程式設計初級愛好者。這一群體龐大的數量,讓碼農很難在IT世界中擁有不可替代的價值。

  對於真正的程式設計師(非初級程式設計師,也即碼農)而言,他們熟悉與客戶溝通的技巧,在幫助使用者解決問題的時候瞭解使用者的需求,進而迭代產品;他們可以深諳獲取使用者需求的技巧,也懂得市場分析、技術執行分析、價值分析估算專案的風險;他們能獨立完成專案使用文件的能力,更重要的是他們與碼農有一個非常顯著的差異:碼農靠體力為生,真正的程式設計師靠腦力,靠思維邏輯上的突破、靠團隊管理贏得個人魅力。

  自動寫程式碼顛覆的是碼農 而不是程式設計師

  從區別中,我們不難發現:程式設計師與碼農相比最大的區別就在於:程式設計師不是完完全全的技術工人,其在思維邏輯上的價值,讓其不可替代性比碼農強多了。

  自動寫程式碼工具,這對於大量的程式設計師們來說可能是福音,但對於碼農而言,帶來的卻是毀滅。微軟在其發展中,對IT程式設計領域做出的最大貢獻就在於製作了很多便捷的程式設計開發軟體或構建了非常省事省力的開發環境,其中不乏有大名鼎鼎的Visual Studio和SQL server。

  以筆者在學習C#之時常用的Visual Studio為例,無論你是選擇c/c++還是其他的一些程式語言,在Visual Studio的語言庫中已經存在某一程式語言的情況下,我們通過輸入程式碼的前幾位英文字母,就能快速地檢索出我們想要的程式碼。因此,其實在目前的程式設計環境中,大量人性化的程式設計工具都已經初步實現了主流程式語言語法的檢索,無論是美國政府的PLINY,還是微軟正在利用去年釋出的外掛Bing開發助理,他們想要做的事情,各大研究機構或許已經研究多時的。

  雖然這樣的工具要實現準確預測編碼人員將輸入的程式碼,檢查語法錯誤與漏洞存在一定的難度,但這樣的工具的確有實現的可能,也會給人們更高效率地程式設計帶來很大的幫助。由此一來,備受衝擊的便是碼農的。

  一旦這樣的工具真正成型,這些工具會讓原本需要多位碼農分功能塊而執行的程式碼,由一個碼農也可以完成,在這個過程中,原本可能一家企業能夠養活5名碼農,最後只會有2名碼農倖存。由於目前碼農們所做的事情與真正的程式設計師相比,並無太大的技術含量,其被寫程式碼工具顛覆的可能性非常之大。

  但在程式設計師的發展歷程中,大家幾乎都是從碼農走過來的。自動寫程式碼工具會淘汰大量在碼農期間無法加強自己學習能力,加強自己不可替代價值的初級程式設計師,也就是我們所說的碼農。因為自動寫工具出行的情況會讓初級程式設計師們感受到市場的殘酷性,在激烈的競爭中會淘汰很多困難並不適合並不樂意往程式設計師更高層次發展的人,也會激勵初級程式設計師不斷學習,從而提升程式設計師整體的質量水平。

  因此,在自動寫程式碼工具顛覆、淘汰掉一批初級程式設計師之後,其也會為提升程式設計師質量做出巨大貢獻,對程式設計師發展有推動作用。學習能力強是高階的程式設計師或者優秀的人才都具備的因素,而對於使用者需求、市場的分析能力;對專案程式碼的邏輯思維掌握;能夠捨棄個人英雄主義,以團隊以專案為主;敢於創新敢於思考敢於學習也都是高階程式設計師們不可替代的一些地方。

  科技的發展,往往是能有工具替代人類的體力活,而關於思維思想的工作,暫時或許並未在這些神奇工具顛覆的範疇內。在自動寫程式碼工具面前,無論是碼農還是程式設計師,其實更多地應該是勉勵自己不斷學習,不斷進步,而不應該在末日還沒有來臨就對自己的未來堪憂。人類是世界上最高階的動物,大腦所具備的思維能力就是其能夠成為最高階的關鍵,在程式設計領域,或許只要人類肯學習,願意提升自己的思維能力,形成自己不可替代的價值還是有機會的。自動寫程式碼顛覆的是碼農而不是程式設計師!(這裡指學習能力不夠強、思維能力不夠強的初級程式設計師)

  (小謙供網易科技專稿,轉載請註明出處。文章僅代表作者個人觀點。)

  作者:小謙,千軍遊戲創始人,網際網路觀察員,微博@小莫謙,微信聯絡net1996.

相關文章