cargo cult programming
folcloreprogramaçãocultura de operações
Copiar código ou rituais que parecem funcionar sem entender por quê, na esperança de que o resultado apareça.
A expressão adapta a "ciência de culto à carga" de Richard Feynman: repetir os gestos e esperar que o resultado surja. No código, é colar uma configuração, um encantamento ou uma classe padrão porque funcionou em outro lugar, sem entender o que faz. A cura é compreensão, não mais cópia.
Programação por culto à carga é copiar a forma de algo que funcionou sem entender por que funcionou. O bloco de configuração é colado porque um resultado de busca o continha, a opção é ativada porque um colega a ativa, e o código fica correto na aparência e oco no mecanismo.
O nome vem do discurso de Feynman no Caltech em 1974, em que ele descreveu a ciência do culto à carga como trabalho com todo o aparato externo de rigor e nenhuma substância. A metáfora é tirada de ilhas do Pacífico do pós-guerra e merece cuidado, já que trata com condescendência as pessoas que descreve; o uso em software se afastou bastante da antropologia e nomeia sobretudo uma falha de curiosidade, e não de inteligência.
O que a torna digna de nome é ser invisível de fora. Código que funciona e código de culto à carga parecem idênticos até as condições mudarem, e então a coisa copiada falha de um jeito que ninguém consegue diagnosticar, porque ninguém jamais soube o que ela fazia. O teste é simples e desconfortável: você consegue explicar o que esta linha faz e o que quebra sem ela? Se não, você não a escreveu, você a transcreveu.
Também conhecido como: cargo cult, cargo-cult
Fontes
- after Feynman's "cargo cult science", 1974