Miért jobb a Linux minden másnál?

– hangzott a kérdés egyik tanulónk szájából. Mert ő azt olvasta a neten, hogy a Linux minden másnál jobb. Miért?

Kezdjük messzebbről!

Az informatikában általában az van, hogy ha két lehetőség van egy feladat megoldására, akkor mindkettőnek vannak előnyei is és hátrányai is. Meg az is nagyon gyakori, hogy bizonyos emberek a saját preferenciájuk mentén elköteleződnek egyik vagy másik megoldás mellett, és annak előnyeit hangsúlyozzák a hátrányok említése (és akár tudomásul vétele) nélkül. Aztán ha két olyan ember találkozik az interneten, akik egy adott feladatra különböző megoldások elkötelezett hívei, akkor ezekből csúnya (nem ritkán sajnos személyeskedésbe torkolló) viták szoktak kialakulni. Van neve is ennek, ami már akkor kialakult, amikor a Facebook még nem is létezett: flame war.

Nézőpontom szerint ahhoz, hogy egy adott eszközről megállapítsuk, hogy egy adott feladatra milyen megoldást nyújt, számos paramétert célszerű figyelembe venni, és annak mentén meghozni a döntést. Ha nem tudjuk, hogy milyen felhasználónak, milyen célra, milyen tudással, milyen gépre, mennyi pénzből… kell az operációs rendszert választani, akkor vakmerőség azt mondani, hogy Linux vagy Windows vagy MacOS vagy akármi lesz a befutó.

És ugyanezt gondolom arról, hogy mi a legjobb fejlesztőkörnyezet Javához (ki mit szokott meg, kinek mi áll kézre, milyen gépe van…), melyik a legjobb programozási nyelv (mit akarunk benne fejleszteni, miben van a csapatnak tapasztalata, milyen áron dolgoznak a fejlesztők, milyen a fejlesztői utánpótlás (számban és árban), ez várhatóan hogyan fog változni, milyen környezetben kell futnia, a jövőben milyen környezetben kell majd futnia, milyen változások várhatók a követelményekben, ha továbbfejlesztésre van szükség, a meglévő részek milyen környezetben és programnyelven lettek megírva…)

Szélsőséges példa, hogy néhány nagyvállalatnál továbbra is COBOL nyelven (a nyelv 1959-ben jött létre, jelenleg – 2019. szeptember – a TIOBE Index listáján 0.417%-kal a 31., ahol jelenleg a Java az első 16.661%-kal) írt szoftverek futnak valahol a mélyben. Egy ilyen szoftver módosítási projektjére a COBOL a legjobb programozási nyelv, mert bármi mást is használnál, akkor nulláról újra kell írni az egészet (több évtized(!) munkáját!), ami meg horribilis mennyiségű idő, erőfeszítés, tesztelés, és aligha fogja bárki is finanszírozni.

Visszatérve a Linuxra: Ha jelenleg Windowst használsz, és programozó szeretnél lenni, célszerű megismerkedni a Linux világával, akár csak úgy, hogy felrakod egy virtuális gépbe (olyan szoftver, ami úgy tesz, mintha egy külön számítógép lenne, lehet rá (akár másik) operációs rendszert rakni – pl. Oracle VirtualBox, VMWare, QEMU, KVM…). Linuxot sok helyen használnak a szerverprogramok futtatására, célszerű tehát ismerni legalább alapszinten, hogyan is kell kezelni, főleg a parancssorát (linuxos terminológiával: shelljét).

Pasztuhov Dániel