Hlavní navigace

Vývoj modelem One Man Show

11. 2. 2010 18:15 Svatopluk Vít

Řada projektů a programů je vyvíjena pod svobodnými licencemi. Je to fajn, ale pokud na daném projektu dělá jen jeden člověk, může to mít za následek řadu problémů. V poslední době se také několikrát stalo, že ten nejdůležitější nechce/nemůže dále vyvíjet, což má za následek, že se s ním vezou všichni nadšení uživatelé, kteří jen užívají a nemohou/nechtějí vývoj převzít.

Jestli si myslíte, že žádný projekt typu One Man Show neznáte, zkusím zmínit třeba doplněk IETab pro Mozilla Firefox, Wink, muCommander, PS PAD nebo FreeCommander. Začnu tím prvním.

Pracuji ve firmě, která je postavená na platformě a prostředí Microsoftu. Ano, jsme jedna z těch firem, která se zarputile drží IE6, protože v roce 2003 spustila mnoho intranetových projektů napsaných na míru právě IE6. V současné době se situace začíná měnit, udržovat IE6 je pro firmu velká zátež. U nás ve firmě existuje institut tzv. Corporate image, což je standardní obraz disku všech počítačů používaných v rámci společnosti. Dokonce i objednávané počítače chodí s tímo obrazem přímo z výroby. Sada programů je docela široká. Je jasné, že IE6 je samozřejmě jediným internetovým prohlížečem. A nemusím zmiňovat, jak se IE6 ovládá, jak je „moderní“ apod.

Jinými slovy – pracuji na IT a mám možnost si na počítač doinstalovat i jiný než standardní software (samozřejmě s příslušným posvěcením z centrály). Zběžným průzkumem mezi svými kolegy z našeho evropského regionu jsem zjistil, že z 10 počítačů je Firefox je nainstalován na 8 z nich jako výchozí prohlížeč. Jenže i my musíme využívat standardní intranet s aplikacemi, které ve Firefoxu nefungují.  Takže před spuštěním aplikací si musíte vypomoci tím, že spustíte IE6 a vše je OK.

Už před nějakou dobou jsem objevil doplněk IE Tab, který  dokáže v FF používat engine z IE, maskovat se za něj a nemusíte tak „potupně“ spouště jiný prohlížeč (tedy IE). Prostě si asociujete stránku s IE Tab a je to. Vždy, když ji navštívíte, je předhozena automaticky IE tab a ten zajistí, že si stránka bude myslet, že jede v IE. Pozor není to něco jako prostá změna User Agenta. Používá se k tomu jiné renderovací jádro. Funguje to skvěle a používám to tak několik let. Až do minulé aktualizace FF na verzi 3.6. Jaké výhody oproti řadě 3.5.x nabízí asi víte a tak jsem aktualizoval. Jenže mi přestal fungovat IE Tab. To se po aktualizaci stává, řekl jsem si a není to nic zvláštního. Provedu aktualizaci doplňků a bude. Všechny mé doplňky, které používám (cca 15) fungují nebo mají k dispozici aktualizaci, která funguje. Jen IE Tab nic. A nepomůže ani vypnutí kontroly na aktuální verzi FF, protože IE Tab se sice nainstaluje a spustí, jen stránky se nezobrazí. Místo nich jen prázdná stránka a obsah nikde.

Jako tisíce dalších jsem se začal pídit po tom, kdy a jak bude IE Tab aktualizován a zjistil jsem, že to není vůbec jasné. Za celou dobu, co IE Tab existuje, byl psán vždy právě jedním vývojářem a byli celkem dva. Pravdou však je, že nejaktuálnější verze má datum květen 2009. Někdy v té době totiž poslední vývojář vydal novou verzi a ukončil jeho podporu. A nenašel se nikdo další, kdo by pokračoval. Takže tento problémek tikal jako časovaná bomba. Doplněk používá docela dost lidí, ale nikdo nepřišel na to, že se může stát to, k čemu došlo nyní. Poslední vývoj je ten, že se snad povedlo kontaktovat autora, zda by byl nebo nebyl ochoten/schopen zase pokračovat a zprávy říkají, že snad ano. Alternativou je tedy zůstat u 3.5.7 kde IE Tab funguje bez nejmenších problémů. Alternativou je i Coral IE Tab, ale ten kvalit IE Tab nedosahuje, neboť jeho renderovací jádro není tak dokonalé.

Ve světle tohoto případu se pak jeví jako reálná výzva – Přispějte autorovi doplňku, který používáte. Myslím si, že to má význam, protože peníze obvykle bývají dobrým stimulem k tomu, aby člověk, který ve svém volném čase něco vytváří a musí se rozhodnout, zda bude nebo nebude pokračovat, aby vývoj neskončil.

Jinými slovy – je fajn, že vámi používaný projekt je šířen pod svobodnou licencí a se zdrojovým kódem, pokud však nenajdete náhradu za původního autora, můžete si být jistí, že to dojde do stavu, kdy to prostě přestane pracovat. V tomto případě to trvalo docela dlouho a ještě není vyhráno.

Dalším projektem, který pomalu umírá na to, že je to jen produkt jednoho člověka, je docela povedený Wink. Jedná se o nástroj umožňující snímání obrazovky vašeho počítače a převod dění do Flash animací. Můžete přidávat popisky a vytvářet tak velmi působivé „pohyblivé“ manuály. Já tento produkt používám. Je však šířen jako freeware a poslední verze pochází z roku 2008 a autor vydává jednu verzi za rok (asi tak). Existuje i ve verzi pro Linux, tato verze je však ve srovnání s verzí pro Windows poněkud funkčně chudší, ale přesto stále velmi dobře použitelná.

