Ove nedelje Meta je objavila Muse Code, programerskog agenta zasnovanog na terminalu i izgrađenog na njenom modelu Muse Spark 1.2, čime ulazi u direktnu konkurenciju Anthropicovom Claude Code-u, OpenAI-jevom Codexu i Cursoru. Suština, Zakerbergovim sopstvenim rečima, jeste u tome da on preuzima „kompletne zadatke softverskog inženjerstva kroz velike repozitorijume: planiranje izmena, pisanje koda, proveru rezultata“. Vredi zastati kod načina na koji obrađuje velike zadatke: „Kada je zadatak dovoljno velik, on ga raspodeljuje na zasebne podagente koji rade paralelno u izolovanim radnim stablima. Vaša radna kopija se nikada ne dira.“ Zakerberg je tvrdio da je tokom jednog testiranja alat „istovremeno napravio šest funkcionalnosti za igru, bez kolizija“ — to je tvrdnja proizvođača, a ne nezavisno potvrđen benchmark, zato prema tom konkretnom broju treba biti skeptičan. Obrazac koji stoji iza toga jeste stvaran: ovo je sada standardna prodajna poruka u čitavoj industriji, a ne funkcionalnost svojstvena samo Meti.

Što znači da se razlika između ovih alata brzo smanjuje. Planiraj, kodiraj, proveri, paralelizuj — svaka velika laboratorija približava se istoj petlji od četiri koraka. Ako gradite karijeru oko toga da ste „dobri u navođenju agenta da obavi posao“, dobavljači sami pred vašim očima tu veštinu pretvaraju u robu. Ono što se ne pretvara u robu, i što nijedno od ovih lansiranja zapravo ne rešava, jeste ono što se dešava nakon raspodele: neko i dalje mora da odluči da li je šest delova koda, koje je paralelno napisalo šest podagenata koji nisu mogli da vide rad jedni drugih, pojedinačno ispravno i kolektivno usklađeno.

Izolovana radna stabla rešavaju problem konflikata pri spajanju, a ne problem ispravnosti

Pokretanje podagenata u zasebnim radnim stablima predstavlja stvarno inženjersko poboljšanje — sprečava jednog agenta da pregazi izmene drugog. Ali to takođe znači da agenti koji su pravili tih šest funkcionalnosti tokom rada nisu imali nikakav uvid u odluke jedni drugih. Ako su dvojica nezavisno dodala sličnu pomoćnu funkciju, uvela malo drugačiju logiku validacije za isti ulaz ili napravila nekompatibilne pretpostavke o zajedničkom obliku podataka, izolacija to ne otkriva — ona odlaže sudar iz „konflikta pri spajanju“ u „integracionu grešku koja odlazi u produkciju“. To je strukturno drugačiji način otkazivanja od onog koji su ovi alati osmišljeni da spreče, i upravo njega sada mora da otkrije čovek.

Važno je biti precizan u vezi s ovim, jer je lako pomešati „agent je proverio sopstveni izlaz“ sa „izlaz je proveren“. To što agent proveri da li se njegov kod kompajlira i prolazi testove koje je sam napisao nije isto što i kada recenzent pita da li je šest paralelnih izmena međusobno usklađeno i usklađeno s ostatkom baze koda. To su različiti poslovi, a samo jedan od njih je ono što ovi sistemi zapravo prodaju.

Veština koja zaista postaje retka

Ako radite u softveru ili u njegovoj blizini — kao inženjer, PM, u QA-u, tehničkoj podršci, pa čak i kao ne-inženjer koji sada uz pomoć ovih agenata isporučuje male alate — praktična posledica jeste da „provera usklađenosti izlaza kroz više fajlova i više agenata“ postaje zasebna disciplina, različita od pisanja koda i različita od dobrog zadavanja upita agentu. Nekoliko njenih konkretnih delova:

  • Kalibracija poverenja. Znati, pre nego što pročitate ijedan red, kojoj vrsti izmena je potrebna pažljiva provera (svemu što dotiče zajedničko stanje, ugovor API-ja ili nešto što je možda dotičao više od jednog podagenta), a koju vrstu je bezbedno samo preleteti.
  • Čitanje unakrsnih razlika. Kada se zadatak raspodeli na paralelni rad, jedinica za pregled nije jedna razlika — već skup razlika posmatranih zajedno. To znači namerno proveravati dupliranu logiku, različito ponašanje pri istom ulazu i neusklađeno imenovanje ili pretpostavke između delova, a ne samo čitati svaki fajl izolovano.
  • Pisanje specifikacija za izvršioca bez nadzora. Uzvodno rešenje za rizik od kolizije jeste opis zadatka dovoljno precizan da paralelni agenti ne moraju da se usklađuju, jer su njihove granice ispravno povučene već u startu. Pisanje takve specifikacije bliže je veštini projektovanja sistema nego veštini zadavanja upita.

Ništa od ovoga nije novo u apstraktnom smislu — pregled koda i projektovanje interfejsa oduvek su bili važni. Novo je obim i slepa tačka: kada jedna osoba može da pokrene šest paralelnih radnih tokova tokom jednog popodneva, količina potrebnog pregleda koji obuhvata više delova sistema raste s tim, ali alati koji bi takav pregled učinili jednostavnim nisu sustigli alate koji olakšavaju paralelno generisanje.

Šta konkretno uraditi povodom toga ovog meseca

Ako vaš tim isprobava neki od ovih sistema — Muse Code, Claude Code, Codex ili konkurentski proizvod — nekoliko jeftinih poteza vredi napraviti sada, pre nego što se navike učvrste:

  • Kada pregledate rad koji je generisao agent, izričito pitajte „da li je još nešto u ovom zadatku menjalo isti fajl, funkciju ili zajednički tip?“ pre odobravanja — većina kontrolnih lista za pregled ne podseća na ovo, jer su pisane za izmene jednog autora.
  • Ako vaš tim nema pisani format specifikacije za predavanje zadataka agentu, ponudite se da sastavite nacrt. Osoba koja je zadužena za to „kako upućujemo agenta u posao“ na kraju ima nesrazmerno veliki uticaj na količinu duga u pregledima koju će tim kasnije nagomilati.
  • Održavajte poznavanje više od jednog od ovih sistema, umesto da svoje znanje vezujete za onaj koji je izabrao vaš trenutni poslodavac. Dovoljno se razlikuju — u radu s radnim stablima, u tome koliko agresivno paralelizuju i u onome što iznose na pregled — da kasniji prelazak bez prethodne pripreme košta stvarnog vremena.

Naslovna priča ovog ciklusa lansiranja biće o tome čiji je agent najbrži ili najjeftiniji. Trajniji signal za karijeru je tiši: kompanije koje isporučuju ove alate sve izričitije optimizuju za više koda, generisanog brže i paralelno. Za sada ne isporučuju podjednako bolji način da se taj kod proveri radi usklađenosti. Tu će se pojaviti sledeći talas potražnje za zapošljavanjem, i pojaviće se kao veština pregleda i sistemskog razmišljanja, a ne kao veština zadavanja upita.