Typically we design products top down.
We imagine the use cases, then build detailed features to support those use cases.
Another way to design is to design for emergence.
To design bottom up.
In this style of design you think less about the product and more about the system.
You look for a small set of principles or rules that efficiently generate fractally interesting / valuable outcomes.
Sometimes you can get absolutely massive positive outcomes from only a very small set of very carefully chosen principles.
The smallest factoring of rules of the system to allow the richest, most varied output.
These kinds of ideas are ones that become even more convincing the closer you look at them.