1. 到 2030 年,軟件開發(fā)人員可能會被淘汰

        共 4974字,需瀏覽 10分鐘

         ·

        2021-02-01 19:42

        編者按:軟件正在蠶食世界。軟件正在滲透到虛擬和現實世界的一切——甚至包括軟件世界本身。是的,越來越多的軟件工作正在被自動化,自動化測試、自動化編程。著不僅讓人擔心,軟件到頭來會不會蠶食掉軟件開發(fā)者的崗位呢?從某種意義上來說,是的。但從另一種意義來說,不是。且看看Rhea Moutafis的分析。原文發(fā)表在Medium上,標題是Software developers might be obsolete by 2030。

        軟件開發(fā)是狗屁工作嗎?我不這么認為。

        劃重點:


        隨著越來越多的流程被自動化,軟件開發(fā)的很多工作大概會變成狗屁工作


        軟件自動化的三個層面:1)輔助軟件開發(fā) 2)封閉系統(tǒng)的自動化 3)集成系統(tǒng)的自動化

        人類的確有很多機器不擅長的特質,但是軟件開發(fā)不是光靠這些


        計算機很擅長流形的處理和規(guī)模化


        “從長遠來看,唯一重要的是對計算的利用”


        軟件開發(fā)人員這個職業(yè)在很長一段時間內依然令人興奮


        開發(fā)者要向管理的方向轉移,從極客變成領袖


        將來所有的企業(yè)都會變成軟件企業(yè),需要把軟件放在優(yōu)先的位置

        1930年,約翰·梅德·凱恩斯(John Maynard Keynes)曾做出預測,到那個世紀末,我們每周將只需要工作15小時。但是時間一直拖到了2013年,結果證明這位偉大的經濟學家顯然搞錯了。


        歡迎來到狗屁工作(Bullshit Jobs)時代,這個詞是人類學家大衛(wèi)·格雷伯(David Graeber)(編者注:《狗屁工作》的作者)的發(fā)明。自1930年代以來,全新的產業(yè)如同雨后春筍般地出現,但那些行業(yè)未必能為我們的生活增添太多的價值。Graeber大概會把軟件開發(fā)里面大多數的工作稱為狗屁工作。


        我不同意格雷伯的想法,尤其是在軟件方面。但是他確實提出了一個有趣的觀點:隨著越來越多的流程被自動化,大多數工作到了一定時候也許都會被淘汰。根據一項估計,利用當前技術可以讓45%的工作自動化。而隨著時間的流逝,情況也許會是這樣的。

        在發(fā)展日新月異的軟件開發(fā)行業(yè),你可以親眼目睹這種情況:一旦軟件測試成為熱門話題后,自動化工具便開始興起。而這只是眾多領域的其中一員——我是指軟件當中那些狗屁工作,那些重復性的耗時的工作都會被自動化掉。


        不過,這會引出一個問題,那就是開發(fā)人員開發(fā)自動化工具是不是自掘墳墓,把自己給淘汰掉了。如果越來越多的機器可以自己編寫代碼的話,那還需要人類干什么?

        從設計邏輯到設計思想


        軟件開發(fā)人員本質上是建設者。他們開發(fā)邏輯鏈接,算法,程序,項目等。關鍵是:他們開發(fā)具有邏輯性的東西。


        不過,隨著人工智能的興起,我們看到了范式正在轉移。開發(fā)人員不再設計邏輯鏈接。相反,他們正在根據這些邏輯鏈接的啟發(fā)去訓練模型。


        許多開發(fā)人員已經從構建邏輯轉變?yōu)殚_發(fā)思想。換句話說,越來越多的軟件開發(fā)人員正在從事數據科學家的活動。


        自動化的三個層面


        如果你曾經用過IDE的話,你應該知道輔助軟件開發(fā)已經發(fā)展到什么程度。一旦用慣了自動補充完成或語義代碼搜索之類的功能,你就再也離不開這些。


        這是軟件開發(fā)自動化進軍的第一個領域。當機器知道了你想實現的目標時,它們就可以幫助你完成相關過程。


        第二個領域是封閉系統(tǒng)。不妨想想社交媒體app是什么樣的:里面包含了眾多彼此鏈接在一起的不同頁面。但是,由于在設計上它不能直接跟其他的服務通信,所以屬于封閉系統(tǒng)。


        盡管用于開發(fā)此類app的技術變得越來越易于使用,但我們還不能說實現了真正的自動化。到目前為止,如果想要創(chuàng)建動態(tài)頁面,使用變量,應用安全規(guī)則或集成數據庫,你還是需要編碼。


        第三個,也是最后一個領域是集成系統(tǒng)。比方說,銀行API就是這樣的系統(tǒng),因為它是為了跟其他的服務通信而開發(fā)的。不過,目前想實現自動化的ATM集成、通信、對世界建模、深度安全性以及進行復雜的故障排除幾乎是不可能的。


        隨著時間的推移,這三個領域都取得了不同程度的發(fā)展。如今,前兩個領域已實現了自動化,不過第三個領域還沒有實現自動化。


        隨著時間的推移,這三個領域都取得了不同程度的發(fā)展。如今,前兩個領域已實現了自動化,不過第三個領域還沒有實現自動化。

        自動化的三個領域。軟件開發(fā)這條路坎坷不平,未來何時到來真的無從知曉。


        計算機眼里的世界


        在被問到將來自己會不會被機器人所取代時,人類的打工人通常不會這么認為。這一點同樣適用于軟件開發(fā)等許多其他領域。


        他們的理由很明確:創(chuàng)造力,同理心,協作,或者批判性思維,這些特質不是計算機的擅長。


        但是對于把工作完成來說,這些東西通常不是關鍵。哪怕是最復雜的項目,也會包含有很多可以自動化的一小部分。就像DeepMind科學家理查德·S·薩頓(Richard S. Sutton)所說那樣:

        “研究人員尋求利用自身掌握的本領域的人類知識,但是從長遠來看,唯一重要的是對計算的利用?!?br style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;">

        不要誤會我的意思。人的素質還是非常出色的。但是,就常規(guī)任務而言,我們一直高估了這些問題的重要性。比方說,很長一段時間以來,甚至連研究人員都認為機器永遠也沒法識別出照片上面的那些貓。


        現如今,一臺機器可以一次性地對數十億張照片進行分類,并且準確性比人類還要高。雖然機器也許欣賞不了小貓的可愛,但它在處理未定義狀態(tài)方面非常出色。這是的,就是機器眼中小貓照片的狀態(tài):未定義的狀態(tài)。


        向新流形和規(guī)?;~進


        除了處理未定義狀態(tài)以外,還有兩件事情計算機執(zhí)行要比人類更高效:首先是規(guī)?;奶幚?。其次是對新穎流形的處理。


        我們都體會過計算機規(guī)模處理的效果如何。比方說,如果你要求計算機執(zhí)行 print(” I am so stupid”) 200次,它會毫無怨言地把你的抱怨打印200次,而且不到一秒鐘就能把這件事兒干完。如果你讓人去辦,你需要等幾個小時才能完成……


        流形基本上代指的是分享一組特定屬性的空間子集(局部具有歐幾里得空間性質的空間),是一種用數學表示的復雜形式。比方說,如果你拿出一張紙,那它就是在三維空間里面的二維流形。如果把紙張弄皺,或者把它折疊到平面上,它仍然是流形。


        事實證明,計算機確實很擅長處理人類難以可視化的流形,比方說,因為它們可以延伸到20維,或具有大量復雜的彎折和邊。由于很多的日常問題(比方說人類的語言或計算機代碼)都可以用數學流形表示,所以未來有很大的潛力可以部署真正有效的產品。

        新穎流形與可伸縮性的圖示。自動化的區(qū)域位于左下角。


        關于計算機可伸縮性以及對新穎流形的探索我們目前所處的位置。我們目前正在研究區(qū)域一和區(qū)域二,但區(qū)域三幾乎還沒有觸及。


        現狀目前的進展


        似乎開發(fā)人員已經在運用了很多的自動化。不過這只是因為我們正好處于軟件自動化的風口浪尖而已。到目前為止,對集成系統(tǒng)進行自動化幾乎是不可能的。但是其他領域已經在自動化。


        一方面,代碼評審和調試可能很快就會變成過去的遺跡。瑞士公司DeepCode正在開發(fā)一種用于自動識別錯誤的工具。Google的DeepMind已經可以針對原有代碼推薦更優(yōu)雅的解決方案。Facebook的Aroma可以自行自動完成小型的程序。


        此外,機器推斷代碼相似性系統(tǒng)(Machine Inferred Code Similarity System,簡稱MISIM)據說可以像Alexa或Siri能理解人類語言那樣去理解計算機代碼。有一點令人興奮,那就是這樣的系統(tǒng)可以讓開發(fā)人員把常見且耗時的任務自動化掉,比方說把代碼推送到云端或者實施合規(guī)性流程。


        令人興奮的曙光


        到目前為止,所有這些自動化在用到小型項目上的時候都可以很好地工作,但在面對較復雜的項目時卻基本不管用。比方說,錯誤識別軟件仍然會返回很多的誤報,而且如果項目有一個非常新穎的目標的話,自動完成功能就不起作用了。


        由于MISIM出現的時間還不長,所以對這種自動化下定論還為時尚早。不過,需要牢記的是,這只是開始,而且這些工具有望在將來變得越來越強大。


        即將推出的應用


        這些新型的自動化會有一批早期應用。其中可能包括對人類活動的跟蹤。當然,這并不意味著那就是間諜軟件。相反,類似安排工人的工作時間或者給學生定制課程之類的事情可以通過這種方式來予以優(yōu)化。


        這本身就是一個巨大的經濟機會,因為學生可以更快地學習到重要的東西,而工人可以在他們正好更有效率的時間干活。


        如果MISIM的表現就像它的承諾一樣好的話,那也可以用來重寫遺留代碼。比方說,很多銀行和政府軟件都是用COBOL編寫的,這種股東語言學校今天幾乎已經不教了。把這些代碼轉換成更新的語言也會讓維護變得更加容易。


        軟件開發(fā)人員這個職業(yè)在很長一段時間內依然令人興奮。


        開發(fā)人員和公司如何才能立于不敗之地


        所有這些新應用的確令人興奮。但在它們的頭上,一把達摩克利斯之劍正在鑄就:如果競爭對手在你趕上前就利用了這些自動化技術的話,該怎么辦?如果它們導致開發(fā)人員變得完全過時了,又該怎么辦?


        要對持續(xù)交付和自動化測試進行投資


        這無疑是自動化世界里面的兩個熱詞。但是不管怎樣,這兩個東西仍然很重要。


        如果你不對軟件進行測試就發(fā)布出去的話,可能會損害用戶體驗,或者在將來遇到安全問題。經驗表明,自動化測試能夠涵蓋測試人員甚至都沒有想到但是卻可能非常關鍵的用例。


        也有越來越多的團隊加入到持續(xù)交付的實踐,這是有充分的理由的。當你捆綁了很多的功能,而卻要每三個月才發(fā)布一次更新的話,在接下來的幾個月的時間往往就得用來修復在此過程中出現的所有問題。這種做法不僅阻礙了軟件的快速開發(fā),而且還損害了用戶體驗。


        測試有大量的自動化軟件,而持續(xù)交付有版本控制(以及眾多的其他框架)。在大多數情況下,購買這些自動化解決方案似乎要比自己開發(fā)更好些。畢竟,你的開發(fā)人員招進來是要開發(fā)新項目的,不是把無聊的任務自動化掉。


        如果你是經理,要把買這些東西當作是一筆投資。這樣以來,你就可以為開發(fā)人員提供最好的支持,因為你可以讓他們發(fā)揮自己真正擅長的東西。


        向左移:讓開發(fā)者參與到每一個項目的早期階段


        項目一般是高層或者接近研發(fā)團隊的某個地方創(chuàng)建,然后再層層傳遞到開發(fā)團隊的,到了這個時候開發(fā)團隊采取負責把這個項目的想法變成現實。


        但是,由于并不是每一位項目經理都是經驗豐富的軟件工程師,所以項目一部分可能是由開發(fā)團隊實施,而有的要么是成本太高,要么就是幾乎不可能由自己實現的。


        在過去,這種做法有它的合理性。但是,鑒于軟件開發(fā)大量單調乏味的部分被自動化,開發(fā)人員將有機會變得越來越有創(chuàng)造性。

        這是一個讓開發(fā)者抽身出去的極好機會,那就是讓他們參與到項目的計劃階段。這不僅是因為他們知道哪些可以實現,哪些不能。而且憑借他們的創(chuàng)造力,他們可能會以你想象不到的方式為項目增加價值。


        把軟件放在首位


        現在距里微軟的薩蒂亞·納德拉(Satya Nadella)宣布“每一家企業(yè)都會變成軟件企業(yè)”已經過去了五年。結果證明,他是對的。


        開發(fā)人員不僅應該向管理的方向左傾。軟件的優(yōu)先地位也應該提升。


        如果說當前的這場疫情能讓你學到些什么的話,那就是現在很多的生活以及價值創(chuàng)造都發(fā)生在網上。


        軟件為王。但自相矛盾的是,自動化的程度越高,這一點就越明顯。


        自動化讓軟件極客變成領袖。


        總結:極客正在變成領袖


        我上學那時候,喜歡計算機的人王婉被認為是不善交際的孩子,是書呆子,怪胎,跟大家不一樣的生物,是缺乏人類情感和激情的,像僵尸一樣的動物。其實真希望我這是在夸大其詞。


        不過,時間越久,就會有越多的人看到開發(fā)人員的另一面。寫代碼的不再被看作是書呆子,而是可以做出很酷的東西的聰明人。


        自動化程度越高,軟件的獲得的權力就越大。從這個意義上來說,你對開發(fā)者由于自動化而失去工作的擔心是沒有根據的。


        當然,在十年之內——甚至在幾個月內——你也許就要做你現在甚至無法想象的事情了。但這并不意味著你的工作將會消失。不會的,相反,它會升級。


        你真正需要克服的恐懼并不是你可能會失業(yè)。你需要擺脫的是對未知的恐懼。

        開發(fā)者們,你不會被淘汰。你只是再也不會是書呆子了。相反,你會成為領導者。


        版權申明:內容來源網絡,版權歸原創(chuàng)者所有。除非無法確認,我們都會標明作者及出處,如有侵權煩請告知,我們會立即刪除并表示歉意。謝謝!





        感謝閱讀



        瀏覽 61
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
          
          

            1. 理论片高清免费理伦片 | 国产福利网站 | 性XXXX丰满孕妇XXXX另类 | AV性爱网站 | 亚洲性爱片|