Mi az a nyílt forráskódú szoftver, és miért számít?

A geekek gyakran „nyílt forráskódúnak” vagy „szabad szoftvernek” minősítik a programokat. Ha kíváncsi arra, hogy pontosan mit jelentenek ezek a kifejezések és miért számítanak, olvassa el tovább. (Nem, a „szabad szoftver” nem csak azt jelenti, hogy ingyen letöltheti.)

Az, hogy egy program nyílt forráskódú-e vagy sem, nem csak a fejlesztők számára fontos, de végül a felhasználók számára is fontos. A nyílt forráskódú szoftverlicencek olyan szabadságokat adnak a felhasználóknak, amelyek egyébként nem rendelkeznének.

Kép hitel: Quinn Dombrowski a Flickr-en

A nyílt forráskód meghatározása

Ha egy program nyílt forráskódú, akkor a forráskód szabadon elérhető a felhasználók számára. A felhasználók - és bárki más - képesek megszerezni ezt a forráskódot, módosítani és terjeszteni a program saját verzióit. A felhasználók arra is képesek, hogy az eredeti programból annyi példányt terjesszenek, amennyit csak akarnak. Bárki bármilyen célra felhasználhatja a programot; a szoftverre nincsenek licencdíjak vagy egyéb korlátozások. Az OSI a weboldalán részletesebben meghatározza a „nyílt forrást”.

Például az Ubuntu Linux egy nyílt forráskódú operációs rendszer. Letöltheti az Ubuntut, létrehozhat annyi példányt, amennyit csak akar, és odaadhatja barátainak. Korlátlan mennyiségű számítógépre telepítheti az Ubuntut. Remixeket hozhat létre az Ubuntu telepítőlemezéről, és terjesztheti azokat. Ha különösen motivált, letöltheti egy program forráskódját az Ubuntuban, és módosíthatja, létrehozva a program saját testreszabott verzióját - vagy magát az Ubuntu-t. A nyílt forráskódú licencek mind ezt lehetővé teszik, míg a zárt forráskódú licencek korlátozásokat szabnak rád.

A nyílt forráskódú szoftver ellentéte a zárt forráskódú szoftver, amely rendelkezik olyan licenccel, amely korlátozza a felhasználókat, és távol tartja tőlük a forráskódot.

A Firefox, a Chrome, az OpenOffice, a Linux és az Android néhány népszerű példa a nyílt forráskódú szoftverekre, míg a Microsoft Windows valószínűleg a legnépszerűbb zárt forráskódú szoftver.

Nyílt forráskód és szabad szoftver

A nyílt forráskódú alkalmazások általában szabadon hozzáférhetők - bár semmi nem akadályozza a fejlesztőt abban, hogy a szoftver másolatáért díjat számoljon fel, ha lehetővé teszik az alkalmazás és a forráskód későbbi terjesztését.

A „szabad szoftver” azonban nem erre utal. A „szabad” a szabad szoftverben azt jelenti, hogy „szabad, mint a szabadságban”, nem pedig „ingyenes, mint a sörben”. A Richard Stallman és a Free Software Foundation által vezetett ingyenes szoftver tábor a felhasználó által irányítható és módosítható szoftverek használatának etikájára és moráljára összpontosít. Más szavakkal, az ingyenes szoftver tábor a felhasználói szabadságokra összpontosít.

Richard Stallman. Fripog képe a Flickr-en.

A nyílt forráskódú szoftverek mozgását azért hozták létre, hogy az ilyen típusú szoftverek kiválasztásának gyakorlatiasabb okaira összpontosítsanak. A nyílt forráskódú szószólók a nyílt forráskódú szoftverek gyakorlati előnyeire akartak összpontosítani, amelyek inkább etikát és erkölcsöt, inkább a vállalkozásokat vonzzák.

Végső soron a nyílt forráskódú és a szabad szoftver szószólói is ugyanolyan típusú szoftvert fejlesztenek, de nem értenek egyet az üzenetküldéssel kapcsolatban.

A licencek típusai

A nyílt forráskódú projektek sokféle licencet használnak, attól függően, hogy a fejlesztők mely programokat részesítik előnyben.

