Umjetna inteligencija i iluzija kompetencije u programiranju
Kako brza isporuka koda uz AI uništava naše suštinsko razumijevanje softvera.
Kada danas promatramo prosječnog developera kako piše kôd, scena često izgleda poput magije. Umjesto pažljivog promišljanja o strukturi baze podataka ili optimalnom algoritmu, dovoljno je napisati nekoliko ključnih riječi, a AI asistent trenutno generira stotine linija koda. Produktivnost je dosegla neviđene razine, a menadžeri oduševljeno promatraju kako se zadaci brže zatvaraju. Međutim, iza ovog tehnološkog ubrzanja krije se iznimno opasan trend: postajemo nevjerojatno brzi u tipkanju koda koji u suštini više ne razumijemo. Ovaj fenomen, koji nazivamo "iluzijom kompetencije", direktno prijeti dugoročnoj stabilnosti softverskih sustava o kojima ovisi naš moderni svijet.
Prevladavajuća priča
Dominantni narativ u tehnološkoj industriji gotovo je isključivo fokusiran na maksimizaciju brzine. Prodavači AI alata svakodnevno nas uvjeravaju da će ovi sustavi osloboditi programere dosadnih zadataka, omogućujući im da se fokusiraju na kreativno rješavanje problema i dizajniranje arhitekture.
Prema toj idealiziranoj priči, umjetna inteligencija funkcionira kao neumorni mlađi programer koji obavlja rutinski rad, dok vi suvereno upravljate procesom i donosite strateške odluke. Kvantitativne metrike koje tvrtke koriste za mjerenje produktivnosti naizgled potvrđuju ovu viziju. Menadžment vidi grafove koji idu prema gore i zaključuje da su AI asistenti najbolja investicija u povijesti industrije.
Zašto je ta priča pogrešna ili nepotpuna
Problem s ovom primamljivom pričom leži u činjenici da ona potpuno ignorira osnovnu prirodu kognitivnog procesa programiranja. Kvalitetan razvoj softvera nikada nije bio primarno vezan uz samo mehaničko tipkanje znakova. Pisanje koda oduvijek je bilo tek vizualna manifestacija dubljeg, apstraktnog razumijevanja problema.
Kada programer satima pokušava riješiti specifičan bug ili dizajnirati funkciju, on zapravo u svojoj glavi precizno gradi složeni mentalni model cijelog sustava. Taj model je ono neprocjenjivo znanje koje inženjeru omogućava da predvidi kako će promjena u jednom modulu kaskadno utjecati na drugi dio aplikacije.
Međutim, prepuštanjem pisanja koda umjetnoj inteligenciji, opasno preskačemo tu kritičnu fazu mentalne borbe i učenja. Inženjeri dobivaju gotov rezultat a da nisu prošli kroz proces pokušaja, pogrešaka i spoznaje. Programeri danas sve češće nekritički prihvaćaju složena rješenja koja sami ne bi znali napisati od nule. A ono što ne znaš samostalno izgraditi, u pravilu ne znaš ni učinkovito debuggirati kada stvari krenu po zlu na produkcijskom serveru.
Umjesto inženjera koji dubinski razumiju sustave koje grade, kolektivno se pretvaramo u "urednike" strojnog koda na površinskoj razini. Brzina kojom isporučujemo nove značajke raste, ali naša sposobnost održavanja i popravljanja tih sustava alarmantno pada. Kognitivno opterećenje programiranja nije nestalo, ono je samo odgođeno do trenutka kada se pojavi kritičan problem koji AI ne zna sam riješiti.
Posljedice u stvarnom svijetu
Zlokobne posljedice ovakvog pristupa već se osjećaju. Prvi na udaru bit će takozvani "junior" programeri. Iako im AI alati trenutno omogućuju isporuku rezultata iskusnih seniora, istovremeno im uskraćuju pravo inženjersko iskustvo na temelju kojeg bi zaista izrasli u prave seniore. Odgajamo generaciju programera koja odlično spaja komade koda poput Lego kockica, ali koja će se potpuno izgubiti kada treba riješiti specifičan problem koji nije prethodno opisan na internetu.
S druge strane, tvrtke koje slave rekordnu produktivnost suočit će se s paralizirajućim rastom tehničkog duga. Softverski projekti postajat će sve veći, neprozirniji i krhkiji. Kada se dogodi neizbježan prekid usluge, vrijeme potrebno za rješavanje problema značajno će narasti jer nitko u timu više neće imati ključni mentalni model koda u glavi. Krajnji gubitnici bit će korisnici čiji će podaci ovisiti o softveru koji nitko ne razumije, dok će jedini dobitnici biti korporacije koje prodaju iluziju beskonačne produktivnosti kroz AI pretplate.
Završni stav
Brzina isporuke u razvoju softvera je korisna metrika, ali dubinsko razumijevanje onoga što gradimo apsolutno je neophodno za naš opstanak. Ako nastavimo tretirati programiranje isključivo kao industrijski proces masovne proizvodnje koda, stvorit ćemo ekosustav krhkih sustava koje, kada se sruše, nitko više neće znati popraviti. Umjetna inteligencija mora biti alat koji nam pomaže jasnije razmišljati, a nikako intelektualna štaka koja razmišlja umjesto nas i slabi naše kognitivne kapacitete. Krajnje je vrijeme da softverska industrija prestane slaviti puku brzinu i ponovno počne cijeniti dubinu stvarnog ljudskog razumijevanja koda.
Komentar objavljen na portalu Umjetna Inteligencija Blog by ShtefAI, autor: Shtef



