Svobodný software 14 - Mozilla

Dnes zamyšlení nad otevřením kódu, návaznosti fungování komerční firmy na produkt s otevřeným kódem, přínosech a možných negativních následcích. Jako příklad je brán projekt snad nejpovolanější - Mozilla.
23. ledna 1998 oznámil Netscape, že se chystá uvolnit zdrojový kód. Jak bylo poznamenáno v eseji Freeing the Source - The Story of Mozilla, lidé byli šokováni a říkali, že to je naprostá hloupost, ale to samé říkali když Netscape začal rozdávat svůj Navigator zdarma, což byl z pozdějšího pohledu jednoznačně správný krok. A tak nebyl důvod, proč tyto hlasy tentokrát brát nějak přehnaně vážně.

Celé to odstartoval Frank Hecker, když vypracoval obsáhlou zprávu o tom, proč by měl Netscape uvolnit zdrojový kód, z velké části založenou na eseji Erica Raymonda, Katedrála a tržiště. Netscape kupodivu tuto strategii přijal (což bylo ale zřejmě dáno velmi zhoršující se pozicí na trhu) a hlavní otázka se změnila z ,,máme to udělat?`` na ,,kdy to uděláme?``.

Termín byl stanoven vskutku šibeniční. 31. března 1998.

Objevilo se ale několik problémů. Netscape sám byl pevně rozhodnut uvolnit zdrojový kód, ale v Comunicatoru bylo spousta řešení od třetích stran. Netscape musel proto vyjednávat s těmito firmami, zda svůj kód uvolní, připojí jej v binární podobě jako modul, nebo zda jej bude muset Netscape vyjmout. Veškeré vyjednávání muselo být hotové do 24. února. Smlouvy, které nebyly uzavřeny do 24. února nebyly uzavřeny již nikdy, takový kus kódu se musel z Comunicatoru odstranit.

Narychlo se dopisoval chybějící kód, vyoperovávaly se různé moduly, které se nedaly zveřejnit, přepisovaly se komentáře ke kódu a tvořila se alespoň ta nejzákladnější dokumentace. Paralelně s tím se hledala vhodná licence pro otevření kódu.

Netscape chtěl mít možnost stavět na zveřejněném kódu své vlastní uzavřené proprietární produkty a tak byla zavržena GPL a později i LGPL. Zbývala BSD, ale ta se zase nezamlouvala Netscape pro svoji až přehnanou uvolněnost. A tak nezbylo nic jiného, než vložit úmornou práci do tvorby licence nové. Stvořena byla Netscape Public License a předhozena debatě ve veřejné e-mailové konferenci. Ta ji však díky určitým částem odsoudila. Zejména proto, že až příliš omezovala vývojáře ve prospěch firmy Netscape. Proto se v konferenci brzy objevila tato krátká zpráva:

,,Příští týden tu uvidíte z velké části přepracovanou licenci verze 5. Pravděpodobně bych to neměl moc komentovat (nechci vzbudit předčasná očekávání), ale poselství, že většina z vás licenci, tak jak je napsána, nenávidí, jsme slyšeli hlasitě a jasně.``

A opravdu, přišlo řešení v podobě Mozilla Public License, která řešila všechny námitky vznesené proti NPL. NPL měla licensovat veškerý kód, který je zveřejněn firmou Netscape a veškeré úpravy v něm, ať již je udělá Netscape či veřejnost. Nová vylepšení, pokud byla v samostatném zdrojovém souboru, však již mohla být licencována pod NPL-kompatibilní MPL. To byl velký pokrok ve vyjednávání o budoucí tváři projektu a účastnící webové konference si poprvé plně uvědomili, že jejich připomínky nejsou jen planým tlacháním, ale že mají vlastně poměrně silný hlas v rozhodování o budoucnosti tohoto projektu.

