<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.rettungsdienstblog.eu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=MilfordHarcus87</id>
	<title>Rettungsdienst-Wiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.rettungsdienstblog.eu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=MilfordHarcus87"/>
	<link rel="alternate" type="text/html" href="https://wiki.rettungsdienstblog.eu/index.php?title=Spezial:Beitr%C3%A4ge/MilfordHarcus87"/>
	<updated>2026-10-12T04:34:53Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.rettungsdienstblog.eu/index.php?title=5_pravidel,_jak_zav%C3%A9st_kanban_tak,_aby_nez%C5%AFstal_jen_na_n%C3%A1st%C4%9Bnce&amp;diff=454863</id>
		<title>5 pravidel, jak zavést kanban tak, aby nezůstal jen na nástěnce</title>
		<link rel="alternate" type="text/html" href="https://wiki.rettungsdienstblog.eu/index.php?title=5_pravidel,_jak_zav%C3%A9st_kanban_tak,_aby_nez%C5%AFstal_jen_na_n%C3%A1st%C4%9Bnce&amp;diff=454863"/>
		<updated>2026-10-11T14:26:58Z</updated>

		<summary type="html">&lt;p&gt;MilfordHarcus87: Die Seite wurde neu angelegt: „Nakonec platí, že licence je nástroj, ne cíl. Permisivní licence maximalizují použití, copyleft maximalizuje sdílení. Pokud si nejste jistí, začněte permisivně a přejděte na copyleft, dokud jste jediným autorem — později to už možné nebude. Ať zvolíte cokoli, napište to jasně, nahlas a bez výjimek.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Začněte tím, že si popíšete skutečný tok práce, ne ten vysněný. Vezměte posledních deset až patnáct dokončen…“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nakonec platí, že licence je nástroj, ne cíl. Permisivní licence maximalizují použití, copyleft maximalizuje sdílení. Pokud si nejste jistí, začněte permisivně a přejděte na copyleft, dokud jste jediným autorem — později to už možné nebude. Ať zvolíte cokoli, napište to jasně, nahlas a bez výjimek.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Začněte tím, že si popíšete skutečný tok práce, ne ten vysněný. Vezměte posledních deset až patnáct dokončených položek a projděte si, jakými fázemi reálně prošly. Zjistíte, že mezi „v řešení&amp;quot; a „hotovo&amp;quot; existuje čekání na schválení, na podklady nebo na někoho z jiného oddělení. Teprve tyto fáze patří na tabuli. Obecné sloupce jako „to do&amp;quot;, „doing&amp;quot; a „done&amp;quot; schovávají problémy místo toho, aby je odhalily.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Základem je soubor ve složce .github/workflows, obvykle s příponou .yml. V něm definujete, co se má stát při jaké události. Nejčastější spouštěče jsou push na větev main a pull_request. Workflow se skládá z úloh, které běží paralelně nebo v pořadí podle klíčového slova needs. Každá úloha obsahuje kroky, a každý krok je buď hotová akce, nebo příkaz v shellu. Pro začátek stačí jedna úloha, která nainstaluje závislosti, spustí testy a teprve při úspěchu nasadí.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když se požadavky mění, největší problém nebývá počet testů, ale jejich křehkost. Testy, které opisují konkrétní podobu odpovědi nebo přesný sled kroků v UI, se rozbijí při každé úpravě. Řešením je testovat kontrakty: co musí platit na rozhraní mezi vrstvami, ne jak přesně to vypadá uvnitř. Kontraktní testy přežijí změnu implementace, dokud zůstane stejný slib vůči okolí. To výrazně snižuje počet testů, které je nutné přepisovat při každé změně zadání.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Kde lidé nejčastěji chybují První typická chyba je ukládání přístupových údajů přímo do souboru workflow. Klíče, hesla a tokeny patří do tajemství repozitáře, odkud se načítají jako proměnné prostředí. Druhá chyba je nasazovat při každém pushi do jakékoli větve. Produkční nasazení má běžet jen z hlavní větve a ideálně až po schválení. Třetí chyba je ignorování mezipaměti. Pokud pokaždé stahujete všechny balíčky znovu, běh se zbytečně protahuje na minuty. Akce pro cache se nastavuje podle souboru se závislostmi a klíč musí obsahovat hash tohoto souboru, jinak se cache nikdy neobnoví.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pro menší projekt stačí jeden workflow o několika krocích. U většího se osvědčuje oddělit testování, sestavení a nasazení do samostatných úloh. Artefakt z jedné úlohy se předá do druhé, takže se nekompiluje dvakrát. Zároveň je dobré nastavit, aby se staré běhy automaticky rušily, když přijde novější push. Ušetří to frontu a zdroje. Nakonec platí, že pipeline je součást kódu a měla by se verzovat stejně jako aplikace. Každá změna v ní by měla projít stejnou kontrolou jako běžný commit.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Typická chyba je snaha udržet poměr vrstev za každou cenu. Když se požadavky hýbou, poměr se má hýbat také. Klidně mějte více integračních testů než unit testů, pokud je logika tenká a mění se často. Naopak netlačte na rychlost tím, že budete psát křehké testy proti databázi, které padají při každé migraci. Raději používejte testovací datové sady, které se dají snadno přepsat, a izolujte je od produkčního schématu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Typická chyba je přidávat práci do sloupce, který je plný, a tvrdit, že jde o výjimku. Každá výjimka pravidlo zruší. Lepší je mít viditelné pravidlo pro výjimky: kdo je schvaluje, za jakých podmínek a jak dlouho smí trvat. Bez toho se z limitu stane číslo, které nikdo nerespektuje, a tabule se vrátí k seznamu přání.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Každý odhad vývojového úkolu stojí na viditelných činnostech: analýza, psaní kódu, testy. Jenže skutečný čas často spotřebují aktivity, které v zadání nejsou. Když je nezapočtete, odhad se rozpadne a termín přestane platit. Nejde přitom o nic záhadného — skryté činnosti se dají vysledovat a ocenit stejně jako psaní kódu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Copyleft chrání svobodu, kterou sám dává Copyleft zvolte, když nechcete, aby někdo vzal vaši práci, vylepšil ji a zavřel. Platí to pro celé aplikace, ale i pro knihovny, u kterých vám vadí, že by se zlepšení nikdy nevrátila zpět. GPL je vhodná pro samostatné programy, AGPL řeší díru, kdy někdo provozuje upravenou verzi jen jako webovou službu a zdrojový kód nikdy nevydá. LGPL se používá u knihoven, které chcete nechat propojitelné i s uzavřeným softwarem, ale samotné úpravy knihovny musí zůstat otevřené.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Důležité je také ošetřit, co se stane, když krok selže. Ve výchozím stavu se workflow zastaví, ale ne vždy na správném místě. Pokud nasazujete přes SSH, potřebujete klíč bez hesla uložený jako tajemství a známý otisk serveru, jinak se připojení zablokuje na ověření hostitele. Vyplatí se přidat krok, který po nasazení ověří, že aplikace odpovídá. Bez toho se může stát, že pipeline hlásí zelenou, ale web vrací chybu.&lt;/div&gt;</summary>
		<author><name>MilfordHarcus87</name></author>
	</entry>
	<entry>
		<id>https://wiki.rettungsdienstblog.eu/index.php?title=Benutzer:MilfordHarcus87&amp;diff=454862</id>
		<title>Benutzer:MilfordHarcus87</title>
		<link rel="alternate" type="text/html" href="https://wiki.rettungsdienstblog.eu/index.php?title=Benutzer:MilfordHarcus87&amp;diff=454862"/>
		<updated>2026-10-11T14:26:57Z</updated>

		<summary type="html">&lt;p&gt;MilfordHarcus87: Die Seite wurde neu angelegt: „Váš průvodce dílnou i obývákem sází na osvědčené tipy. Píšu o tom, jak skloubit funkčnost s teplem domova. Nejvíc mě baví popisovat postupy krok za krokem.“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Váš průvodce dílnou i obývákem sází na osvědčené tipy. Píšu o tom, jak skloubit funkčnost s teplem domova. Nejvíc mě baví popisovat postupy krok za krokem.&lt;/div&gt;</summary>
		<author><name>MilfordHarcus87</name></author>
	</entry>
</feed>