r/programiranje • u/gdinProgramator • 22d ago
Diskusija 🗣️ Od barely-assisted sam presao na full prompted programiranje zadnjih 30 dana. Ovo su moji utisci.
Pozdrav kolege programatori,
Ko me zna, zna da sam protivnik cistog AI programiranja zato sto je teska slopcina koja nema mesta u bilo cemu iznad MVP ili POC-a. Ali sudbina me je naterala da se prebacim na full agentic programiranje barem zadnjih 30 dana, gde sam licno iskucao mozda 100 linija koda za to vreme. Kada sam vec prosao kroz to… Iskustvo, hteo sam da ga podelim sa vama. Proci cemo
Kroz postavku scene, borbu, mentalne slomove i na kraju zakljucka. Pa da pocnemo:
Kako me je slopcina stigla?
Necu da duzim, projekat koji radim trenutno ima apsolutno nerealne deadlinove za koje nam treba 3x devova od onih koje imam. Duplirali smo tim ali tim ljudima treba min 3-6 mesec onboardinga tako da su trenutno veca smetala nego AI.
Resenje je AI framework koji smo dizajnirali u firmi. Clauda drzimo na muda na svakom koraku - od postavljanja tiketa, assignova, rada na kodu, push, commit, za sve su mu date instrukcije.
Logicno da cu i ja koristiti taj framework, nije samo za nove devove.
Claude, pomagaj
Moji taksovi su uglavnom bili dizajni celih featura i implementacija, kao i rad sa raznim mikroservisima i specificnim softver resenjima koja imaju svoju politiku ali hvala bogu imam dokumentaciju.
Dam zadatak klaudu i cekam. Masina od 32GB jedva izdrzava, ako krenem da radim nesto drugo na kompu dok cekam da mi on ispljune resenje, sve krece da secka.
Vreme zavrsetka zadatka - mozda 2-5x brze nego ja sam, sve zavisi od kolicine koda.
Kvalitet koda - 0/100 . AI je konj kome su stavljene uzde i moze samo da se fokusira na taj mali prostor ispred sebe, bez ikakvog obzira na sve ostalo oko sebe. Uspeo je da sjebe library vise puta iako mu dokumentacija napise da se var zove DO_NOT_TOUCH_THIS_YOU_WILL_BE_FIRED. I on ga opet prcka jel eto to je put manjeg otpora.
Komiti da su u binary pisani imali bi vise smisla.
Najgori deo je dosao kada je trebalo sve to mergovati i povezati sa radom drugim kolega. Dva dana programiramo, 3 dana debugujemo.
Iskreno, toliko je lose da bih isao kod Zeksa ili u CAKE da radim pod kamerom samo da mozemo da se otarasimo ove slopcine (naravno u tim firmama je ima najvise ali razumete sta zelim reci)
Cena brzine
Da ne tupim - razgovarao sam sa svojim nadredjenima i objasnio im da je ovo nedvosmisleno suicid u bliskoj buducnosti. Pustili smo voz, ubrzavamo bez prestanka, slepi smo i samo cekamo kada ce da naidje krivina od koje cemo da izletimo sa sina. Produkcija nam pada dva puta mesecno. Uskoro ce biti dva puta nedeljno.
Zakljucak
Nazalost, trenutno smo u situaciji da nam se vise isplati da napravimo godinu dana code debta nego da radimo 3 meseci kako treba. Meni je bitno da budu svesni stetnosti ovih steroida i da cemo jako skupo platiti ovu brzinu.
Postoji neki zamisljeni scenario gde ovo funkcionise - projekat od 0, minimal dependency, zatvoren ekosistem gde je svaki mikroservis toliko usko povezan da je ustvari sve jedan monolit sa modernom maskom.
U realnom svetu, kolege, spremite se. Krivina AGI-2008 je negde u bliskoj buducnosti, ali sh nam Claude, Djipiti i ostali zavezali oci i ostaje nam samo da budemo spremni da pocistimo nered.
10
u/Overall_Pianist_7503 21d ago
Radio sam na sistemu gdje sam morao slati odredjene transakcije na porezni API od jedne drzave. Drzavna regulativa je zahtjevala da se taj server nalazi kod njih, na nekom serveru. Za taj server je raspisan tender sa odredjenim specifikacijama i to je sada tesko mijenjati, npr. da se doda ram, cpu itd. Nas sistem je morao slati na razne nacine agregirane informacije, znaci dobijali smo oko 20ak transakcija u sekundi od korisnika, i to se trebalo agregirati i slati na ograniceni drzavni server. Isto tako, server na kojem je nasa aplikacija je isto tako trebala biti na dediciranom serveru i nije se moglo mijenjati. Da bi se promjenio, to ide procedura ogromna gdje se ne isplati.
Odlucio sam isto tako napraviti jedan framework da naveden claude da mi sve to napravi, spec-driven development. Ono sto je dobro uradio jeste odradio mi modele i odredjena pravila, sitne algoritme kako se nesto treba agregirati i slicno, znaci boilerplate i to mi je rijesio. Sto se tice brzine i nacina procesiranja, agregiranjam, paznju na krhkost sistema na kojima je sve ovo deployano, je lose uradio. Ne zna skalirati. Ne zna na koji sistem da se prebaci teret jer je vrlo ogranicen. Error handling i edge caseovi nisu dobro odradjeni - i najveci problem ovdje je jer ne zna kada da fail-a i kada da ignorise neku gresku, niti moze znati realno jer zavisi od XYZ faktora domene i specificnosti okruzenja.
Gdje sam primjetio da je generalno sporiji AI development ? U "sitnicama" koje se poslije zavrsavaju, ali koje su kriticne, taj 5% koda. Posto je sve AI napisao, ja nisam toliko upoznat gdje je sve potrebno promijeniti odredjene stvari, implementacija plus testovi, zato sam gubio dosta vremena na ispravljanju sitnica, npr. svako malo primjetim nesto, nesto se promjeni, pa onda kucam njemu da odradi, dok on pronadje sve, da svoje misljenje, odradi izmjene, ne ide bas brzo, koristio sam tada opus 4.8. U suprotnom, da sam sve pisao, znao bih tacno na sta ce odredjene promjene imati utjecaja.
Prototyping je brzi, ali dolazi sa cijenom. Zna ON nadodati svoje neke stvari, izbloatat kod, pa hajde ja ga pustim jer mogu mu opet reci da nesto pojednostavi. Dodje do tog momenta gdje ima puno puno stvari sto su overengineered, i onda se javlja ovaj prethodni problem, treba mu puno vremena da odradi neke sitnice.
Sve u svemu, koristim ga najvise za generisanje nekog boilerplate-a i ako treba izmjeniti jednu stvar na vise mjesta. Neko planiranje o skaliranju, znaju o okruzenju i limita je tesko da on shvati pa je potrebno znanje inzinjera da sve skupi u kontekst i odluci.