Naša firma sa dlhodobo venuje vývoju webových aplikácií. Či už priamo, alebo formou outsourcingu počas celej svojej existencie. Pre každého klienta sa snažíme nájsť optimálne riešenie problému tak, "aby dobre bolo". Čiže aj efektívne a správne pre klienta, aj pre nás, aby sme mohli naše služby poskytovať aj v budúcnosti so zachovaním rovnakej kvality. Napriek tomu, že naše služby ani zďaleka nedosahujú cenovky veľkých korporátnych hráčov, klient sa často rozhodne siahnuť po inom riešení. Či už po niečom hotovom, alebo nejakom riešení na mieru od iného dodávateľa. Nehneváme sa za to, neohovárame konkurenciu, neskladáme telefón. Je to prirodzený kolobeh biznis sveta a každý podnikateľ je zodpovedný za svoje podnikanie a za rozhodnutia, ktoré v ňom urobí. Máme klientov, s ktorými spolupracujeme od začiatku existencie firmy. Pár z nich je s nami dokonca ešte dlhšie. Máme aj zákazníka, ktorý od nás odišiel a po roku sa opäť vrátil. Žiadny problém, sme féroví a nemáme problém vstúpiť so serióznymi zákazníkmi do tej istej spolupráce dvakrát alebo aj viackrát.
AI ako riešenie na všetko
V poslednom období sa však objavil nový fenomén vďaka masívnemu rozmachu AI a dostupným LL modelom. Agentické programovanie, pri ktorom netreba vedieť programovať, ale ani rozumieť tomu, čo vygeneroval jazykový model, ktorý v skutočnosti tiež "netuší", čo vytvoril a prečo. Vychádza z natrénovaných dát a matematickej pravdepodobnosti a pracuje výlučne s číslami (nie so slovami).
Samozrejme, nebudem tvrdiť, že je to zlé alebo že našej firmy sa to netýka. To určite nie. Práve naopak. Na to, aby naša firma zostala relevantná a konkurencieschopná, musí modernizovať a implementovať AI do každodenného fungovania. Výsledkom je efektívnejšia práca, rýchlejšia realizácia úloh a v konečnom dôsledku aj nižšie náklady pre koncových zákazníkov (napríklad nevyfakturujeme za bežnú údržbu/aktualizáciu 4 hodiny, ale len 2).
Má to však jeden háčik. Aj tak to treba skontrolovať. Vždy treba overiť, či LL model nehalucinuje, či sa náhodou nezasekne v dôsledku dočasného vyťaženia serverov poskytovateľa a či ten výsledok spĺňa všetky požiadavky. Nikdy nič nenasadzujeme naslepo! A na to, aby sme mohli niečo skontrolovať a zaručiť sa za výsledok, musíme tomu rozumieť. Každá úprava teda prechádza procesom "review" (kontroly) presne tak, ako pri kontrole práce iného kolegu.
A teraz už k veci
Opakovane sme sa v poslednom období stretli s názorom alebo predstavou, že by si (potencionálny) klient chcel vybudovať svoje vlastné riešenie úplne sám a v lepšom prípade si to riešenie dať aspoň niekým kvalifikovaným skontrolovať. Jasné, nie je problém, môžeme to odborne posúdiť, overiť, či riešenie spĺňa bezpečnostné zásady, či sa to celé do polroka nezosype kvôli výkonu alebo stabilite a či to vôbec prinesie nejaké zefektívnenie fungovania biznisu.
Problém nastane, ak ten výsledok nie je taký super, ako sa na prvý pohľad zdalo. Samozrejme, spíšu sa nedostatky, tie sa "napromptujú" agentovi, ten to opraví a takto dokola, až kým život nie je opäť krásny a farebný.
Ale ono to tak v skutočnosti nefunguje.
V našej firme vyvíjame s pomocou agentov poháňaných rôznymi LL modelmi už dostatočne dlho. Napriek tomu musíme riešiť rôzne nové výzvy. V prvom rade je to cena, ktorá stúpa a rozhodne bude aj naďalej stúpať. Takže ak si niekto po večeroch pred 3 mesiacmi postavil svoj nový CRM systém na mieru a vývoj či prevádzka ho vtedy stáli napr. 20 €, dnes už to môže byť pokojne aj 200 €. A čo o rok alebo o dva?
Ďalším nepredvídateľným faktorom sú neustále meniace sa modely a postupné vypínanie tých starých. Aj keď niečo beží odladene a spoľahlivo na starom modeli, neznamená to, že to bude tak aj na novšom modeli. Z praxe vieme, že každý model sa aj napriek akokoľvek podrobným agentickým inštrukciám správa mierne odlišne.
Ďalší dôležitý fakt: novší model != lepšie výsledky. Toto máme z praxe odsledované práve pri modeloch spoločnosti OpenAI. Novšie modely (GPT 5+) majú preukázateľne "horšiu slovenčinu" než napr. starší model GPT 4o. Je to zrejme spôsobené optimalizáciou modelov tak, aby pokryli efektívnejšie úlohy a témy, na ktoré sú najčastejšie využívané a tie menej "dôležité" idú do úzadia. Nevidíme do toho tak podrobne. Je to politika firmy, ktorá daný model vlastní a vyvíja. Takže bežný človek, ktorý si vyvinul inteligentného asistenta v slovenčine pre svoj biznis, si s tým musí poradiť sám a neustále ho prispôsobovať a ladiť (ale už nie za tých 20 €).
Zákony a smernice naše každodenné
Ďalším rizikovým faktorom je geopolitika alebo bezpečnosť firemných dát, ktoré voľne putujú po serveroch globálnych spoločností. V prípade zdrojového kódu s tým nemám žiadny problém. Teda pokiaľ nejde o nejaký unikátny algoritmus, ktorý by z konkurenčného hľadiska stálo za to získať. Ale buďme realisti. Ak niečo poskladá LL model, nebude to nič citlivé. O nejakom duševnom vlastníctve tu nemôže byť reč.
Citlivé sú firemné dáta. A EÚ, rovnako ako zákon o ochrane osobných údajov či zákon o kybernetickej bezpečnosti sú prísne a pokuty vyplývajúce z ich porušenia často až likvidačné pre menšie firmy.
Z tohto dôvodu si treba uvedomiť, že ak aj nejaká "vibekódovaná" aplikácia prejde bezpečnostným auditom, treba počítať s tým, že v 99,9 % prípadov je na to využitý nejaký externý open-source softvér. Čím známejší, tým príťažlivejší na hľadanie bezpečnostných zraniteľností (či už poctivými hľadačmi cez rôzne bug-bounty programy, alebo tými, ktorí nájdené zraniteľnosti predajú alebo sami zneužijú). Takže pravidelné aktualizácie, údržba a bezpečnostné audity sú nevyhnutnosťou. Časy, keď sme používali 10-ročný neaktualizovaný softvér s podobne starým (a deravým) operačným systémom, sú už minimálne 10 rokov nenávratne preč. Kyberbezpečnosť je dnes nevyhnutnosťou.
Späť k zbytočným programátorom
Tu sa natíska otázka: Naozaj si toto všetko niekto bude schopný riešiť sám popri svojom biznise, stále sa zväčšujúcej kope byrokracie a iných povinnostiach? Nech si každý odpovie sám...
Preto, ak mi (potencionálny) klient povie, že by chcel niečo vlastné na mieru a postaviť si to sám, nevnímam to ako problém. Nie je to moje podnikanie ani zodpovednosť za dané rozhodnutie. Ale aj tak si neodpustím vysloviť aspoň dobrú radu a odporúčanie, aby si dobre zvážil, či ho to v konečnom dôsledku nebude stáť oveľa viac, než keby to dal vytvoriť a spravovať tomu "drahému" a "zbytočnému" programátorovi.