Co je to licence
Licence (nebo lépe licenční ujednání – česká právní terminologie označuje slovem licence až vlastní oprávnění k užívání díla, které je uděleno na základě licenční smlouvy) umožňuje tvůrcům a distributorům (nejen) softwarového vybavení stanovovat pravidla, kterými se má řídit nakládání s distribuovaným produktem. Licence tedy určují práva a povinnosti uživatelů ve vztahu k licencovanému dílu. Poměrně obsáhlá licenční ujednání doprovázejí téměř všechen moderní software, i když naprostá většina běžných uživatelů této skutečnosti nevěnuje žádnou pozornost...
Licence ve světě a v České republice
Spojené státy lze v mnoha ohledech považovat za kolébku počítačových technologií a s tím spojeného odvětví výroby počítačového softwaru. I softwarové licence bývají často formulovány podle tamějších zvyklostí, což v některých případech ztěžovalo jejich aplikaci v jiných zemích.
Novela českého Autorského zákona z roku 2006 již umožňuje navrhovat uzavření smlouvy „neurčitému okruhu osob“ a zároveň lze „vyjádřit souhlas s návrhem i bez vyrozumění navrhovatele“. To znamená, že do té doby sporná platnost a vymahatelnost licenčních ujednání např. u softwaru stahovaného z internetu byla vyřešena. Jako drobný zádrhel by se mohla jevit skutečnost, že za směrodatné a právně závazné znění se považují originální texty většiny licencí – přestože existují překlady do češtiny.
Proprietární licence
Ještě než se pustíme do zkoumání open-source licencí, je potřeba zmínit jejich protiklad: licence proprietární, někdy také nazývané uzavřené. Od open-source licencí se liší tím, že ve většině případů zakazují modifikaci distribuovaného díla, omezují či zcela zapovídají další šíření a často také přiškrcují podmínky použití.
Proprietárních licencí je obrovské množství; s trochou nadsázky můžeme říci, že co program, to jiná licence. Přesto jsou obyčejně označovány souhrnnou zkratkou EULA (End User License Agreement – licenční dohoda s koncovým uživatelem). Společným rysem drtivé většiny proprietárních i open-source licencí je důsledné přenesení veškeré zodpovědnosti za používání díla na uživatele.
Definice open-source licence
Open-source licencí rovněž existuje celá řada, ale všechny mají několik společných znaků. Organizace Open Source Initiative (OSI), která je všeobecně uznávána jako oficiální autorita s pravomocí revidovat a schvalovat open-source licence, sestavila desetibodový seznam kritérií, jenž musí konkrétní licence splňovat, aby mohla být označena za open-source. Tato kritéria vyjadřují základní principy fungování open-source vývojového modelu a představují hlavní výhody open-source licencí, které jsou popsány v následujících odstavcích.
Můžete se setkat nejen s termínem open-source software, ale také svobodný software. Principiálně se jedná o stejnou věc a odlišnosti je možné hledat zejména v ideologickém podkladu.
Zastánci svobodného softwaru kladou důraz na společenské dopady prosazování svobod, které z distribuce softwaru vyplývají, zatímco příznivci open source se spokojují s pragmatickými výhodami, jež otevřený distribuční model přináší.
Z hlediska distribuce (a modifikací, viz dále) lze open-source licence rozdělit na dvě základní skupiny. První skupinu tvoří licence, které uplatňují princip tzv. copyleftu neboli obráceného copyrightu. Neznamená to však, že by byly s copyrightem (autorskými právy) v rozporu. Naopak, využívají jej pro své potřeby. Copyleftové licence totiž distribuci licencovaného produktu podmiňují tím, že bude mít distribuované dílo stejnou licenci jako dílo původní.
Jinými slovy, copyleft spočívá v požadavku, aby byly při další distribuci softwaru zachovány stejné „svobody“, s jakými uživatel program obdržel, tj. obyčejně musí být software redistribuován se stejnou licencí. Některé open-source licence bývají kvůli této vlastnosti hanlivě označovány jako „virální“, protože jakmile je kód začleněn do jiného celku, musí být výsledek distribuován (také) s open-source licencí. Nejznámějším a nejrozšířenějším zástupcem této skupiny je GPL (General Public License), kterou využívá například systémové jádro Linux.
Druhá skupina licencí tuto povinnost odbourává a umožňuje šíření díla s libovolnou licencí, tj. včetně proprietárních. Takto licencované dílo je tedy možné vzít a distribuovat prakticky bez omezení. Známým zástupcem jsou licence typu BSD, které vycházejí z licence upravující podmínky používání systému Berkeley Software Distribution a jeho odnoží (oblíbený operační systém unixového typu). Této charakteristiky využila například společnost Apple, Inc., která svůj proprietární operační systém Mac OS X postavila právě na BSD.
Dovolte ještě odbočku k pojmu freeware. Je důležité rozlišovat mezi open-source softwarem a proprietárním softwarem, který je distribuován zdarma. Tyto dvě skupiny se sice často prolínají, ale rozhodně nejsou stejné. Software, který je označován jako freeware, je zdarma, nenabízí však žádnou z výhod open-source softwaru. A naopak, open-source software nemusí být zdarma.
Výhody open-source licencí
Používání softwaru distribuovaného s open-source licencí, stejně jako aplikování open-source licencí na vlastní produkty, přináší řadu výhod. Z hlediska koncového uživatele by bylo velmi obtížné hledat argumenty mluvící proti nasazení open-source softwaru. A ačkoliv lze poměrně dobře argumentovat společenskou prospěšností, konáním dobra či podobnými ctnostnými pohnutkami, nechám je protentokrát stranou. Místo toho se zaměřím na ryze praktické a vyčíslitelné výhody. Za poslední roky, kdy popularita systému Linux a všeobecné povědomí o otevřených technologiích vzrostlo, bylo publikováno množství srovnávacích a případových studií (jsou to například tyto), které posuzují tržní podíl, spolehlivost a stabilitu, výkon, škálovatelnost, bezpečnost i celkové náklady. Ačkoliv všechny tyto ukazatele vyznívají pro open source příznivě, není od věci připomenout konkrétní atributy otevřeného softwaru, které z něj činí dobrou volbu.
Libovolné použití a volná distribuce a redistribuce
Tento aspekt open source je patrně nejznámější. Mnoho nepoučených komentátorů je schopných prohlásit, že „Linux je jako Windows zadarmo“ nebo „Není možné vydělávat na něčem, co je zdarma“. Těmto omylům se budu blíže věnovat o něco dále v textu. V tuto chvíli mi poslouží jen pro ilustraci jednoho z hlavních principů open source: dílo s open-source licencí je možné legálně šířit, kopírovat, duplikovat, přeprodávat a v neposlední řadě také používat pro libovolný účel.
V praxi to mimo jiné znamená, že ať už open-source software získáte jakýmkoliv způsobem (stažení, zkopírování, koupě), nic vám nebrání jej instalovat na neomezený počet strojů, vytvářet kopie pro vlastní a cizí potřebu, prodávat v neomezeném množství dalším zákazníkům atd. Třebaže se to nezdá, i tato vlastnost open source se řídí svými pravidly. Stanovují je samozřejmě jednotlivé licence.
Možnost úprav, přizpůsobení
Tento bod je to, co dává open-source softwaru jeho jméno. Open source znamená otevřený zdrojový kód. Zdrojový kód je lidsky čitelná podoba počítačového programu, neboli program v surovém stavu. Počítač interpretuje instrukce ve strojovém kódu, který vzniká tzv. překladem (kompilací) zdrojových kódů. Protože strojový kód není (za normálních podmínek) možné číst nebo upravovat, je přístupnost zdrojových kódů základním předpokladem pro případné opravy, vylepšení či jiné modifikace softwaru. Open-source software tuto možnost uživatelům nabízí.
Možná si říkáte, že to je sice všechno pěkné, ale k čemu je vám možnost měnit kód programů, když tomu, coby běžný uživatel, vůbec nerozumíte. Máte pravdu, ale jen částečně. Jednak je potřeba zdůraznit, že pokud nechcete, nic vás nenutí zdrojové kódy byť jen spatřit. Skutečnost, že používáte software s tzv. otevřeným kódem, neznamená, že musíte s tímto kódem přijít do styku. Pro ty, kdo tuto možnost nechtějí nebo nemohou využít, jsou k dispozici již přeložené (zkompilované) softwarové balíky, které lze instalovat a okamžitě používat stejně jako jakýkoliv proprietární program.
Důležitá je však ta možnost – existuje množství situací, ve kterých je otevřený zdrojový kód nadmíru užitečný. Například pokud již na trhu existuje softwarové řešení, které téměř vyhovuje vašim představám a požadavkům, ale ne všechny vlastnosti odpovídají vašim potřebám, open-source software vám nabízí příležitost najmout schopného programátora a aplikaci přizpůsobit tak, aby vám plně vyhovovala. Vyskytne-li se potřeba produkt rozšířit, specializovat nebo jinak upravit, lze takové změny provést, aniž by bylo nutné se obracet na původní tvůrce programu. Takový postup bývá výrazně méně finančně náročný než programování celé aplikace na zakázku od nuly.
Vše pěkně pod kontrolou
Otevřený kód také znamená, že jej zákazník může – má-li o to zájem – podrobit kontrole. Pro menší nebo střední podniky nemusí být taková možnost zajímavá, ale jedná-li se o velkou organizaci a řešení takzvaně šité na míru, pak tato vlastnost otevřeného softwaru zaručuje tolik potřebnou pružnost. Příležitost k provedení interního bezpečnostního auditu kódu oceňují také státní instituce, ve kterých software slouží k nakládání s citlivými daty. Svobodná licence je pro zákazníka zárukou, že nebude muset slepě důvěřovat dodavateli, v jehož produktu by se mohly ukrývat nedostatky, chyby či dokonce škodlivé instrukce.
Jedno z obtížně uchopitelných kritérií je (ne)bezpečnost kódu, tj. náchylnost k bezpečnostním problémům vycházející z vývojářských chyb. Open-source software může těžit z toho, že jsou jeho kódy veřejně k dispozici – případné nedostatky programového kódu jsou tzv. na očích. Na rozdíl od uzavřeného kódu, u kterého se při odhalování a opravování chyb musí zákazník spolehnout výhradně na tvůrce softwaru.
Právní bezpečnost
Možná i vaše firma či organizace již byla terčem nátlakové kampaně sdružení BSA (Business Software Alliance), které vyhrožuje kontrolami, žalobami a sankcemi v případě, že se prokáže nelegální používání softwaru. Nespokojení zaměstnanci a pomstychtivá konkurence jsou vyzýváni k donášení na zaměstnavatele, kteří se možná provinili, možná ne, ale každopádně nestojí o problémy a popotahování s policií či soudy.
Pominu-li to, že BSA používá velmi pochybné metody a její výhrůžky je nejlepší ignorovat bez ohledu na to, jaký software používáte, faktem zůstává, že sledování platnosti licencí proprietárního softwaru představuje nemalou administrativní zátěž. Open source ku pomoci! Dodržování licencí open-source softwaru je snadné. Navíc odpadá hlavní starost: Není třeba řešit, kolik serverových či desktopových licencí té které aplikace nebo operačního systému máte nakoupeno. Software distribuovaný s open-source licencí je možné legálně instalovat na libovolné množství počítačů.
Vyhněte se vendor lock-inu
Vendor lock-in (neboli závislost na jediném dodavateli) je nepříjemná situace, do které vás může vmanévrovat používání proprietárního softwaru. Dodavatel softwaru (zejména pokud se jedná o software vyvinutý pro interní potřeby organizace) může zásadně změnit podmínky distribuce či cenu svého produktu, může také zbankrotovat nebo prostě ukončit činnost. V případě použití open source se těchto komplikací není třeba bát a vy se v takovém případě nemusíte smiřovat s pracnou a nákladnou migrací na zcela novou aplikaci.
Díky otevřenému kódu může na softwaru začít pracovat jiný subjekt – často se to stane automaticky, ale také můžete příslušné lidi zaměstnat nebo najmout externě. Pod statné je, že otevřený a dostupný kód, stejně jako licencí povolená možnost provádět modifikace, vám zaručují kontinuitu softwaru bez ohledu na situaci původního dodavatele. Využívání standardizovaných formátů pro ukládání dat zároveň zaručuje možnost jednodušší migrace na jiná řešení, pokud se to ukáže jako nutné.
Výhody pro vývojáře a distributory
Z pohledu vývojářů a tvůrců softwarových produktů je open source zajímavý především proto, že nabízí možnost čerpat z velmi rozsáhlé kolekce open-source programů a knihoven, které již někdo naprogramoval dříve. Při uzavřeném modelu vývoje je nutné veškerou funkčnost vytvořit od nuly, zakoupit hotové řešení od dalšího dodavatele a nebo se spolehnout na využití open-source softwaru s liberální licencí (viz zmíněné BSD a Mac OS X). V případě open-source vývoje lze pro začlenění do vlastního projektu přizpůsobit existující implementaci s open-source licencí.
Technická podpora z celého světa
Další výhodou je zapojení tzv. komunity. Má-li vyvíjený produkt otevřené zdrojové kódy, mohou se opravování chyb, přípravy nových funkcí nebo připomínkování účastnit i další zainteresované strany. Nespočet firem všech velikostí se podílí na vývoji a neustálém zlepšování open-source programů, protože je pak samy mohou využít pro svoji potřebu nebo jako základ dále nabízených služeb.
Jak vydělat peníze
Obchodní model pro komerční vývoj open-source softwaru se výrazně odlišuje od klasického prodeje produktů. Zatímco proprietární aplikace mohou, a často bývají, prodávány s fixní cenou za „kus“, svobodný software by s takovým přístupem ve většině případů neuspěl. Existují sice výjimky (například linuxové operační systémy prodávané v běžných krabicích), ale obvykle je těžiště komerčního uplatnění open-source programů posunuto směrem k prodeji služeb.
Zákazník tedy nekupuje software, který by tak jako tak mohl ve většině případů získat zdarma třeba prostřednictvím internetu. Místo toho platí za služby, které dodavatel k danému softwarovému produktu nabízí. Obyčejně se jedná o instalaci, konfiguraci a pozdější administraci jednotlivých systémů nebo celé infrastruktury. Typickým příkladem jsou internetové servery poskytující obsah (operační systém, databáze, webserver) nebo integrované firemní systémy (ukládání dat, sdílené desktopy, správa zákazníků).
Mýty a polopravdy
Nejpoužívanější svobodnou licencí je GPL, a proto je také nejčastěji předmětem pomýlených výkladů a divokých spekulací. Samotné znění GPL je poměrně jednoznačné a i pro laika je text dostatečně čitelný. Přesto však mnohdy dochází k nepochopení základních principů, které tato licence vyjadřuje.
Nakažení virem GPL
Už bylo řečeno, že GPL někteří lidé označují za virální licenci, protože vyžaduje, aby bylo vše, v čem je použito dílo licencované GPL, distribuováno opět s GPL. Populární mýtus proto straší představou, že bude nutné uvolnit veškerý kód interně vytvořených firemních aplikací, dojde-li ke „kontaminaci“ GPL. Skutečnost je taková, že GPL upravuje pouze podmínky (re)distribuce, nikoliv podmínky používání. V souladu s licencí je tedy naprosto v pořádku, pokud je GPL kód využit v produktu, který si firma ponechá a nikomu jeho vnitřnosti neukáže. Pokud není kód šířen dále, není důvod jej otevírat a komukoliv zpřístupňovat.
S tím souvisí lichá obava číslo dvě. Odpůrci open source často poukazují na to, že s otevřenou licenční politikou není možné vydělat peníze, protože open source přikazuje dávat vše bezplatně. Není to tak. Produkt, ve kterém byl použit open-source kód, nemusí být odevzdáván zadarmo. Nemusí být vůbec odevzdáván, ale je-li přeci jen distribuován, může být za něj účtována libovolná částka. Tím pádem není pravda, že by kdokoliv mohl požadovat program (za peníze nebo zdarma), který je distribuován s open-source licencí, jak se lze občas dočíst – autor či distributor open-source softwaru není licencí nikterak nucen své dílo komukoliv poskytovat.
Open source „nekomerční“?
Některé výpady ještě v nedávné minulosti obviňovaly open-source software z toho, že narušuje ekonomické prostředí, protože je často možné jej získat zdarma. Ve stejném duchu se nesly útoky na tvůrce open source, kteří byli zoufalou konkurencí označováni za komunisty a jejich dílo za antikapitalistické (a v USA za protiamerické). Jak je jistě patrné z předchozích odstavců, open-source software vůbec není nekomerční. Právě naopak: Celosvětový obchodní obrat firem, které svou strategii založily na open source, dosahuje každoročně miliard dolarů.
Nebojte se open source
Z open-source licencí není třeba mít obavy. Nejedná o nic obskurního nebo nebezpečného a otevřené licence přinášejí řadu nezanedbatelných výhod jak pro uživatele, tak pro tvůrce a distributory softwaru. V České republice zajišťuje platná zákonná úprava ucelený právní rámec, na jehož základě je možné založit výklad všech běžně používaných typů licencí. Záleží jen na konkrétní situaci a specifických požadavcích autorů i uživatelů softwaru, jaký druh licence pro své potřeby zvolí.
Článek vyšel ve druhém čísle magazínu Open source & praxe.