It has always been understood that everything in code should be done Once And Only Once. Even in first BASIC programs, people did everything Once And Only Once. It just seemed like the thing to do. But we have only recently come to understand that this rule should apply to labor, too. We have worked hard to reduce code, but we haven't been that smart about my labor. Sometimes we do a thing dozens of times and only then consider automating it. A lot of the times we decide not to spend a day to automate something that only takes us 30 minutes to do manually. Then, months later, we notice that we've done the thing 100 times over the course of the project.