Chesterton's fence

expressão

cultura de operaçõesprogramação

O princípio de que não se deve remover algo sem antes entender por que foi colocado ali.

A parábola: não derrube uma cerca atravessada numa estrada só porque sua finalidade não é óbvia, pois alguém teve uma razão que você talvez não veja. No código, é a cautela contra apagar a linha estranha, a verificação esquisita ou a gambiarra legada antes de descobrir o que silenciosamente depende dela.

A cerca de Chesterton é o argumento de que você não deve remover algo antes de saber por que aquilo foi colocado ali. A passagem original descreve uma cerca atravessando uma estrada: o reformador diz que ela não serve a nada e deve sair, e a resposta é que, se você não sabe por que ela existe, ainda não está qualificado a removê-la. Descubra a razão primeiro, e então remova, se a razão tiver desaparecido.

Em software isso é a linha misteriosa de configuração, a verificação que parece redundante, a espera no meio de uma rotina de inicialização. Alguém colocou aquilo ali, provavelmente às três da manhã, provavelmente depois de um incidente. Parece ruído porque o incidente que aquilo previne não acontece desde que foi acrescentado, que é exatamente a aparência de uma correção que funciona vista de fora.

O princípio tem um contrapeso real, e enunciar só a primeira metade o transforma num argumento para nunca mudar nada. Às vezes a cerca foi construída por uma razão que já não existe, às vezes ninguém lembra e ninguém consegue descobrir, e uma base de código que nunca remove nada acumula até não poder mais ser raciocinada. A disciplina é investigação proporcional: gaste esforço para achar a razão na proporção do que a cerca custa e do que removê-la arrisca.

Também conhecido como: Chesterton's gate

Fontes

  • Chesterton, 'The Thing' (1929)

Todos os verbetes do glossário