Časovi AI programiranja sa Claude-om

Veštačka inteligencija ume da napiše sto linija koda za pola minuta. Problem je što niko ne uči kako da proveri tih sto linija, kako da alatu da kontekst projekta i kako da ga zaustavi kad krene u pogrešnom smeru. Na ovim časovima radimo baš to, na tvom kodu, sa Anthropic-ovim Claude modelima.

Zašto poseban predmet za rad sa AI alatima

Skoro svaki student danas otvori neki AI chat pre nego što otvori dokumentaciju. To samo po sebi nije loše. Loše je kad se posle dva sata završi sa kodom koji radi, a niko ne ume da objasni zašto radi, ili sa kodom koji ne radi, a niko ne ume da nađe gde je pukao. Kad na ispitu ili na razgovoru za posao treba da braniš rešenje, razlika između te dve situacije je ceo predmet.

Ovi časovi nisu kurs promptovanja u smislu spiska čarobnih rečenica. Radimo o tome kako se veliki jezički modeli ponašaju, gde greše, kako se AI asistent uklapa u stvaran projekat sa git-om, testovima i rokovima, i kako da zadržiš kontrolu nad onim što ulazi u repozitorijum. Sve pokazujem uživo, na deljenom ekranu, na projektu koji ti donosiš.

Kome je namenjeno

Studentima FTN-a, PMF-a, Ekonomskog fakulteta i drugih tehničkih fakulteta koji rade projekte i seminarske radove, srednjoškolcima koji tek ulaze u programiranje, i zaposlenim programerima koji hoće da AI alate uvedu u svakodnevni posao bez haosa u kodnoj bazi. Predznanje bar jednog jezika, na primer Python, JavaScript, Java, C ili C#, dovoljno je za početak.

Claude Code, alat koji zapravo dodiruje tvoj projekat

Claude Code je Anthropic-ov agentski alat za programiranje. Za razliku od običnog chata, on čita fajlove u tvom repozitorijumu, menja ih, pokreće komande, gleda izlaz i ispravlja se. Instalira se kao CLI alat u terminal, ali postoji i ekstenzija za VS Code i Cursor, plugin za JetBrains alate poput IntelliJ IDEA, PyCharm i WebStorm, zatim desktop aplikacija i verzija koja radi u pregledaču. Ista podešavanja i isti CLAUDE.md fajlovi važe svuda.

Na prvim časovima instaliramo alat, povezujemo ga sa nalogom, prolazimo kroz sistem dozvola i kroz to šta znači kad agent traži odobrenje za komandu. Zatim učimo osnovni ritam rada: opisati zadatak, pustiti plan režim da agent prvo izloži kako namerava da reši problem, pa tek onda odobriti izmene. Studenti koji preskoče ovaj korak najčešće završe sa dvadeset izmenjenih fajlova i bez ideje šta se promenilo.

Pokrivamo i rad iz komandne linije, jer se tu vidi prava snaga alata. Izlaz jedne komande može da se prosledi Claude-u na analizu, izmene se mogu pokrenuti nad listom fajlova iz git diff, a ceo tok može da se ubaci u CI pipeline preko GitHub Actions ili GitLab CI. Radimo i automatski pregled koda na pull request-ovima, pisanje commit poruka i rešavanje merge konflikata.

Kontekst je sve: CLAUDE.md, pravila i memorija

Najveći deo loših odgovora nije greška modela nego posledica toga što model ne zna nešto što ti podrazumevaš. Zato prvo učimo kako se projektu daje trajan kontekst. Fajl CLAUDE.md u korenu projekta učitava se na početku svake sesije i tu idu stvari koje se inače objašnjavaju svaki put: koje komande pokreću build i testove, kako je organizovan folder sa izvornim kodom, koje konvencije imenovanja se poštuju, koje biblioteke se koriste a koje ne.

