Feedback Form
Feed subscription » blog | » comments | » irc | » fórum | » mobi | » twitter

Open-source

Open-sourceNedávno som dostal za úlohu opísať open-source programy a tak som vytvoril článoček, ktorý popisuje skupinu softvéru združovaného pod týmto označením, ako aj jeho výhody a úskalia a to hlavne z pohľadu bezpečnosti. I keď je článok písaný skôr pre laikov, dúfam, že navedie niekoľkých ľudí tou správnou cestou a porozumejú, čo to vlastne open-source softvér je.

Open-source kategorizuje softvér, ktorý je distribuovaný s otvoreným zdrojovým kódom, čiže umožňuje užívateľovi v rámci podmienok licencie kód upraviť a ten distribuovať, či s ním jednoducho pracovať. Často sú open-source kódy doslova zliepané do seba, čím vytvárajú nástroje, ktoré by za bežných okolností v komerčnej verzii stáli tisíce, ak nie desaťtisíce korún. Open-source programy majú jedinú limitáciu, licenciu, distribuované sú však zväčša zdarma. Open-source softvér však môže byť aj komerčný, ako napríklad časti kódu, ktoré použijete vo svojom programe (knižnice), alebo veľmi často webové aplikácie napísané v jazyku php, JavaScript, či ASP bývajú distribuované ako open-source a len zriedka sú chránené proti zmene kódu. Open-source však najčastejšie u ľudí evokuje softvér, ktorý je zdarma a je obmedzovaný danou licenciou. V tomto článku sa budeme zaoberať práve softvérom, ktorý je zdarma a nie nutne s úplne otvoreným kódom.

Ako som napísal, bezplatný softvér má vždy svoje limity. Tie sú určované licenciami, ktorých existuje obrovské množstvo. Najznámejšou je určite GPL, za ktorou stojí famózny Richard Stallman, tvorca Unix-like operačného systému. Okolo open-source softvéru, hlavne vďaka svojej otvorenosti a prípadnej bezplatnej distribúcii, je vytváraná početná komunita, ktorá aktívne, či pasívne zasahuje do tvorby daného softvéru, čo nielen výrazne zlepšuje daný softvér, ale aj autori projektu patria k svetovej špičke, keďže riešia problémy a otázky, ktoré by inak zostali skryté. Otvorenosť kódu má mnoho výhod a jednou z nich je: “mnoho očí, veľa nájde”. Takto sú nachádzané nielen bezpečnostné zraniteľnosti, ale aj logické a štrukturálne chyby, ktoré programátori pri tvorení programu spravili. Open-source je však určite najpopulárnejší práve kvôli nízkej cene, ktorá je najčastejšie rovná nule. Vďaka tomu sa môžete s týmto softvérom stretnúť na každom kroku, nielen nasadený na webe, ale aj v domácnostiach, či kanceláriách. V dnešnej dobe sa odhaduje, že pravdepodobne až 1/3 používaného softvéru na OS Windows patrí do kategórie freeware, či open-source.

Nedávno som narazil na veľmi pekný a zaujímavý projekt vizualizácie “života” jednotlivých open-source projektov.

Otvorenosť kódu má však aj svoje negatíva a to hlavne z pohľadu bezpečnosti. Každý znalý hacker, ktorý ovláda ten ktorý programovací jazyk, je schopný vďaka svojím znalostiam a skúsenostiam vypátrať bezpečnostné chyby, ktoré mu napríklad umožnia získať nadvládu nad počítačom, na ktorom daný softvér beží, alebo na webe prístup do databázy. Ak je daný softvér obľúbený a nasadzovaný na mnohých miestach, dôsledky môžu byť katastrofálne. Väčšinou však danú zraniteľnosť objaví aj niekto z komunity, vďaka čomu býva zraniteľnosť okamžite „zaplátaná“. Ešte väčší problém však u open-source býva fakt, že len minoritný počet používateľov aktualizuje verzie, vďaka čomu sú staré zraniteľnosti otvorené na väčšine počítačov/webov. Tento fakt často umožňuje hackerom kompromitovať tisíce webov, či odcudziť obrovské množstvo osobných údajov klientov napríklad webových obchodov. Ďalším zásadným problémom bývajú praktiky väčšiny autorov, ktorí využívajú pri tvorení svojho softvéru ďalšie open-source knižnice a časti kódu od iných autorov. Najväčším problémom je, ak sa objaví zraniteľnosť v kóde iného autora, ktorého kód potom používajú autori ďalších projektov, či aplikácií pre rozšírenie vlastného softvéru. Ak aj tento autor zraniteľnosť odstráni, často už ďalší autori zabudnú/nechcú aktualizovať túto časť, čím sa stáva ich celá aplikácia zraniteľnou. Tento prípad je veľmi častý a v praxi sa s ním môžete stretnúť takmer kdekoľvek. Autori open-source softvéru totižto veľmi často využívajú ďalšie knižnice a kusy kódu, čím šetria čas a zároveň získavajú veľmi kvalitný kód, ktorý by museli vlastnoručne tvoriť. Už len z časových dôvodov by bola kvalita vlastnoručne vytvoreného kódu oveľa nižšia.

