Because someone (hopefully us!)
thinks each of those things is objectively good.
And if each thing is good, then collectively, they are all… perfect?

Unfortunately, the math doesnt work out that way.
Theres no such thing as perfection.
Overlapping costs outweigh benefits, and interactions between solutions start to feel weird and painful.

This isnt a terribly original thought, granted, but its something Im thinking about a lot lately.
It’s free, every week, in your inbox.
It all starts innocently enough.

Were doing some good things.
Eventually, we create a monster.
We end up in a trap we cant get out of.

Every meeting is good, so all have to be attended.
Every process is good, so all have to be followed.
Every tool is good, so we have to use all of them.

All features are good, so none can be removed from our products.
Our products can become more complicated, and theres no time to simplify things.
Thin slices of productivity get further subdivided by the complexity tax.
The fun parts of the product get obscured by the clunky parts.
[Read:How do you build a pet-friendly gadget?
We asked experts and animal owners]
I dont have aperfectanswer for situations like this.
The correct subset, after all, is subjective.
And even if you could agree, it takes time to simplify things.
Its ironic, but it usually takes time tostopdoing something.
Having said that, there are some things you could try.
That means asking potentially counterintuitive questions.
Is there an existing process it’s possible for you to remove to make room for a new process?
Is there some other task you could at least delay to give time to build a new habit?
If youre asking someone to use a new tool, can you givetime for training?
If youre already adding some other new tool, can you just finish that transition first?
These arent obvious questions, but theyre necessary.
see to it youre asking them.
Or youll start doing things that you arguably shouldnt even do.
Some tasks require waiting on other people to completetheirtasks.
This is called wait time.
Theres basic math at play here, which this chart shows well.
If you dont trust the math, theresa great videothat illustrates this resource utilization trap.
If you dont have idle time, wait times effectively reach infinity.
There are two solutions to this:
Have more idle time
Remove the need to wait
Both are important.
But you do want to remove as many dependencies as possible, so that people can help themselves.
But when you remove dependencies in this way, youreallyhave to remove them.
Youre paying for more people to do the same job, but slower.
Sometimes youll have no choice.
There will always be things that require teams to cooperate.
In other cases, the cost of inconsistency is too high.
This is why you better reserve idle time for these cases.
But you exist in the physical world, where there are constraints.
The desire for consistency has tradeoffs.
Sometimes you have to choose the latter, but you have to be aware of the impact that has.
Ignoring that means accepting an ad hoc mixture of chaos and deadlock.
Our product at Zapier is a good example here.
Our desire to have a single product that fits every use case and every customer has tradeoffs.
The product is a blank canvas, which can make the value proposition hard to grok.
Were continually balancing ease of use and power.
One option for us might be to create specialized products that are easier to understand.
Those products also might not always integrate well, and customers might get confused.
That tradeoff is fine, as long as were explicit about it and everyone understands it.
I could go on.
The desire for planning and visibility and metrics has tradeoffs too.
We do these things to make better decisionsthat is, to makeperfecttradeoffs.
But there are no perfect decisions.
Story byJustin Deal
Justin lives in St. Louis with his wife and two kids and dog.
He loves to code, especially JavaScript, and occasionally writes some music.