Režisérem v orchestru

Fenomén jménem AI je tu s námi už nějakou chvíli. A jeho nejnovější odnoží je takzvaný „vibecoding“.

Ačkoliv jsem dostal AI asistenta i v práci, tak tam jej používám na vibe coding „jenom okrajově“ – oprav mi támhleto, přepiš mi tohleto… Prostě proč bych se crcal s funkcí, co sečte dvě čísla (chápeme, že jde o příklad, že jo. Že jo?!), když to někdo může napsat za mě.

S vibecodingem se rozšířil oblíbený vtip „pokročilejších programátorů“:

Konečně jsem si naprogramoval vlastní SaaS business! Sám a bez znalosti kódu! A to jenom díky vibecodingu! Všichni koukejte na můj nejnovější projekt, který mi vydělá miliony! http://localhost:3000

A pak jsem dostal ten nejstupidnější nápad, jaký může jakýkoliv nadšenec do technologií dostat: „Jak je vlastně těžký si něco nakódovat prostřednictvím AI agentů?“

Dal jsem si zásadní podmínku: „Nesmí to být web-based“. S webem a jeho úpravami mám asi nejvíc zkušeností, takže jsem si chtěl zjistit, jak se budu cítit v oblasti, kde mám skoro žádné zkušenosti.

A tak jsem dal se svým Microsoft Copilotem hlavy dohromady a začal jsem tvořit terminálovou hru Eidolon Drift.

Můj „originální nápad“ na tom všem byly tyto položky:

  • Chtěl bych terminálovou hru (protože mě zajímá, jak se taková terminálovka dělá)
  • Možná by to jednoho krásného dne mělo jít nasadit někam na server a pustit přes SSH + Docker
  • Mělo by se jednat o nějakou hororovou sci-fi hru, kde hráč prochází lodí a má za úkol zjistit, co se tam stalo

… A to je asi tak všechno

Založil jsem si Git repozitář pro hru Eidolon Drift a jal jsem se kódovat hru podle toho, jak mi ji Copilot navrhl (Rozuměj: Překopírovat kód do VS Code tak, jak mi agent řekl)

A pak přišel Github Copilot.

Tyvole.

Tyvole, tyvole, ty … vole!

Kámo, ten nástroj uvnitř VS Code je neskutečně silnej.

Stačilo mu do chatu napsat třeba Stack Trace posledního pádu z pythonu a on sám mi upravil třeba 4 soubory najednou. Sám si ověřil, že mám soubory správně. Sám si ověřil, že po aplikování jeho změn půjde aplikace v pořádku spustit.

A já jsem v zásadě jenom seděl na zadku a koukal se, jak mi hra roste pod rukama. Sama od sebe.

Tenhle pocit moci je opravdu silnej. Můj napůl vymyšlenej nápad se mi doslova a do písmene rodil pod rukama sám od sebe.

Mně jenom stačilo říkat: Támhle přidat, tohle ubrat… tohle se mi nelíbí a naopak tohle je celkem dobrej nápad.

Například jsem tak zvládnul přidat podporu joysticků do hry

Jestli mě něco poslalo do kolen, tak to byla schopnost AI mi pomoct s něčím tak brutálně těžkým, jako je podpora joysticku.

A zvládl jsem to bez znalosti Pythonu, programovacího jazyku, který se AI rozhodla použít.

Samozřejmě: Když nějakou chvíli kopíruješ Python kód tam a zpátky a ve VS Code máš nainstalovaný Extension na Python, tak díky všeobecné jednoduchosti onoho programovacího jazyka začneš mít celkem přehled o tom, co se vlastně na pozadí děje.

Ukecanost AI agenta od Microsoftu je ale děsivá

Pavle super. Teď už to vidím naprosto jasně. Logy se do hry nahrávají správně, ale neumisťují do hry

Pavle, tohle je přesně ten moment, kdy se ti příkaz ve hře může zjednodušit protože se teď předává celý objekt, takže nepotřebuješ, jak jsi měl doposud…

⭐Chceš abych ti:

  • Připravil kompletní diff patch?
  • Sjednotil příkazy?

Stačí říct

Jo, na první pohled to vypadá přátelsky a přívětivě. Ale představ si, že něco takovýho ti ten nástroj odpoví

Po

Úplně

Každým

Blbým

Dotazu!

Co mi ten experiment dal?

  • Ty sám – člověk – musíš být dobrým „ředitelem orchestru“ protože samozřejmě AI ztrácí kontext a tím vznikají chyby.
  • Je dobrý mít zkušenosti s Agile metodologií, kdy postupně „nabaluješ“ jeden přídavek za druhým a nepřestaneš, dokud ten současný krok není „Good Enough“
  • Vývoj aplikace je neskutečně rychlý a žene se dopředu opravdu překvapivě rychle
  • Vyčerpat tokeny na Github Copilotu není žádná těžká práce
  • Kódovací schopnosti se hodí, protože AI má tehdenci stavět „velké monolity“ které pak sám po sobě neumí přečíst a tak ztratí souvislosti. Takže umění nějakého základního refactoringu a rozsekání kódu na funkční celky se hodí
  • Python je vtipně jednoduchý jazyk a celkem lehce se mi chápalo, co se v něm asi tak děje. Nechci říct, že „teď umím s Pythonem“ ale zároveň tím, jak tě AI navádí, tak máš představu toho, co se tam děje:

Kámoš, co tě vodí za ručičku a určitě tě dovede k cíli

Kdysi dávno jsem napsal tenhle vtípek:

StackOverflow.com má na svých stránkách AI vyhledávač. Konečně první AI služba, která ti řekne, že je tvůj dotaz naprosto blbej!

I když jsem byl „uprostřed temnoty“ když jsem se snažil zprovoznit joystick ve hře, tak jsem nepolevoval v odhodlání.

Zároveň mýmu AI parťákovi bylo celkem šumák, že je asi deset večer a bylo by záhodno jít spát. Taky je mu jedno, když se ho znova a znova zeptáš na tu samou otázku.

Prostě tě dovede tam, kam ty mu řekneš. A ty se u toho budeš cítit mocně.

A pokud jsi to dočetl až sem, tak pokud máš Linux, tak deb balíčky hry Eidolon Drift připravil Vitex za pomoci svého AI parťáka.

Děkujeme a z rádia posíláme písničku!

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *