Jak zvolit správnou open source licenci pro váš projekt
Jak odhad formulovat, aby měl hlavu a patu Místo „bude to za tři dny" použijte větu, která dává prostor: „Předpokládám, že to bude hotové ve středu, ale pokud narazíme na nějaký problém, dám vám vědět nejpozději v pondělí." Tím zákazníkovi ukážete, že máte plán, ale i rezervu. Důležité je nikdy neříkat konkrétní čas bez kontextu. Řekněte, co je součástí odhadu – zda jde o práci, čekání na materiál, nebo případné schvalování. Čím víc kroků zákazník vidí, tím snáz pochopí, proč to trvá.
Důležité je také zmenšit velikost kódu, který posíláte. Odstraňte z CSS a JavaScriptu mezery, komentáře a nevyužité pravidla. Tento proces se nazývá minifikace a výrazně zkrátí dobu stahování. U JavaScriptu navíc zvažte, zda je opravdu nutné ho načítat hned na začátku. Pokud skript slouží až pro interakce po načtení stránky, umístěte ho na konec těla dokumentu nebo použijte atribut defer. Typickou chybou je zbytečné načítání více knihoven, které dělají totéž.
Nejdřív si určete tři scénáře: optimistický, realistický a pesimistický. Optimistický počítejte jen tehdy, když máte jistotu, že nezasáhne žádná nečekaná překážka. Realistický by měl být váš standardní odhad, se kterým jdete ven. Pesimistický si nechte v záloze pro interní plánování, ale zákazníkovi o něm nemluvte. Pokud mu řeknete rovnou nejhorší možný termín, budete vypadat neschopně; pokud mu dáte jen ten optimistický, riskujete zklamání.
Pomalé načítání stránek odrazuje návštěvníky a zhoršuje pozici ve vyhledávačích. Než začnete přidávat cache nebo komprimovat obrázky, zjistěte si, kde je skutečný problém. Otevřete si vývojářské nástroje prohlížeče, přejděte na záložku síť a podívejte se, které soubory se načítají nejdéle. Často to nejsou obrázky, ale zbytečné skripty třetích stran, které blokují vykreslení stránky. Nejprve odstraňte vše, co nepoužíváte, a teprve poté řešte optimalizaci.
Při výběru zohledněte i to, jakou komunitu chcete kolem projektu vybudovat. Pokud plánujete, že se na vývoji bude podílet mnoho lidí, permisivní licence snižuje bariéry pro přispění, protože lidé nemusí řešit právní otázky. Naopak copyleft může být vhodný pro nástroje, kde chcete, aby všechny vylepšení zůstaly veřejné. Dobrým zvykem je také zveřejnit licenci hned na začátku projektu, ne až později – změna licence po vydání kódu může být komplikovaná a vyžadovat souhlas všech přispěvatelů.
Důležité je také formálně správné uvedení licence v repozitáři. Nestačí jen přidat soubor s textem licence do složky. Měli byste do každého zdrojového souboru uvést hlavičku s odkazem na licenci a autorem. To usnadní budoucí správu a právní průhlednost. Vyhněte se vytváření vlastních licencí – většinou nejsou právně ošetřené a odrazují potenciální přispěvatele. Místo toho zvolte standardní, ověřenou licenci, která má jasně definovaná pravidla.
Výběr open source licence je jedním z nejdůležitějších rozhodnutí, které jako vývojář uděláte. Licenční podmínky určují, jak mohou ostatní váš kód používat, upravovat a šířit. Špatná volba může vést k právním problémům nebo k tomu, že váš kód skončí v projektu, s jehož filozofií nesouhlasíte. Než začnete hledat konkrétní licenci, položte si základní otázky: Chcete, aby každý mohl kód použít bez omezení, nebo chcete, aby úpravy zůstaly otevřené?
Jak na cache a minimalizaci souborů Dalším krokem je nastavení vyrovnávací paměti prohlížeče (cache). Umožníte tím návštěvníkům, aby se jim při opakované návštěvě nemusely stahovat všechny soubory znovu. Pro statické soubory, jako jsou obrázky, CSS nebo JavaScript, nastavte dlouhou dobu platnosti, ale u HTML buďte opatrní, aby se změny na stránce projevily včas. K tomu slouží verzování souborů, kdy do názvu přidáte číslo verze nebo hash, a prohlížeč pak pozná, že je třeba stáhnout novou verzi.
Nejčastější chyby při výběru licence Jednou z nejčastějších chyb je použití licence bez pochopení jejích podmínek. Například GPL je silný copyleft a pokud ji použijete v knihovně, může to odradit komerční vývojáře, kteří by jinak váš kód rádi využili. Naopak u API nebo malých utilit je permisivní licence často výhodnější. Dalším problémem je kombinování licencí – pokud do projektu přidáte kód pod GPL a váš hlavní kód je pod MIT, celý projekt může být ovlivněn. Vždy si ověřte kompatibilitu použitých knihoven.
Pozor si dejte také na počet požadavků na server. Každý soubor, který se stahuje, vytváří samostatný požadavek, a to i v případě, že je malý. Spojte více CSS souborů do jednoho, a pokud je to možné, slučte i malé obrázky do tzv. sprite nebo je nahraďte ikonovým fontem. Naopak velké soubory, které se používají jen na některých stránkách, rozdělte tak, aby se nenačítaly všude. Nezapomeňte také na rychlost serveru – sdílený hosting může být limitující, ale i tam jde omezit zátěž pomocí statické generace stránek.