Stvarnost razvoja: Zašto AI alati još ne pišu kod sami
Stvarni rad programera danas svodi se na provjeru i ispravljanje suptilnih grešaka koje generiraju AI alati, a ne na pisanje aplikacija od nule.
Kada čitate popularne tehnološke portale ili slušate najave osnivača startupa, vrlo je lako pomisliti da je programiranje kakvo danas poznajemo gotovo. Zvučne najave o autonomnim AI inženjerima koji navodno mogu samostalno generirati i implementirati aplikacije iz jedne upute na prirodnom jeziku stvaraju sliku budućnosti u kojoj su programeri suvišni. Međutim, stvarna slika unutar razvojnih timova izgleda potpuno drugačije. Dok umjetna inteligencija ubrzano mijenja način na koji pristupamo razvoju, ovi alati i dalje ne mogu zamijeniti ljudsko razumijevanje složenih, isprepletenih sustava. Umjesto da samostalno pišu i dizajniraju kod od početka do kraja, oni iz temelja transformiraju ulogu programera u svojevrsnog revizora, zaduženog prvenstveno za provjeru i usmjeravanje onoga što je stroj generirao.
Prevladavajuća priča
Narativ u industriji i među investitorima izuzetno je optimističan i usmjeren na ideju potpune automatizacije. Prema tom narativu, alati bazirani na jezičnim modelima u stanju su savršeno razumjeti poslovne zahtjeve te samostalno arhitektirati, napisati i testirati kod. Zagovornici često demonstriraju kako je moguće napraviti jednostavnu igru ili web stranicu u nekoliko minuta koristeći obične rečenice. Ideja je da će se barijera za ulazak toliko spustiti da će svatko s dobrom idejom moći stvoriti proizvod, bez dugotrajnog učenja programskih jezika i arhitekture. Prema ovoj utopijskoj viziji, tradicionalni inženjeri postat će suvišni, a kompanije će drastično smanjiti budžete oslanjajući se na umjetnu inteligenciju.
Zašto je ta priča pogrešna ili nepotpuna
Ovaj narativ je nepotpun i često pogrešan jer ignorira razliku između pisanja izoliranih linija koda i razvoja robusnih, sigurnih i skalabilnih sustava. Samo pisanje koda često je najlakši dio posla. Ono što AI alati trenutno ne mogu replicirati jest ljudsko razumijevanje konteksta unutar velikih i povijesno opterećenih baza koda, takozvanog legacy koda.
Kada model generira kod, oslanja se na prepoznavanje statističkih uzoraka. On ne posjeduje razumijevanje poslovne logike vašeg poduzeća, ne razumije sigurnosne zahtjeve niti može predvidjeti interakcije između stotina mikroservisa. Zbog toga, kada se suoči s kompleksnijim problemom koji zahtijeva integraciju više komponenti, AI često generira kod koji laiku izgleda uvjerljivo, ali u stvarnosti sadrži arhitektonske greške, sigurnosne propuste ili jednostavno ne radi.
Nadalje, suptilne greške koje AI unosi često je teže pronaći i ispraviti nego klasične greške programera. Čovjek griješi na razumljive načine zbog umora, dok AI modeli proizvode nelogične halucinacije koje zahtijevaju sate mukotrpnog rada da bi se shvatile. Zato se rad programera danas svodi na čitanje strojno generiranog koda i popravljanje nedostataka prije produkcije. Programer mora imati duboko znanje kako bi procijenio je li rješenje optimalno i sigurno ili predstavlja potencijalnu bombu.
Posljedice u stvarnom svijetu
Posljedice za IT industriju su jasne. Trenutno najviše profitiraju iskusni inženjeri koji posjeduju znanje potrebno da kritički koriste AI alate kao nesavršene asistente. Oni mogu ubrzati rad prepuštajući umjetnoj inteligenciji pisanje rutinskog koda, dok se sami fokusiraju na dizajniranje arhitekture i rješavanje najkompleksnijih problema.
S druge strane, apsolutni početnici nalaze se u nezavidnoj poziciji. Put učenja desetljećima je uključivao rješavanje jednostavnih zadataka koje sada AI rutinski obavlja. Ako juniori preskoče taj korak i počnu koristiti AI za generiranje koda koji ne razumiju, dugoročno si uskraćuju razvoj temeljnih vještina rješavanja problema. Bez dubokog razumijevanja osnova, bit će im gotovo nemoguće napredovati do razine na kojoj mogu pouzdano nadzirati i ispravljati kod generiran umjetnom inteligencijom.
Za kompanije, ovo znači da umjesto otpuštanja inženjera u nadi za uštedom, trebaju strateški ulagati u njihovu edukaciju. Očekivanje da će AI bezbolno zamijeniti ljudski rad tek je opasna iluzija koja može dovesti do masovnog nakupljanja tehničkog duga i nestabilnih proizvoda.
Završni stav
Prava istina je da umjetna inteligencija nije kraj programiranja, već logična evolucija alata. Baš kao što su napredni prevoditelji koda oslobodili programere pisanja strojnog koda, AI alati će nas osloboditi tipkanja rutinskih linija. Ipak, ultimativna odgovornost za kvalitetu i sigurnost ostaje čvrsto u ljudskim rukama. Najvrijednija vještina inženjera neće biti brzina pisanja, već sposobnost kritičkog razmišljanja i komunikacije složenih problema. Sve dok softver rješava ljudske probleme u stvarnom svijetu, bit će nam potreban ljudski prevoditelj koji taj svijet razumije dublje od bilo kojeg jezičnog modela.
Komentar objavljen na portalu Umjetna Inteligencija Blog by ShtefAI, autor: Shtef



