9. Nutné podmínky pro styl tržiště
První čtenáři tohoto článku se neustále dotazovali na podmínky, které je třeba splnit pro úspěšný vývoj ve stylu tržiště. Ptali se, jaké musí mít kvality vůdce projektu a v jakém stavu musí být kód ve chvíli, kdy je zpřístupněn veřejnosti a snaží se získat další vývojáře.
Je celkem jasné, že není možné programovat od počátku ve stylu tržiště. Je možné testovat, hledat chyby a vylepšovat na tržišti, ale bylo by velmi obtížné projekt zahájit ve stylu tržiště. Linus se o to nepokusil a já také ne. Vaše vznikající společenství vývojářů potřebuje něco, co může testovat a s čím si může hrát.
Když začnete hledat spolupracovníky, potřebujete jim představit uskutečnitelný cíl. Váš program nemusí pracovat příliš dobře, může být nepohodlný, obsahovat chyby a špatně dokumentován. Musí však přesvědčit budoucí vývojáře o tom , že se v dohledné budoucnosti může vyvinout v něco skutečně užitečného.
Linux i fetchmail měly již v době prvého zpřístupnění silnou a atraktivní konstrukci. Mnoho lidí, kteří přemýšlejí o programování ve stylu tržiště, toto považují zcela správně za základ úspěchu. Z tohoto faktu však zbrkle docházejí k závěru, že další nutnou podmínkou je konstrukční intuice vedoucího projektu a jeho chytrost.
Linus ale převzal svoji konstrukci od Unixu a já tu svoji z předchůdce popclienta (ačkoliv ta se potom podstatně změnila, procentuálně vzato mnohem více než v případě Linuxu). Takže musí mít vedoucí/koordinátor pro projekt ve stylu tržiště neobyčejný konstrukční talent nebo mu stačí využívat talent ostatních?
Já se domnívám, že není zcela nutné, aby koordinátor byl schopen tvořit dokonalé konstrukce, ale je naprosto nutné, aby byl schopen rozeznat dobré nápady ostatních.
Linux i fetchmail to potvrzují. Linus, ačkoliv není (jak jsme již diskutovali) neobyčejně originální konstruktér, prokázal svoji výbornou schopnost rozpoznat dobré nápady a integrovat je do jádra Linuxu. A já jsem již popsal, že s tím nejlepším nápadem ohledně fetchmailu (SMTP přesměrování) přišel někdo jiný.
Moji první čtenáři se mi snažili podbízet tím, že tvrdili, že jsem náchylný podceňovat originalitu konstrukce u projektů tržiště, neboť já sám jsem jí obdařen, a proto ji považuji za samozřejmou. V tom může být něco pravdy, konstrukce (narozdíl od kódování nebo hledání chyb) je mojí nejsilnější stránkou.
S originalitou při konstrukci programů je ale problém. Začnete podvědomě hledat původní a složitá řešení tam, kde je na místě použít něco robustního a jednoduchého. Některé mé projekty dříve selhali, protože jsem se dopustil podobných chyb, v případě fetchmailu se mi jich ale podařilo vyvarovat.
Já se domnívám, že projekt fetchmail uspěl částečně proto, že jsem omezil svoje tendence hledat chytrá řešení. To ale argumentuje proti tvrzení o nutnosti originality v projektu ve stylu tržiště. A vezměte si Linux. Řekněme, že by se Linus Torvalds snažil zakomponovat originální nápady během vývoje systému. Je pravděpodobné, že by vzniklé jádro systému bylo tak stabilní a úspěšné?
Je zapotřebí mít jistou úroveň konstrukčních schopností i programátorského umění, nicméně si myslím, že prakticky každý, kdo o něčem takovém uvažuje bude na patřičné úrovni. Vnitřní trh otevřeného společenství tlačí na všechny, aby nezačínaly projekty, které nejsou schopni uskutečnit. Dosud se zdá, že vše funguje.
Existuje ale další schopnost, která se obvykle nespojuje s rozvojem software a která je stejně důležitá, jako je shopnost konstruovat, a možná ještě důležitější. Vedoucí projektu tržiště musí být schopný komunikovat a zacházet s lidmi.
To by mělo být samozřejmé. Abyste mohli stavět vývojářskou společnost, musíte přitáhnout lidi, získat jejich zájem o to, co děláte a snažit se, aby byli spokojení s prací, kterou dělají. Technické zapálení hodně pomáhá, ale zdaleka není vším. Vaše povaha je také důležitá.
Není náhodné, že Linus je příjemný chlapík, kterého mají lidé rádi a chtějí mu pomoci. Není náhodné, že já jsem energický extrovert, který rád pracuje v davu a má některé instinkty a způsoby komika. Aby projekt ve stylu tržiště uspěl, velmi pomáhá, pokud dokážete alespoň trochu okouzlit lidi.