Softvér s otvoreným zdrojovým kódom (OSS) je akýkoľvek počítačový softvér, ktorý je distribuovaný so zdrojovým kódom dostupným na úpravu. To znamená, že zvyčajne zahŕňa licenciu pre programátorov na zmenu softvéru akýmkoľvek spôsobom, ktorý si zvolia: Môžu opraviť chyby, zlepšiť funkcie alebo prispôsobiť softvér svojim vlastným potrebám.
Kritériá softvéru s otvoreným zdrojom
Open Source Initiative (OSI), globálna nezisková organizácia založená v roku 1998, pôsobí ako vedúca autorita v oblasti OSS. Jeho definícia softvéru s otvoreným zdrojovým kódom zahŕňa desať kritérií týkajúcich sa záležitostí, ako sú:
- Redistribúcia softvéru
- Dostupnosť a integrita zdrojového kódu
- Distribúcia a vlastnosti licencií
- Odvodené diela
- Antidiskriminácia
Licencie
Rôzne licencie umožňujú programátorom upravovať softvér s rôznymi podmienkami. Podľa Black Duck KnowledgeBase, databázy približne dvoch miliónov open source projektov, je päť najpopulárnejších licencií:
- Licencia MIT
- GNU General Public License (GPL) 2.0
- Licencia Apache 2.0
- GNU General Public License (GPL) 3.0
- Licencia BSD 2.0 (3-klauzula, nová alebo revidovaná)
Keď zmeníte zdrojový kód, OSS vyžaduje zahrnutie toho, čo ste zmenili, ako aj vašich metód. Softvér vytvorený po úpravách kódu môže, ale nemusí byť sprístupnený zadarmo.
Komerčný softvér
Komerčne dostupný softvér, známy ako komerčný alebo proprietárny softvér, neposkytuje prístup k jeho zdrojovému kódu, pretože softvér je duševným vlastníctvom niekoho iného. V dôsledku toho za to používatelia často platia. Na druhej strane OSS je spoločným úsilím; Softvér je zdieľané duševné vlastníctvo medzi všetkými, ktorí ho pomohli vyvinúť alebo zmeniť.
Slobodný softvér
Hoci sa pojmy často používajú zameniteľne, OSS sa mierne líši od slobodného softvéru. Obe sa zaoberajú možnosťou sťahovať a upravovať softvér bez obmedzení alebo poplatkov. Slobodný softvér – koncept vyvinutý v 80. rokoch 20. storočia výskumníkom v oblasti počítačovej vedy z MIT Richardom Stallmanom – je definovaný štyrmi podmienkami, ako ich načrtla nezisková organizácia Free Software Foundation. Tieto „štyri slobody“ zdôrazňujú schopnosť používateľov používať a užívať si softvér tak, ako uznajú za vhodné.
Naproti tomu kritériá OSS, ktoré Open Source Initiative vyvinula o desaťročie neskôr, umiestňujú viac dôraz na modifikáciu softvéru a dôsledky zmeny zdrojového kódu, licencovania a distribúcia.
Obe sa prekrývajú; niektorí by povedali, že rozdiely medzi OSS a slobodným softvérom sú skôr filozofické ako praktické. Ani jedno by sa však nemalo zamieňať s freeware. Freeware zvyčajne označuje proprietárny softvér, ktorý si používatelia môžu bezplatne stiahnuť, ale ktorého zdrojový kód nemožno zmeniť.
Výhody
Zatiaľ čo jeho nízka cena je kľúčovou výhodou, OSS má niekoľko ďalších výhod:
- Jeho kvalitu možno ľahko a výrazne zlepšiť, keď sa jeho zdrojový kód odovzdáva, testuje a opravuje.
- Ponúka cennosť možnosť vzdelávania pre programátorov. Môžu aplikovať zručnosti na najpopulárnejšie programy, ktoré sú dnes k dispozícii.
- Môže byť bezpečnejší ako proprietárny softvér, pretože chyby sú rýchlo identifikované a opravené.
- Keďže je vo verejnej doméne a neustále podlieha aktualizáciám, je malá šanca, že sa stane nedostupným alebo rýchlo zastaraným – dôležité plus pre dlhodobé projekty.
Populárne typy
Open-source technológie pomohli vytvoriť veľkú časť internetu. Okrem toho je veľa programov, ktoré sa používajú každý deň, založených na technológiách s otvoreným zdrojom. Príklady: OS Android a OS X spoločnosti Apple sú založené na technológiách s otvoreným zdrojom jadra a Unix/BSD.
Ďalší populárny softvér s otvoreným zdrojovým kódom je:
- Webový prehliadač Mozilla Firefox
- E-mailový klient Thunderbird
- PHP skriptovací jazyk
- Python programovací jazyk
- Webový server Apache HTTP
Vývojári
Projekty OSS sú príležitosti na spoluprácu, ktoré zlepšujú zručnosti a budujú prepojenia v teréne. Oblasti, na ktorých môžu vývojári pracovať, zahŕňajú:
Komunikačné nástroje
E-maily, správy v reálnom čase, fóra a wiki pomáhajú vývojárom nájsť riešenia alebo si navzájom odraziť nápady.
Distribuované systémy kontroly revízií
Keď viacerí vývojári v rôznych geografických lokalitách upravujú údaje a súbory, tieto systémy spravujú rôzne verzie a aktualizácie.
Sledovače chýb a zoznamy úloh
Tieto funkcie umožňujú rozsiahlym projektom monitorovať problémy a sledovať ich opravy.
Nástroje na testovanie a ladenie
Tieto funkcie automatizujú testovanie počas systémovej integrácie a ladia ďalšie programy.
Spodný riadok
Open-source softvér je alternatívou k proprietárnemu softvéru. Účasť na projekte OSS môže byť cestou k budovaniu kariéry v oblasti vývoja softvéru, čo umožňuje programátorom zdokonaliť svoje zručnosti prácou na najväčších softvérových programoch na svete. Facebook, Google a LinkedIn vydávajú OSS, takže vývojári môžu zdieľať znalosti, inovovať riešenia a prispievať k stabilným a funkčným produktom.