Prolazimo i kroz hijerarhiju: lična podešavanja u ~/.claude/CLAUDE.md koja važe za sve projekte, projektna koja se dele preko git-a sa ostatkom tima, i lokalna u CLAUDE.local.md koja ostaju samo kod tebe. Za veće projekte instrukcije se razbijaju u .claude/rules/, gde svako pravilo može da se veže za određene fajlove preko paths polja, pa se učitava samo kad je zaista relevantno. Uči se i mera: predugačak fajl sa uputstvima znači slabije poštovanje uputstava, a ne bolje.

Uz to ide i automatska memorija, gde alat sam beleži zaključke iz rada, kao i komande /init za generisanje početnog CLAUDE.md fajla, /context za proveru šta je stvarno učitano i /compact kad razgovor postane predugačak. Kontekst prozor, tokeni i cena upita su tema za sebe i njoj posvetimo bar jedan čas.

Skills: kad prestaneš da lepiš isto uputstvo po deseti put

Skills, odnosno veštine, su način da se ponovljivi postupak zapakuje u fajl. Napraviš folder u .claude/skills/, u njemu SKILL.md sa YAML zaglavljem i uputstvima, i dobiješ komandu koju pozivaš sa /ime-veštine. Claude tu istu veštinu može i sam da učita kad proceni da je relevantna, na osnovu polja description.

Ključna razlika u odnosu na CLAUDE.md je što se sadržaj veštine učitava tek kad zatreba, pa dugačko referentno uputstvo ne troši kontekst dok ne postane potrebno. Na času pravimo nekoliko realnih veština: kontrolna lista za pregled koda pre predaje projekta, procedura za pisanje testova po standardu predmeta, i skripta za pripremu okruženja. Prolazimo kroz polja zaglavlja poput allowed-tools, model, argument-hint i context: fork, kao i kroz to kako se veštine dele sa kolegama preko repozitorijuma.

Subagenti, hooks i automatizacija

Kad zadatak postane veći od jednog fajla, jedan agent nije uvek najbolje rešenje. Subagenti su odvojeni konteksti kojima glavni agent dodeljuje delove posla, pa se pretraga po velikoj kodnoj bazi, pisanje testova i pregled izmena mogu raditi paralelno. Učimo kada se to isplati i kada je čisto trošenje vremena i tokena, jer svaka podela posla ima svoju cenu.

Hooks su druga priča. To su shell komande koje se izvršavaju na tačno određenim tačkama, na primer pre nego što agent pozove neku alatku ili posle svake izmene fajla. Tipična upotreba je automatsko formatiranje koda posle izmene, pokretanje linter-a pre commit-a ili tvrda zabrana pristupa određenim putanjama. Za razliku od uputstava u CLAUDE.md, hooks se izvršavaju bez obzira na to šta model odluči, pa je to pravi mehanizam kad nešto mora da se dogodi.

Dodirujemo i zakazivanje ponavljajućih zadataka, pokretanje više sesija u pozadini i podešavanja dozvola, jer je to razlika između alata koji ti pomaže i alata koji ti sruši granu.

MCP: povezivanje modela sa spoljnim sistemima

Model Context Protocol, skraćeno MCP, otvoreni je standard za povezivanje AI alata sa izvorima podataka i servisima. Preko MCP servera Claude može da čita dokumentaciju sa Google Drive-a, otvara i menja zadatke u Jira-i ili Linear-u, čita poruke sa Slack-a, upituje bazu podataka ili poziva tvoj sopstveni interni servis.

Na času podešavamo prvi MCP server od nule, objašnjavamo kako izgleda autentifikacija i gde se čuvaju pristupni tokeni, i pišemo jednostavan sopstveni server da bi se videlo šta se zapravo dešava ispod. Ovo je tema koja se posebno traži na razgovorima za posao u poslednjih godinu dana.

Modeli, razmišljanje i cena

