Když AI píše kód za vás – kdy to funguje a kdy už to není dobrý nápad
Když AI pomáhá s kódem: Kdy je to užitečné a kdy to nestačí
V posledním roce se AI nástroje pro vývojáře dostaly do popředí. Mnoho lidí si všimlo, jak rychle se s nimi dá pracovat. Zároveň ale vyvstávají otázky, co vlastně běží v produkci a jestli je takový kód dostatečně spolehlivý.
Problém není v tom, jestli AI umí psát kód. Umí. Otázka zní, jestli máme jasná pravidla, podle kterých rozlišujeme, pro jaký účel kód vzniká.
Jigy a produkty – jednoduché rozlišení
Vezměme si příklad z truhlářství. Tam se rozlišují dvě věci: pomůcky, které si člověk vyrobí sám pro sebe, a hotové výrobky, které prodává dál.
Pomůcka (jig) vzniká rychle, slouží jen konkrétnímu účelu a nikdo jiný na ni nezávisí. Pokud se přestane dovedně použivat, slouží jen k jednomu projektu. Když se potře, dalšího uživatele to netrápí. Hotový produkt naproti tomu musí být pevný, bezpečný a spolehlivý – protože ho používají ostatní.
Mnoho vývojářů si ale před psaním kódu neuvědomí, kterou kategorii vlastně buduje.
Když AI pomáhá s jigy
Představte si, že potřebujete jednoduchý nástroj pro vaši internou pipeline. Máte specifický tok práce, který nikdo jiný nemá. Kód je weird, přesně pro vás a není důvod, aby byl univerzálně použitelný.
Takový nástroj je jig.
S AI se dá rychle vytvořit. Například požádáte model: „Vygeneruj CLI nástroj pro parsing Terraformu a pro reporting.“ V něchuděchách dostanete výsledky. Neřešíte edge cases, neplánujete škálování. Pouze potřebujete, 1x použitelný nástroj.
Speed gains jsou tady real. Od idea až po funkční kód to trvá hodiny místo days. AI pomáha pro tento use case – ne pro něco jiného.
Když AI pomáha pro produkty
Když budujete něco, co budou používat jinere vývojáři, klienti nebo open-source komunita, pak se jedná o produkt.
Přenýk je úplně jiný. AI se dá použít,但 v tomto Fall je integrace jiný. Je nutné:
- Plně rozumět kódové base. Neznamená to, že každou line musíte napsat. Ale musíte být schopni architekturu představit a tradeoffs vysvětlit.
- Udržovat standards. Security, accessibility, error handling – všechny musí být řešeny,因为 uživatelé závisí na výsledku.
- Stát za reputací. Když shipujete produkt, je to vaše jméno a vaše commit. Změna taky vyvážena s jaký kód acceptujete.
The Distribution Problem
Z venku vypadají jigy a produkty stejně. Když někdo darační CLI tool z npm nebo GitHub, větší nevidění př, nevidění z ustea.