Manifesto
23/01/2013
Esta é a tradução para suckless.org / Manifest.
Muitos hackers (do open-source) são orgulhosos por conseguirem produzir grandes quantidades de código, porque eles acreditam que quanto mais linhas de código escreverem, mais progresso farão. Quanto mais progresso fizerem, mais hábeis são. Isto é simplesmente uma ilusão.
A maioria dos hackers, na verdade, não se importa muito com a qualidade do código. Assim, ao começarem a trabalhar em algo que parece resolver o problema, vão ficar com ele. Se este tipo de desenvolvimento de software é aplicado para o mesmo código fonte em todo o seu ciclo de vida, ficamos com grandes quantidades de código, uma estrutura de código totalmente ferrada, e um design de sistema falho. Isto é por causa de uma falta de clareza conceitual e integridade no processo de desenvolvimento.
A complexidade do código é a mãe do software inchado, difícil de usar, e totalmente inconsistente. Com código complexo, os problemas são resolvidos de forma medíocre, recursos valiosos são infinitamente amarrados, o desempenho diminui até parar, e vulnerabilidades tornam-se comuns. A única solução é descartar todo o projeto e reescrevê-lo a partir do zero.
A má notícia: raramente acontece a reescritura com qualidade, porque os hackers estão orgulhosos das grandes quantidades de código. Eles pensam que entendem a complexidade do código, assim não há necessidade de reescrevê-lo. Eles pensam em si mesmos como autores intelectuais, entendendo o que os outros nunca conseguiram captar. Para estes tipos, software complexo é o ideal.
Idéias engenhosas são simples. Software engenhoso é simples. Simplicidade é o coração da filosofia Unix. Quanto mais linhas de código você remover, mais progresso você fez. Com as linhas de código em seu software que diminuiu, mais hábil você se torna e menos merda seu software é.