Às vezes, quando tenho um problema que precisa ser resolvido, acho que a maneira mais fácil de resolvê-lo é escrevendo um pequeno programa como uma ferramenta pessoal. Eu não o deixo super utilizável ou robusto, pois sou o único a usá-lo e não tenho tempo para refiná-lo e testá-lo completamente.
Então, um colega de trabalho vê o programa e pede, porque ele encontrou o mesmo problema e a ferramenta pode ajudar. Dou a ele o aviso de isenção de responsabilidade "Não é bonito, mas vai dar certo" e deixo que ele o tenha.
A próxima coisa que sei é que meu superior está me ligando, dizendo que ele está tentando fazer com que o software funcione no computador de um cliente, mas está mostrando uma mensagem de erro X. WTF ?? Esse software não está pronto para lançamento, nem me disseram que precisava estar pronto para lançamento. Mas, por alguma razão, meu superior achou que era bom o suficiente e o liberou sem informar o desenvolvedor original.
Agora, esse problema específico é fácil de corrigir com a MessageBox.Show("DO NOT GIVE TO CLIENTS!");
. No entanto, o problema é indicativo de um problema muito mais profundo: a cultura da nossa empresa é desleixada. Software desleixado está OK e processos desleixados estão OK. Não se preocupe com o futuro - faça um esforço suficiente para fazê-lo mal funcionar agora, coloque os binários em um arquivo .zip e envie-o. Bom o suficiente para o trabalho do governo.
Esta é uma pequena empresa com 10 funcionários em período integral, está crescendo e existe há algum tempo. Não me interpretem mal; Adoro trabalhar aqui e amo a empresa. Não me diga para correr; Quero fazer parte da melhoria da empresa. Como você começa a trazer boas mudanças para esse tipo de cultura?