Renan Oliveira
← todos os sistemas

▲ Método

Regra que depende de alguém lembrar não é regra

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.

De onde isso veio

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.

Quatro mecanismos, e o erro que criou cada um

O documento que declara o que está vivo

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.

O script que confere as três pontas

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.

O isolamento físico, em vez do combinado

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.

A declaração de origem, quando o dado não responde

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.

A régua que eu aplico em mim

Quando afirmo alguma coisa técnica, existe uma tabela do que conta como prova. Ela não é simpática comigo:

Dois disso estão públicos

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 que isso significa para quem me contrata

Onde a régua sobe, e onde ela desce

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.