Programador Sonolento
Apenas você tem 100% do contexto do código quando escreveu ele. O próximo desenvolvedor que tiver contato com ele, não terá.
Esse próximo desenvolvedor pode ser outro dev, ou você mesmo, em outro dia.
Quando você tem 100% do contexto do código que está escrevendo, você acaba criando exceções de boas práticas que você deveria seguir, porque sua memória de curto prazo diz que o próximo dev que ter contato com o código irá conseguir entender.
Digamos que existam 5 níveis de cognição na hora de codar/analisar e ler um código.
Sendo nível 1 um código muito explicado, muito verboso, que leva mais tempo, porém de fácil entendimento.
E nível 5 sendo um código conciso, as vezes mais bonito de se ver, mais rápido de se escrever, porém pouco explicativo, necessitando mais atenção, tempo e navegação pelo código para entender o contexto.
Escrevendo um código, vamos criando pedaços de códigos de variados níveis, desde 1 até o 5.
Você vai escrever código de nível 2, porque tal motivo, nível 3 por outro tal motivo, aí nível 1 porque a lógica é mais complexa, ai pula pra um nível 5 porque essa parte já é familiar para você...
Minha dica, padronize a sua escrita de código para um mesmo nível de cognição, e de preferência um nível baixo. Nível 2 seria minha escolha.
A ideia é escrever seu código para um programador que precisa corrigir algo no seu código, porém já esta tarde e ele está com sono.
Quando você padroniza o nível de cognição da escrita do código, facilita para quem vai ler depois, porque essa pessoa já sabe o que ela pode esperar da linha de baixo, ela não fica variando entre entender facilmente, e quebrar a cabeça, entender facilmente e quebrar a cabeça.
Isso ajuda na fluidez na hora de ler seu código porque todo bloco de código tem o mesmo nível de complexidade, e com fluidez ela chega mais rápido no estado de entender o contexto geral do código.
Um exemplo, você constantemente vai se deparar com uma variável que você bate o olho e logo de cara, já entende para o que ela serve. E outra logo abaixo que você... "Hmm... O que isso daqui fa- Ahh! Entendi."
Isso acontece muito em escala maiores. Não crie exceções, crie variáveis com nomes bem descritivos, crie hooks, crie abstrações, escreva mais código se necessário, seja repetitivo de precisar, seja redundante se preciso.
Um arquivo com todo o código com nível 2 de cognição e do nada um bloco de código nível 4? Abstraia em uma função de nível 2 e chame ela no arquivo, padronize.
Faça com que você consiga apenas bater o olho e entender do que aquele código se trata, sem ter que mergulhar a fundo para entender os detalhes da implementação, para conseguir entender o contexto.
Entre no modo sonolento, se proponha a não tentar entender seu código a fundo, e refatore ele a partir daí.
Entre no modo sonolento e crie um código melhor.
O que você acha?