Hack Your Weekend

Od nápadu k aplikaci za 48 hodin 🚀. Třetí víkend v září jsem strávil v brněnském Clubco CZ na hackatonu #HackYourWeekend. Ve skupině 60 lidí rozdělených do 8 týmů jsme od pátečního do nedělního odpoledne vyvíjeli osm aplikací řešících reálné potřeby. Vývoj probíhal v AI/LLM supported vývojových prostředích (v našem týmu VS code + Claude Code). Účastníci byli jak vývojáři, kteří s AI už vyvíjí, tak i lidi jako já, co si něco takového chtěli do hloubky vyzkoušet.
Je totiž rozdíl nahodit MVP nějaké appky v Lovable na jeden prompt anebo strávit víkend s Claude Code Max verzí, verzováním, MCPčky, dokumentací, stagingem, focusem na bezpečnost appky apod. V našem týmu jsem se staral o backend, deployment a tracking appky (tech stack React + Next.js + Supabase postgres DB + Vercel hosting + Git + tracking pomocí Cloud Run endpointu do BigQuery a dashboard a interpretace dat přes BigQuery MCP).
Akci organizoval Jindrich Faborsky (Jindrova asi nejmenší akce:). Jindřich do AI assisted vývoje dost šlape, fakt tím žije a je super, že svoji cestu sdílí a onboarduje do toho jak komunitu, tak lidi zvenku. Pro intro do tématu doporučuju Jindrův Kurz AI first - autentický kurz o základních principech, jak něco takového dělat, v jakých nástrojích apod. Bylo super, že na akci byli i mentoři z různých oblastí odbornosti, kteří týmy supportovali jako Petr Bureš, Lukas Mehnert, Dima Melnik nebo Petr Simecek, který nám pomáhal s Gitem. Týmy aktivně podporoval i Jindra - některým týmům pomáhal s vývojem, strategií, nebo je (jako třeba nás) motivoval do ještě odvážnějších funkcionalit 🙂.
Na #HackYourWeekend jsme v našem Keshu týmu (Klára Fottová, Jiří Pavlas, Petra Schönfeldová, Michal Pecánek, Vito Nikolič + já) vyvíjeli aplikaci pro listing a vyhledávání dog-friendly míst à la European Coffee Trip (Keshu byl pejsek/maskot). Moje role byla backend development a deployment aplikace (pro mě splněný sen vyzkoušet si roli backend vývojáře:). Další role byly design, development, business a marketing. Navrhli jsme si hezký datový model (tip: schéma bylo v Mermaid, což umí Git automaticky udělat z .md souboru) a než na appku nastoupili kolegové, odbavil jsem prvních 30 commitů.


Náš tech stack byl React + Next.js + Postgres DB (Supabase) + Vercel hosting + Git. V neděli, kdy už byla appka deploynutá v základu včetně adminu a parťáci pracovali na funkcionalitách a designu (respekt Michal Pecánek za Tvoji funkční geolokaci 👌), jsem ještě udělal custom tracking přes Cloud Run a BigQuery.



