Zum Inhalt springen

Sdílený commit vs. vlastní větev: Kdy týmový Git funguje

Aus TerraDuniaWiki

Zachyťte kontext dřív, než se ztratí Nejčastější chybou je, že začnete od řešení. Někdo řekne „Zvyšte odhady" a všichni přikyvují, jenže nikdo neví, proč vlastně odhady selhávají. Místo toho nechte každého člena týmu napsat tři věty o tom, co se dělo v uplynulém období, a to před schůzkou. Můžete použít jednoduchou tabulku se sloupci: Co se povedlo, Co se nepovedlo, Co nás překvapilo. Důležité je, aby se popisovaly situace, ne lidé. Teprve když máte fakta na stole, můžete se ptát na příčiny a hledat společná řešení.

Typickou chybou je, že vývojáři zapomenou před sloučením aktualizovat svou větev, a pak řeší velké konflikty. Také se vyhněte commitům s nesmyslnými zprávami jako 'oprava' nebo 'update'. Každá zpráva by měla být natolik konkrétní, aby z ní bylo jasné, co a proč se mění. Pokud potřebujete změnit více nesouvisejících věcí, rozdělte je do samostatných commitů. Pravidelná komunikace v týmu o tom, kdo na čem pracuje, také snižuje riziko kolizí.

Když se řekne optimalizace SQL dotazů, většina vývojářů si představí přidání indexu. To je sice klíčový krok, ale často se zapomíná na to, že samotná struktura dotazu dokáže výkon ovlivnit stejně výrazně. Než začnete přidávat indexy, podívejte se na to, co dotaz skutečně dělá. Mnozí se spokojí s tím, že dotaz vrátí správná data, ale už neřeší, kolik zbytečné práce databáze vykoná navíc. Přitom stačí pár drobných úprav, aby se doba odezvy zkrátila na zlomek původní hodnoty.

Když tým přejde na Git, většina problémů nevzniká z nedostatku znalostí příkazů, ale ze špatně nastaveného workflow. Nejčastější chybou bývá, že všichni vývojáři pracují přímo na hlavní větvi a změny se prolínají bez kontroly. Přitom stačí dodržovat pár pravidel, která práci zpřehlední a zabrání konfliktům.

Častou chybou je odhadovat pouze podle „čistého" času, který byste potřebovali, kdyby vše proběhlo hladce. Realita ale vypadá jinak. Přidejte rezervu na hledání chyb, na nejasné požadavky a na komunikaci. Zkušení vývojáři často používají pravidlo, že k hrubému odhadu přidají 30–50 % času na skryté činnosti. Není to univerzální vzorec, ale dobrý startovní bod, který pak upravíte podle konkrétního projektu.

Nakonec si dejte pozor na implicitní konverze typů. Když porovnáváte textový sloupec s číslem, databáze musí každou hodnotu převést, což zabrání použití indexu. Stejně tak porovnávání řetězců s různou znakovou sadou může být pomalé. Pravidelně sledujte výkon dotazů, které běží dlouho, a analyzujte jejich plány. Optimalizace není jednorázová činnost – s rostoucím objemem dat se chování mění a to, co fungovalo před měsícem, nemusí fungovat dnes. Důležité je také testovat na datech podobné velikosti jako v produkci, protože testování na malém vzorku často skryje problémy s výkonem.

Na závěr si dejte pozor na to, abyste nesklouzli k hodnocení, ale zůstali u pozorování. Místo „Ty jsi zase nesplnil deadline" řekněte „V úkolu č. 4 došlo ke dvoudennímu zpoždění, co bylo příčinou?" Tento posun od obviňování k analýze umožní otevřenou diskuzi, ze které vzejdou opatření, která tým skutečně přijme. Až příště uvidíte, že někdo začne mluvit o tom, kdo za co může, připomeňte celé skupině pravidlo: zaměřujeme se na proces, ne na osoby.

def zakaznik():

Důležité je také omezit počet sloupců, které skutečně potřebujete. Místo SELECT * vyjmenujte jen potřebné sloupce. Tím se zmenší objem přenášených dat a databáze může využít pokryvný index, kdy jsou všechny potřebné hodnoty přímo v indexu a nemusí sahat do tabulky. Když potřebujete jen počty, použijte COUNT s podmínkou, ale vyhněte se COUNT(*) na velkých tabulkách bez filtru. Pokud potřebujete stránkování, vyhněte se OFFSET s velkým číslem – místo toho si zapamatujte poslední hodnotu klíče a použijte ji v podmínce WHERE. Tím se databáze vyhne procházení všech předchozích řádků.

Stačí pár řádků CSS a layout se vám rozsype na mobilu i na širokém monitoru. Přitom nejde o to psát víc kódu, ale používat moderní nástroje s rozmyslem. Flexbox i CSS Grid mají jasně dané případy, kdy se hodí, a když je zkombinujete správně, získáte responzivní design, který se přizpůsobí bez jediného media query. Největší chyba začátečníků? Berou Grid jako „nový Flexbox" a snaží se s ním postavit všechno. To je cesta k frustraci.

Při samotné retrospektivě pak dejte prostor každému členovi týmu, a to rovnoměrně. Tichý kolega, který mlčí, protože ho přerušil extrovert, má často nejcennější postřehy. Vyhraďte proto pevný časový limit, třeba pět minut na osobu, a během něj nikdo neskáče do řeči. Pokud se objeví ostrá kritika, nechte ji zaznít a hned se zeptejte: „Co by podle tebe pomohlo?" Tím se vyhnete tomu, aby se schůzka proměnila v diskuzi o pocitech bez konkrétního výstupu.