U open-source sú aj iné aspekty, ktoré môžu často zavážiť pri výbere aplikácie. Open-source softvér tvorení komunitou „žije“ len do doby, kým ho komunita vytvára. Ak ho vytvárať prestane, softvér zanikne, alebo sa pretransformuje inam. Najčastejšou príčinou sú nezhody medzi tvorcami, či nedostatok finančných prostriedkov, ktoré potrebuje každý človek pre svoj všedný život. Tvoriť „slobodný softvér“ je síce veľmi šľachetné, ale aj nákladné (časovo). Mnohokrát sa autori open-source projektu snažili svoj produkt zmeniť na komerčný softvér, no len vo veľmi málo prípadoch sa im to úspešne podarilo. Takmer vždy existuje už komerčný ekvivalent, ktorý je na trhu dlhší čas a vývojárska spoločnosť k nemu poskytuje oveľa širšie služby, ako napríklad poradenstvo, hot-line, školenia, certifikácie a mnoho iného. Konkurovať takémuto softvéru sa dá už len za predpokladu, že je niekoľkokrát lepší a jeho cena je nižšia, pričom sa služby postupne dopĺňajú.

Open-source však nemá len zápory, má aj množstvo kladov. Tým prvým je samozrejme prístupný zdrojový kód, ktorý je možné editovať, učiť sa z neho a ďalej rozvíjať, dopĺňať svoje myšlienky a funkcionalitu. Ďalším je zaručene cena. Tá je rozhodujúca hlavne v domácnostiach, ktoré sa vyhýbajú warezovým aktivitám a odmietajú kradnúť komerčný softvér. Takýchto domácnosti je mnoho, aj keď BSA tvrdí niečo úplne iné. Open-source softvér taktiež umožňuje vznik mnohých ďalších aplikácií, či už pre web, alebo priamo pre OS. Len na webe v posledných rokoch vzniklo mnoho služieb, ktoré využívajú open-source knižnice pre spracovávanie údajov. Príkladom môže byť online konvertor zamzar.com, ktorý vám online skonvertuje súbory, ako .doc na .pdf, či .html. Takto odstraňujete potrebu kupovať drahé nástroje, ktoré využijete len veľmi zriedka. Taktiež vďaka open-source aplikáciám vznikajú veľké, masívne projekty a aplikácie, ktoré sú viac než dobrými náhradami za komerčný softvér. Veľmi dobrým príkladom je open office, ktorý nahrádza potrebu zakúpiť Microsoft Office za veľa peňazí. Open Office je úplne bezplatný a je lokalizovaný hneď v niekoľkých svetových jazykoch, vrátane Slovenčiny. Kvalitou však nijako nestráca na komerčný Microsoft Office.

Open-source softvér však nie je vždy tou pravou odozvou na potreby zákazníka. Profesionálny, dlhé roky vyvíjaný komerčný softvér je najčastejšie nenahraditeľný lacnejšou alternatívou, či dokonca freewarom. Príkladom môžu byť profesionálny grafický softvér, ako AutoCAD, Photoshop, 3D Studio Max a mnoho ďalších. Aj keď existujú bezplatné ekvivalenty, ich kvalita je pre profesionálov nedostatočná, vďaka čomu sa komerčný softvér stále udržuje na špičke. Taktiež flexibilnosť vývojárov open-source aplikácií býva často ovplyvnená ich ďalšou prácou, životom a mnohými inými aspektami, pričom prácu zamestnancov na komerčnom softvéri neobmedzuje potreba mať ďalšie zamestnanie, čím získavajú rapídny náskok pred komunitou „víkendových“ vývojárov. Open-source vývojári sa najčastejšie spoliehajú na dobrovoľné príspevky komunity, ako aj na predaj podpory k ich produktu. Podpora býva najčastejšie spoplatňovaná, no nie vždy je práve na kvalitnej úrovni, pretože nie každý programátor má nutne komunikačné znalosti a schopnosti, kdežto v spoločnosti, ktorá daný produkt vyvíja profesionálne, je na takúto funkciu dosadená osoba, ktorá tieto schopnosti má a dokáže klientovi vysvetliť problematiku aj netechnickým spôsobom, ako daný problém odstrániť, čo môže byť taktiež jeden z kľúčových faktorov pri výbere vhodného softvéru.

I keď má open-source svoje chyby, netreba ho zavrhovať, ale naopak, je potrebná každá „ruka“, ktorá môže pomôcť k vylepšovaniu a zdokonaľovaniu daného softvéru. Mnoho veľkých spoločností tento fakt vie a preto pomáha autorom open-source projektov rozvíjať ich veľmi kvalitný softvér. Medzi popredné spoločnosti patrí vyhľadávací gigant Google, ktorý v každoročnej súťaži „Summer of code“ sponzoruje vybraných autorov open-source projektov. Tí dostávajú „plat“ a namiesto toho, aby cez leto pracovali napríklad v Mc Donalde, pracujú na svojom projekte. Aj mnoho iných spoločností aktívne podporuje budovanie open-source softvéru a hlavne zvyšuje povedomie o vytváraní „slobodného softvéru“, ktorý môže ktokoľvek akokoľvek upraviť podľa svojich predstáv.



Príbuzné články:
  • Elektrárne v USA môžu byť ľahko napadnuteľné hackerom
  • Získajte bezplatné otestovanie vašho webu
  • Aký blogovací systém používate vy?
  • YouTomb: MIT projekt katalogizujúci zmazané videá z YouTube


  • 2 Responses to “Open-source”


    1. 1 chrono Jun 20th, 2008 at 16:38

      Zrovna v kategórii “Grafický softvér” sa nachádza aj jeden pomerne úspešný Open Source program (konkrétne CinePaint). ;)

    2. 2 oooo Jun 20th, 2008 at 16:50

      kuprikladu aj gimp je velmi uspesny, ale nie pre profikov, ktory potrebuju narocnejsie nastroje na pracu s obrazkami a grafikou

    Leave a Reply