Úvodná » ako » Čo je softvér s otvoreným zdrojovým kódom a prečo to má zmysel?

    Čo je softvér s otvoreným zdrojovým kódom a prečo to má zmysel?

    Geekovia často opisujú programy ako "open source" alebo "slobodný softvér". Ak sa zaujímate o to, čo tieto pojmy znamenajú a prečo sú dôležité, prečítajte si ich. (Nie, "slobodný softvér" neznamená len to, že si ho môžete stiahnuť zadarmo.)

    Bez ohľadu na to, či je program otvoreným zdrojom alebo nie, nie je záležitosť pre vývojárov, záleží aj na používateľoch. Licencie na softvér s otvoreným zdrojovým kódom poskytujú užívateľom slobody, ktoré by inak nemali.

    Image Credit: Quinn Dombrowski na Flickr

    Definícia open source

    Ak je program open source, jeho zdrojový kód je voľne dostupný pre jeho používateľov. Jeho používatelia - a ktokoľvek iný - majú možnosť prevziať tento zdrojový kód, upraviť ho a distribuovať svoje vlastné verzie programu. Používatelia majú tiež možnosť distribuovať toľko kópií pôvodného programu podľa vlastného uváženia. Ktokoľvek môže používať program na akýkoľvek účel; neexistujú licenčné poplatky alebo iné obmedzenia softvéru. OSI má na svojej webovej stránke podrobnejšiu definíciu "open source".

    Napríklad Ubuntu Linux je open-source operačný systém. Môžete si stiahnuť Ubuntu, vytvoriť toľko kópií, koľko chcete a dať ich svojim priateľom. Ubuntu môžete nainštalovať na neobmedzené množstvo vašich počítačov. Môžete vytvoriť remixy inštalačného disku Ubuntu a distribuovať ich. Ak ste boli obzvlášť motivovaní, môžete si stiahnuť zdrojový kód pre program v Ubuntu a upraviť ho tak, že vytvoríte vlastnú prispôsobenú verziu daného programu - alebo samotného Ubuntu. Licencie s otvoreným zdrojovým kódom vám umožňujú to urobiť, zatiaľ čo licencie s uzavretým zdrojom vás obmedzujú.

    Opakom softvéru s otvoreným zdrojovým kódom je softvér s uzavretým zdrojom, ktorý má licenciu, ktorá obmedzuje používateľov a zachováva zdrojový kód od nich.

    Firefox, Chrome, OpenOffice, Linux a Android sú niektoré populárne príklady softvéru s otvoreným zdrojovým kódom, zatiaľ čo Microsoft Windows je pravdepodobne najobľúbenejším softvérom s uzavretým zdrojom.

    Open Source vs. Free Software

    Aplikácie s otvoreným zdrojovým kódom sú vo všeobecnosti voľne dostupné - aj keď nič nebráni vývojárovi v tom, aby účtovali kópie softvéru, ak umožnia redistribúciu aplikácie a jej zdrojový kód.

    Avšak, to nie je to, čo znamená "slobodný softvér". Voľný softvérový tábor, vedený Richardom Stallmanom a Nadáciou pre voľný softvér, sa zameriava na etiku a morálku používania softvéru, ktorý môže byť použitý vo voľnom softvéri. riadené a modifikované používateľom. Inými slovami, tábor voľného softvéru sa zameriava na slobodu používateľa.

    Richard Stallman. Obrázok Fripog na Flickr.

    Softvér s otvoreným zdrojovým kódom bol vytvorený, aby sa zameral na pragmatickejšie dôvody pre výber tohto typu softvéru. Zástancovia open source sa chceli sústrediť na praktické výhody používania softvéru s otvoreným zdrojovým kódom, ktorý by sa viac zameral na podniky, a nie na etiku a morálku.

    Napokon obaja advokáti s otvoreným zdrojovým kódom a slobodným softvérom vyvíjajú rovnaký typ softvéru, ale nesúhlasia so správami.

    Typy licencií

    Existuje veľa rôznych licencií, ktoré používajú projekty s otvoreným zdrojom, v závislosti od toho, čo vývojári uprednostňujú pre svoj program.

    Všeobecná verejná licencia GPL alebo GNU je široko používaná mnohými projektmi s otvoreným zdrojovým kódom, ako napríklad Linux. Okrem všetkých vyššie uvedených definícií open-source, podmienky GPL špecifikujú, že ak niekto zmení program s otvoreným zdrojovým kódom a distribuuje odvodenú prácu, musí distribuovať zdrojový kód pre svoju odvodenú prácu. Inými slovami, nikto nemôže používať kód s otvoreným zdrojovým kódom a vytvoriť z neho program s uzavretým zdrojom - musí svoje zmeny vrátiť späť do komunity. Spoločnosť Microsoft označila spoločnosť GPL za "vírusovú" z tohto dôvodu, pretože núti programy, ktoré obsahujú kód GPL, aby uvoľnili svoj vlastný zdrojový kód. Samozrejme, vývojári programu sa môžu rozhodnúť nepoužívať kód GPL, ak je to problém.

    Niektoré ďalšie licencie, ako napríklad licencia BSD, ukladajú menej obmedzenia vývojárom. Ak je licencovaný program pod licenciou BSD, ktokoľvek môže začleniť zdrojový kód programu do iného programu. Nemusia uvoľňovať svoje zmeny späť do komunity. Niektorí ľudia vidia, že je to ešte viac "zadarmo" ako licencia GPL, pretože dáva vývojárom slobodu začleniť kód do svojich programov s uzavretými zdrojmi, zatiaľ čo niektorí ľudia považujú ich za menej "zadarmo", pretože odoberajú práva od koncových používateľov odvodeného programu.

    Výhody pre používateľov

    Nie je to všetko suché, nedôležité veci, ktoré sú dôležité iba pre vývojárov. Najzrejmejším prínosom softvéru s otvoreným zdrojovým kódom je, že ho možno zadarmo. Príklad Ubuntu Linux je jasný - na rozdiel od systému Windows, môžete nainštalovať alebo distribuovať toľko kópií Ubuntu podľa vášho želania bez obmedzenia. Môžu to byť obzvlášť užitočné servery - ak nastavujete server, stačí nainštalovať Linux. ak nastavujete virtualizovaný klastr serverov, môžete jednoducho duplikovať jeden server Ubuntu. Nemusíte sa obávať licencovania a koľko inštancií Linuxu máte povolené na spustenie.

    Program otvoreného zdroja je tiež flexibilnejší. Napríklad nové rozhranie systému Windows 8 sklamalo veľa dlhodobých užívateľov Windows. Pretože Windows je uzavretý zdroj, žiadny používateľ systému Windows nemôže vziať rozhranie systému Windows 7, upraviť ho a správne fungovať v operačnom systéme Windows 8. (Niektorí používatelia Windows sa snažia, ale je to náročný proces spätného inžinierstva a úpravy binárnych súborov. )

    Keď Linuxová pracovná plocha ako Ubuntu zavádza nové rozhranie pre počítače, ktoré niektorí používatelia nie sú fanúšikmi, používatelia majú viac možností. Napríklad, keď bol prepustený GNOME 3, mnohí používatelia desktopov Linuxu boli rovnako vypnutí. Niektorí si vzali kód na starú verziu GNOME 2 a upravili ju tak, aby fungoval na najnovších distribuciách Linuxu - to je MATE. Niektorí si vzali kód do GNOME 3 a modifikovali ho tak, aby fungoval tak, ako by uprednostňovali - to je škorica. Niektorí používatelia práve prešli na existujúce alternatívne pracovné plochy. Ak by bol systém Windows s otvoreným zdrojom, používatelia systému Windows 8 by mali väčšiu voľbu a flexibilitu. Stačí sa pozrieť na CyanogenMod, obľúbenú distribuovanú platformu Android pre komunitu, ktorá pridáva funkcie a podporu pre nové zariadenia.

    Softvér s otvoreným zdrojovým kódom tiež umožňuje vývojárom "stáť na ramenách obrov" a vytvoriť si vlastný softvér. Svedčí o operačnom systéme Android a Chrome OS, ktoré sú operačné systémy postavené na systéme Linux a inom open-source softvéri. Jadro operačného systému Apple OS X - a iOS - bolo postavené na otvorenom zdrojovom kóde. Ventil zúrivo pracuje na prenose svojej hernej platformy Steam do Linuxu, pretože by im to umožnilo vytvoriť vlastný hardvér a ovládať svoj vlastný osud spôsobom, ktorý nie je možný v systéme Windows.


    Toto nie je vyčerpávajúci popis - na túto tému boli napísané celé knihy - ale teraz by ste mali mať lepšiu predstavu o tom, aký softvér s otvoreným zdrojom je a prečo je pre vás užitočný.