Quando se trata de desenvolvimento de software, sabemos dos inúmeros desafios que podem surgir, seja por conta da linguagem e tecnologias utilizadas, metodologias, arquitetura, segurança, time envolvido, etc.

Analisando o livro a Catedral e o Bazar, é possível elencar diversas dicas úteis e interessantes para programadores, sobre desenvolvimento de software. Por isso, preparamos esse conteúdo para trazer mais informações sobre. Confira!

Sobre o livro “A Catedral e o Bazar”

Em resumo, o livro “A Catedral e o Bazar” trata de boas práticas para a construção de softwares, em uma linguagem de fácil entendimento, com objetividade e palavras “rasas”. Com uma leitura bem interpretativa, é possível considerar ainda que as dicas sugeridas no livro sirvam para muito além do desenvolvimento de um sistema, em si.

Lançado em 1999 pelo escritor Eric R. Raymond, esse livro descreve sobre as várias maneiras de desenvolver um software, considerando a integração contínua, métodos ágeis e o conceito de software livre. A obra é vista como o manifesto do movimento Open Source.

A escrita do livro é baseada nas observações do autor, referente ao processo de desenvolvimento do sistema operacional Linux, além de suas experiências como administrador do famoso projeto open source fetchmail. Dessa forma, é possível considerar então que o livro é um “case” de sucesso no desenvolvimento de software livre.

vagas programathor

Significado do nome

O nome do livro tende a deixar os leitores confusos, principalmente quando se dão conta de que se trata de um livro sobre desenvolvimento de software. No entanto, o nome do livro resume a explanação sobre os diferentes (e opostos!) modelos de implementação de software, que basicamente são:

Catedral: traz o conceito de que nesse método de desenvolvimento de software, o código fonte é disponibilizado em cada release do sistema, sendo restrito a um grupo exclusivo de desenvolvedores. No livro, os projetos Emacs e GCC são apresentados como exemplos desse método.

Algumas características são: 

  • Ambiente fechado (altamente hierarquizado);
  • Diversos líderes e desenvolvedores;
  • Desenvolvimento centralizado;
  • Versões estáveis e/ou betas;
  • Metodologia clássica.

Bazar: traz o conceito de que o código fonte do sistema é desenvolvido de forma totalmente aberta e pública, através da Internet, proporcionando que o desenvolvimento seja compartilhado e colaborativo.

Algumas características são: 

  • Ambiente aberto (todos podem participar);
  • Diversos líderes e desenvolvedores;
  • Desenvolvimento cooperativo;
  • Várias versões;
  • Metodologia indefinida.

Com isso, a tese central do livro se torna muito mais fácil de entender, que é a seguinte: “Dado um número de olhos suficiente, todos os erros são triviais”. Essa afirmação sugere que se o código fonte de um software está disponível para testes e experimentação pública, é fato que os possíveis erros serão descobertos com mais rapidez e assertividade, agilizando a entrega com qualidade e proporcionando a melhoria contínua.

Não deixe de fazer a leitura desse livro!

O livro é recheado de conceitos interessantes e que fazem todo sentindo se pararmos para pensar em desenvolvimento de software ágil e qualificado. Dentre alguns desses conceitos, destacamos um que reforça a importância da participação do usuário final, no desenvolvimento: “Tratar seus usuários como co-desenvolvedores é seu caminho mais fácil para uma melhora do código e depuração eficaz”.

No blog da ProgramaThor, temos um artigo sobre software livre, vale a pena dar uma conferida! Enfim, aproveite a leitura de “A Catedral e o Bazar” para aperfeiçoar as suas habilidades de desenvolvedor e, caso haja dúvidas, sugestões e comentários sobre o tema, não deixe de escrever aqui!

A Catedral e o Bazar

Consiga um emprego!

Está buscando novas oportunidades como desenvolvedor? Acesse a ProgramaThor, uma startup focada no recrutamento de desenvolvedores. Para se candidatar às vagas para programador e receber notificações em casos de matching, basta se cadastrar e completar seu perfil corretamente.

Compartilhar