Iluzija produktivnosti: Više AI koda ne znači i bolji softver
Alati za generiranje koda ubrzavaju pisanje, ali dugoročno stvaraju tehnički dug koji će usporiti industriju.
Programiranje nikada nije bilo brže. Uz alate poput GitHuba Copilota i raznih AI asistenata, programeri danas mogu generirati stotine linija koda u samo nekoliko sekundi. Čini se kao ostvarenje sna za svakog inženjera i menadžera: isporuka značajki se ubrzava, rokovi se lakše poštuju, a osjećaj produktivnosti je na vrhuncu. Međutim, ispod te površine brzine i efikasnosti krije se tempirana bomba. Generiranje koda nije isto što i softversko inženjerstvo. Brzina kojom pišemo kod sada opasno nadmašuje našu sposobnost da taj isti kod razumijemo, održavamo i sigurno nadograđujemo.
Prevladavajuća priča
Industrijom trenutno dominira narativ o eksponencijalnom rastu produktivnosti. Smatra se da AI alati demokratiziraju programiranje, omogućavajući juniorima da rade kao seniori, a seniorima da postanu "10x inženjeri". Metrike kojima se mjeri uspjeh često se svode na količinu napisanog koda, broj riješenih zadataka u sprintu ili brzinu implementacije novih funkcionalnosti. U tom kontekstu, AI se slavi kao ultimativno rješenje za nedostatak radne snage u IT sektoru i način da se drastično srežu troškovi razvoja softvera. Ako AI može napisati boilerplate kod ili generirati cijele module brže od čovjeka, zašto bismo ikada više radili na stari način?
Zašto je ta priča pogrešna ili nepotpuna
Problem s ovom pričom je što ignorira temeljnu istinu razvoja softvera: kod se puno češće čita nego što se piše. Pravo inženjerstvo nije puko tipkanje linija teksta, već dizajniranje robusnih arhitektura, razmatranje rubnih slučajeva i održavanje sustava jasnim i upravljivim.
AI alati su izvanredni u prepoznavanju uzoraka i generiranju rješenja za izolirane probleme, ali im nedostaje širi kontekst cijelog sustava. Kod koji oni proizvedu često je sintaktički ispravan, ali arhitektonski krhak. Brzim dodavanjem takvog koda u projektne baze, stvaramo enormnu količinu tehničkog duga. Kada dođe do greške ili je potrebno napraviti kompleksnu promjenu, programeri moraju dešifrirati stotine linija koda koje nitko u timu zapravo nije sam napisao. Vrijeme ušteđeno na početnom pisanju višestruko će se izgubiti u debagiranju i refaktoriranju. Umjesto da AI smanji kognitivno opterećenje inženjera, on ga dugoročno povećava jer pretvara programere u lektore tuđeg, strojno generiranog koda.
Posljedice u stvarnom svijetu
Ako se ova iluzija nastavi, vidjet ćemo ozbiljne posljedice po IT industriju. Tvrtke koje optimiziraju isključivo za brzinu isporuke ubrzo će se suočiti s kodnim bazama koje je nemoguće održavati. Troškovi održavanja softvera će eksplodirati, a stabilnost i sigurnost aplikacija će patiti.
S druge strane, inženjeri će morati prilagoditi svoje vještine. Juniori koji se previše oslanjaju na AI od samog početka propustit će priliku razviti ključne vještine rješavanja problema i dubljeg razumijevanja sustava. Senior inženjeri će, pak, provoditi većinu svog vremena pokušavajući spasiti projekte zatrpane nekvalitetnim, AI generiranim kodom. Pobjednici u ovom novom dobu neće biti oni koji najbrže pišu kod, već oni koji ga znaju najučinkovitije čitati, strukturirati i ograničiti njegovu količinu. Softverski arhitekti i stručnjaci za refaktoriranje postat će traženiji nego ikad prije.
Završni stav
Pravi napredak u razvoju softvera ne leži u sposobnosti da generiramo više koda brže, već u sposobnosti da s manje koda postignemo više. AI alati su moćni saveznici, ali samo ako ih tretiramo kao pomoćna sredstva, a ne kao zamjenu za inženjersko razmišljanje i dizajn.
Komentar objavljen na portalu Umjetna Inteligencija Blog by ShtefAI, autor: Shtef



