Você sabe como é: existe uma pequena tarefa repetitiva para a qual você encontrou uma maneira de automatizar rapidamente 95% do trabalho. Você cria um script, executa-o, corrige manualmente a saída e pronto. É claro que você não confirma o script, pois ele não corresponde aos requisitos de qualidade da empresa (não possui documentação nem testes).
Algum tempo depois, você vê um colega trabalhando em uma tarefa semelhante. Você diz: "Ei! Eu fiz um script para isso. Deixe-me procurar. [Parece] Oh, ele foi armazenado no meu laptop anterior, então eu não o tenho mais. Que pena."
Esses scripts geralmente podem economizar muito tempo e, como líder da equipe, eu gostaria que eles fossem armazenados no controle de versão. No entanto, se eu impor os mesmos padrões rigorosos que o restante da base de código para esses scripts, receio que a maioria dos desenvolvedores os mantenha para si.
A única outra opção que posso encontrar é permitir que os desenvolvedores armazenem os scripts em uma parte especial do controle de versão, na qual não há controle de qualidade (como o GitHub Gists). O risco é que outras pessoas não consigam usar o código porque não conseguem encontrá-lo ou entendê-lo.
Como esse problema poderia ser resolvido? Ou não deveria ser resolvido?
Sometime later you see a colleague working on a similar task. You go "Hey! I made a script for that. Let me look that up. [looks] Oh, it was stored on my previous laptop so I don't have it anymore
. Essa é uma boa maneira de descartar esforços, tempo e dinheiro junto com os scripts. Não é?
The risk is that others will not be able to use the code because they cannot find or understand it.
Como qualquer pedaço de código, não estamos familiarizados. Eu acho que esse é um mau raciocínio para não verificar os scripts em nenhum SCM.