The act of translation also allows you to [test and improve]([[write evergreen notes to get an immediate feedback on your understanding of the idea]]) your understanding of the idea as you are reconstructing it with the words and concepts you use to look at the world. It moves you a bit closer in the direction of truly internalizing the new concept
Unit-testing tools that let the programmer sidestep poor dependency management in the design waste a valuable source of feedback. When the developers eventually do need to address these design weaknesses to add some urgent feature, they will find it harder to do. The poor structure will have influenced other parts of the system that rely on it, and any understanding of the original intent will have evaporated. As with dirty pots and pans, it’s easier to get the grease off before it’s been baked in.