Reusable patterns work a treat, except when they don’t
When I bought my first house, it was a busy time, I just needed to get stuff done and quickly! Not unlike the teams a lot of us now work with.
I’d run around stores like Ikea with a list of things I needed for example: bathroom cabinet, shelving units, kitchen cabinets and so on…
They looked good in the store, I’d check the material, open and close the doors, etc and then I’d load up the car and be on my way home.
I’d drag the boxes into the house and start building. Unfortunately there was more than one occasion that I’d nearly built the things before I realised they didn’t fit or would not work as I’d intended once they were actually in my particular room.
If before-hand I had taken the time to think about what I needed and the context that those things would be used, I would have realised that the units were too big and the cabinet doors opened the wrong way for them to be useful in my kitchen and so on.
I tell this story because it is not unlike the way some teams have been using design systems.
Simon Wilson recently tweeted:
“It’s not the “commoditisation” of design through things like design systems that gets me TBH, more people thinking “ah yeah design system! grab that and plough on!” with no semblance of process, no rigour. A v real danger”
I too have seen what Simon described but I’d also argue that perhaps we (the proponents of design systems) are the reason this is happening.
Is it the result of how design systems have been positioned or ‘sold’ to their audience?
In trying to get design systems recognised as a valuable thing to invest in (which I believe they can be) we have described them and their contents with phrases like:
- The “single source of truth”
- Designed to meet user needs
- Already working as part of a live service
- “Represent what good looks like”
- Been through X rounds of user research
- “Battle tested”
- Passes automated and Cross browser tests
So with that in mind, I don’t blame design teams for believing that the patterns and associated components in a design system are some-how a ‘solved problem’ as they grab them off the shelf.
After-all, that is the aspiration of a design system is it not?
Josh Clark wrote an excellent post on what should be the aspiration of a design system, Josh says the most exciting design systems are ‘boring’
When the design system absorbs mundane problems, designers and developers are freed to pursue new science and higher-order problems.
I completely agree that is the goal of a design system but I think that it also depends on the scale and variety of needs that the design system is serving.
So I think it is incumbent upon the teams using a design system to fulfil their side of the deal, which I suspect we as a community have not have spelt out clearly enough, so here are some thoughts on how design systems should be used.