Linux中國

當 AI 學會編程,程序員的未來真的只能寫 Bug了嘛?

二十多年前,我剛剛接觸計算機時,那時候覺得編程真是一件神奇的事情,居然可以操作屏幕上神奇的字元!要說我自己的第一個編程「作品」,那可能是試圖在 286 PC 的黑白顯示器繪製一個鋼琴鍵盤,並可以響應按鍵發出不同頻率的蜂鳴聲 —— 是的,那時候還沒有音效卡,只有開機時會「滴」一下的揚聲器。雖然這個簡陋的嘗試並沒有完成,但卻給了我極大的樂趣,也開啟了我的編程生涯。

從《代碼大全》 到 StackOverflow 大師

後來,當我在北京找到第一份工作時,學會了 Perl 語言,編寫了我的第一個 CGI 程序(互動網頁),編程於是成為了我吃飯的本領。

上世紀末,互聯網剛剛在國內興起,人們編程時所能求助的外援,大多是各種語言手冊、類庫大全等書籍。這其中有一本著名的大部頭被很多程序員置於案頭,它就是《代碼大全》,這本書裡面提供了很多有用的、精妙的編程示例和技巧。往往在遇到編程難點時,程序員們可以「複製」書中的一些最佳實踐來解決。

隨著互聯網的普及,逐漸出現了 Stack Overflow 之類的編程類問答網站。程序員們驚喜的發現,原來很多困擾自己的編程難題都可以在網上找到答案,且點贊數較高的代碼示例比自己寫的還要好。於是乎,很多「程序員」變成了「谷歌程序員」/「百度程序員」,搜索、複製,然後粘貼就好了。以至於,StackOverflow 在某年愚人節的 惡作劇 說,它將限制對其網站的免費訪問,除非人們購買「鑰匙」:一個帶有「打開 Stack Overflow」、「複製」和「粘貼」的按鈕的設備,算是對這種直接複製、粘貼的做法表達了一種冷幽默。最有趣的是,居然有熱心網友聯合鍵盤定製廠商,真將這塊特別的鍵盤定製出來了,並以 29 美元出售。

程序員們是否越來越成為一種熟練工?

隨著寫的代碼越來越多,這種有趣但有時候又很枯燥的重複工作,讓我想過什麼時候可以有個會編程的程序就好了。

在做過很多編程工作之後,我發現,編程很多時候就是一種常式和模式的重複應用。無論是 C 或 Java 語言,還是 JavaScript、Python 語言,都有龐大無比的類庫、常式庫。很多時候,你花費了很長的時間,只是為了找到合適的類庫和它的用法罷了。至於說自己創造的代碼,不過是將其粘合起來的膠水而已。

似乎程序員的「創造性工作」,越來越淪落為快餐店配餐員工一樣的地步:根據「下單」,去選擇合適的「餐品」,組合搭配之後,放上「餐盤」,送給「顧客」,然後時不時還會被「顧客」討要一些忘記附送的「餐巾紙」之類的。當這種熟練工的工作逐漸被產品經理等非技術人員識破後,程序員們經常會被嘲笑為「寫 Bug的」。

人工智慧編程步入實用

這還不夠,程序員們甚至連這種複製、粘貼的熟練工作都嫌麻煩,於是一些聰明的程序員們就將眼光放在了近些年大熱的人工智慧上了。既然現在人工智慧已經「無所不能」了,何不請人工智慧來編程呢?

對於這一倡議,「光頭老闆們」表示非常歡迎,這樣就再也不用招聘昂貴的程序員了,也不用伺候那些程序員們的怪癖了 —— 比如要麼鍵盤敲得飛起,要麼半小時才按幾個按鍵;比如晴天不編程,雨天不編程,心情不好不編程,心情好也不編程 …… 玩笑之餘,程序員們看起來已經快沒有這種好日子了。

GitHub,對,就是那個被微軟收購了的「全球最大的同性交友社區」,他們手握世界上最大的編程代碼庫,於是就用它訓練出來了一個會編程的人工智慧 —— Copilot。不要誤會,Copilot 不是 「Copy Lot」 的意思,是指「副駕駛」。

