Analiza4 min čitanja

Stvarnost programiranja s AI alatima: Marketing nasuprot praksi

Kratki osvrt na to kako se stvarni proces razvoja softvera uz pomoć AI alata razlikuje od marketinških obećanja o potpunoj automatizaciji.

S

Autor

Shtef

Objavljeno

Programer gleda u kod uz pomoć umjetne inteligencije

Stvarnost programiranja s AI alatima: Marketing nasuprot praksi

Od obećanja potpune automatizacije do realnosti u kojoj programeri postaju urednici koda s novim izazovima

Svaki put kada otvorimo društvene mreže ili pročitamo tehnološke portale, bombardirani smo naslovima o tome kako će umjetna inteligencija u potpunosti zamijeniti programere u sljedećih nekoliko godina. Videozapisi u kojima netko upiše jednu rečenicu, a sustav izbaci gotovu web aplikaciju, skupljaju milijune pregleda. Čini se kao da smo na pragu ere u kojoj će tradicionalno pisanje koda postati stvar prošlosti, slično kao što su ručne telefonske centrale postale muzejski izlošci. Međutim, ako pitate inženjere koji svakodnevno koriste alate poput GitHub Copilota ili ChatGPT-a u složenim produkcijskim sustavima, dobit ćete potpuno drugačiju, znatno nijansiraniju sliku. Stvarnost programiranja s AI alatima nije ni izbliza onako jednostavna kako to sugeriraju uglancane marketinške prezentacije velikih tehnoloških tvrtki. Umjesto da brišu potrebu za ljudskim znanjem, ovi alati zapravo radikalno mijenjaju prirodu inženjerskog posla. Programeri više nisu prvenstveno pisci koda, već postaju strogi urednici i arhitekti koji moraju pažljivo nadzirati svaki redak generiranog teksta. U tom procesu, stari problemi poput tipfelera ustupaju mjesto novim, opasnijim izazovima poput suptilnih logičkih grešaka, sigurnosnih propusta i brzog propadanja kvalitete baze koda zbog prevelikog oslanjanja na automatizaciju.

Prevladavajuća priča

Marketinški narativ koji prodaju tehnološki divovi i startupovi vrlo je jasan: umjetna inteligencija je tu da preuzme teret razvoja softvera. Prema toj priči, dovoljno je imati osnovnu ideju, zatražiti od AI asistenta da je realizira, a on će izbaciti besprijekoran, optimiziran kod koji odmah možemo poslati u produkciju. Ovaj narativ sugerira da će prepreka ulasku u svijet softverskog inženjerstva potpuno nestati. Menadžeri trljaju ruke zamišljajući kako će smanjiti troškove razvoja, ubrzati izbacivanje novih značajki na tržište i osloboditi se ovisnosti o skupim, teško dostupnim stručnjacima za kodiranje. Startup osnivači s ograničenim tehničkim znanjem vjeruju da im više ne trebaju suosnivači tehničke struke; dovoljno je kupiti mjesečnu pretplatu na najnoviji jezični model i aplikacija će se praktički napisati sama. Taj entuzijazam dodatno podgrijavaju impresivni demo primjeri u kojima AI alati za nekoliko sekundi izrade jednostavnu igricu ili osnovnu web stranicu. Stvara se dojam da je jedina vještina koja će nam u budućnosti trebati - sposobnost postavljanja pravih pitanja na engleskom jeziku, odnosno vještina takozvanog "prompt inženjeringa". Ideja je da umjetna inteligencija savršeno razumije naše namjere i pretvara ih u savršenu logiku.

Zašto je ta priča pogrešna ili nepotpuna

Problem s tom prevladavajućom pričom leži u činjenici da se softversko inženjerstvo ne svodi na jednostavno štancanje linija koda iz praznog dokumenta. Pisanje prvih nekoliko stotina linija za novu, izoliranu aplikaciju zaista jest zadatak u kojem AI alati briljiraju. No, pravi razvoj softvera događa se u golemim, prljavim i povijesno opterećenim sustavima. Većina programera danas ne započinje projekte od nule, već održava, nadograđuje i pokušava shvatiti baze koda koje su stare godinama, a ponekad i desetljećima. Tu su međusobno povezane ovisnosti, specifična poslovna logika, sigurnosna ograničenja i bizarne arhitektonske odluke bivših zaposlenika.

Kada AI alatu date zadatak da promijeni ponašanje unutar takvog kompleksnog sustava, on često gubi kontekst. Veliki jezični modeli skloni su "haluciniranju" – izmišljanju funkcija koje ne postoje u vašoj biblioteci ili pozivanju starih, nesigurnih verzija API-ja na kojima su trenirani. Sposobnost alata da ispljune stotine linija naoko ispravnog koda u sekundi stvara iluziju napretka. Ako programer ne razumije detaljno što taj kod radi, vrlo lako će propustiti suptilne pogreške koje se neće pojaviti tijekom osnovnog testiranja, ali će srušiti sustav kada aplikacija dospije do stvarnih korisnika pod pravim opterećenjem.

