Thinking about Components

or how to think about components(?)

Olusesan Peter
2 min readOct 4, 2021

One of the numerous things I’m currently doing is working on components for a design system. This should be easy, I’ve done it before, I should be easy to do it again with minimal effort.

But it’s a huge problem now — I’ve now found myself thinking about how it should work, how it should be used or how it should be maintained rather than how it actually looks.

In parallel, I’m reading Hamming’s book on The Art of Doing Science and Engineering and I found some interesting things that drives home how I’m thinking about these components.

The highlightsPhrases in brackets added my me.

It has rarely proved practical to produce exactly the same product(component) by machines (using a design system) as we produced by hand…You must get the essentials of the job in mind and then design the mechanisation (system) to do that job rather than trying to mechanise (make into components) the current version — if you want a significant success in the long run.

What this means — Optimise components for the future. How will this component exponentially improve current processes? Will making this pattern a component result in a +10 or a x10 improvement?

Furthermore, in any design it is now essential to consider field maintenance since in the long run, it dominates all other costs. The more complex the designed system, the more field maintenance must the central to the final design.

What this means — Optimise for simplicity & maintainability. How do I ensure component coverage with minimal properties? What does a minimal viable component look like?

Some more context on this highlight: Twice this year, I’ve had to design over 200+ variants for a text field component. Both times I prided myself on creating so complex and so vast in use cases. Looking back now, it was a very foolish thing to do and I simply lacked the required experience.

I don’t think that component and its 200+ variants will ever be maintained and if it is, will be a difficult thing to do.

At present we are doing one out of ten experiments on the computers and nine in the labs, but before I leave it will be nine out of ten on the machines.

How will you measure success for this component or system?

In closing.

This, it must be observed, is an opinion and not a fact…

--

--