A Catedral e o Bazar (em inglês: The Cathedral and the Bazaar) é um ensaio de Eric S. Raymond sobre métodos de engenharia de software, baseado em suas observações do processo de desenvolvimento do Linux e suas experiências administrando o projeto de código aberto Fetchmail. Foi primeiramente apresentado pelo autor no Linux Kongress em 27 de maio de 1997 e publicado como parte do livro com o mesmo nome em 1999. É normalmente considerado o manifesto do movimento de código aberto.

A tese central do ensaio de Raymond é que “dado um número de olhos suficiente, todos os erros são triviais” (que é o enunciado da Lei de Linus, ou análogo a Lei de Metcalfe): se o código-fonte está disponível para teste, escrutínio e experimentação pública, então os erros serão descobertos rapidamente. Em contraste, Raymond alega que uma quantidade de tempo e energia irregular deve ser gasta procurando por erros no modelo da Catedral, quando as diversas versões de código são avaliadas por um número limitado de desenvolvedores.

Modelos de Desenvolvimento O ensaio apresenta dois diferentes modelos de desenvolvimento de um software livre: O modelo Catedral, no qual o código-fonte fica disponível em cada lançamento do software, mas o código desenvolvido entre dois lançamentos é restrito a um grupo de desenvolvedores exclusivo. Os projetos Emacs e GCC são apresentados no ensaio como exemplos. O modelo Bazar, no qual o código é desenvolvido de forma totalmente aberta e pública, utilizando a Internet. Raymond credita Linus Torvalds, líder do projeto Linux, como o inventor deste modelo de desenvolvimento de software. Ele também fornece alguns relatos anedóticos da aplicação desse modelo ao projeto Fetchmail. O modelo Catedral é também um modelo típico de desenvolvimento de software proprietário, com a restrição adicional de que o código-fonte não é disponibilizado com as atualizações. O uso comum da frase “a Catedral e o Bazar” contrasta o desenvolvimento proprietário com o desenvolvimento de código aberto. Mais tarde, o próprio Raymond usou a expressão dessa maneira em relação aos Documentos de Halloween. Porém, o ensaio original preocupa-se somente com o software livre e não fazia nenhuma referência ao desenvolvimento proprietário.

Legado O ensaio ajudou a convencer a maioria dos projetos de código aberto e de softwares livres a adotar o modelo do Bazar, completa ou parcialmente — incluindo os projetos Emacs e GCC, os exemplos originais para um modelo Catedral. Mais notavelmente, isso ainda providenciou o empurrão final para a Netscape Communications Corp abrir o código de fonte do Netscape Communicator e iniciar o projeto Mozilla. Boas práticas

Todo bom trabalho de software começa pela inquietação pessoal de um programador. Bons programadores sabem o que escrever. Os excelentes sabem o que reescrever (e reutilizar). Planeje jogar algo fora, já que, de qualquer maneira, você o fará. Se você tiver a atitude certa, encontrará problemas interessantes. Quando você perde interesse em um programa, sua última obrigação é entregá-lo a um sucessor competente. Tratar as pessoas usuárias como co-desenvolvedoras é o caminho mais fácil para a melhoria do código e uma depuração eficaz. Libere cedo. Libere frequentemente. E ouça seus clientes. Com uma base suficientemente grande de testadores beta e co-desenvolvedores, praticamente todo problema será caracterizado rapidamente e a solução será óbvia para alguém. Estrutura de dados inteligentes e código burro trabalham muito melhor que ao contrário. Se você tratar os testadores beta como seu recurso mais valioso, eles irão responder tornando-se seu recurso mais valioso. A melhor coisa, depois de ter boas ideias, é reconhecer as boas ideias da sua base de usuários. Muitas vezes, as soluções mais impressionantes e inovadoras surgem quando você percebe que seu conceito do problema estava errado. A perfeição, em projetar, é alcançada não quando não há mais nada a adicionar, mas quando não há nada para jogar fora. Qualquer ferramenta deve ser útil da maneira esperada, mas uma ferramenta verdadeiramente boa leva ela própria a usos que você nunca esperou. Quando escrevendo um software gateway de qualquer tipo, faça tudo para perturbar o conjunto de dados o menos possível, e nunca jogue fora informação a não ser que o destinatário force você a isto! Quando sua linguagem não está perto de um Turing completo, açúcar sintático pode ser seu amigo. Um sistema de segurança é tão seguro quanto seu segredo. Para resolver um problema interessante, comece achando um problema que é interessante para você. Contanto que o coordenador do desenvolvimento tenha uma mídia pelo menos tão boa quanto a Internet, e saiba como liderar sem coerção, muitas cabeças são inevitavelmente melhores que uma.

Bibliografia Raymond, Eric Steven; The Cathedral & the Bazaar, O'Reilly (1999). ISBN 1-56592-724-9

Ver também Eric S. Raymond Software livre Lei de Linus

Ligações externas

Ensaio Original, para ler on-line Tradução para o português [PDF] PostScript, para impressão O livro no site da editora O'Reilly Open Source Software Development as a Special Type of Academic Research (Crítica ao Raymondismo), Nikolai Bezroukov, First Monday, vol. 4 no. 10, Outubro de 1999 Resposta para Nikolai Bezroukov (Eric S. Raymond, Outubro de 1999) A Second Look at the Cathedral and the Bazaar (Nikolai Bezroukov, First Monday, vol 4 no 12, Dezembro de 1999) Bad Linux Advocacy FAQ (Raymondism FAQ)

Categoria:Livros de 1999 Categoria:Livros de informática Categoria:Software livre Categoria:Desenvolvimento de software Categoria:Ensaios