Tvorba open source softwaru: jak úspěšně řídit projekt (+ soutěž)

Petr Krčmář 16. 7. 2012

V Edici CZ.NIC vyšla další česká kniha. Tentokrát jde o titul Karla Fogela, který se zabývá pohledem na lidský prvek při řízení a správě open-source projektů. Většina z nich totiž začíná jako nápad jednoho člověka, ale pokud se má stát projekt skutečně velkým a úspěšným, je potřeba více než jen umění programovat.

Autor Karl Fogel skutečně ví, o čem píše. Sám se totiž podílí či podílel na vývoji několika velkých open-source projektů jako Subversion, CVS, Launchpad či Emacs. Má tedy velké množství praktických zkušeností s různými typy vývojářských skupin, s jejich řízením, chybami i selháním. Právě o těchto tématech je jeho kniha.

Marketing a PR není sprosté slovo ani v open source

Pokud vás při přečtení názvu knihy napadlo, že půjde o další příručku pro programátory obsahující informace o vývojářských nástrojích, jste na omylu. Toto je kniha z kategorie „pro manažery“. Ovšem nenechte se zmýlit, nejde v ní ani o byznysové poučky plné newspeaku. Kniha vám vysvětlí, jak byste měli vést svůj otevřený projekt.

Vývojáři a marketing jsou dva oddělené světy, které se vzájemně nenávidí. Je to bohužel přirozený důsledek naprosto rozdílného přístupu k věci. Zatímco programátor chce, aby věc dokonale fungovala a prodávala se sama o sobě, marketér jej tlačí do nesmyslných věcí jako jsou vzhled, barvičky, tlačítka a ikonky. Lidé z marketingu zase bývají nešťastní z programátorů, které zajímají ozubená kolečka a hejblátka, ale úplně kašlou na vnější dojem.

Aby byl ale projekt úspěšný, je třeba oba tyto světy sblížit a zajistit jejich spolupráci. Aplikace musí samozřejmě dobře fungovat, ale zároveň je třeba ji udělat tak, aby byla použitelná i pro uživatele, který nebyl u jejího vývoje. Instalátor je pitomost, prostě to tam nakopčím, spustím ty dva skripty, založím databázi a je to.

Právě špatná komunikace a prezentace (uvnitř projektu i vně) bývá nejčastějším důvodem, proč jinak zajímavé projekty končí. Autor knihy tvrdí, že podle jeho zjištění více než 90 % open-source projektů selže. Buď přestanou úplně produkovat svůj software nebo se dostanou do nějakého podivného stavu, který odrazuje jak uživatele, tak i nové vývojáře. Samozřejmě za tím mohou stát klasické problémy všech projektů jako špatná cílová skupina, nejasné zaměření či špatný návrh. Kniha se ale těmito „obecnými“ problémy prakticky nezabývá. Namísto toho rozebírá situaci specifickou právě pro open source.

Open source není všelék

 



Autor velmi realisticky uvádí, že otevření projektu automaticky nevyřeší jeho problémy. Mnoho projektů totiž čeká, že po vydání tiskové zprávy „od dnešního dne to vydáváme pod GPL“ se seběhnou stovky vývojářů a začne se „něco“ a „nějak“ samo dít. Naopak tím jen přicházejí problémy nové a je třeba hodně úsilí, aby se otevření konkrétního projektu dobře zúročilo.

Dalším velkým problémem, který jako uživatelé open source dobře známe, je špatná prezentace směrem ke koncovým uživatelům. Dokumentaci napíšeme, až to bude hotové. Problém ale je, že to nikdy nebude hotové, takže se obvykle ta dokumentace nenapíše vůbec. Stejně tak instalátor, uživatelské fórum, pořádný web. Z hlediska vývojářů je na to vždycky dost času, ale uživatel ztratí automaticky zájem, pokud to není teď hned.

Velmi podceňovanou oblastí je také řízení projektu. Jak řízení? My se na tom podílíme rovným dílem všichni! Každý projekt potřebuje vedení, směrování, práci se zdroji. Zní to jako prázdné fráze, ale je to tak. Pokud se nechá různorodá skupina dobrovolníků úplně bez usměrnění, projekt se rozpadne, protože nebude nikdo, kdo by řekl, co se má dělat teď a co chceme mít hotové za rok. Podstatné ovšem je, že na dobrovolníky nemůžete jít příliš zostra, jinak vám také utečou. Klasické manažerské kurzy jak za týden dostat líné podřízené do latě jsou vám tady k ničemu.

Další významnou skupinou problémů představují mezilidské vztahy. Před několika lety zažil velké potíže projekt Gentoo, kterému začali utíkat vývojáři kvůli osobním rozepřím a neshodám. Do podobných projektů se totiž zapojují různě založení lidé z různých prostředí a kultur a i při malicherných hádkách může být k napadání velmi blízko. Je to debil, nebudu se s ním bavit! To dokáže demotivovat prakticky každého.

Politika se dělá i tady

Dalším programátorsky „sprostým slovem“ je politika. Je to něco zbytečného, špatného a vůbec v projektech nepotřebného. Tady přece není nic k vyjednávání, tohle je jednoznačně lepší řešení! Ne vždycky je možné objektivně rozhodnout, která varianta je lepší. V takovou chvíli přijde ke slovu politika. Ta nemá s vývojem kódu přímo nic společného a většinu lidí může otravovat. Je ale naprosto nutná a objeví se u každého většího projektu.

