▲ Método
Se você vai me contratar, isto importa mais do que qualquer sistema desta lista. Não é uma declaração de valores: são mecanismos e registros que nasceram de erros meus.
Eu já errei o suficiente para desconfiar da minha própria disciplina. Editei código morto achando que estava corrigindo o sistema. Confiei num campo do histórico que não carregava a informação que eu supunha. Quebrei uma regra que estava escrita, na minha frente, quatro vezes no mesmo dia.
A conclusão não foi tomar mais cuidado. Foi que cuidado não escala, e que a única correção que sobrevive ao tempo é a que não depende de ninguém estar atento.
Uma regra que pede para alguém não errar, todos os dias, durante meses, sem falhar uma vez, não se sustenta. O que sustenta é o mecanismo que reprova antes de o erro sair.
No robô de documentação técnica existem cento e vinte e um scripts. Editei mais de uma vez código que não estava no caminho de execução. A correção foi um arquivo que declara, etapa por etapa, qual arquivo é chamado e por qual função, com a instrução de lê-lo antes de tocar em qualquer coisa.
Na plataforma, o formulário da visita técnica é preenchido no computador e no celular, em telas escritas separadamente. Bastaria alguém acrescentar um campo de um lado para o formulário passar a existir em duas versões diferentes. Hoje o campo nasce num arquivo único, é implementado nas duas telas, e um script confere as três pontas.
Um repositório do monitoramento é tocado por duas frentes ao mesmo tempo. A regra era não rodar comandos que alterassem a árvore de trabalho compartilhada. Ela foi violada quatro vezes num único dia, com a regra carregada e visível.
A correção foi separar fisicamente as pastas de trabalho, com histórico compartilhado e árvores independentes. Deixou de ser possível um atrapalhar o outro, em vez de ser proibido.
Nesse mesmo repositório, todo registro de alteração sai com o mesmo nome de autor, porque é a configuração da máquina. Eu li esse campo e afirmei que tinha achado um trabalho meu perdido. Não era. Um campo constante não carrega informação, e ler autoria nele é erro de método, não distração.
Desde então eu marco nas alterações qual frente as produziu.
Quando afirmo alguma coisa técnica, existe uma tabela do que conta como prova. Ela não é simpática comigo:
O método não ficou em apresentação. Duas partes dele viraram repositório aberto, com licença MIT, testes e integração contínua.
O nome do segundo é literal. É a tese inteira em quatro palavras.
O método custa tempo na frente, e por isso ele é graduado. Em protótipo descartável e prova de conceito eu não aplico: ali a velocidade de descobrir vale mais que a garantia de não regredir.
A régua sobe quando o que está em jogo é dado de cliente, dinheiro, ou alguma coisa que roda sozinha sem ninguém olhando. Nos três casos o custo do erro não é retrabalho: é um cliente prejudicado, um número errado num cálculo de comissão, ou um sistema que falha em silêncio por semanas.