PavelZanek.com
article Článek

8 min čtení

Z mého počítače do rukou týmu: první společný projekt se Starter Kitem

Osm lidí, z toho jen tři programátoři, a jeden víkend na ověření nové aplikace. Při teambuildingu jsme poprvé společně vyzkoušeli druhou verzi našeho firemního Starter Kitu a vývoj s AI agenty. Pro mě bylo nejsilnější vidět, co na základu, který jsem měsíce připravoval, dokázali vytvořit ostatní.

Z mého počítače do rukou týmu: první společný projekt se Starter Kitem

V posledních týdnech a měsících jsem věnoval velkou část svého času vývoji druhé verze našeho firemního Starter Kitu. Před víkendovým teambuildingem jsem dokončoval jeho RC vydání — kandidáta na finální verzi, kterého jsme chtěli vyzkoušet při společné práci na konkrétním zadání.

Na konci víkendu jsem pak viděl něco, na co jsem dlouho čekal: projekty postavené na tomto základu běžely na počítačích kolegů a obsahovaly funkce, které během našeho setkání vytvořili.

Po dlouhé době věnované návrhu, vývoji a ověřování na vlastním stroji to pro mě byl výjimečný pocit. Společný základ začal sloužit dalším lidem a já mohl přímo vidět výsledky jejich práce.

Od návrhu k první společné zkušenosti

V předchozím článku jsem popisoval, jak přemýšlím o firemním CMS a společném základu aplikací na Laravelu. Věnoval jsem se rozdělení na jádro, pluginy, šablony a projektové úpravy i tomu, co mi dalo zabrat při návrhu aktualizací a rozhraní pro vývojáře.

Pro někoho, kdo pojem Starter Kit nezná, jde o připravený základ pro tvorbu aplikací. Spojuje opakovaně potřebné části, aby je vývojáři nemuseli při každém novém projektu vytvářet znovu.

Současná podoba vychází také ze zkušeností s první verzí. Ta nám přinesla užitečné poznatky, které jsme mohli promítnout do nového návrhu. Druhá verze tak navazuje na to, co jsme se už naučili.

Teambuilding byl příležitostí vyzkoušet tento základ při společné práci a zjistit, jak se s ním pracuje lidem, kteří ho sami nenavrhovali.

Osm lidí a společné zadání

Sešlo se nás osm a zkušenosti s programováním jsme měli velmi rozdílné. Jen tři z nás jsou programátoři s hlubšími znalostmi vývoje. Zbývajících pět se programování profesně nevěnuje: někteří k němu mají blízko, jiní s ním před tímto víkendem neměli prakticky žádnou zkušenost.

Na úvod jsme si řekli, jak využíváme AI a jak ji zapojujeme do své každodenní práce. Potom jsem měl prezentaci připravovaného Starter Kitu, který nám má usnadňovat vývoj klientských projektů.

Konkrétní postupy kolegů ani obsah interních diskusí zde rozebírat nebudu. Jsou součástí našeho firemního know-how. Stejně tak zůstává neveřejný samotný kit i podrobnosti aplikace, na které jsme pracovali.

Mohu ale říct, že šlo o aplikaci pro marketing. Jejím cílem je usnadnit firemní proces složený z několika kroků tak, aby jej bylo možné obsloužit na pár kliknutí.

Pro společný vývoj jsme měli konkrétní zadání a současně několik otázek k ověření: dokážeme pomocí vybraných technologií a napojení na další služby dosáhnout zamýšleného výsledku? A jak nám při tom pomůže připravený společný základ?

Co jsme za víkend skutečně ověřili

Výsledkem byl pilotní projekt pro ověření konceptu, často označovaný jako proof of concept. Vyzkoušeli jsme si Starter Kit i možnosti technologií a napojení, které jsme pro zamýšlenou aplikaci potřebovali.

Jednotlivé části jsme rozdělili mezi kolegy a menší týmy. Každý měl vymezenou oblast a předem určené funkce, kterým se věnoval.

Pro tuto fázi bylo důležité, že jsme mohli pracovat nezávisle. Přestože mají jednotlivé kroky ve výsledné aplikaci navazovat na sebe, jejich možnosti jsme zatím dokázali ověřovat samostatně. Propojení všech částí do jednoho celku nebylo podmínkou tohoto prvního ověření.

Na konci jsme proto hodnotili především výsledky jednotlivých částí a to, co nám řekly o proveditelnosti celého záměru. Kompletní průchod propojenou aplikací je další krok.

