Get weekly design system tips and tricks, directly to your inbox.
Have you heard of the “second system effect”?
Coined by Fred Brooks in The Mythical Man-Month, it describes what happens when someone builds their second big system:
This second is the most dangerous system a man ever designs… The general tendency is to over-design the second system, using all the ideas and frills that were cautiously sidetracked on the first one.
They over-engineer it.
Overcomplicate it.
Add every feature they wished the first one had…and then some.
The result becomes something bloated, hard to maintain, and hard to use.
Sound familiar?
How this shows up in design systems
A team builds v1 of their system quickly: basic components, a token set, light docs.
Then they start v2 with good intentions: better structure, more coverage, tighter dev pipelines.
And suddenly:
Every component has 12 props.
The Figma kit has 5 states no one uses.
Onboarding takes 2 hours just to explain buttons.
You’ve fallen into the second system trap.
The warning signs
🚨 You’re building for edge cases that haven’t happened yet.
🚨 You’re prioritizing theoretical scale over current usage.
🚨 You’re maintaining patterns no one uses… because you might someday.
The way out: keep going
How do you solve your second system problem?
Finish it.
As quickly as possible.
Build in all your wishes and desires.
Then put it to bed and get on to your third system.
Almost every successful team I’ve worked with was on their third or fourth iteration of their design system.