Na pozadí také vznikalo místo, kde bude Mozilla žít, web Mozilla.Org. Je dobře, že si stratégové Netscape včas uvědomili potřebu zajistit nějaké koordinační centrum pro projekt a že nestačí jen uvolnit zdrojový kód, musí lidem připravit i zázemí. To se jim beze zbytku povedlo a Mozilla má v porovnání s ostatními Open Source projekty opravdu velmi dobrou základnu.

31. března, přesně podle plánovaného harmonogramu, bylo již všechno hotovo. Následující den se pak konala party ve které bylo do davu vhozeno 12 CD se zdrojovým kódem, každé podepsané vývojáři. Zároveň byl zdrojový kód zpřístupněn přes Mozilla.Org.

Dnes je Mozilla již ve verzi 0.9.4 a je z ní velmi dobrý a konkurenceschopný browser. Pokud si nedovolíme přímo o ní tvrdit, že je nejlepší, musíme alespoň uznat, že kvalita ve srovnání s konkurenčním Internet Explorerem se od roku 1998 výrazně zvedla.

Netscape ale byl ten úplně první, kdo vyzkoušel otevřít kód nějakého již napsaného komerčního programu, navíc tak obsáhlého. A pokud něco děláte první, nemáte od koho byste se poučili a určitě se dopustíte mnoha chyb a přehmatů.

Pokud se nyní ohlédneme zpět, asi největší chybou Netscape byla špatná volba licence. Veřejnost si nakonec sice vynutila MPL, ale to byl jen částečný ústupek firmy. Nyní je patrné, že pokud by místo toho byla zvolena GNU GPL, vývoj browseru by se zřejmě o hodně zrychlil, protože by přilákal více vývojářů. Třeba vývojářská skupina GNOME se rozhodla nepropojit Mozillu s desktopem právě kvůli licenci a jen tímto přišla Mozilla o mnoho vývojářů. Podobných situací bylo více. A co hůř, lidé z Mozilla.Org se domnívají, že malé množství vývojářů ze začátku působila také domněnka, že Mozilla je pořád ještě převážně projekt Netscape, ne Open Source projekt.

Objevily se i vážné technické problémy a to třeba fakt, že většina kódu se ukázala jako naprosto nepoužitelná a tak de facto v půli vývoje padlo rozhodnutí zásadně změnit architekturu browseru a přepsat skoro všechen kód. Mnoho lidí se domnívá, že by možná bylo rychlejší začít tvorbu browseru od samého začátku a že snaha o zužitkování kódu Netscape vedla k velkému zpomalení.

Negativně se také hodnotí rozhodnutí hned zpočátku postavit Mozillu na tzv. XML uživatelském rozhraní, kde Mozilla je v podstatě jeden obrovský XML dokument, který je zobrazován jádrem Gecko. Lepší rozhodnutí by zřejmě bylo stavět nejprve na starém rozhraní (nebo podobném) a až později přejít k této pokrokové technologii založené na XML. Než bylo totiž odladěno, Mozilla byla velmi pomalá a nehledě na to, že to znamenalo velké zpomalení vývoje, znamenalo to také odrazení mnoha lidí, kteří zkoušeli Mozillu v průběhu vývoje a hodnotili ji jako by to byl již hotový browser. Při tom optimalizace v dřívějších verzích nebyla hlavním cílem vývojářů a tak měli téměř přímo doporučení nezdržovat se rychlostí. V posledních verzích řady 0.9 je však zrychlení znát u každého nového vydání a dřívější námitky se s každou novou verzí stávají neopodstatněné. (speciálně jsem měřil výsledky rychlosti spouštění instance Mozilly 0.9.2 a instance Internet Exploreru na Windows a došel jsem k výsledkům průměrně 1,785s : 2,492s ve prospěch Microsoftího prohlížeče, to již není oněch dříve vychvalovaných 13 sekund!)