在 Copilot 橫空出世後,拋開業界對它的許可證問題等道德批評之外,據使用過的人說,「真乃神器也」。你可以簡單地描述你要做的事情,它就可以從它龐大的代碼庫中給出一段你需要的代碼,稍加修改甚至無需修改就能直接使用。於是,你看到了,一群程序員,在輸入幾行字之後,他的 IDE 就馬上給出一大段的代碼,然後他再這裡點點那裡按按,假模假式地修改一番,就完成了一個功能。

甚至,聰明的程序員們發現,他們不但可以讓人工智慧寫代碼,而且開發規範所要求的代碼注釋也是現成的。如果不是用那段寫給人工智慧的文字做注釋的話,你還可以讓人工智慧幫你注釋那些蹩腳的代碼。

好吧,程序員還需要幹什麼?只需要按按鈕嗎?

不止如此,現在的人工智慧,除了替你編程之外,還能自己訓練模型了。對,你沒看錯,人工智慧可以自己訓練 AI 模型了,這是要進化了嘛?

程序員怎麼辦?寫 Bug 嗎?

怎麼樣,是不是感覺自己當年選計算機專業有點明珠暗投的意思了?現在人工智慧這麼厲害,不僅僅一些傳統的依賴人工完成的工作會被人工智慧取代,連我們程序員們都面臨著失業的風險了。

當然不,其實,至少在目前來看,人工智慧還只能是「人工」智能,遠沒有到全面取代程序員的程度。但是,一些比較簡單的、形成模式的編程工作,肯定會被逐漸優化,這一點可以從「低代碼」再次流行起來可見一斑。

作為創造程序的人,如果你不想被另外一段程序取代你的工作,只有掌握創造的能力,才不會被淘汰。反而,你可以利用人工智慧提升自己的編程水平和效率。

所以,道路很清楚了,在這個人工智慧大行其道的時代,你想繼續呆在空調房,坐在人體工學的椅子上,手擁若干大顯示屏,揮斥方遒嗎?只有一條路,做人工智慧做不了的事情,掌握人工智慧,讓它為你所用。

好了,圖窮匕見了,這篇文章就是一篇軟文,是來勸你抓緊投身人工智慧的!

如何,感興趣嗎?

.

.

.

好,我看到你的興趣了。不過我知道你還有點疑慮,比如學習人工智慧技術是不是很難?是不是需要很多資源(比如訓練模型時)?是否有人可以指導你?是否有更多同好可以一起前進呢?

正好,現在有個絕佳的機會。華為最近在全國舉辦「2022 年昇騰 AI 創新大賽」,除了高達千萬元的豐厚獎金(為什麼我要先說這個),還有遍布全國的各個分賽點,以及參賽過程的全程輔導。當然,你需要做好邁上人工智慧這條賽道的充分準備了。

這場大賽是面向人工智慧開發者打造的頂級賽事,旨在鼓勵全產業開發者基於昇騰計算技術,共同打造軟/硬體解決方案、探索模型演算法,加速人工智慧與行業融合,促進開發者能力提升。

整個賽程長達半年,在我看來,無論你是初窺人工智慧門徑的初學者,亦或是具有豐富經驗的編程大佬,這段時間都足夠你打磨出一款不錯的作品。說不定這次大賽的幾十萬大獎就是你的啦!

整個比賽分為應用賽道與昇思賽道兩個部分,大家可以「組隊打怪」:

  • 對於企業、高校或科研機構的團隊,可以開發基於昇騰軟硬體平台的解決方案。基於昇騰全棧 AI 軟硬體平台(包含 Atlas 系列硬體、異構計算架構 CANN、AI 框架昇思 MindSpore、應用使能 MindX 等)開放命題,圍繞人工智慧深度學習技術,探索有具體落地的創新方案。從區域賽晉級的隊伍還能參與全國賽獎金的角逐,全國賽最高獎金可達 20 萬,贏取雙份獎金!
  • 對於個人開發者(或團隊)可以參與昇思賽道的比賽。賽題包括 20 道論文復現賽題與 10 道前沿課題任務。選手完成論文復現或者創新挑戰的成果將在昇思社區與啟智社區進行開源,賦能更多開發者。

具體的情況,請參考 《昇騰 AI 創新大賽》官網或以下海報:


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國