Produkt si získal nějaký ohlas, ale autor prostě nestíhá vyvíjet dál. Už mnohokrát se na diskuzích probíralo, zda by třeba otevření kódu nemohlo nějak pomoci, autor zatím kód neotevřel. Takže je zde dobrý produkt, který má nějakou funkčnost, obsahuje chyby a není možné se jich zbavit.  Nicméně na konci roku 2009 se objevila přímá odpověď na přímý dotaz, jak je to tedy s budoucností – Wink bude šířen pod Open Source licencí. Bohužel není zatím specifikováno datum a autor otevřeně mluví o několika měsících. Nicméně slibuje i Mac verzi. Takže uvidíme, každopádně Wink již (asi) nebude One Man Show.

Dalším úspěšným projektem, který z uzavřeného kódu přešel na otevřený je muCommander.  Trpěl oním známým nedostatkem – nebyl čas na vývoj. V roce 2007 do toho autor říznul a oznámil, že kód uvolní pod GNU GPL s příchodem nové verze. Stalo se. Dnes má za sebou již 5 verzí a v průměru vychází nová verze jednou za půl roku. Mezitím jsou k dispozici Nighthly buildy, testovat tak můžete opravdu to nejposlednější. Core vývojáři jsou 4 a na výsledku je to znát – kopa funkcí, o kterých uživatelé jen snili, je dnes realitou.

Opakem pak může být projekt Racer. To je velmi pohledný automobilový simulátor. Od začátku byl vyvíjen pod svobodnou licencí, v určité fázi autor kód přepsal a uzavřel. Je z něj projekt jednoho člověka a vývoj tím docela trpí. Existuje verze pro Windows, která je vyvíjena celkem aktivně a pravidelně (i když nové verze nejsou moc často k dispozici), s Linuxovou verzí je problém. Existuje, ale rozdíl mezi WIN a Linux verzí je propastný.

Máme zde však i příklady úspěšného „jednohlavého“ projektu , který vychází často. Má sice uzavřený kód, ale aktualizace jsou pravidelné. Možná si vzpomenete – PS Pad. Jedná se o jeden z nejlepších textových editorů ve Windows vůbec. Samostatná linuxová verze neexistuje, ale WINE si s ním poradí. Pokud má paměť sahá, tento projekt nikdy netrpěl typickými příznaky One Man Show a skoro se nechce věřit, že něco tak kvalitního je vyvíjeno ve volném čase a zdarma. I když příspěvkům se samozřejmě meze nekladou.

Zajímavou formu podpory zvolil i FreeCommander, což je jeden z mála opravdu klasických souborových správců pro Windows. Taktéž je vyvíjen jedním vývojářem, vývoj jde docela pomalu a jak píše autor, projekt mu přerostl přes hlavu. O otevírání kódu se zatím nemluví, podporu může autorovi poskytnout tím, že mu zašlete příspěvek. Pokud má tu správnou výši, dostanete přístup k betaverzím a budete si moci nejnovější verzi stáhnout v předstihu. Autor je z Polska, momentálně však je usazen v Německu. Osobně se mi tento model líbí a příspěvek jsem poslal. Ve světě Microsoftu však vládne Total Commander a freeware či open source projektů moc není. I když registrační poplatek za TC je relativně malý, stále dost lidí jej používá v nesouladu s jeho licencí. Pokud nechcete platit poplatek za TC, je FreeCommander alternativou.

FreeCommander, jak již bylo zmíněno, svého autora trochu přerostl. Původně se jednalo jen o „nouzovku“, kterou si postupně oblíbilo docela dost lidí a začalo se projevovat to, jak „kvalitně“ byl napsán kód. Autor lidem trpělivě naslouchá, ale jden z hlavních problémů se zatím nevyřešil. Částečně proto, protože autor nestíhá. FreeCommander totiž pro operace se soubory používá jen a pouze standardní Windows API tzn. že např. kopírování je řízeno standardním dialogem z Windows, včetně neduhů. Na první pohled je to OK, ale už na druhý zjistíte, že při kopírovíní např.  500 souborů může dojít k tomu, že některý bude v cílovém umístění používán a nejde přepsat. Standardní chování Windows je, že tuto skutečnost oznámí a neumožní  pokračovat dále. Prostě se daná operace zastaví, objeví se hláška a pak to celé skončí. Můžete to jednoduše vyzkoušet na příkladu mazání souborů v TEMP složce. Vyberte vše a dejte je smazat. Vždy se stane, že nějaký soubor je používán. FC (skrz standardní Windows dialog) se po chvíli zastaví s tím, že soubor xyz.tmp nelze smazat, protože se používá. Žádné tlačítko přeskočit či ignorovat. Jen Zavřít.

Dá se s tím žít, ale plně by to vyřešilo, kdyby si autor vytvořil své vlastní dialogy. Na tom pracuje už více než rok, je k dispozici alfa verze, která tuto funkci zatím nemá. Náprava se blíží, otázkou je kdy. Jistě, tohle by se u komerčních programů asi nikdy nestalo, ael svůj podíl viny na tom má i zmiňovaná One Man Show.

Sdílet