Hlavní navigace

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.

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?

16. 7. 2012 7:42

František (neregistrovaný)

Otázka "Která z následujících licencí uživatele nejméně omezuje?" mi připadá podivná. :

1. Žádná z uvedených licencí neomezuje uživání programu ani nabytí licence k užívání programu. (Omezení se týkají pouze distributorů, nikoli uživatelů.) Všechny zmíněné licence omezují uživatele stejně a to tak, že jej vůbec nijak.
2. Z pohledu distributora: Licence BSD neupravuje podmínky distribuce originálního díla a ani odvozených děl, čímž umožňují omezovat distribuci prostřednictvím tivoizace, softwaro…

16. 7. 2012 22:53

Franta (neregistrovaný)

+1

Chtěl jsem se zapojit, ale tato otázka mne odradila.

Lupa.cz: Slevové šílenství je tu. Kde nakoupit na Black Friday?

Slevové šílenství je tu. Kde nakoupit na Black Friday?

Podnikatel.cz: Vládu obejde, kvůli EET rovnou do sněmovny

Vládu obejde, kvůli EET rovnou do sněmovny

DigiZone.cz: Česká televize mění schéma ČT :D

Česká televize mění schéma ČT :D

Vitalia.cz: „Připluly“ z Německa a možná obsahují jed

„Připluly“ z Německa a možná obsahují jed

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

DigiZone.cz: ČT má dalšího zástupce v EBU

ČT má dalšího zástupce v EBU

Lupa.cz: Avast po spojení s AVG propustí 700 lidí

Avast po spojení s AVG propustí 700 lidí

Vitalia.cz: Baletky propagují zdravotní superpostel

Baletky propagují zdravotní superpostel

Vitalia.cz: Tesco: Chudá rodina si koupí levné polské kuře

Tesco: Chudá rodina si koupí levné polské kuře

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0

Lupa.cz: Google měl výpadek, nejel Gmail ani YouTube

Google měl výpadek, nejel Gmail ani YouTube

Podnikatel.cz: Víme první výsledky doby odezvy #EET

Víme první výsledky doby odezvy #EET

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Lupa.cz: UX přestává pro firmy být magie

UX přestává pro firmy být magie

Měšec.cz: Finančním poradcům hrozí vracení provizí

Finančním poradcům hrozí vracení provizí

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?

120na80.cz: Bojíte se encefalitidy?

Bojíte se encefalitidy?