Je přirozené, že se začnou objevovat snahy o vytýčení pozic některých členů, posílení vlastního vlivu či zmírnění vlivu někoho dalšího. Politika je zkrátka stav, k němuž dochází, když se lidé neshodnou, a úspěšné projekty jsou ty, které rozvíjejí politické mechanismy ke konstruktivnímu zvládání neshod.

Jako člen či dokonce vedoucí projektu si musíte uvědomit, že každý zvolený krok má i své politické důsledky. Přímo či nepřímo ovlivňuje další účastníky projektu, motivuje je, nebo naopak demotivuje, naštve je, uklidní či znervózní. Pokud například někomu svěříte důležitou funkci, projevíte mu určitou důvěru a posunete tím určitým způsobem jeho pozici v projektu. To může mít nedozírné následky a je třeba se je naučit předvídat a využívat.

Největším problémem ale bývá, když se některé věci probírají tajně, problémy se řeší skrytě nebo se neřeší vůbec. Vzniká tím napětí, pocit nedůvěry, dojem z tajemných zákulisních tlaků a projekt se začne otřásat v základech. U otevřených projektů je kromě otevřenosti kódů důležitá také transparentnost v rozhodování, řešení problémů a komunikaci vůbec.

Kudy ano a kudy ne?

Kniha Karla Fogela se snaží všem potenciálním účastníkům otevřených projektů ukázat, jak se to má dělat správně. Zároveň ale předkládá i řadu špatných příkladů, aby bylo jasně vidět, jak problémy začínají, jak se rozvíjejí a kdy je možné s nimi ještě něco udělat.

Kniha se zabývá především komunikací se všemi okolo – s ostatními vývojáři, s uživateli, s testery a dalšími, kteří se motají kolem projektu. Je ovšem rozkročena mezi několik různých témat: založení projektu, volba jména, volba licence, příprava techniky, komunikační kanály či finance. Ovšem věnuje se i technické stránce vývoje: jak vydávat nové verze, jak komunikovat s ostatními, či jaké nástroje použít při řešení chyb.

Rozhodně se netýká jen lidí stavících se do role „vedoucích projektu“, ale zajímavé postřehy v ní najdou vůbec všichni, kteří se nějak dobrovolně zapojují. Hladký běh projektu totiž vyžaduje dobrou souhru všech. Nejen při programování, ale stejnou měrou i při komunikaci a řízení.

Informace o knize

Název: Tvorba open source softwaru
Autor: Karl Fogel
Vydavatel: CZ.NIC
Vazba: brožovaná
Počet stran: 312
Cena: 299 Kč
ISBN: 978-80-904248-5-2

Knihu je možné zdarma stáhnout v naší knihovně nebo koupit u CZ.NIC či vyhrát v naší soutěži.

widgety

Soutěž o tři výtisky

Pokud máte zájem o tištěný výtisk knihy, můžete se zúčastnit naší soutěže. Odpovědi je možné posílat do úterý 17. července 2012 do 23:59 hodin. Ze správných odpovědí budou vylosováni tři výherci, kteří obdrží poštou výtisk knihy.

Soutěž už byla ukončena a výherci byli vyhlášeni.

Našli jste v článku chybu?
Podnikatel.cz: Rohlik.cz testoval roboty pro rozvážku

Rohlik.cz testoval roboty pro rozvážku

Lupa.cz: Další Češi si nechali vložit do těla čip

Další Češi si nechali vložit do těla čip

DigiZone.cz: RRTV: frekvence pro Country Radio

RRTV: frekvence pro Country Radio

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

Vitalia.cz: Voda z Vltavy před a po úpravě na pitnou

Voda z Vltavy před a po úpravě na pitnou

Vitalia.cz: Nová vakcína proti chřipce se aplikuje nosem

Nová vakcína proti chřipce se aplikuje nosem

Vitalia.cz: Tradiční čínská medicína a rakovina

Tradiční čínská medicína a rakovina

DigiZone.cz: Budoucnost TV vysílání ve Visegrádu

Budoucnost TV vysílání ve Visegrádu

DigiZone.cz: Regionální tele­vize CZ vysílá "Mapu úspěchu"

Regionální tele­vize CZ vysílá "Mapu úspěchu"

Vitalia.cz: Test dětských svačinek: Tyhle ne!

Test dětských svačinek: Tyhle ne!

Vitalia.cz: Muž, který miluje příliš. Ženám neimponuje

Muž, který miluje příliš. Ženám neimponuje

Vitalia.cz: Tohle všechno se dá usušit

Tohle všechno se dá usušit

Lupa.cz: Odkazy na pirátský obsah mohou být nelegální

Odkazy na pirátský obsah mohou být nelegální

120na80.cz: Galerie: Čínští policisté testují českou minerálku

Galerie: Čínští policisté testují českou minerálku

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

Root.cz: Hořící telefon Samsung Note 7 zapálil auto

Hořící telefon Samsung Note 7 zapálil auto

DigiZone.cz: Sat novinky: NASA Ultra HD (4K)

Sat novinky: NASA Ultra HD (4K)

120na80.cz: Co je padesátkrát sladší než cukr?

Co je padesátkrát sladší než cukr?

Podnikatel.cz: Udělali jsme velkou chybu, napsal Čupr

Udělali jsme velkou chybu, napsal Čupr

Vitalia.cz: Výživový poradce: Tyhle fešáky jedu celoročně

Výživový poradce: Tyhle fešáky jedu celoročně