Zpět na domů

AI-kód v devtools: lekce inženýra Google o Claude

Inženýr Google Lalit Maganti popsal vývoj syntaqlite s Claude Code: první iterace na C selhala kvůli chaosu, druhá na Rust s manuální kontrolou uspěla. AI je dobrý pro implementaci, ale slabý v architektuře. Klíč – testy a review.

250 h s Claude: proč inženýr Google vyhodil AI-kód
Advertisement 728x90

# Inženýr Google o pastích AI agentů v devtools: od spaghetti kódu k refaktoringu v Rustu

Inženýr Google Lalit Maganti strávil tři měsíce a ~250 hodin vývojem syntaqlite — sady nástrojů pro SQLite: parseru, formátovače, linteru a LSP serveru. První přístup s plnou delegací na Claude Code vedl k neřiditelnému kódu, který musel zahodit. Přechod na Rust s AI jako autocomplete dal fungující release 0.1.

První iterace: delegace na AI a chaos v kódu

Maganti začal s maximální automatizací: Claude navrhoval a implementoval, autor působil jako manažer. Za měsíc vytvořili:

  • Parser na C.
  • Formátovač.
  • Webové rozhraní.
  • 500+ testů.

Výsledek fungoval funkčně, ale revize odhalily problémy:

Google AdInline article slot
  • Funkce byly chaoticky rozházené po souborech.
  • Moduly narostly na tisíce řádků.
  • Pipeline pro extrakci kódu ze zdrojů SQLite se stal nezrozumitelným i pro autora.

Kódová báze se proměnila v 'spaghetti'. Řešení: kompletní stržení a restart.

Druhá iterace: Rust, ruční návrh, AI autocomplete

Po změně stacku na Rust si Maganti vzal architekturu na sebe. Claude byl použit pro generování kódu podle přesných specifikací s přísnou revizí.

Klíčové praktiky:

Google AdInline article slot
  • Automatické testy: Driver kontroloval každý SQL dotaz na 1390 upstream testech SQLite a porovnával s parserem syntaqlite.
  • Průběžný refactoring: Každá změna procházela ruční kontrolou.
  • Žurnálování: Denník (~4000 slov), transkripty sezení, historie commitů.

Jádro sestaveno v únoru, release 0.1 — polovina března. Projekt, který dozrával 8 let, realizován jako side-projekt.

Problémy AI agentů: od závislosti k ztrátě kontroly

Maganti přirovnává práci s Claude k hracímu automatu:

  • 'Ještě jeden prompt' ho vtáhl až do noci.
  • Únava snižovala kvalitu promptů.
  • Ztráta 'cítu' pro kódovou bázi vedla k roli manažera nad cizím kódem.

Komunikace se lámal: vágní popisy způsobovaly chybné interpretace. AI je silný na úrovni funkcí/tříd, ale slabý v architektuře, designu API a kontextu projektu.

Google AdInline article slot

Co je důležité

  • AI posiluje implementaci, ale nenahrazuje návrh: modely nemají 'chuť' a historii.
  • Plná delegace vede k neřiditelnému kódu: ruční revize je nutná.
  • Rust + AI autocomplete je efektivnější než C + agent: architektura rozhoduje.
  • Testování na upstream testech je kritické pro parsery SQLite.
  • Žurnálování urychluje iterace: publikujte deníky místo one-shot příběhů.

Doporučení pro middle/senior vývojáře

  • Používejte AI pro rutinu: autocomplete, refactoring malých částí.
  • Zachovávejte kontrolu nad architekturou: modely nerozumí dlouhodobému kontextu.
  • Implementujte automatizované pipeliny: porovnávání s referenčními testy (SQLite upstream).
  • Fixujte sezení: analyzujte prompty, commity, chyby.

Přístup Magantiho ukazuje: AI urychluje side-projekty, ale vyžaduje disciplínu. Syntaqlite je příkladem rovnováhy člověka a agenta v složitých devtools.

— Editorial Team

Advertisement 728x90

Číst dál