Analiza4 min čitanja

Iluzija AI asistenata: Više ispravljamo nego što programiramo

Marketinška obećanja o autonomnom programiranju sudaraju se sa stvarnošću u kojoj inženjeri postaju lektori za kod.

S

Autor

Shtef

Objavljeno

Ilustracija uz članak: Iluzija AI asistenata: Više ispravljamo nego što programiramo

Iluzija AI asistenata: Više ispravljamo nego što programiramo

Marketinška obećanja o autonomnom programiranju sudaraju se sa stvarnošću u kojoj inženjeri postaju lektori za kod.

Svakog tjedna slušamo o novim alatima temeljenim na umjetnoj inteligenciji koji će navodno u potpunosti zamijeniti softverske inženjere. Demo prikazi izgledaju impresivno: napišete jednu rečenicu, a sustav u nekoliko sekundi generira stotine linija koda za složenu web aplikaciju. Obećanje je jasno – programiranje postaje relikt prošlosti, a svatko s osnovnom idejom može postati kreator digitalnih proizvoda. Međutim, stvarni rad na kompleksnim sustavima otkriva sasvim drugačiju sliku. Umjesto da nas oslobodi tehničkih detalja, umjetna inteligencija nas sve više pretvara u umorne lektore koji moraju provjeravati svaku generiranu riječ, svaki poziv funkcije i svaku logičku petlju.

Prevladavajuća priča

Prevladavajući narativ u tehnološkoj industriji tvrdi da su veliki jezični modeli revolucionirali proces razvoja softvera do te mjere da tradicionalno programiranje više nije potrebno. Prema toj priči, razni AI asistenti ubrzavaju radni proces za desetke ili čak stotine puta. Investitori i menadžeri vjeruju da će umjetna inteligencija drastično smanjiti troškove razvoja, eliminirati tehničke prepreke te omogućiti timovima da isporuče gotove proizvode brže nego ikad prije u povijesti.

Očekivanje je da će se fokus u potpunosti prebaciti s pisanja koda na takozvani "prompt inženjering" – vještinu davanja preciznih uputa stroju kako bi on odradio teški tehnički posao. U viziji budućnosti koju nam serviraju tehnološki divovi, inženjeri više ne moraju razumjeti složenost algoritama ni arhitekturu sustava; dovoljno je samo jasno komunicirati viziju, a umjetna inteligencija će preuzeti sve ostalo.

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

Ova priča duboko zanemaruje ključnu činjenicu industrije: pisanje koda nikada nije bilo najteži dio razvoja softvera. Pravi, suštinski izazovi uvijek su ležali u razumijevanju specifičnih poslovnih zahtjeva, dizajniranju stabilne arhitekture koja se može skalirati i rješavanju nepredviđenih problema u složenim, distribuiranim sustavima. Generativna umjetna inteligencija funkcionira na temelju prepoznavanja uzoraka u ogromnim količinama podataka na kojima je trenirana. Ona ne posjeduje stvarno razumijevanje konteksta, ne može predvidjeti kako će se neki dio koda ponašati u specifičnom okruženju vaše tvrtke i apsolutno nema svijest o sigurnosnim propustima koji se mogu pojaviti u specifičnim uvjetima.

Kada umjetna inteligencija generira kod, taj kod obično izgleda iznimno uvjerljivo. Varijable su logično imenovane, funkcije imaju smisla na prvi pogled, a struktura djeluje vrlo profesionalno. No, upravo se tu krije najveća opasnost. Ispod te uglađene površine često se kriju suptilne, teško uočljive pogreške. Model može pozvati funkciju koja u traženoj verziji biblioteke više ne postoji, može ignorirati važne rubne slučajeve koji se javljaju samo pri velikom opterećenju sustava ili, još gore, može unijeti logičke greške koje je izuzetno teško otkriti čak i najiskusnijim inženjerima.

Umjesto da jednostavno dizajniraju sustav i napišu optimalno rješenje, programeri sada troše sate čitajući i pokušavajući razumjeti kod koji nisu sami napisali. Proces traženja skrivene greške u naizgled savršenom generiranom kodu često traje znatno duže nego što bi trajalo da je inženjer taj isti kod napisao od nule. Kod koji generira AI sklon je "haluciniranju" funkcionalnosti – stroj sa savršenim samopouzdanjem nudi rješenje koje na papiru izgleda besprijekorno, ali se u praksi potpuno raspada jer se oslanja na nepostojeće metode.

Ovaj fenomen stvara ogromno kognitivno opterećenje koje se rijetko spominje u marketinškim materijalima i prezentacijama proizvoda. Pisanje vlastitog koda kontinuirano gradi i održava mentalni model cijelog sustava u glavi programera. Kada taj kod generira stroj, taj duboki, intuitivni mentalni model izostaje. Zbog toga svaka naknadna izmjena, nadogradnja ili popravak postaje znatno teža i rizičnija operacija.

