The effective programmers instinctively know this. They get bored doing the same thing over and over again so end up builidng their own tool to automate the boring part of their work. From Phil’s Technometria:
As programmers, we ought to be tool builders. Anytime you find yourself doing something more than once, build a tool. Doing so pays big dividends in increasing personal productivity.
Doug Engelbart often talks about the co-evolution of tools and human capabilities. From a thread on blueoxen discussion.
- Co-evolution is the capability of evolving both human and tool capabilities
- Humans make tools
- Tools augment human capabilities
- Augmented humans make better tools and so on
It is the cycle of innovation that is fostered by thinking, inventing, using, improving and thinking about improving.