nedávat tomu testy je dobrý nápad. Jinak když nám to projde několika kolečky AI code review (claude, codex), tak to už je v podstatě bez chyb a přijde mi, že mi lépe pokryté edge cases než bych to zvládnul sám. Ale někdy je to až zbytečně opatrné přijde mi. Ke klasickému programování se prostě už není možné vrátit, ten přínos je moc velký - za půlden zvládnu tolik práce (kódu), kolik bych dělal za týden. Nicméně jak už tu psali i ostatní, je těžké mít z aktuálního pracovního procesu radost.
nám zatím nic nefunguje :).
Zásadní problém je, že jak moc review AI se spoléhá na komentáře a názvy funkcí/testů aniž by se podívala do kódu. Je schopná si v komentáři přečíst "otestování, funguje bez chyby!" a říct, že funkce je ok, protože je otestovaná, přitom v těle jsou abnormální boty.
Dneska jedeme strategii, že AI dostává k review kód bez testů, bez komentářů, poupze se zadáním a možnosti si spustit integrační testy. Výsledek je mnohem lepší, ale pořád bojujeme s kvalitou kódu a počtem bugů, udržet architekturu a jednotlivé oddělené vrstvy je velmi těžké. Kvůli lidem jsme postupně zavedli mono repa, teď kvůli AI zase děláme repa pro jednotlivé funkce a jasný veřejný interface/kontrakt a k tomu integrační kódy, které nedělají implementaci. Říkám, musí se to změnit :).
Na review se mi osvedcilo pouziti vice modelu (hlavne ne ten ktery kod vytvarel:-) )a u kazdeho projektu info pro agenty jak ma vypadat struktura - coz pomuze i programatorum. Problem tedy co jsem zatim zazil ve vyvoji je ten, ze kazdy projekt je jiny a jedna metodika nemusi vyhovovat treba ani na velmi podobnem projektu.
Nejsem programator takze to mozna delam blbe/neefektivne ale zatim se mi to osvedcilo. z
Spis vyplouvaji na povrch vice kompetencni problemy a rozdeleni odpovednosti.
Jo, code review je problém. Já to zatím zkouším vyřešit poloautomaticky - udělal jsem si skill na asistenci s code review, takže to se mnou postupně projde tickety na review, vypíchne core změny (a kde je najít), upozorní mě na možné implikace a já už pak projdu zběžně jen ty důležité věci. A můžu to rovnou pak nechat udělat komentáře, poslat zpět, rozjet lokálně a nebo schválit. Ale za měsíc to budu třeba dělat úplně jinak.
to je přirozený vývoj, nelze dnes dělat review kódu od AI, ne v tom množství. Nedokážeme udržet tolik pozornosti. To se dá dělat v nějakém počátku adopce, ale rychle příjdeš na to, že i těm nejlepším prostě ujíždí vlak a AI je zahltí.
Změnit musíme způsob vývoje. A která cesta je nejlepší, to je otázka.
Já teď v týmu zkouším variantu, kdy na tickety dávám pořád stejně času, ikdyž s AI to trvá desetinu a zbylý čas je volně k dispozici právě na refaktor, vylepšení kódu (hlavně jeho minimalizaci), promyšlení zadání, odzkoušení a troch popřemýšlení. Můj cíl je snížit počet bugů a zjednodušit proces předání změn dál v procesu.
Při vývoji mě nestojí kód tolik peněz, stojí mě peníze zbytečná práce programátorů, opakované vracení k hotovým věcem (opravy), malé sebevzdělávání, protože na vše je málo času. U klientů vidím, že ty firmy zdesetinásobili práci programátorům (AI + víc ticketů + méně lidí), nevím, jak v tomhle chtějí za rok fungovat.
Pracuji ve firmě, kde je cca 100 programátorů. AI využíváme ke kódování velmi aktivně, ale reálně se objevuje problém, kdy někteří programátoři do AI vkládají až příliš velkou důvěru a polevují v review. Ono totiž dbát na kvalitu kódu je mnohem těžší, když ten kód člověk nenapíše sám a časem se začne projevovat určité zpohodlnění, což se může týkat i seniorů. Tenhle hon za vyšší efektivitou pak vede ke kódu, který funguje a na první pohled vypadá hezky. Jenže když nad review a následným laděním nestrávím snad skoro tolik času, jako kdybych si to psal sám, tak tam AI bez vedení za ručičku nabouchá tunu neefektivity.
Například dynamické čtení konfigurace za běhu (kdy absence či špatná konfigurace způsobí pád až za běhu a ne hned při nasazování), používání regexů všude (i tam, kde to nedává smysl a stačila by jednoduchá for smyčka), kompilace regexů v každém běhu metody (i když by šla zkompilovat do statické konstanty) nebo neefektivní práce s cache (což dobu response protáhlo z desítek ms na vteřiny). A to je jenom pár příkladů. Naštěstí nám nikdo nezakazuje sahat na kód ručně. Spíše se teď bude řešit, abychom kód od AI řešili mnohem víc. Vždycky si při čtení těchhle článků říkám, jestli nedělám něco špatně já, nebo se ty firmy jen snaží nasadit falešnou fasádu. A mám pocit, že je to ta druhá varianta, protože z doslechu to v těch supr Čupr firmách není s AI taková sláva, jak to ze článků vypadá.