TOC / OBSAH  >>>ENCSEN/CSZVONP/T

1. The Cathedral and the Bazaar

1. Katedrála a tržiště

Linux is subversive. Who would have thought even five years ago that a world-class operating system could coalesce as if by magic out of part-time hacking by several thousand developers scattered all over the planet, connected only by the tenuous strands of the Internet? Kdo by si pomyslel ještě před pěti lety, že prvotřídní operační systém může vzniknout jakoby kouzlem z dobrovolné práce několika tisíc programátorů roztroušených po celém světě propojených pouze chapadly Internetu.
Certainly not I. By the time Linux swam onto my radar screen in early 1993, I had already been involved in Unix and open-source development for ten years. I was one of the first GNU contributors in the mid-1980s. I had released a good deal of open-source software onto the net, developing or co-developing several programs (nethack, Emacs VC and GUD modes, xlife, and others) that are still in wide use today. I thought I knew how it was done. Já určitě ne. Počátkem roku 1993, kdy se Linux poprvé objevil na mé radarové obrazovce, jsem se již 10 let zabýval Unixem a otevřeným vývojem . V polovině osmdesátých letl jsem patřil k prvým přispěvatelům GNU, přes Internet jsem zpřístupnil řadu otevřeného software, vyvinul jsem nebo se podílel na vývoji několika programů (nethack, VC a GUD módy Emacsu, xlife, atd.), které se dodnes používají. Domníval jsem se, že vím jak na to.
Linux overturned much of what I thought I knew. I had been preaching the Unix gospel of small tools, rapid prototyping and evolutionary programming for years. But I also believed there was a certain critical complexity above which a more centralized, a priori approach was required. I believed that the most important software (operating systems and really large tools like Emacs) needed to be built like cathedrals, carefully crafted by individual wizards or small bands of mages working in splendid isolation, with no beta to be released before its time. Linux postavil na hlavu mnohé z toho, co jsem znal. Léta jsem šířil Unixovou víru v drobné nástroje, rychlé psaní prototypů a evoluční programování. Také jsem ale věřil v existenci kritické meze složitosti, po jejímž překročení je již vyžadován více centralizovaný přístup. Věřil jsem, že nejdůležitější software (operační systémy a opravdu velké nástroje jako Emacs) musí být stavěny stejně jako katedrály, pečlivě opracovávány jednotlivými čaroději nebo malými skupinami kouzelníků pracujících v příjemném osamění a publikujícími prvé výsledky své práce až ve vhodný čas.
Linus Torvalds's style of development - release early and often, delegate everything you can, be open to the point of promiscuity - came as a surprise. No quiet, reverent cathedral-building here -- rather, the Linux community seemed to resemble a great babbling bazaar of differing agendas and approaches (aptly symbolized by the Linux archive sites, who'd take submissions from anyone) out of which a coherent and stable system could seemingly emerge only by a succession of miracles. Vývoj ve stylu Linuse Torvalda - publikuj brzy a často, přenes na ostatní vše co můžeš, buď otevřený až téměř k bodu promiskuity, to bylo velké překvapení.. Linuxové společenství více připomíná velké hlučné tržiště různých metod a postupů než tichou, oddanou práci na stavbě katedrály. Linuxové archivy, které přijímají příspěvky od kohokoliv, jsou toho důkazem. Zdálo by se, že z něčeho takového se může koherentní a stabilní systém vynořit pouze sérií zázraků.
The fact that this bazaar style seemed to work, and work well, came as a distinct shock. As I learned my way around, I worked hard not just at individual projects, but also at trying to understand why the Linux world not only didn't fly apart in confusion but seemed to go from strength to strength at a speed barely imaginable to cathedral-builders. Fakt, že tento styl tržiště fungoval a fungoval dobře, to bylo velké překvapení. Když jsem se naučil v tomto světě orientovat, pracoval jsem usilovně nejen na jednotlivých projektech, ale také jsem se pokoušel porozumět, jak je možné, že se svět Linuxu nejen že nerozletí na kusy v naprostém zmatku, ale naopak neustále sílí rychlostí, kterou si umí stavitelé katedrál stěží představit.
By mid-1996 I thought I was beginning to understand. Chance handed me a perfect way to test my theory, in the form of an open-source project which I could consciously try to run in the bazaar style. So I did -- and it was a significant success. V polovině roku 1996 se mi zdálo, že jsem systému porozuměl. Náhoda mi přihrála do cesty výborný způsob, jak své teorie otestovat formou otevřeného projektu, který jsem mohl cíleně rozběhnout ve stylu tržiště. Využil jsem šance a projekt skončil velkým úspěchem.
In the rest of this article, I'll tell the story of that project, and I'll use it to propose some aphorisms about effective open-source development. Not all of these are things I first learned in the Linux world, but we'll see how the Linux world gives them particular point. If I'm correct, they'll help you understand exactly what it is that makes the Linux community such a fountain of good software -- and help you become more productive yourself. Ve zbytku článku vám budu vyprávět příběh tohoto projektu a na jeho základě navrhnu několik algoritmů pro efektivní práci v otevřeném projektu. Ne vše jsem se naučil až ve světě Linuxu, ale uvidíme, jak Linuxový svět klade na některé věci obzvláštní důraz. Pokud se nemýlím, pomůže vám přesně pochopit, co činí z Linuxového společenství takovou studnici dobrého software a pomůže i vám zvýšit produktivitu.

TOC / OBSAH  >>>ENCSEN/CSZVONP/T