Posljedice u stvarnom svijetu

Ako se ovaj trend nekritičkog usvajanja nastavi bez ozbiljnog promišljanja, suočit ćemo se sa značajnim i trajnim posljedicama za cijelu softversku industriju. Prva očita posljedica je radikalan pad dugoročne kvalitete i održivosti koda. Sustavi će postati takozvani "Frankensteinovi" sklopovi generiranih dijelova koji nekako funkcioniraju zajedno u idealnim uvjetima, ali nitko u timu neće potpuno razumjeti kako ili zašto. Kada dođe do kritičnog kvara u produkciji – a uvijek dođe – vrijeme potrebno za dijagnosticiranje i rješavanje problema bit će drastično duže jer inženjeri neće imati dubinsko razumijevanje vlastitog sustava koji moraju popraviti.

Druga opasnost krije se u sigurnosti. Modeli se često treniraju na starom kodu koji sadrži zastarjele prakse i poznate ranjivosti. Kada AI generira rješenje, on ne provjerava najnovije sigurnosne standarde, već reproducira uzorke koje je vidio. To može dovesti do masovnog uvođenja ranjivosti u produkcijske sustave, stvarajući noćnere za stručnjake za kibernetičku sigurnost.

Treća, i dugoročno možda najozbiljnija posljedica, odnosi se na edukaciju i razvoj novih inženjera. Mlađi programeri tradicionalno uče zanat čitajući kvalitetan kod iskusnijih kolega, suočavajući se s problemima i rješavajući ih korak po korak, čineći greške i učeći iz njih. Ako se od prvog dana budu oslanjali isključivo na AI asistente koji umjesto njih obavljaju osnovne zadatke i nude gotova rješenja, propustit će ključnu formativnu fazu u kojoj se razvija apstraktno i analitičko razmišljanje. Dobit ćemo cijelu generaciju inženjera koji znaju tražiti rješenje od stroja, ali ne znaju samostalno potvrditi je li to rješenje zaista optimalno, je li sigurno i je li održivo na dugi rok. Jaz između seniora koji razumiju temelje sustava i juniora koji znaju samo pisati promptove postat će nepremostiv.

Menadžeri i direktori koji očekuju linearno smanjenje troškova zbog veće brzine generiranja koda mogli bi se vrlo neugodno iznenaditi. Ubrzo će shvatiti da su se troškovi samo premjestili u kasniju fazu razvoja – fazu održavanja, temeljitog testiranja i mukotrpnog ispravljanja grešaka. Brzina isporuke u najranijoj fazi projekta često dolazi na vrlo skupu naplatu kroz ogromni tehnički dug koji se gomila neviđenom brzinom i blokira svaku buduću inovaciju.

Završni stav

Umjetna inteligencija nesumnjivo donosi vrijednost kao moćan alat za pomoć pri razvoju softvera, ubrzavajući pisanje ponavljajućih obrazaca i automatizirajući dosadne zadatke. No, ona nije i još dugo neće biti čarobni štapić koji će eliminirati potrebu za vrhunskim stručnjacima. Prava vrijednost softverskog inženjera nikada nije ležala u pukom brzom tipkanju linija koda, već u dubokom, kontekstualnom razumijevanju sustava i sposobnosti rješavanja kompleksnih, nepredvidivih problema u stvarnom svijetu. Dok god budemo umjetnu inteligenciju tretirali kao potpuno autonomnog kreatora, a ne samo kao napredni alat za autokompletiranje, provodit ćemo znatno više vremena ispravljajući njezine uvjerljive halucinacije nego stvarajući stvarnu vrijednost.


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

Starija objava
Povezano

Pročitajte i ovo

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

Ilustracija uz članak: Opsesija AI alatima neprimjetno uništava digitalnu pismenost
Analiza

Opsesija AI alatima neprimjetno uništava digitalnu pismenost

Prekomjerno oslanjanje na generativne modele pretvara nas u pasivne korisnike i slabi vještinu kritičkog razmišljanja.

Ilustracija uz članak: OpenAI formira nezavisni savjetodavni panel vrhunskih matematičara
AI vijesti

OpenAI formira nezavisni savjetodavni panel vrhunskih matematičara

Tvrtka okuplja devet elitnih stručnjaka kako bi unaprijedila svoja matematička istraživanja i komunikaciju s akademskom zajednicom.

Ilustracija uz članak: Skrivena cijena oslanjanja na generirani kod u razvoju
Analiza

Skrivena cijena oslanjanja na generirani kod u razvoju

Umjetna inteligencija donosi brzinu, ali dugoročno oduzima duboko arhitektonsko razumijevanje.