別再用「代碼量」衡量產(chǎn)出了!GitHub發(fā)布調(diào)研報(bào)告:92%開發(fā)者都在用AI工具寫代碼
編程不僅僅是編寫和發(fā)布代碼,還需要熟練使用諸多開發(fā)工具來進(jìn)行版本控制、團(tuán)隊(duì)協(xié)作、配置環(huán)境等。
而隨著GitHub Copilot和ChatGPT類大語言模型的發(fā)布,編程這件事究竟是變難了(需要學(xué)習(xí)一個(gè)新AI工具),還是變簡單了(讓AI輔助編程)?
最近,GiHub展開了一項(xiàng)關(guān)于「AI對開發(fā)者體驗(yàn)影響」的調(diào)查,有500名美國企業(yè)開發(fā)人員參與了調(diào)研報(bào)告,主要關(guān)注AI工具在生產(chǎn)力、團(tuán)隊(duì)協(xié)作,以及如何在工作環(huán)境中發(fā)揮最大作用等方面的影響。
調(diào)查結(jié)果發(fā)現(xiàn):
1. 92%的美國開發(fā)人員在工作內(nèi)和工作外都會(huì)使用AI編程工具,并且70%的程序員認(rèn)為人工智能可以帶來效率的提升。
2. 構(gòu)建和測試中的等待問題仍然嚴(yán)重。
盡管在DevOps上,全行業(yè)都在積極投資和開發(fā),不過開發(fā)人員仍然表示,除了編寫代碼之外,在工作中做的最耗時(shí)的事情是等待構(gòu)建和測試。
3. 開發(fā)者需要更多的合作。
企業(yè)環(huán)境中的開發(fā)人員平均需要與21名工程師一起工作,他們希望協(xié)作成為績效評估的首要指標(biāo)。
4. 開發(fā)者認(rèn)為AI會(huì)有所幫助,超過五分之四的開發(fā)人員希望AI編碼工具能讓開發(fā)團(tuán)隊(duì)更具協(xié)作性。
5. 開發(fā)人員也看到了AI帶來的巨大優(yōu)勢。
70%的受訪者表示,希望AI編碼工具可以幫助提高代碼質(zhì)量、縮短完成時(shí)間和解決事故。
GitHub首席產(chǎn)品官Inbal Shani表示,「工程領(lǐng)導(dǎo)者需要思考,代碼量是否仍然是衡量生產(chǎn)力和產(chǎn)出的最佳方式。」
答案顯然是否定的。
Inbal Shani認(rèn)為,「大規(guī)模的創(chuàng)新就是通過提高開發(fā)人員的生產(chǎn)力和滿意度,并使開發(fā)者能夠每天都做最好的工作?!?/span>
根據(jù)調(diào)查,開發(fā)人員希望提高技能、設(shè)計(jì)解決方案,從最終用戶那里獲得反饋,并對團(tuán)隊(duì)溝通技巧進(jìn)行評估。
換句話說,用AI生成代碼是達(dá)到目的的手段,而不是目的本身。
用AI提升績效
從調(diào)查結(jié)果來看,幾乎所有(92%)的開發(fā)人員都會(huì)在工作中使用AI編碼工具,大多數(shù)(67%)開發(fā)者在工作環(huán)境和個(gè)人時(shí)間中都使用過,不過還有6%的開發(fā)人員表示他們只在工作之外使用編碼輔助工具。
超過70%的開發(fā)者表示,AI輔助編程已經(jīng)改變了開發(fā)人員處理日常工作的方式,這一趨勢也迫使項(xiàng)目領(lǐng)導(dǎo)人不得不采購企業(yè)級AI工具以避免開發(fā)人員使用未經(jīng)批準(zhǔn)的輔助工具。
不過,企業(yè)也應(yīng)該建立使用人工智能工具的管理標(biāo)準(zhǔn),以確保輔助工具的用途符合道德規(guī)范并且高效率。
用AI=高績效
越來越多的開發(fā)人員開始在工作中使用AI工具,調(diào)查結(jié)果表明,開發(fā)者不僅僅只是出于好奇或無聊的興趣,而是認(rèn)定AI編碼工具可以幫助提升效率。
開發(fā)人員表示,AI編碼工具可以滿足現(xiàn)有的性能標(biāo)準(zhǔn)、提高代碼質(zhì)量、更快地輸出代碼,而且生產(chǎn)級事故也會(huì)更少,這些指標(biāo)也應(yīng)該用來衡量代碼量以外的績效。
開發(fā)人員普遍認(rèn)為人工智能編碼工具將融入他們現(xiàn)有的工作流程并帶來更高的效率,但他們不認(rèn)為人工智能會(huì)改變軟件的制作方式
大約三分之一的開發(fā)人員報(bào)告說,部門經(jīng)理目前會(huì)根據(jù)編寫的代碼量來評估績效,而使用AI可以更快地編寫更多的代碼,不過需要注意的是,開發(fā)者的代碼量可能并不一定與其業(yè)務(wù)價(jià)值相對應(yīng)。
隨著軟件開發(fā)中使用的人工智能工具的增加,代碼量也會(huì)飛速增長,項(xiàng)目領(lǐng)導(dǎo)者需要思考「代碼量」是否仍然是衡量生產(chǎn)率和輸出的最佳方法。
AI促進(jìn)團(tuán)隊(duì)協(xié)作
除了提高個(gè)人表現(xiàn)外,超過五分之四(81%)的受訪開發(fā)人員表示,AI編碼工具將有助于提高團(tuán)隊(duì)和組織內(nèi)部的協(xié)作。
事實(shí)上,安全審查、項(xiàng)目規(guī)劃和結(jié)對編程都需要開發(fā)者之間的協(xié)作,也是開發(fā)團(tuán)隊(duì)期望并且應(yīng)該在AI編碼工具的幫助下完成的任務(wù),調(diào)查結(jié)果也表明,代碼和安全審查仍然很重要。
值得注意的是,開發(fā)人員認(rèn)為使用AI編碼工具可以讓他們有更多時(shí)間專注于解決方案設(shè)計(jì),對于開發(fā)團(tuán)隊(duì)來說也有益處,意味著開發(fā)人員會(huì)花更多的時(shí)間用AI設(shè)計(jì)新功能和產(chǎn)品,而非編寫模版代碼。
開發(fā)人員已經(jīng)在使用生成式AI編碼工具來自動(dòng)化他們的部分工作流程,為安全審查、項(xiàng)目規(guī)劃和結(jié)對編程等更多協(xié)作項(xiàng)目騰出了時(shí)間。
用AI防止員工倦怠
根據(jù)調(diào)研中開發(fā)人員的說法,AI編碼工具不僅可以幫助提高整體生產(chǎn)力,還可以提供提升技能的機(jī)會(huì),幫助打造更聰明的員工隊(duì)伍。
其中57%的開發(fā)人員認(rèn)為AI編程工具可以幫助他們提高編程語言技能,也是最直接、最大的受益點(diǎn)。
開發(fā)人員一直將「學(xué)習(xí)新技能」列為讓工作更積極的頭等大事,但也有30%的人表示,學(xué)習(xí)和開發(fā)會(huì)對他們的整天工作產(chǎn)生負(fù)面影響,可能會(huì)在工作日內(nèi)增加工作量。
41%的開發(fā)者認(rèn)為AI工具也可以幫助減少認(rèn)知上的負(fù)擔(dān),因?yàn)槿说木Χ际怯邢薜模斓赝瓿晒ぷ骺梢詼p少倦怠感。
在之前的一份研究中,高達(dá)87%的開發(fā)者認(rèn)為GitHub Copilot可以幫助完成重復(fù)性任務(wù),保留腦力,可以專注于解決軟件開發(fā)中更具挑戰(zhàn)性和創(chuàng)新性的工作。
AI正在全面改善開發(fā)者體驗(yàn)
在調(diào)查中,開發(fā)人員表示,使用AI編碼工具可以更好地滿足代碼質(zhì)量、完成時(shí)間和事故等標(biāo)準(zhǔn),這些也是開發(fā)人員自認(rèn)為關(guān)鍵的代碼評估指標(biāo)。
AI編碼工具還可以幫助降低編碼錯(cuò)誤的可能性并提高代碼的準(zhǔn)確性,最終為用戶帶來更可靠的軟件、更高的應(yīng)用程序性能,以及讓開發(fā)者取得更好的績效指標(biāo)。
隨著人工智能技術(shù)的不斷進(jìn)步,這些編碼工具很可能會(huì)對開發(fā)人員的績效和技能提升產(chǎn)生更大的影響。
AI編碼工具正在分層到現(xiàn)有的開發(fā)人員工作流程中,并創(chuàng)造更高的效率。
開發(fā)人員認(rèn)為AI編碼工具可以提高生產(chǎn)力,但他們并不認(rèn)為AI工具會(huì)從根本上改變軟件開發(fā)的生命周期。
自動(dòng)化和人工智能的使用已經(jīng)成為開發(fā)人員工作流程的一部分,目前已經(jīng)有諸如基于機(jī)器學(xué)習(xí)的安全檢查和CI/CD管道等工具,但這些工具并沒有改變操作,而是通過提高效率,為開發(fā)者騰出了更多時(shí)間專注于開發(fā)解決方案。
除了探索人工智能工具外,工程和商業(yè)領(lǐng)導(dǎo)者還應(yīng)該考慮以下三個(gè)要點(diǎn)來改善開發(fā)人員體驗(yàn):
1. 使用工具、流程和實(shí)踐幫助開發(fā)者流暢工作以提高生產(chǎn)力、推動(dòng)影響力,并進(jìn)行創(chuàng)造性和有意義的工作。
2. 打破組織孤島,為開發(fā)人員提供有效溝通的機(jī)會(huì)來增強(qiáng)協(xié)作。
3. 對人工智能工具進(jìn)行投資,預(yù)留出給開發(fā)人員提升技能的時(shí)間和空間,可以幫助公司布局未來,提前進(jìn)行實(shí)驗(yàn)和技術(shù)創(chuàng)新。