Eksperiment je bio jednostavan i pomalo mazohističan: pustiti AI agenta da napiše kompletnu, upotrebljivu web aplikaciju — od inicijalizacije projekta do deploya — uz pravilo da ja ne pišem ni liniju koda. Smijem samo opisivati što želim, prijavljivati bugove riječima i odgovarati na pitanja. Ono što danas zovu "vibe coding", provedeno dosljedno do kraja.
Postav
Aplikacija: evidencija radnih sati za freelancere — projekti, unosi vremena, tjedni pregled, izvoz u CSV. Dovoljno malo da je izvedivo, dovoljno stvarno da ima rubne slučajeve (vremenske zone, preklapanja unosa, brisanje projekta s postojećim satima). Alat: agentski AI asistent s pristupom terminalu i datotekama, moderni web stack po njegovom izboru. Moja uloga: naručitelj koji zna programirati, ali se pravi da ne zna.
Prvih sat vremena: neugodno impresivno
Agent je postavio projekt, bazu, osnovne CRUD ekrane i pristojan dizajn brže nego što bih ja stigao pročitati dokumentaciju ORM-a. Prva verzija aplikacije radila je nakon sat i pol. Da je ovo bio hackathon, bili bismo u finalu. Priznajem da sam u tom trenutku pomislio: dobro, priče su istinite, gotovi smo.
Drugi dan: gdje je počelo škripati
Onda su došle izmjene — i s njima pravo lice eksperimenta. Tri obrasca su se ponavljala:
Samouvjereno krivi rubni slučajevi. Unos koji prelazi ponoć razbio je tjedni zbroj; agent je "popravio" tako da je pokvario vremenske zone, pa popravio zone tako da je vratio prvi bug. Bez mog razumijevanja problema vrtio bi se u krug — ne zato što je glup, nego zato što je svaki popravak lokalno izgledao logično, a globalnu sliku nije držao nitko.
Entropija arhitekture. Svaka nova funkcionalnost dodana je na najkraći mogući način: kopiran kod, treći način dohvaćanja podataka, logika u komponentama. Ništa od toga nije pogrešno — ali nakon dvadeset izmjena kod je izgledao kao da ga je pisalo dvadeset juniora koji se nisu upoznali. Bez naloga "refaktoriraj i konsolidiraj" (koji je, kad sam ga izdao, odradio odlično), entropija samo raste.
Testovi koji testiraju sreću. Generirani testovi provjeravali su uglavnom ono što radi, elegantno zaobilazeći ono što ne radi. Test suite zelen, aplikacija buggy — kombinacija opasnija od nikakvih testova, jer stvara lažno samopouzdanje.
Rezultat — i iznenađenje
Nakon tjedan dana (procijenjenih 12-ak sati mog vremena): aplikacija radi, deployana je, koristim je. Procjena: solidan studentski projekt ili MVP — s kodom kojem ne bih dao prolaz na reviewu i koji bi svaku sljedeću veću izmjenu činio sve skupljom.
Ali iznenađenje nije bilo u kvaliteti koda. Iznenadilo me gdje je otišlo moje vrijeme: gotovo ništa na "programiranje", a gotovo sve na specificiranje i verifikaciju — precizno opisivanje što točno želim (uključujući rubne slučajeve kojih se agent neće sjetiti) i provjeravanje da je to stvarno napravljeno. Drugim riječima: eksperiment mi nije pokazao da programer više ne treba. Pokazao mi je da se posao programera — kad se tipkanje oduzme — svede na ono što je oduvijek bio njegov najteži dio. AI nije zamijenio inženjering; ogolio ga je.
Praktični savjeti za vlastiti pokušaj
- Radi za: prototipove, interne alate, MVP-ove, projekte koje ćete moći baciti ili prepisati.
- Ne radi za: sustave koje treba održavati godinama bez discipliniranog ljudskog nadzora nad arhitekturom.
- Zlatno pravilo: tretirajte agenta kao izuzetno brzog juniora s amnezijom — sve što ne zapišete u zahtjev, ne postoji; sve što ne provjerite, ne radi.
Zaključak
Može li AI napisati cijelu aplikaciju? Može, i to je senzacija samo prvih sat vremena. Prava vijest je manje zvučna i važnija: granica automatizacije nije prošla tamo gdje smo mislili. Nije podijelila ljude na programere i neprogramere — podijelila je posao na dio koji je oduvijek bio mehanički (i sada je strojni) i dio koji je oduvijek bio inženjerski: znati što točno hoćeš i prepoznati kad to nemaš. Taj dio, barem zasad, ostaje naš.




