自動寫代碼工具要顛覆碼農(nóng)?
技術(shù)支持服務(wù)電話:15308000360 【7x24提供運維服務(wù),解決各類系統(tǒng)/軟硬件疑難技術(shù)問題】
人類總是會對自己的未來充滿了焦慮,在我們對未來心存懷疑的時候,任何一則“消極”一點的消息都能讓我們更加否認(rèn)自己的未來,這一心理近日在對程序員前景心存質(zhì)疑的人們身上,非常明顯。
日前,據(jù)網(wǎng)易科技報道:美國萊斯大學(xué)表示,作為五角大樓的瘋狂科學(xué)部門,美國國防部先進研究計劃署(DARPA)對代號為PLINY的自動填寫編碼項目投資了1100萬美元,這一項目的研究人員期望在收集到大量的開源代碼編入索引之后,可以預(yù)測編碼人員將輸入的代碼。
該項目如果被順利完成,它或?qū)槟切┱也坏胶细癯绦騿T參與研究日益復(fù)雜的軟件項目的公司帶來福音。根據(jù)高考期間的報道,計算機專業(yè)是我國2014年高考志愿填報最多的專業(yè)。由此一來,那些孩子學(xué)習(xí)計算機專業(yè),有可能走上程序員道路的家長們,以及本身對程序員未來心存質(zhì)疑的人們看到這一新聞之后更加焦慮,仿佛自動寫代碼的工具讓大量的程序員下崗的事情已經(jīng)板上釘釘。但事實真是如此嗎?
碼農(nóng)是程序員嗎?碼農(nóng)與真正程序員的區(qū)別
根據(jù)百度百科釋義,碼農(nóng)是一個依靠寫代碼為生的群體,表現(xiàn)在:低收入,工作時間長,這種職位只能強化職業(yè)者在單方面的技術(shù)領(lǐng)域技能。如果按照從業(yè)者們將自己自嘲為碼農(nóng)的表現(xiàn),那么碼農(nóng)的程序員分級中理應(yīng)只屬于初級程序員,是屬于依靠復(fù)制粘貼將各類代碼鏈接的IT從業(yè)者。
這個群體的數(shù)量有多少呢?大學(xué)計算機相關(guān)專業(yè)的同學(xué)們、大中專軟件專業(yè)學(xué)習(xí)者、畢業(yè)不久的程序員、廣大編程初級愛好者。這一群體龐大的數(shù)量,讓碼農(nóng)很難在IT世界中擁有不可替代的價值。
按照筆者曾經(jīng)的java老師的說法,牛逼的程序員能夠依靠經(jīng)驗和其邏輯,設(shè)計出高效地算法,更好的解決問題。對于真正的程序員(非初級程序員,也即碼農(nóng))而言,他們不僅是枚資深的碼農(nóng),還熟悉與客戶溝通的技巧,在幫助用戶解決問題的時候了解用戶的需求,進而迭代產(chǎn)品;他們可以深諳獲取用戶需求的技巧,也懂得市場分析、技術(shù)執(zhí)行分析、價值分析估算項目的風(fēng)險;他們能獨立完成項目使用文檔的能力,甚至都可以獨立完成一個項目。他們與純粹的碼農(nóng)有一個非常顯著的差異:碼農(nóng)靠體力為生,真正的程序員不僅體力行,其也靠腦力,靠思維邏輯上的突破、靠團隊管理贏得個人魅力。
自動寫代碼顛覆的是碼農(nóng) 而不是程序員
從區(qū)別中,我們不難發(fā)現(xiàn):真正的程序員與碼農(nóng)相比最大的區(qū)別就在于:真正的程序員不是完完全全的技術(shù)工人,其除卻技術(shù)高超之外,其思維邏輯上的價值,讓其不可替代性比碼農(nóng)強多了。
自動寫代碼工具,這對于大量的程序員們來說可能是福音,但對于單純的碼農(nóng)而言,帶來的卻是毀滅。微軟在其發(fā)展中,對IT編程領(lǐng)域做出的最大貢獻就在于制作了很多便捷的編程開發(fā)軟件或構(gòu)建了非常省事省力的開發(fā)環(huán)境,其中不乏有大名鼎鼎的Visual Studio和SQL server。
以筆者在學(xué)習(xí)C#之時常用的Visual Studio為例,無論你是選擇c/c++還是其他的一些編程語言,在Visual Studio的語言庫中已經(jīng)存在某一編程語言的情況下,我們通過輸入代碼的前幾位英文字母,就能快速地檢索出我們想要的代碼。因此,其實在目前的編程環(huán)境中,大量人性化的編程工具都已經(jīng)初步實現(xiàn)了主流編程語言語法的檢索,無論是美國政府的PLINY,還是微軟正在利用去年發(fā)布的插件Bing開發(fā)助理,他們想要做的事情,各大研究機構(gòu)或許已經(jīng)研究多時的。
雖然這樣的工具要實現(xiàn)準(zhǔn)確預(yù)測編碼人員將輸入的代碼,檢查語法錯誤與漏洞存在一定的難度,但這樣的工具的確有實現(xiàn)的可能,也會給人們更高效率地編程帶來很大的幫助。由此一來,備受沖擊的便是碼農(nóng)的。
一旦這樣的工具真正成型,這些工具會讓原本需要多位碼農(nóng)分功能塊而執(zhí)行的代碼,由一個碼農(nóng)也可以完成,在這個過程中,原本可能一家企業(yè)能夠養(yǎng)活5名碼農(nóng),最后只會有2名碼農(nóng)幸存。由于目前碼農(nóng)們所做的事情與真正的程序員相比,并無太大的技術(shù)含量,其被寫代碼工具顛覆的可能性非常之大。
但在程序員的發(fā)展歷程中,大家?guī)缀醵际菑拇a農(nóng)走過來的。自動寫代碼工具會淘汰大量在碼農(nóng)期間無法加強自己學(xué)習(xí)能力,加強自己不可替代價值的初級程序員,也就是我們所說的碼農(nóng)。因為自動寫工具出行的情況會讓初級程序員們感受到市場的殘酷性,在激烈的競爭中會淘汰很多困難并不適合并不樂意往程序員更高層次發(fā)展的人,也會激勵初級程序員不斷學(xué)習(xí),從而提升程序員整體的質(zhì)量水平。
因此,在自動寫代碼工具顛覆、淘汰掉一批初級程序員之后,其也會為提升程序員整體的質(zhì)量做出巨大貢獻,對程序員未來的發(fā)展有推動作用。學(xué)習(xí)能力強是高級的程序員或者優(yōu)秀的人才都具備的因素,而對于用戶需求、市場的分析能力;對項目代碼的邏輯思維掌握;能夠舍棄個人英雄主義,以團隊以項目為主;敢于創(chuàng)新敢于思考敢于學(xué)習(xí)也都是高級程序員們不可替代的一些地方。
科技的發(fā)展,往往是能有工具替代人類的體力活,而關(guān)于思維思想的工作,暫時或許并未在這些神奇工具顛覆的范疇內(nèi)。在自動寫代碼工具面前,無論是碼農(nóng)還是真正的程序員,其實更多地應(yīng)該是勉勵自己不斷學(xué)習(xí),不斷進步,而不應(yīng)該在末日還沒有來臨就對自己的未來堪憂。人類是世界上最高級的動物,大腦所具備的思維能力就是其能夠成為最高級的關(guān)鍵,在編程領(lǐng)域,或許只要人類肯學(xué)習(xí),愿意提升自己的思維能力,形成自己不可替代的價值還是有機會的。自動寫代碼顛覆的是碼農(nóng)而不是真正的程序員!(這里指學(xué)習(xí)能力不夠強、思維能力不夠強的初級程序員)