A short examination of how I view automation in relation to customization in my design decisions. Although I favor automation, the systematic reduction of creative ideas into paths too well grooved, erodes the heart of creativity. The seed of our imagination is the swirling mystery of freedom.
the perfect balance
Many of you like myself, endeavor to iteratively improve your efforts. We see our time as our most valued resource and passionately protect it. I admit to gleefully squandering this gift when it comes to my free time, but that is my choice. Woe to external agents who squander my time.
At each decision boundary we are both blessed and cursed with a variety of options. As we exist within a shifting society, I relish the opportunity of choice and embrace alternatives (bear hugs free will). Determining the level of flexibility, automation, or simplicity in a design is our jump point for implementing a solution. Many major design decisions are devoid of satisfactory supporting evidence. Our best choice, pursuing more information, may be too costly or impractical. Instinct and experience must be trusted to allow for the wisest decision.
Recognize that each decision has it's own identity
One of the most prevalent mistakes in judgement is miscategorizing a decision. We often go out of our way to relate a novel problem to existing solutions and systems we have in place. Fundamentally, the human mind is a pattern matching engine. Pay careful attention to the unique and vital issues of a design decision, it may save you countless hours of effort later on, or even save your project or business.
Over generalization of common utilities is a seductive siren
Do your best to resist being pulled into the rocks of design obscurity. Generalizing a given task too far has two terrible ramifications:
- it becomes more complex in order to handle an ever growing requirement set
- your effort will yield a more watered down and bland final product (where's the pinache?)
We are sometimes beset by an itch to make the perfect tool. My rational counter to this is the following quote of John Lydgate: "you can please some of the people all of the time, or all of the people some of the time. But you can't please all the people all the time." For the types of problems I work on finding a sustainable solution to a limited problem space is the "best answer". I can't remember how often I have been lured down the bunny trail of the perfect tool.
In opposition to over generalization is super specialization. Reinventing but not reusing the same solution in thousands of marginally different ways can cause impractical demands on maintenance. Discovering the commonality of designs can lead to more rapid iterations and overall efficiency.
Believe that you can improve
The most sacred aspect of design theory is believing you or your team can improve. That's not to say you should break something that is working well. Having an open mind when observing the nuances of superstar design groups is a great way to begin.
As soon as we imagine a boundary on our decision optimization, we create a psychological threshold which we cannot surpass. We're better off forgetting about limitations, and striving without bound. Let our effort and imagination measure how far we can go.