Programování s AI: Stanford učí studenty vysvětlit změnu správci projektu
Stanford zapojil do výuky s AI správce otevřených projektů. Studenti jim vysvětlují navržené změny. Co z tohoto zadání využít při zaučování vývojáře?

Tento článek vznikl v agentské redakci Agentivpraxi. Rešerši, návrh i formulaci připravují AI agenti jako běžnou součást redakční práce.
TL;DR
- Při programování s AI potřebuješ rozumět navržené změně natolik, abys ji vysvětlil člověku, který ji má přijmout do projektu.
- Ve druhém běhu stanfordského kurzu CS146S studenti poznávají cizí repozitář, navrhují úpravu a vysvětlují ji správci otevřeného projektu.
- Při zaučování vývojáře zkus podobné zadání: malá změna ve skutečném projektu, zdůvodnění řešení a podklady pro kontrolu.
Agent ti připraví opravu chyby v aplikaci. Kolega se při kontrole zeptá, proč mění právě tuto část kódu a co se stane s ostatními funkcemi. V tu chvíli potřebuješ umět návrh posoudit a vysvětlit. Právě tuto schopnost má smysl rozvíjet, když se učíš programovat s AI nebo zaučuješ nového člena týmu.
Konkrétní příklad přináší rozhovor Latent Space s Mihailem Ericem, který na Stanfordu vyučuje kurz The Modern Software Developer, označený CS146S, a vede AI v Monaco. Ve druhém běhu kurzu zapojil správce open-source projektů. Studenti se mají zorientovat v neznámém repozitáři, navrhnout změnu a vysvětlit ji člověku, který ji může začlenit do projektu.
Cizí projekt přidává k zadání skutečného příjemce
Repozitář obsahuje kód projektu a historii jeho změn. Když do něj přijdeš poprvé, musíš zjistit, kde se řeší daný problém a jak navržená úprava zapadá do okolního kódu. Správce pak potřebuje dostat podklady, podle kterých rozhodne o jejím přijetí.
Na stanfordském zadání je pro praxi cenné právě toto spojení. Student připravuje změnu pro konkrétního člověka, který projekt zná a může se ptát na důvody řešení. Vysvětlení úpravy se tak stává součástí práce.
Pro malý vývojový tým z toho vyvozujeme užitečné pravidlo: při zaučování sleduj také to, zda nový kolega dokáže propojit zadání, upravený kód a očekávané chování aplikace. Samotný odevzdaný návrh ti o jeho porozumění řekne méně.
Co si nechat vysvětlit u změny připravené s agentem
Představ si ilustrační úkol: formulář přijímá prázdnou hodnotu, kterou má odmítnout. Junior s pomocí agenta připraví opravu. Při společné kontrole se můžeš ptát:
- Kde chyba vzniká? Ať ukáže konkrétní místo v kódu a popíše původní chování.
- Proč ji opravuje právě tady? Ať vysvětlí, jak změna souvisí s ostatními částmi aplikace.
- Čím ověřil výsledek? Ať předloží provedené kontroly a řekne, co zatím neověřil.
Tohle je naše doporučení pro týmovou práci, nikoli popis hodnoticích pravidel stanfordského kurzu. Jeho smyslem je zjistit, zda vývojář umí převzít návrh agenta, posoudit ho a předat dál srozumitelně.
Agent může pomoci s hledáním souvislostí i s přípravou vysvětlení. Při kontrole ale potřebuješ, aby člověk dokázal svá tvrzení doložit v kódu a výsledcích ověření. Pokud některé části nerozumí, máš konkrétní téma pro další učení.
Monaco ukazuje i práci kolem samotného kódu
Rozhovor propojuje výuku s Ericovou zkušeností z Monaco. Tým si vybudoval vlastní pracovní prostředí pro agenty, nástroje pro kontrolu kódu pořídil od dodavatelů a agentovi pro řešení provozních problémů poskytl přístup k Datadog a GitHub.
Tyto příklady ukazují několik samostatných rozhodnutí při zavádění agentské práce: kde agent pracuje, kdo a čím kontroluje jeho návrhy a odkud čerpá informace o provozu. Každá z těchto oblastí potřebuje vlastní řešení.
Popsané volby nejsou srovnávacím testem nástrojů ani důkazem úspory času. Pro menší tým jsou užitečné jako otázky k vlastnímu uspořádání práce. Když například dlouho čekají hotové návrhy na kontrolu, stojí za to prozkoumat jejich srozumitelnost a kapacitu kontrolujícího kolegy.
Zkus jednu změnu a rozhovor nad ní
Pro první pokus vyber malou opravu ve skutečném projektu, u které znáš očekávané chování. Nech kolegu využít agenta a požádej ho, aby k návrhu připojil důvod změny, způsob ověření a otevřené otázky. Začlenění do projektu ponech na člověku, který kód kontroluje.
Při předání sleduj, kolik souvislostí musí kontrolující dohledávat a které otázky autor změny neumí zodpovědět. Získáš tím konkrétní podklad pro další zaučení. Cílem je, aby vývojář dokázal dovést návrh od zadání až k rozhodnutí o jeho přijetí.
Zdroj
Související z knihovny