Ostatní týmy vyvíjely například aplikaci na kontrolu počasí při předletové přípravě pro hobby letce (Briefly.ai) nebo aplikaci pro sdílení tras a vyjížděk pro cyklo komunitu (Bike meet). Z ostatních aplikací mě nejvíce zaujala aplikace s pracovním názvem “Střídavka”, která by měla nabídnout řešení pro organizaci střídavé péče mezi (ex)partnery, řešit předávání dětí, změny v programu apod. Silné téma a appka, která má fakt smysl a přínos, a držím palce, aby její vývoj pokračoval dál.
Zajímavosti z vývoje a lesson learned
Vyvíjet jsme museli nakonec s Claude Code Max, základní PRO vás po pár hodinách odpojí, což na hackatonu není úplně super + rychle vystřílí tokeny:(. Zatím si nedovedu představit, jak by se takto vyvíjelo nějaké fakt robustní řešení tak, aby model udržel kontext pro celé řešení... asi nějak komponentově.
Super bylo mít čas si osahat řadu MCPs. Supabase i Vercel má svoje MCP, což vývoj dost ulehčuje, plus jsme zapojili další MCP (Context7, Sentry apod.). Upřímně, na budoucnost služeb, které MCP nemají a neplánují ho udělat, bych moc nesázel.
V týmu nám dělalo problém verzování. Neměli jsme moc dobrý systém branches a chyběly nám zkušenosti, jak to všechno správně mergovat ve skupině 6 lidí. Mně s tím dost pomáhalo to, že Claude byl napojený na Git. Commitoval jsem rovnou z něj a nechal jsem ho předem zkontrolovat, jestli můj commit nerozbije build... nebylo to úplně profi a testy by se měly dělat jinak, ale neměli jsme moc času to odladit.

Co mi moc nefungovalo, byly projektové instrukce v .claude.md. Chtěl jsem, aby po každém updatu funkcionality Claude sám updatnul prod.md, ale nefungovalo mi to. Fungovalo to s agentem, ale bylo potřeba ho pustit.
Tracking aplikace
Tracking aplikace jsme udělali vlastní (s GA4 by to bylo moc easy:). Eventy jsme posílali přes secure cloud endpoint na Cloud Runu přímo do BigQuery. Na reálném case jsem si osahal Claude Code endpoint, který zpracuje příchozí event a zapíše ho do BigQuery, a zároveň jsem napojil a otestoval BigQuery MCP. GCP má něco, čemu říkají MCP Toolbox for Databases, kde je několik MCP pro práci s daty včetně BQ MCP. Díky tomu jsme !napromptili! dashboardy a byli jsme ready i na on the fly dotazy na data (zatím jen v konzoli, ale další krok by byl obalit UI a deploynout to do adminu appky).

Na akci byli lidi z Kebooly (díky za jejich support a sponzoring 🙏) a Keboola MCP je už prý ready na obsluhu většiny tasků včetně end to end zadání (to jsem nevěděl a chystám se vyzkoušet).
Claude Code + Gemini nad jedním projektem
Vyzkoušel jsem si kombinovat vývoj pomocí dvou modelů na stejné appce. Tracking aplikace jsem vyvíjel zvlášť v Gemini CLI a využíval Google Cloud SDK. Z Claude Code jsem pak dělal deploy, protože se mi nechtělo deployovat z dvou různých CLI a rozbíhat v Gemini Vercel MCP. Trochu jsem se bál, jestli bude fungovat to, že dva modely dělají na jedné appce.
Pokud ale v tom druhém modelu děláte nějakou komponentu a neděláte zásadní změny + změny poctivě dokumentujete, aby si to druhý model vždy načetl, tak si myslím, že je to v pohodě.
Změny jsem dokumentoval do tracking/tracking.md a vždy nechal Claude projet, co Gemini udělal a checknout, že to je za něj ok.
Co jsem se naučil a co si z hackatonu odnáším pro svoji práci a svůj rozvoj
Z akce jsem odjížděl unavený, ale spokojený a vděčný za šanci se zúčastnit. Vývoj s AI jsem si vyzkoušel už před hackatonem, protože FOMO. Z Brna jsem si odnesl hlavně nové zkušenosti, jaké to je, když se vyvíjí něco v týmu. A taky s ovládáním věcí v Google Cloud Platform přímo z Gemini nebo přípravu příkazů pro Cloud Shell.
Upřímně nevím, jestli bych si troufnul udělat takto appku s ambicí obsluhovat fakt hodně uživatelů bez nějakého lidského code review. Na hackatonu ale byli lidé, kteří mají ambice s appkou uspět a díky hackatonu si nyní umí udělat sami MVP a rozletět se. Pro mě to má spíše smysl na různé dílčí datové tasky, integrace systémů, testovací agenty, utility, pipelines apod. Prostě na věci, které nejsou kritické, ale ušetří nám v MeasureDesign čas.
Protože to ultra demokratizuje použití technologií a odstraňuje bariéry způsobené tím, že nějakou technologii neumím detailně nebo nemám čas v ní udělat nějaké složitější řešení. Důležité je vědět, co umí, co od ní chci a co si mám pohlídat. Fungovalo nám to, že pokud AI držíte v mezích, aby model nebyl moc kreativní a vývoj máte rozfázovaný do detailních fází, které odbavuje, tak jsou výsledky dobré.



Fun fact na závěr - v Brně jsem spal obě noci v autě 🚘 na ulici před Clubcem, protože jsem v pátek v 9 večer zjistil, že ubytko mám zaplacené ne od 19.9 ale od 19.10 🤦. Zkoušel jsem spát v zasedačce, když už je to hackaton (jako kolega na fotce), ale tam jsem neusnul, takže to jistil bydlík. Nakonec to nevadilo, naopak - stejně nebyl moc čas spát, natož cestovat někam na ubytko:).




















