AI co napíše kód zní skvěle. Než se to zvrtne. Desatero bezpečného vibe codingu ~ Old school blog ~ 28. července
A nebude chybět ani pár užitečných odkazů o tom jak AI a vibe coding mění svět programování.
Čtete Old School Blog. Samostatný text, takový, co stojí za přečtení a víc se blíží blogování než jenom záznamům dění, jako jsou Střípky.
ChatGPT už delší dobu používám pro psaní různorodých skriptů. Nejprve ve Windows pro PowerShell a Python, později na Macu pro terminal/shell a také Python. Vždy šlo o něco, co lze automatizovat, dělám to často a ve finále to tak ušetří hodně času. Místo ručního spouštění stačí spustit skript a ten to udělá. Kdykoliv, rychle, automaticky (příklad viz Jak velké množství souborů třídit do složek podle roku a měsíce?)
Má to nějaká rizika?
Samozřejmě. Má. Třeba jako v těchto dvou případech.
Dva hlavní nástroje pro AI kódování vymazaly data uživatelů po kaskádových chybách- Gemini AI smazalo soubory místo jejich reorganizace. A Replit AI smazala produkční databázi. (Ars Technica)
To, že vám AI napíše nějaký kód nebo ji necháte něco dělat se soubory či daty v počítači může přinést překvapení. Může udělat chybu, může mohutně halucinovat, takže ve výsledku můžete místo uspořádání souborů (příklad s Gemini výše) o všechny přijít.
Osobně si sice nechávám napsat skript, ale slepě ho nepouštím. Kontroluju ho, projdu si, co dělá. Mám výhodu v tom, že jsem “původem” programátor a věci jako PowerShell nebo terminal (shell) na MacOS nejsou problém poznat co dělají. V Pythonu jsem sice sám nikdy nic nepsal, ale opět není těžké pochopit o co ve skriptu.
Do jisté míry samozřejmě, nechci tvrdit, že bych dokázal odhalit nějaké složitější věci, ale prozatím mi to vždy fungovalo a stačilo.
Pokud si nechávám napsat něco co pracuje se sobory či daty (třeba se SQL databázemi), tak si před prvním spuštěním vytvářím zálohu toho, na co bude skript spuštěn.
Módní vibe coding
Vibe coding je “AI-asistovaný styl programování”, kde vývojář pracuje v těsné spolupráci s LLM (velkým jazykovým modelem). Nejde o klasické psaní kódu, ale spíš o konverzační, experimentální proces. LLM generuje většinu kódu, vývojář dodává přirozený jazyk, zpětnou vazbu a cíle a ani nesnaží mít vše pod kontrolou, ale „jede na vlně“ AI výstupů. Výsledkem jsou rychlé prototypy, nápady a funkční ukázky, spíš než strukturovaný produkční kód.
Je asi jasné, že právě zde vznikají a budou vznikat další a další incidenty jako ten popsaný na počátku. S nástupem AI agentů a kódem “který nakonec vůbec nikdo ani neviděl” to bude ještě problematičtější a rozsáhlejší.
Kódovací agenti s umělou inteligencí odstraňují bariéry v programovacích jazycích
DHH o umělé inteligenci, vibe kódování a budoucnosti programování
Desatero bezpečného vibe codingu
Nikdy nespoléhej naslepo – AI může udělat chybu.
Kód vždy čti a pochop, co dělá.
Zálohuj, hlavně u skriptů pracujících se soubory nebo databází.
Testuj nejdřív na kopii nebo ve vývojovém prostředí.
Dávej pozor na
rm -rf,DROP,truncate,delete.Nepouštěj AI k produkci bez kontroly.
Udržuj verzování, diffy a snapshoty.
Nepřejímej řešení bezmyšlenkovitě – AI není guru.
Piš přesná a konkrétní zadání.
Vnímej AI jako juniora – pomáhá, ale potřebuje dohled.
PS: Desatero dala dohromady ChatGPT na základě předložení mého textu (co vidíte před desaterem). Jen ji nejprve bylo nutné vysvětlit co vibe conding je, pamatovala si předchozí vyznamy, tady programování podle pocitu, programování ve flow a ironické označení špatného stylu. Kupodivu dala dohromady i ilustrační obrázek s desaterem, ale zrovna desátý bod se tam nevešel.

