Por definição, um manifesto é uma declaração pública de princípios e intenções que descreve as motivações, razões e demandas de um grupo. Um dos manifestos mais populares existentes é o Manifesto Ágil. Contudo, o número de manifestos tem crescido de forma epidêmica desde então.
Gary Pollice acredita que os manifestos perderam seu encanto e sugere que, embora o Manifesto Ágil tenha tido um dos maiores impactos nos últimos anos, seu sucesso foi replicado de forma abusiva. O autor acrescenta que o grande número de manifestos existente tem como resultado a diluição de seu impacto e valor percebido. Uma busca rápida realizada por Gary na internet revelou os seguintes manifestos relacionados ao desenvolvimento de software:
- Manifesto dos Testes de Software (Software Testing Manifesto). Interessante, podemos votar no conteúdo do manifesto. Parece que as coisas não foram muito bem em 2008, mas continuou ativo em 2009. Não me parece muito atrativo.
- Manifesto do Artesanato de Software (Manifesto for Software Craftsmanship). Obviamente é necessário estar de acordo com o manifesto ágil.
- Manifesto do Software Seguro (Rugged Software Manifesto). Claro, tínhamos que ter algum manifesto tratando segurança.
- Manifesto do Software Confiável (Reliable Software Manifesto). Não me parece muito com um manifesto.
- Novo Manifesto do Software Enxuto (A New Lean Software Manifesto). Onde está o antigo? Obviamente, precisamos ter um manifesto lean se temos um manifesto ágil.
- Manifesto do Jogo Cooperativo para Desenvolvimento de Software (Cooperative game manifesto for software development). As vezes tenho dificuldades em acompanhar Cockburn. Mas esse parece interessante.
- Manifesto da Arquitetura de Software (Software Architecture Manifesto). A opinião de uma única pessoa.
- Manifest SOA. Parece que alguém criou uma versão Mad-lib do Manifesto Ágil e preencheu as lacunas.
Jim Bird diz não enxergar sentido nos manifestos:
Eles não me motivam ou alteram a forma que penso ou trabalho. Eu posso passar todos os dias sem ter que me referir a um manifesto. O que eu quero são ferramentas e idéias concretas que posso utilizar para concluir minhas tarefas e realizar um trabalho melhor. Não uma fraternidade. Padrões, anti-padrões, receitas, melhores práticas (e piores práticas) – estes são úteis. Mas Manifestos? Inúteis ou, quando pior, perigosos.
De acordo com Jim, manifestos impedem que as pessoas pensem e façam perguntas, o que é bastante semelhante a reação de Pete McBreen, autor do livro Software Craftsmanship Book, quando não assinou o Manifesto Software Craftsmanship. De acordo com Pete:
Na minha opinião, Software Craftsmanship (Artesanato de Software) diz respeito a como colocar o indivíduo de volta à atividade de entrega de software. Não tenho nenhum interesse em uma comunidade de profissionais. O amador apaixonado está muito mais propenso a criar software interessante de valor. Profissionais são muito sérios. Amadores entendem melhor a idéia de que o desenvolvimento de software deve ser divertido.
Cindy F. Solomon criou uma compilação de 22 (número em crescimento) manifestos relacionados ao desenvolvimento de software.
Gary menciona que existem tão poucos dados empíricos disponíveis para apoiar as alegações sobre o desenvolvimento de software e que a maioria dos manifestos acaba sendo usada como ferramentas de marketing. O próprio Gary acrescentou um manifesto interessante à longa lista já existente, chamado Manifesto Anti-Manifesto.
Como um velho rabugento que já viu muitos modismos e práticas inúteis ou, ainda pior, prejudiciais, que são seguidas cegamente sem serem compreendidas, eu passo a valorizar:
- bom senso sobre seguir cegamente um processo, qualquer processo que seja
- resultados empíricos sobre alegações infundadas, mesmo as que são feitas por alguém que eu respeito
- princípios sólidos sobre tendências e modismos
- código limpo sobre truques que obscurecem o significado do código