Escrever e reescrever o código não é um problema, nem está escrevendo mais código do que é absolutamente necessário. Toda vez que você escreve código e joga fora ou refatora, você está aprendendo - na verdade, é possivelmente a melhor maneira de aprender. Tentar ser "Ótimo" em relação ao tipo de codificação ou ao tempo de digitação é realmente prejudicial a todos os envolvidos.
Além disso, todas essas variáveis "Extra" são geralmente uma boa ideia - se elas o ajudarem a entender seu código inicialmente, é melhor que ele fique lá! Não caia na armadilha de escrever o mínimo de pensamento de código que é o caminho para torná-lo legível, o código Terse não se equivale a legível.
Estou sugerindo que você não fique muito entusiasmado com "Como remover" seu código. Se for absolutamente desnecessário, mas criar funções extras e mais variáveis tende a ser uma coisa boa, se você as remover assim que entender a solução, você só estará prejudicando a todos que olharem o código depois de você (inclusive alguns meses) mais tarde).
É, no entanto, importante manter seu código DRY, na verdade é o que eu considero o princípio mais importante em todo o desenvolvimento de software, mas uma vez que seu código é DRY, reduzindo ainda mais a verbosidade do que o ajudou a compreendê-lo e projetá-lo é geralmente prejudicial.