Rozložené stavební části domu a jejich sestavená podoba jako metafora modulární aplikace na společném základu.

Společný základ umožňuje pracovat na jednotlivých částech nezávisle. Jejich propojením pak vzniká výsledný celek.

Vývoj s AI agenty jako součást základu

Starter Kit od začátku připravuji pro způsob práce, při kterém vývoj probíhá prostřednictvím AI agentů. Používám pro něj označení AI-first development. AI agenti zde fungují jako nástroje umělé inteligence, které podle zadání pomáhají vytvářet a upravovat kód aplikace.

V praxi to znamená, že agent dostává vedle zadání také kontext projektu: návody, pravidla, popis dostupných možností a připravené dovednosti pro konkrétní úkoly. Má tak z čeho vycházet při rozhodování, kam nová funkce patří a jak ji do aplikace zapojit.

Právě přípravě tohoto kontextu jsem věnoval hodně pozornosti. Znalosti o fungování společného základu musí být dostupné i mimo hlavu jeho autora. Jinak by se kolegové při každém rozšíření museli vracet ke mně a zjišťovat, jak jsem určitou část zamýšlel.

Během víkendu jsme tento přístup využili při práci na jednotlivých funkcích. Pro mě to byla příležitost sledovat, co s připraveným základem dokážou vytvořit ostatní.

Spuštění projektu: AI instalátor a drobné dořešení přístupů

Jediný zádrhel při sestavování projektu z několika privátních GitHub repozitářů se nakonec vyřešil drobnou úpravou oprávnění na straně GitHubu. Nešlo o chybu Starter Kitu. Při tomto pilotním nasazení jsme si potřebovali ověřit přístupy k jeho jednotlivým částem i z účtů kolegů.

Na samotné rozběhnutí projektu přitom kit připravený byl. Jeho součástí je AI instalátor, který pomáhá s instalací a zprovozněním na pracovním počítači. Počítá s prostředím macOS na MacBoocích i s Windows a Linuxem, aby kolegové měli při úvodním nastavení oporu bez ohledu na používaný systém.

Když společný základ dlouho připravuji na vlastním počítači, potřebná oprávnění a část nastavení už mám vyřešené. Použití na dalších strojích nám umožnilo ověřit i tuto část společného startu. Instalátor pomáhá s přípravou prostředí, přístup k privátním repozitářům ale stále závisí na správně nastavených oprávněních.

Nejsilnější moment: výsledky na počítačích kolegů

Největší radost mi udělalo závěrečné představení toho, co jednotlivci a menší týmy během víkendu vytvořili. S přidělenými částmi si nakonec víceméně poradili všichni, včetně kolegů bez předchozí programátorské zkušenosti. Právě vzhledem k rozdílným výchozím znalostem pro mě měly jejich výsledky zvláštní váhu.

V rámci tohoto pilotu tak připravený základ a práce s AI agenty umožnily zapojit do tvorby aplikace i lidi, kteří se vývojem běžně nezabývají.

Viděl jsem projekty postavené na našem společném základu, běžící na počítačích kolegů. A v nich konkrétní výstupy včetně složitější logiky. Po týdnech a měsících práce na druhé verzi kitu to byl hmatatelný posun.

Podle své předchozí zkušenosti bych u některých z těchto funkcí bez pomoci AI agentů počítal s několika dny, možná i týdny vývoje. Během víkendu jsem mohl vidět jejich první funkční podobu.

Je to moje osobní zkušenost z tohoto pilotu, nikoli měření rychlosti vývoje. Do výsledku se promítlo soustředění celého týmu, rozdělení zadání, připravený základ i práce s AI. Přesto na mě množství a složitost vzniklých výstupů udělaly silný dojem.

Co si z víkendu odnáším

Víkend nám umožnil ověřit možnosti zamýšlené aplikace a vyzkoušet Starter Kit při společné práci osmi lidí.

Pro mě osobně byl také důležitým mezníkem ve vývoji druhé verze. Zkušenosti z předchozího kitu, měsíce příprav a přemýšlení nad jeho podobou se začaly promítat do práce dalších kolegů.

V předchozím článku jsem psal, co od společného základu očekávám. Z tohoto teambuildingu si odnáším první společnou zkušenost s tím, jak tato očekávání obstojí při konkrétním zadání.

A hlavně radost z toho, že základ, který jsem dlouho připravoval, už pomáhá ostatním vytvářet vlastní řešení.

alternate_email

Zůstaňme v kontaktu

Odebírejte novinky ze světa Laravelu a infrastruktury přímo do své schránky.