The 42 Principles · Principle III
Understand Before Optimizing
Root-cause thinking, measurement, troubleshooting, constraints, and separating symptoms from causes.
Foundational Truth
Do not improve what you do not yet understand.
Before changing a system, learn how it works, what constrains it, and where the actual problem lives.
The Wisdom of Simplicity
Like my grandmother always said:
"If it ain't broke, don't fix it."
It is timeless advice.
But wisdom requires asking one more question.
What is actually broken?
People often mistake symptoms for problems.
They mistake inconvenience for failure.
They mistake age for inefficiency.
They mistake unfamiliarity for something needing improvement.
The true work is not fixing everything that appears imperfect.
The true work is discovering what is genuinely broken, what merely appears broken, and what should be left alone.
Only then can meaningful improvement begin.
Why It Matters
When people see a problem, they often feel pressure to act immediately.
The system is slow.
The process is failing.
The result is poor.
Something must be changed.
That urgency can create the illusion that action itself is progress.
But action without understanding is often only disturbance.
You do not begin building a house with the roof.
You do not look at an empty lot and dig a hole where you imagine a pipe might eventually belong.
You first study the ground.
You learn the soil.
You measure the lot.
You understand its boundaries.
You design the house inside the reality that already exists.
Only then do you begin to build.
This is not excessive caution.
It is the recognition that every solution rests on assumptions, and assumptions become expensive when they are buried beneath completed work.
Preparation feels slower at the beginning because its value has not yet become visible.
Its value appears later, when work does not have to be torn apart and done again.
Understanding is the work that prevents the work from having to be repeated.
Find the Problem Before Choosing the Solution
A slow database does not automatically need faster hardware.
More processing power may make an inefficient system perform inefficient work more quickly, but it does not correct the reason the work is inefficient.
The real problem may be elsewhere:
- The data may be poorly normalized.
- A query plan may be taking an unnecessary path.
- A useful index may be missing.
- An existing index may be ignored.
- A join may use the wrong column.
- The application may be retrieving far more data than it needs.
- The design may be forcing the database to repeat avoidable work.
The symptom is slowness.
The cause is not yet known.
Treating the symptom before understanding the cause may produce a temporary improvement, but it also preserves the defect.
The same is true of a network.
When an application feels slow, it is easy to blame bandwidth.
But the network may be functioning correctly.
The delay may exist in the application, the database, name resolution, authentication, storage, or a dependency several systems away.
Buying more bandwidth does not make a slow application faster when bandwidth was never the constraint.
A visible symptom tells you where the pain appears. It does not always tell you where the problem begins.
Optimization Is a Conclusion
Optimization should not be the first instinct.
It should be the conclusion reached after observation, measurement, and understanding.
Before changing anything, ask:
- What is the system supposed to do?
- What is it actually doing?
- Where does time, effort, or capacity accumulate?
- What evidence identifies the constraint?
- Which part of the system is doing unnecessary work?
- What tradeoff will the proposed change introduce?
- How will we know the change improved the right thing?
Without those answers, optimization becomes guesswork.
Sometimes the guess succeeds.
That does not make the method sound.
A lucky intervention can be more dangerous than an obvious failure because it teaches confidence without understanding.
The Temptation of the Obvious Fix
Obvious fixes are attractive because they are easy to explain.
The server is slow, so buy a larger server.
The network is slow, so buy more bandwidth.
The team is behind, so add more people.
The process is inconsistent, so add more steps.
The house needs to be built, so begin digging.
Each response may feel decisive.
Each may also deepen the problem.
More hardware can conceal poor design.
More bandwidth can hide application latency.
More people can increase coordination costs.
More process can create more friction.
More construction can make the eventual correction more expensive.
A solution should not be selected because it is available, familiar, or visible.
It should be selected because the evidence shows that it addresses the actual constraint.
In Practice
Before optimizing:
- Establish the intended outcome.
- Observe the current behavior.
- Measure before changing.
- Separate symptoms from causes.
- Identify the real constraint.
- Understand the dependencies.
- Test the simplest plausible explanation.
- Confirm that the proposed solution acts on the cause.
- Define how success will be measured.
- Change one meaningful variable at a time when possible.
Do not begin with:
"What should we buy?"
Begin with:
"What is actually happening?"
Do not ask first:
"How do we make it faster?"
Ask:
"Where is the time going?"
Do not assume:
"This component is the problem."
Ask:
"What evidence points here?"
Failure Modes
Understanding before optimizing does not mean waiting until everything is known.
Complete understanding is rarely possible.
A person can use analysis as a shelter from action, continually requesting more information because making a decision carries risk.
That is not discipline.
It is avoidance.
The goal is not perfect knowledge.
The goal is sufficient understanding to make a responsible change.
There is also danger in becoming attached to a diagnosis.
Once people have invested time in studying a problem, they may resist evidence that contradicts their conclusion.
Understanding must remain provisional.
New evidence should be allowed to change the model.
Optimization is not a single act.
It is a cycle:
Observe.
Understand.
Change.
Measure.
Learn.
Questions to Ask Yourself
- Am I solving the cause, or reacting to the symptom?
- What evidence identifies the actual constraint?
- What am I assuming about how this system works?
- Have I measured the problem, or merely noticed it?
- Is the proposed solution addressing wasted work or only adding capacity?
- What might become worse if this change succeeds?
- How will I know whether the optimization worked?
- Am I preparing carefully, or hiding from the decision?
- What is genuinely broken?
- What merely appears broken?
- What should be left alone?
Closing Thought
The true work is not fixing things.
The true work is discovering what is actually broken.
Understand first.
Then improve.
Related Principles
Continue the idea.
These Principles share themes with Principle III.
Principle VI
Observe Deeply
Observation before intervention, pattern recognition, evidence gathering, and understanding behavior in context.
Read Principle VI →Principle IX
Simplicity Is Earned
Reducing unnecessary complexity through understanding, refinement, and deliberate removal.
Read Principle IX →Principle XXII
Complexity Is a Cost
Technical, operational, cognitive, and human costs created by unnecessary complexity.
Read Principle XXII →Principle XXVI
Build Small. Think Big.
Incremental progress, bounded experiments, reversibility, learning quickly, and scaling only after understanding.
Read Principle XXVI →