A GPL-t vagy GNU General Public License-t számos nyílt forráskódú projekt, például a Linux széles körben használja. A nyílt forráskód összes fenti meghatározása mellett a GPL feltételei előírják, hogy ha valaki módosít egy nyílt forráskódú programot, és egy származékos művet terjeszt, akkor a származási munkájának forráskódját is terjesztenie kell. Más szavakkal: senki sem vehet fel nyílt forráskódot és nem hozhat létre belőle zárt forráskódú programot - vissza kell adnia a változtatásokat a közösségnek. A Microsoft emiatt a GPL-t „vírusosnak” nevezte, mivel a GPL-kódot tartalmazó programokat saját forráskódjuk kiadására kényszeríti. Természetesen a program fejlesztői dönthetnek úgy, hogy nem használnak GPL kódot, ha ez problémát jelent.

Néhány más licenc, például a BSD licenc, kevésbé korlátozza a fejlesztőket. Ha egy programot BSD licenc alapján licenceltek, bárki beépítheti a program forráskódját egy másik programba. Nem kell visszaküldenie a változásokat a közösségnek. Vannak, akik úgy látják, hogy ez még „ingyenesebb”, mint a GPL licenc, mivel szabadságot ad a fejlesztőknek arra, hogy beépítsék a kódot a saját zárt forráskódú programjaikba, míg mások szerint kevésbé „ingyen”, mert elveszi a jogokat a származtatott program végfelhasználóitól.

Előnyök a felhasználók számára

Ez nem minden száraz, lényegtelen dolog, amely csak a fejlesztők számára fontos. A nyílt forráskódú szoftverek legkézenfekvőbb előnye, hogy ingyen elérhetők. Az Ubuntu Linux fenti példája ezt világossá teszi - a Windows-tól eltérően korlátozások nélkül annyi példányt telepíthet vagy terjeszthet az Ubuntu-ból, amennyit csak akar. Ez különösen hasznos szerverek lehetnek - ha szervert állít be, akkor egyszerűen telepítheti rá a Linuxot. ha virtualizált kiszolgálófürtöt állít be, könnyen lemásolhatja egyetlen Ubuntu szervert. Nem kell aggódnia a licencelés miatt, és hogy hány Linux-példányt futtathat.

A nyílt forráskódú program is rugalmasabb. Például a Windows 8 új kezelőfelülete sok régóta asztali Windows-felhasználónak csalódást okozott. Mivel a Windows zárt forráskódú, egyetlen Windows-felhasználó sem veheti át a Windows 7 kezelőfelületét, módosíthatja azt, és nem tudja megfelelően működtetni a Windows 8 operációs rendszert. (Néhány Windows-felhasználó próbálkozik, de ez a fordított tervezés és a bináris fájlok módosításának áttekinthető folyamata. )

Amikor egy Linux asztali számítógép, mint az Ubuntu, új asztali felületet vezet be, amelyet egyes felhasználók nem rajonganak, a felhasználóknak több lehetőségük van. Például a GNOME 3 megjelenésekor sok Linux asztali felhasználót ugyanúgy kikapcsoltak. Néhányan átvették a kódot a régi verzióra, a GNOME 2-re, és módosították, hogy a legújabb Linux disztribúciókon fusson - ez a MATE. Néhányan a GNOME 3-ba vitték a kódot, és módosították, hogy az általuk preferált módon működjön - ez a Cinnamon. Néhány felhasználó csak átállt meglévő alternatív asztali számítógépekre. Ha a Windows nyílt forráskódú lenne, akkor a Windows 8 felhasználóknak nagyobb választékuk és rugalmasságuk lenne. Vessen egy pillantást a CyanogenModra, az Android népszerű, közösségi vezérelt terjesztésére, amely funkciókat és támogatást nyújt az új eszközök számára.

A nyílt forráskódú szoftverek lehetővé teszik a fejlesztők számára azt is, hogy „az óriások vállára álljanak” és saját szoftvert hozzanak létre. Tanúja lehet az Androidnak és a Chrome OS-nek, amelyek Linuxra épülő operációs rendszerek és más nyílt forráskódú szoftverek. Az Apple OS X - és ennek megfelelően az iOS - magja is nyílt forráskódra épült. A Valve dühösen azon dolgozik, hogy a Steam játékplatformját Linuxra szállítsa, mivel ez lehetővé tenné számukra, hogy saját hardvert hozzanak létre és irányítsák saját sorsukat oly módon, amely a Microsoft Windows rendszerén nem lehetséges.

Ez nem teljes körű leírás - egész könyveket írtak erről a témáról -, de most már jobb képet kellene képeznie arról, hogy valójában mi a nyílt forráskódú szoftver, és miért hasznos az Ön számára.