Projekt Mozilla ale odkryl jeden z nejzávažnějších důvodů proti otevírání kódu stávajících aplikací. Je jím nutnost vyříznout všechny části kódu licencované nějakou třetí stranou. Mozilla tak v začátcích ztratila Javu, šifrování a mnoho dalších funkcí. Druhým zřejmě nepřekonatelným problémem je fakt, že kód vyvíjený v uzavřeném modelu se zřejmě pro vývoj v otevřeném prostředí nehodí. Jako výsledek musel být skoro celý přepsán.

Mozilla nám také ukázala, že není lehké otevřít nějaký produkt a potom se snažit stavět na něm komerční aplikace, jelikož otevřená verze se vyvíjí tak rychle, že proprietární firma nestíhá včas vydávat svoje komerční produkty a ty tak místo toho, aby nabízely nějakou přidanou hodnotu, jsou v době vydání již oproti aktuální otevřené verzi katastrofálně zastaralé. Jen věci neznalí uživatelé mohli instalovat Netscape Navigator 6 v době, kdy Mozilla byla již podstatně dál a NN6.0 byl oproti ní už jen bezcenný balast. Toto je samozřejmě lichotka pro svobodný software, nikoliv však něco, na co by se daly nalákat další proprietární firmy k otevření svých produktů.

V tomto článku bohužel není dost místa rozebírat všechna pro a proti, které otevření produktu přináší, nicméně toto jsou ty hlavní body a na mnoho z nich narazil i Sun se svým Star Officem a další.

Mozilla jako projekt browseru je i přes své velké zpoždění velkým úspěchem komunity, bohužel je ale zřejmě prohrou firmy. Počkejme si jak dopadnou další.

Diskuze (8) Další článek: Intel zrušil vývoj Xeonu, nastupuje Prestonia

Témata článku: Software, Open source, Mozilla, Erica, Špatná volba, Velká část, Otevřené prostředí, Hotový produkt, Naprostá hloupost, Svobodný software, Browser, Staré rozhraní, Lehký problém, OneDrive, Hlavní otázka, Katedrála, Frank


Určitě si přečtěte

Nový Edge je opravdu Chrome! Prohnali jsme prohlížeče benchmarky i vlastním unikátním testem

Nový Edge je opravdu Chrome! Prohnali jsme prohlížeče benchmarky i vlastním unikátním testem

** Nový Edge je postavený na Chromiu ** Prohnali jsme ho benchmarky a srovnali s ostatními ** Potvrdily nám, že je prakticky stejný jako Chrome a Opera

Jakub Čížek | 66

Proč teď nedává smysl kupovat notebook a kdy přijde ten správný čas

Proč teď nedává smysl kupovat notebook a kdy přijde ten správný čas

** Během pár týdnů přijdou na trh výkonnější notebooky ** Čím dražší notebook vybíráte, tím víc se vám změní nabídka ** Také lehké notebooky budou téměř herní

Tomáš Holčík | 52

17 užitečných tipů a triků pro Mapy Googlu, které byste měli znát

17 užitečných tipů a triků pro Mapy Googlu, které byste měli znát

** Mapy Googlu mají spoustu funkcí, které jsou často přehlíženy ** Využijte například podrobnější možnosti plánování cest ** Hodit se mohou i tipy na sdílení nebo pohledy do minulosti

Karel Kilián | 25

Výkon herního počítače za 139 Kč nebo i úplně zadarmo. Geforce Now startuje!

Výkon herního počítače za 139 Kč nebo i úplně zadarmo. Geforce Now startuje!

** Dlouhý betatest končí a nyní všichni mohou hrát přes internet ** Nemusíte žádné hry kupovat znovu. Jede to, co už máte v knihovnách na Steamu, Uplay, Battle.net a jinde ** Roční náklady odpovídají ceně jedné běžné hry

Tomáš Holčík | 53



Aktuální číslo časopisu Computer

Velký test autokamer

Test ATX skříní

Jak surfovat pohodlně

Sportovní aplikace

Jak funguje procesor