<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki-babylonsignalis.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TammiCheatham</id>
	<title>Babylon SIGNALIS Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-babylonsignalis.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TammiCheatham"/>
	<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php/Special:Contributions/TammiCheatham"/>
	<updated>2026-09-15T05:34:21Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki-babylonsignalis.org/index.php?title=P%C5%99echod_z_MySQL_na_PostgreSQL:_praktick%C3%BD_pr%C5%AFvodce_migrac%C3%AD_datab%C3%A1ze&amp;diff=133602</id>
		<title>Přechod z MySQL na PostgreSQL: praktický průvodce migrací databáze</title>
		<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php?title=P%C5%99echod_z_MySQL_na_PostgreSQL:_praktick%C3%BD_pr%C5%AFvodce_migrac%C3%AD_datab%C3%A1ze&amp;diff=133602"/>
		<updated>2026-08-21T18:48:22Z</updated>

		<summary type="html">&lt;p&gt;TammiCheatham: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Přispívání do open source projektů může být skvělý způsob, jak se učit, budovat si portfolio a spolupracovat s lidmi z celého světa. Ale zejména na začátku je snadné udělat zbytečné chyby, které vás stojí čas i motivaci. Než začnete psát první kód, věnujte čas tomu, abyste projekt pochopili a našli si svou cestu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Prakticky to vypadá tak, že pro funkci, která sčítá dvě čísla, napíšete test, který ověří součet kladných čísel, ale také součet se záporným číslem a součet s nulou. Každý scénář by měl být samostatný test. Tím získáte přehled o tom, který konkrétní případ selhává. Mnoho začátečníků dělá chybu, že testy píší až po dokončení funkce a snaží se pokrýt všechno najednou. Lepší je psát testy průběžně, klidně dřív než samotnou implementaci – pak vám testy ukazují, co má funkce dělat.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pro nasazení na produkci vždy vyžadujte ruční schválení, pokud nejde o kritický projekt. To zařídíte pomocí environment s ochranou – GitHub nabízí možnost přidat schvalovatele, kteří musí build odsouhlasit. Tím předejdete situaci, kdy se automaticky nasadí chybná verze. Zároveň si nastavte retenci běhů a pravidelně kontrolujte logy, abyste měli přehled o tom, co se děje. S GitHub Actions můžete dosáhnout stabilní a transparentní automatizace, ale jen pokud konfiguraci pečlivě promyslíte a otestujete na bezpečné větvi.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Kromě kódu můžete přispívat i jinak. Projektům často chybí dokumentace, překlady nebo testy. Napsat srozumitelný návod, opravit překlep v dokumentaci nebo vymyslet reprodukční scénář pro bug je stejně hodnotné jako nová funkce. A navíc si u toho procvičíte schopnost číst cizí kód a orientovat se v projektu, což se vám bude hodit při každé další spolupráci. Pokud nevíte, kde začít, podívejte se, jestli projekt nemá sekci pro označení problémů s dokumentací nebo s designem.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nezapomínejte na chybové hlášky. Když databáze vrátí chybu, nezobrazujte ji uživateli v plném znění. Chybová hláška může útočníkovi prozradit strukturu tabulek nebo přesné znění dotazu. Místo toho logujte podrobnosti do souboru a uživateli zobrazte obecnou zprávu. Stejně tak si hlídejte, co se dostane do URL parametrů a formulářových polí. Pravidelně testujte svou aplikaci automatizovanými nástroji, které hledají SQL injection, ale nezapomeňte, že žádný nástroj nenahradí  kódu. Zaměřte se na místa, kde se pracuje s databází, a projděte každý dotaz.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když začnete psát první unit test, nejčastější chybou je snaha pokrýt najednou příliš mnoho logiky. Test by měl ověřovat přesně jednu věc – jednu funkci, jednu metodu, jeden scénář. Než začnete, otevřete si kód, který chcete testovat, a napište si na papír tři základní věci: co funkce přijímá, co vrací a jaké má vedlejší efekty. Pokud funkce komunikuje s databází, soubory nebo sítí, test se výrazně zkomplikuje – proto je lepší začít u čistých funkcí, které jen zpracují vstup a vrátí výstup.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Začněte u sebe, ne u žebříčků popularity Pokud vás [https://Www.Thefashionablehousewife.com/?s=zaj%C3%ADm%C3%A1 zajímá] analýza dat nebo strojové učení, sáhněte po Pythonu. [http://jobboard.Piasd.org/author/michalwojcik73/ Jeho syntaxe] je čitelná i pro úplného nováčka a má obrovskou podporu knihoven. Díky tomu se můžete rychle dostat k praktickým úkolům, jako je zpracování tabulek nebo tvorba grafů. Pozor ale na to, že Python má pomalejší běh – pro velké aplikace nebo hry to není ideální volba. Také si dejte pozor na to, abyste se nezasekli jen u „příkazů z tutoriálů&amp;quot; a nesnažili se naučit všechno nazpaměť. Programování je o řešení problémů, ne o memorování.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Na závěr si dejte pozor na dva časté nešvary. Za prvé: nevěřte těm, kdo tvrdí, že existuje jeden správný jazyk. Je to nesmysl. Za druhé: nepodceňujte základy algoritmizace. Můžete se naučit syntaktická pravidla tisíce jazyků, ale bez schopnosti rozložit problém na menší kroky nenapíšete nic užitečného. Začněte proto s jednoduchými úlohami, pište kód ručně, čtěte cizí kód a hlavně se nebojte chyb – ty jsou přirozenou součástí učení.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Během migrace se vyhněte přímému připojení aplikace k nové databázi bez předchozího ověření. Spusťte paralelně obě databáze a porovnejte výstupy na vzorku dat. Dbejte na konfiguraci připojovacího řetězce – PostgreSQL vyžaduje jiné ovladače a často i úpravu konektorů v aplikaci. Po úspěšném importu spusťte ANALYZE, aby optimalizátor měl aktuální statistiky, a ověřte, že indexy fungují správně. Nezapomeňte také na migraci uživatelských účtů a oprávnění – PostgreSQL používá role, zatímco MySQL uživatele.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Struktura úloh a jejich závislostí Workflow se dělí na jednotlivé joby, které běží paralelně, pokud mezi nimi není definovaná závislost. Pro typický CI pipeline mějte job pro build a test, a pokud vše projde, job pro nasazení. Závislost nastavíte pomocí needs, takže nasazení počká na úspěšné dokončení testů. V rámci jobu pak jednotlivé stepy provádějí konkrétní příkazy – instalace závislostí, spuštění testů, build artifactu. Doporučuji rozdělit kroky na menší části, protože potom v logu snadno najdete, kde nastal problém.&lt;/div&gt;</summary>
		<author><name>TammiCheatham</name></author>
	</entry>
	<entry>
		<id>https://wiki-babylonsignalis.org/index.php?title=Jak_efektivn%C4%9B_ladit_JavaScript_p%C5%99%C3%ADmo_v_prohl%C3%AD%C5%BEe%C4%8Di&amp;diff=133269</id>
		<title>Jak efektivně ladit JavaScript přímo v prohlížeči</title>
		<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php?title=Jak_efektivn%C4%9B_ladit_JavaScript_p%C5%99%C3%ADmo_v_prohl%C3%AD%C5%BEe%C4%8Di&amp;diff=133269"/>
		<updated>2026-08-21T18:36:25Z</updated>

		<summary type="html">&lt;p&gt;TammiCheatham: Created page with &amp;quot;Další pastí je ignorování testovacích dat a prostředí. I skvěle napsaný test selže, pokud nemá stabilní vstupní data. Proto si vytvořte pomocné funkce pro generování dat, používejte fiktivní objekty a pro integrační testy připravte izolovanou databázi. Když narazíte na test, který vyžaduje ruční zásah, vždy ho upravte: automatizace má být spolehlivá a opakovatelná. A pokud se vám nějaký test stane nečitelným, raději ho přepišt...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Další pastí je ignorování testovacích dat a prostředí. I skvěle napsaný test selže, pokud nemá stabilní vstupní data. Proto si vytvořte pomocné funkce pro generování dat, používejte fiktivní objekty a pro integrační testy připravte izolovanou databázi. Když narazíte na test, který vyžaduje ruční zásah, vždy ho upravte: automatizace má být spolehlivá a opakovatelná. A pokud se vám nějaký test stane nečitelným, raději ho přepište, než byste měli později rozplétat změť tvrzení.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jak se vyhnout anonymnímu sypání stížností Častou chybou je, že strukturovaná zpětná vazba sklouzne k anonymnímu výpisu problémů bez návrhů řešení. Pokud někdo řekne „nesnáším daily ráno&amp;quot;, okamžitě se zeptejte: „Jak bys to chtěl změnit?&amp;quot; nebo „Co by ti pomohlo, abys to vnímal jinak?&amp;quot; Tím donutíte lidi přemýšlet v řešeních, nejen v kritice. Stejně tak si hlídejte, aby se diskuze nerozpadla na osobní útoky. Když zazní „Petr pořád mešká&amp;quot;, přeformulujte to na „Proces předávání úkolů mezi námi není jasný – co s tím uděláme?&amp;quot; Tím udržíte zaměření na systém, ne na jednotlivce.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pokud přicházíte z čistého JavaScriptu, první setkání s TypeScriptem může působit jako zbytečná byrokracie. Po pár dnech práce si ale začnete všímat, že mnoho chyb, které jste dříve odhalovali až za běhu, se nyní objeví přímo v editoru. TypeScript není samostatný jazyk, ale nadstavba, která do JavaScriptu přidává statické typování. Jeho hlavní přínos spočívá v tom, že umožňuje lépe popsat tvary dat a vztahy mezi nimi, což oceníte zejména u větších projektů nebo týmové spolupráce.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Retrospektiva týmu často skončí u obecných frází a pocitů, ze kterých nevzejde žádná změna. Místo „bylo to dobré&amp;quot; nebo „nestíháme&amp;quot; potřebujete konkrétní data a podněty. Strukturovaná zpětná vazba není o formalitách, ale o tom, že každý člen týmu ví, na co se má zaměřit a jak svůj postřeh podat tak, aby mu ostatní rozuměli. Základem je předem daná osnova, která zabrání chaosu a zajistí, že se dostane ke slovu každý.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Práce s breakpointy a krokováním kódu Nejefektivnější způsob, jak pochopit, co se v kódu děje, je zastavit jeho běh v přesně určeném místě. Otevřete DevTools (obvykle klávesou F12 nebo přes kontextovou nabídku) a přejděte do záložky Sources. Zde najdete všechny načtené skripty. Kliknutím na číslo řádku nastavíte breakpoint – červená značka označuje místo, kde se běh zastaví. Poté už jen obnovíte stránku a kód se zastaví přesně tam, kde potřebujete. V tuto chvíli můžete najet myší na proměnnou a zobrazit její aktuální hodnotu, nebo použít panel Scope pro sledování všech lokálních i globálních proměnných. Krokování (Step over, Step into, Step out) vám umožní procházet kód řádek po řádku. Dejte si pozor na to, abyste omylem nekrokovali do externích knihoven – to vás jen zdrží. Pomocí pravého tlačítka na breakpointu můžete nastavit podmínku, takže se zastaví pouze tehdy, když je splněna určitá logická podmínka.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Druhým krokem je vytvoření vlastního portfolia. Nemusíte mít přístup k placeným nástrojům – postačí vám bezplatné aplikace, které dobře znáte, nebo dokonce vlastní malý projekt. Vyberte si jednoduchou webovou stránku nebo mobilní aplikaci a začněte ji systematicky testovat. Zapisujte si každý nález do tabulky: popište krok, jakým jste problém reprodukovali, očekávané chování, skutečné chování a případně i prioritu. Dbejte na to, aby váš popis byl srozumitelný i pro člověka, který aplikaci nezná. Tento dokument pak poslouží jako ukázka vaší práce při pohovoru. Častým omylem je testování pouze „šťastné cesty&amp;quot; – tedy že vše funguje, když uživatel postupuje správně. Zkuste se zaměřit na okrajové případy, prázdná pole, nezvyklé vstupy nebo přerušení připojení.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Čas od času se vyplatí pyramidu přehodnotit. Nejde o statický artefakt, ale o živý nástroj. Jakmile přidáte nový modul, zkontrolujte, zda má odpovídající pokrytí na každé úrovni. Když zjistíte, že se integrační testy opakují, přesuňte část logiky do nižší vrstvy. Tím udržíte náklady na údržbu pod kontrolou a testy vám budou sloužit, ne naopak.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Testovací pyramida je jedním z nejpraktičtějších konceptů, které můžete při vývoji softwaru využít. Nejde o žádnou formalitu, ale o princip, který výrazně ovlivní stabilitu i rychlost vašeho kódu. Základní myšlenka je jednoduchá: čím nižší úroveň testu, tím rychlejší a levnější by měl být. Proto se doporučuje stavět na široké základně jednotkových testů, uprostřed mít menší vrstvu integračních testů a na vrcholu jen minimum end-to-end testů.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Automatické rozpoznání podle obsahu souboru Někdy nestačí přípona, zvlášť když máte soubory, které obsahují mix jazyků, například šablony HTML s vestavěným JavaScriptem nebo Pythonem. V takovém případě využijte funkci „associate file with language&amp;quot; nebo si napište vlastní pravidla. V mnoha IDE stačí kliknout na jazyk v pravém dolním rohu a vybrat správnou asociaci. Důležité je také zapnout detekci podle prvního řádku souboru, jako je shebang u skriptů, a nastavit si klávesové zkratky pro rychlé přepínání mezi jazyky.&lt;/div&gt;</summary>
		<author><name>TammiCheatham</name></author>
	</entry>
	<entry>
		<id>https://wiki-babylonsignalis.org/index.php?title=User:TammiCheatham&amp;diff=133267</id>
		<title>User:TammiCheatham</title>
		<link rel="alternate" type="text/html" href="https://wiki-babylonsignalis.org/index.php?title=User:TammiCheatham&amp;diff=133267"/>
		<updated>2026-08-21T18:36:22Z</updated>

		<summary type="html">&lt;p&gt;TammiCheatham: Created page with &amp;quot;Někdo, kdo světem interiérů se zabývá denně. Píšu o tom, jak si poradit v malém bytě. Nejvíc mě baví hledat cesty, jak si usnadnit život.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Někdo, kdo světem interiérů se zabývá denně. Píšu o tom, jak si poradit v malém bytě. Nejvíc mě baví hledat cesty, jak si usnadnit život.&lt;/div&gt;</summary>
		<author><name>TammiCheatham</name></author>
	</entry>
</feed>