Zapravo, ono što se događa je suštinska promjena paradigme: pomak od stvaranja prema čitanju. Čitanje i razumijevanje tuđeg koda – pa bio on i generiran od strane stroja – znatno je teže i kognitivno zahtjevnije od pisanja vlastitog. Programeri danas provode više vremena pregledavajući, ispravljajući i prilagođavajući AI prijedloge nego što bi im nekada trebalo da sami u miru napišu to rješenje. Ako slijepo prihvaćaju sve što im alat ponudi, kvaliteta koda brzo se srozava. Nastaje takozvani "špageti kod" pun nepotrebnih apstrakcija, kompliciranih struktura i mrtvih grana, što dugoročno jako otežava održavanje i usporava cijeli tim programera koji moraju preuzeti taj projekt u budućnosti. Uređivanje takvog koda postaje poput popravljanja lošeg prijevoda; lakše bi bilo napisati iznova nego popravljati sve sitne nelogičnosti.

Posljedice u stvarnom svijetu

Ovakva stvarnost donosi ozbiljne posljedice za cjelokupnu tehnološku industriju. Prva je paradoksalno povećanje, a ne smanjenje, potražnje za vrhunskim i iskusnim inženjerima. Kako AI alati omogućuju juniorima i početnicima da brže stvaraju neusporedivo veće količine koda, netko mora taj ogromni volumen novog koda provjeriti, testirati, sigurno integrirati i na kraju popraviti kada stvari krenu po zlu. Iskusni arhitekti sustava i inženjeri seniori postaju još važniji jer samo oni mogu sagledati širu sliku, predvidjeti arhitektonska uska grla i spriječiti da se baza koda pretvori u nepopravljivi kaos. Oni su brana između sirovog AI izlaza i pouzdanog sustava.

S druge strane, početnici u programiranju nalaze se u velikoj opasnosti. Preskakanje učenja osnovnih temelja i usvajanje programiranja isključivo kroz "kopiranje i lijepljenje" rješenja koje je generirala umjetna inteligencija stvara generaciju inženjera kojima nedostaje dubinsko razumijevanje kako računala, mreže i baze podataka zapravo funkcioniraju. Kada se suoče s jedinstvenim problemom u produkciji koji AI ne može riješiti jer zahtijeva specifično pozadinsko znanje o arhitekturi sustava, takvi se inženjeri nađu pred nepremostivim zidom. Nedostaju im alati za duboko otklanjanje pogrešaka i logičko razmišljanje koje se tradicionalno gradilo godinama rješavanja sitnih, frustrirajućih bugova.

Posljedice za tvrtke su također vrlo značajne. Iako u početku mogu primijetiti snažno ubrzanje u brzini isporuke novih značajki, dugoročno se suočavaju sa skrivenim tehničkim dugom. Kod generiran na brzinu i bez dubokog razumijevanja postat će prava noćna mora za održavanje za samo godinu ili dvije. Troškovi popravka takvih sustava mogli bi znatno premašiti uštede ostvarene u početnoj fazi razvoja. Sigurnosni propusti su poseban i gorući rizik; AI modeli su naučili programirati prvenstveno na temelju ogromnih količina javnog koda dostupnog na internetu, a javna je tajna da dobar dio tog koda sadrži ozbiljne sigurnosne ranjivosti. Bez rigoroznih ljudskih provjera i revizija, tvrtke ugrađuju te iste ranjivosti izravno u svoje vlastite kritične poslovne sustave.

Završni stav

Umjetna inteligencija u programiranju apsolutno nije čarobni štapić koji će preko noći obrisati potrebu za ljudskim razumijevanjem softvera. To je samo nevjerojatno moćan alat koji od inženjera zahtijeva iznimnu razinu discipline pri svakodnevnom korištenju. Umjesto da u potpunosti zamijene ljude za tipkovnicom, ovi alati sada izravno testiraju našu sposobnost da preuzmemo odgovornu ulogu strogih, beskompromisnih urednika. Pravi izazov bliske budućnosti neće biti pitanje kako napisati neku aplikaciju brže, već kako održavati i upravljati ogromnom kompleksnošću koju taj nevjerojatno brzo generirani kod neminovno stvara. Kompanije i programeri koji prvi shvate da umjetna inteligencija nije zamjena za dubinsko tehničko znanje i promišljanje, već snažno pojačalo koje jednako naglašava i dobre i izrazito loše inženjerske prakse, bit će oni koji će zaista ostvariti konkurentsku prednost i uspjeti u ovoj novoj, uzbudljivoj eri softverskog inženjerstva.


Komentar objavljen na portalu Umjetna Inteligencija Blog by ShtefAI, autor: Shtef

Povezano

Pročitajte i ovo

Još nekoliko objava koje šire kontekst oko tema, kompanija i AI trendova iz ove priče.

Ilustracija AI agenata i poslovne primjene
Analiza

AI agenti u 2026. godini: Od velikih obećanja do stvarne primjene

Analiza zašto općenamjenski AI agenti još uvijek nisu spremni za poslovnu primjenu. Prava vrijednost dolazi iz usko specijaliziranih alata pod ljudskim nadzorom.

Ilustracija tehnološkog balona i stabilizacije industrije umjetne inteligencije
Analiza

Generativna umjetna inteligencija: Kraj balona ili novi početak?

Zašto je trenutno usporavanje AI industrije zapravo najbolja stvar koja se mogla dogoditi tržištu i korisnicima.

Ilustracija zdravstvenih podataka integriranih u ChatGPT sučelje
AI vijesti

OpenAI lansirao Health integraciju unutar ChatGPT-a

OpenAI je za korisnike u SAD-u uveo značajku Health u ChatGPT koja omogućuje sigurno povezivanje Apple Healtha i medicinskih kartona za personalizirane savjete.