Anthropic nudi nekoliko porodica modela i izbor nije nevažan. Claude Opus je najjači i koristi se za teške, dugotrajne zadatke i složeno rezonovanje. Claude Sonnet daje najbolji odnos brzine i kvaliteta za svakodnevni rad. Claude Haiku je najbrži i najjeftiniji, pa je dobar za jednostavne i masovne poslove. Trenutne generacije nose oznake poput Claude Opus 5, Claude Sonnet 5 i Claude Haiku 4.5, a nazivi se menjaju brže nego što se predmeti ažuriraju, zato učimo princip izbora, a ne spisak napamet.

Uz izbor modela ide i podešavanje dubine razmišljanja. Adaptivno razmišljanje pušta model da sam odluči koliko da razmišlja, dok nivo napora, od niskog do maksimalnog, određuje koliko je temeljan i koliko tokena troši. Objašnjavamo zašto viši nivo nije uvek bolji, kako se prati potrošnja tokena, kako keširanje prompta obara cenu ponovljenih upita i kako se meri kontekst prozor od milion tokena kada radiš sa velikim repozitorijumom.

Claude API i gradnja sopstvenih AI aplikacija

Za studente koji rade projekat sa veštačkom inteligencijom, drugi deo programa je Claude API, ranije poznat kao Anthropic API. Radimo sa zvaničnim SDK paketima za Python i TypeScript, a po potrebi i sa Java, Go, C# i PHP verzijama, ili direktno sa HTTP pozivima preko curl-a.

Teme koje pokrivamo: Messages API i struktura poruka, sistemski prompt, streaming odgovora u realnom vremenu, tool use odnosno pozivanje sopstvenih funkcija iz modela, strukturisani izlaz kada ti treba čist JSON po šemi, rad sa slikama i PDF dokumentima, brojanje tokena i keširanje. Ko gradi agenta, prolazi i kroz agentsku petlju, upravljanje kontekstom i Agent SDK, koji ti daje gotov okvir sa alatkama umesto da sve pišeš od nule.

Ovo je i pravi okvir za tipične fakultetske projekte: chatbot nad sopstvenom dokumentacijom po RAG principu, alat koji izvlači podatke iz dokumenata, automatski klasifikator, ili agent koji obavlja niz koraka umesto korisnika. Ako te zanima izrada kompletnog projekta, pogledaj i stranicu izrada projekata za fakultet.

Gde AI još uvek greši

Deo časova posvećen je onome što se retko pominje. Model ume da izmisli funkciju koja ne postoji, da se pozove na verziju biblioteke koja je odavno promenjena, da napiše test koji uvek prolazi ili da tiho promeni ponašanje koje niko nije tražio. Učimo kako se to prepoznaje, kako se izmene čitaju kroz git diff umesto na reč, i zašto testovi i dalje moraju da postoje.

Otvoreno pričamo i o pravilima fakulteta. Većina predmeta danas dozvoljava korišćenje AI alata uz obavezu da razumeš i braniš svoj rad. Cilj časova je upravo to: da posle svakog projekta možeš da objasniš svaku liniju, bez obzira na to ko ju je prvi napisao.

Kako izgleda čas

Jedan na jedan, online, uz deljenje ekrana. Radimo na tvom projektu i tvojoj mašini, ne na pripremljenim primerima koji uvek rade. Tempo se prilagođava, pa neko ceo prvi čas provede na podešavanju okruženja i CLAUDE.md fajlu, a neko odmah kreće na MCP i API. Ako nemaš projekat, dobićeš jedan koji ćemo graditi kroz nekoliko časova.

Predaje master inženjer elektrotehnike i računarstva sa iskustvom u nastavi i u industriji. Ostale predmete možeš pogledati na stranicama časovi Python programiranja, časovi JavaScript programiranja i časovi Java programiranja.

Nauči da radiš sa AI, a ne umesto tebe

Napiši na čemu radiš i šta te trenutno koči, pa dogovaramo termin i krećemo od onoga što ti je najhitnije.

Zakaži čas