Be nice. Or else.
Thanks for opening up the figurative floor for questions!
When both a design system and development is happening at the same time, it's hard to balance between the two. In a situation where UI elements are being developed for the first time, there may not be an existing library off of which to base a design system. However, using a design system early in development seems like it could be especially helpful. At an early stage in a design system's life, does it pay to do intensive planning? Otherwise, is it better to develop and evolve the design system in concert with that process? Thanks,
I think it’s definitely a challenge to try to build the system at the same time as product work is happening. In our case, we kind of tried to minimize it by doing and releasing the system in a short timescale (months).
However, I think is entirely possible and overall easier approach to just build the system over time, and understand that there will be an transition period, where certain things are in the system, and some are not. If you can just get all the new experiences created using the system, over time you should be in a good spot.
If I would design a new product own my own, would a build a design system first? This is actually a question I’ve been thinking about as well. In a way it’s like a chicken and egg problem. It’s hard to create system if you don’t know what you’re building, and it’s hard to define the system after you have already build a lot.
After design and building several products, I do now see value of defining a simple system early on. Just even to restrict yourself. I’ve personally spend countless of hours of tweaking margins, types and color, trying to come up the best possible view for an app I can for an app. While do think craft and pixel perfection is important, in the end it won’t usually make or break your company. The wholistic experience and the value you can create to your users always trumps the pixels.
Most likely I’d try take some hybrid approach. Once I would have general idea of the style and structure of the app, I’d start defining basic things like spacings, type sizes, colors. Are there certain patterns and parts that could be re-used? Name them and define them. Rinse and repeat and try to stick to the system you created, so you can use your time for thinking about other things.