{"id":16167,"date":"2018-10-01T14:41:13","date_gmt":"2018-10-01T13:41:13","guid":{"rendered":"https:\/\/marvel7077.wpengine.com\/?p=16167"},"modified":"2020-12-14T09:37:40","modified_gmt":"2020-12-14T09:37:40","slug":"design-system-anyway","status":"publish","type":"post","link":"https:\/\/marvelapp.com\/blog\/design-system-anyway\/","title":{"rendered":"What is a Design System Anyway?"},"content":{"rendered":"<h2 class=\"pageWrap pageWrap--s marginTop-xl marginBottom-l c-black lineHeight-xl fontSize-xl fontWeight-5 breakPointM-lineHeight-xxl breakPointM-fontSize-xxl\" style=\"margin-left: auto; margin-right: auto;\">\u2018Design Sprints\u2019, \u2018Agile\u2019, \u2018Stand Up\u2019, \u2018Lean\u2019 - Is \u2018Design System\u2019 just another one of those buzz words we hear?<\/h2>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">It really depends on how you choose to look at it. I find that everything that\u2019s \u2018trendy\u2019 or \u2018buzz-wordy\u2019 is usually so for a reason. There is a lot of innovation in the design systems space at the moment hence why there is so much talk around it.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">There\u2019s plenty of reasons why this is happening, to name just a few:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>Developers don\u2019t want to repeat the same work on different mediums.<\/li>\n<li>Companies want to be more efficient.<\/li>\n<li>Product designers and owners want the products they work on to be faster, more accessible whilst still looking sharp and consistent.<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">All of these are real problems we face on the day-to-day that have pushed us to develop new technologies, seek out new ways of working and new ways to better manage and scale design.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">These are just some reasons companies started investing so much more in the <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvelapp.com\/blog\/systems-design-design-systems\/\">design systems<\/a> space. However, because it\u2019s a new term, it\u2019s meaning and process is still unclear, vague and inconsistent \u2013 which is why we\u2019re seeing a flare in discussions, buzz and occasionally a good ol\u2019 meme.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\"><a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvel7077.wpengine.com\/wp-content\/uploads\/2018\/10\/designsystem1.jpeg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-16179\" src=\"https:\/\/marvel7077.wpengine.com\/wp-content\/uploads\/2018\/10\/designsystem1.jpeg\" alt=\"Design Systems Meme\" width=\"1200\" height=\"1200\" srcset=\"https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1.jpeg 1200w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1-300x300.jpeg 300w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1-600x600.jpeg 600w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1-768x768.jpeg 768w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1-32x32.jpeg 32w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1-50x50.jpeg 50w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1-64x64.jpeg 64w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1-96x96.jpeg 96w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem1-128x128.jpeg 128w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><\/p>\n<h2 class=\"pageWrap pageWrap--s marginTop-xl marginBottom-l c-black lineHeight-xl fontSize-xl fontWeight-5 breakPointM-lineHeight-xxl breakPointM-fontSize-xxl\" style=\"margin-left: auto; margin-right: auto;\">Let\u2019s imagine for a moment that I\u2019m an alien, now explain a design system to me.<\/h2>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">I doubt that aliens have to worry about design in the same ways we do but I\u2019d actually love to see what challenges they face!<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">As far as I\u2019m aware, there isn\u2019t a formal definition on what a design system is. I think because the problems it solves (particularly in the digital product space) have emerged fairly recently - so to try and explain what it means for us at <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvelapp.com\">Marvel<\/a>, I\u2019ll give a real-world example.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">We have a bunch of products that all have separate codebases and more or less separate teams\/owners:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>Main Marvel platform<\/li>\n<li>Prototype viewer<\/li>\n<li>Design tool<\/li>\n<li>Handoff<\/li>\n<li>Mobile apps (iOS\/Android)<\/li>\n<li>Mac apps (Sketch plugin)<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">We also develop and support a few static sites:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>A marketing website<\/li>\n<li>A WordPress blog<\/li>\n<li>A bunch of isolated back-end templates<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">Using our own <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvelapp.com\/developers\">API<\/a>, we build and ship <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvelapp.com\/features\/integrations\/\">integrations<\/a> and their marketing pages like these:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>BotBot<\/li>\n<li>Dashboard<\/li>\n<li>Userflows<\/li>\n<li>Keynote to Marvel<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">We also send out HTML emails daily:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>Some of them are automated<\/li>\n<li>Some of them have to be built specifically for an announcement<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">We also have different teams collaborating on a daily basis:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>Product<\/li>\n<li>Front-end<\/li>\n<li>Back-end<\/li>\n<li>Marketing<\/li>\n<li>Sales<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">With all of these different platforms, channels, teams and processes involved, there are a range of challenges that surface. For example:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>How do we make design accessible to all the different teams?<\/li>\n<li>How do we ensure each team uses the same technologies, elements, and patterns?<\/li>\n<li>How do we ship new features for each product without repeating the same work over and over again? Or, in other words, how do we stay efficient?<\/li>\n<li>How do we bring over consistency to all of these?<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">We\u2019ve created a system that manages all of this and most importantly evolves with it. It lives inside all of our products and web apps, but is a separate entity entirely. That means maintenance is done in one place and almost eliminates the need to think about design processes and workflow when working on a product.<\/p>\n<h3 class=\"pageWrap pageWrap--s marginTop-l marginBottom-m c-black lineHeight-xl fontSize-xl fontWeight-5\">How does it work?<\/h3>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">The following flow chart goes into slightly more detail \u2013 but please forgive my vague terminology:<\/p>\n<div id='gallery-1' class='gallery galleryid-16167 gallery-columns-1 gallery-size-full'><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem2.png'><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"1093\" src=\"https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem2.png\" class=\"attachment-full size-full\" alt=\"Diagram of Marvel&#039;s Design System Flow\" srcset=\"https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem2.png 1600w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem2-600x410.png 600w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem2-768x525.png 768w, https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/designsystem2-1500x1025.png 1500w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><\/a>\n\t\t\t<\/dt><\/dl><br style=\"clear: both\" \/>\n\t\t<\/div>\n\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\"><\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">We have a bunch of design values for colors, typography, layout and more, structured in a simple <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/compositor.io\/blog\/open-formats\">JSON format<\/a>. From there, we send them to a few places. On one hand, we have a <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/github.com\/marvelapp\/SwiftStyleguideGenerator\">Swift Styleguide Generator<\/a> which generates the design values consumed by our iOS and Mac apps. On the other, we have a simple atomic CSS framework, which then gets consumed by anything that uses web technology; be that React, PHP or old school email table templates.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">We also manage design work with Abstract and use <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/www.goabstract.com\/blog\/sketch-libraries-abstract-linked-libraries\/\">shared libraries<\/a> extensively to distribute the same UI kit into everyone\u2019s projects. We\u2019re also experimenting with sending out our live production components into <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvelapp.com\/sketch\">Sketch<\/a>, instead of <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvel7077.wpengine.com\/creating-maintaining-marvel-style-guide-sketch\/\">recreating them manually<\/a>, demonstrated with the dashed lines in the diagram.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">This diagram is an example of what our design system looks like. Other companies will have different needs, so a solution might look entirely different. Simpler and more elegant, or twice as complex.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">Of course, there\u2019s a lot more to it than a simple flow diagram. For example:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>What happens when a design value needs to change?<\/li>\n<li>How much of it was influenced by user research?<\/li>\n<li>How do we improve what we already have?<\/li>\n<li>How do we introduce new patterns?<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">For further reading, I would recommend <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/medium.com\/@varyastepanova\/design-systems-review-of-vocabulary-and-terms-3d3a671b2a6f\">this article<\/a> by <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/twitter.com\/varya_en\">Varya Stepanova<\/a> which goes into a lot more detail on design system terminology, which in our case is a little all over the place! Another great read is <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/designsystemsbook.com\/\">the design systems book<\/a> by <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/twitter.com\/craftui?lang=en\">Alla Kholmatova<\/a>.<\/p>\n<h2 class=\"pageWrap pageWrap--s marginTop-xl marginBottom-l c-black lineHeight-xl fontSize-xl fontWeight-5 breakPointM-lineHeight-xxl breakPointM-fontSize-xxl\" style=\"margin-left: auto; margin-right: auto;\">What are the advantages of using a design system?<\/h2>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">I briefly mentioned some of the problems we faced before building our design system earlier. So the advantages work out to be solutions to the mentioned problems such as shipping consistent and accessible products across different mediums, reusing and maintaining code and design in a more efficient way. And of course, improve cross-team collaboration.<\/p>\n<h2 class=\"pageWrap pageWrap--s marginTop-xl marginBottom-l c-black lineHeight-xl fontSize-xl fontWeight-5 breakPointM-lineHeight-xxl breakPointM-fontSize-xxl\" style=\"margin-left: auto; margin-right: auto;\">What have you learnt from building a design system?<\/h2>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">Building a design system that scales well as the team grows is challenging. Doing the same thing whilst the products grow in scope and complexity is even more so. It takes a lot of time and effort and there always seems to be hurdles in the way.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">What I\u2019ve realised in the past two years is that treating the design system as a separate product is hugely helpful. It needs it\u2019s own requirements, it\u2019s own set of features, a solid roadmap and clear prioritisation.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">For example, our pattern library is not something we\u2019ve built and left in the wild. It evolves every day, there\u2019s an ever-growing backlog of feature requests, just internally, and we haven\u2019t even open-sourced it yet. So managing all of these things whilst making sure the products that consume it\u2019s APIs stay consistent, don\u2019t break or look odd proved to be the most challenging part for us. At the end of the day, it\u2019s a mixture between design and software so it needs to be treated in the same way.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">Other things that I realised were crucial to the process, especially when time and resources are tight, were:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>Detailed documentation<\/li>\n<li>Regular audit<\/li>\n<li>User research<\/li>\n<li>Testing<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">Lastly, it might sound very obvious, but I\u2019ve noticed that anything new that\u2019s complicated (a UI kit or a pattern library, or even design process for that matter) will be slow to get adopted - unless enforced religiously.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">If it causes overhead in learning and takes time to get used to, people will get confused and ignore it. Reason being is that everyone wants to get their job done fast, which means they\u2019re more likely not to invest in something new that slows them down in the short term. It\u2019s just hard to see the long term efficiency gains. Any deviation from regular workflow is going to need some time for adjustment, so making sure your solutions are easy, understandable and straight forward might be a challenge too.<\/p>\n<h2 class=\"pageWrap pageWrap--s marginTop-xl marginBottom-l c-black lineHeight-xl fontSize-xl fontWeight-5 breakPointM-lineHeight-xxl breakPointM-fontSize-xxl\" style=\"margin-left: auto; margin-right: auto;\">How does somebody even begin with building a design system?<\/h2>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">Another question I have no concrete answer for as every business is different but I can share how we went about doing it. The first thing we did was an audit of the existing brand, products and user interfaces.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">When we started building our <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvelapp.com\/styleguide\/overview\/introduction\">Styleguide<\/a>, Marvel had already been running for two years. By that time, it was an established product which already had a good, consistent design which people loved and enjoyed using. However, it was getting to a point where major features were being introduced and turning it into a platform, rather than a single product, so the need for consistency was becoming more and more essential.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">We did an audit of the existing codebase and identified quite a few problems which <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/twitter.com\/colmtuite\">Colm Tuite<\/a> <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvel7077.wpengine.com\/the-marvel-styleguide\/\">summarised<\/a> in his post on how we built the first version of the Marvel Styleguide:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>Identical components were implemented inconsistently.<\/li>\n<li>Colors were not balanced properly.<\/li>\n<li>Transition durations were set seemingly at random.<\/li>\n<li>There were almost 100 unique font sizes.<\/li>\n<li>We counted 18 slightly different shades of the same gray.<\/li>\n<li>Lots of CSS was either duplicated or unused.<\/li>\n<\/ul>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">From there it was deciding on tech and our approach to solve the following problems:<\/p>\n<ol class=\"pageWrap pageWrap--s list list--ordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>Build a framework to unify all design values<\/li>\n<li>Build a pattern library to make existing user interfaces consistent<\/li>\n<li>Set clear guidelines and rules on how to use the above<\/li>\n<\/ol>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">You can read more about it all in the <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/marvel7077.wpengine.com\/the-marvel-styleguide\/\">original article<\/a>.<\/p>\n<h2 class=\"pageWrap pageWrap--s marginTop-xl marginBottom-l c-black lineHeight-xl fontSize-xl fontWeight-5 breakPointM-lineHeight-xxl breakPointM-fontSize-xxl\" style=\"margin-left: auto; margin-right: auto;\">What makes a good Design System?<\/h2>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">I don\u2019t think I can really pin point a specific thing and would say it definitely depends on execution, but I think the following makes for a good design system:<\/p>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li>Good, concise documentation<\/li>\n<li>Rules and guidelines that are easy to understand<\/li>\n<li>Clear reasoning on why certain decisions were made (A good example of this is <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/bulb.co.uk\/blog\/introducing-bulbs-design-system\">Bulb\u2019s design system<\/a>, which has insights below each component and give context to why certain decisions were made \u2013 mostly backed by user research)<\/li>\n<\/ul>\n<h2 class=\"pageWrap pageWrap--s marginTop-xl marginBottom-l c-black lineHeight-xl fontSize-xl fontWeight-5 breakPointM-lineHeight-xxl breakPointM-fontSize-xxl\" style=\"margin-left: auto; margin-right: auto;\">Any times when using a design system is not a good solution?<\/h2>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">If it over-complicates and clutters people\u2019s workflows with unnecessary process, then it\u2019s not a good solution. In fact, it isn\u2019t a solution at all.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">You can have a pattern library without calling it a Design System. You can have a simple UI kit. Or a set of design variables when building a simple website. If it helps you build faster, then it does the job. It doesn\u2019t always have to be a system.<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">You can also design and style everything on the go. Like when you\u2019re building marketing sites. Or products with a lifespan as part of marketing campaigns. It doesn\u2019t really matter what and how you use, as long as you are productive, efficient and get the work done.<\/p>\n<blockquote class=\"twitter-tweet\" data-lang=\"en\">\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\"dir=\"ltr\" lang=\"en\">\u2533\u253b|<br \/>\n\u253b\u2533|<br \/>\n\u2533\u253b|<br \/>\n\u253b\u2533|<br \/>\n\u2533\u253b|<br \/>\n\u253b\u2533|<br \/>\n\u2533\u253b|<br \/>\n\u253b\u2533|<br \/>\n\u2533\u253b|<br \/>\n\u253b\u2533|<br \/>\n\u2533\u253b|<br \/>\n\u253b\u2533|<br \/>\n\u2533\u253b| _<br \/>\n\u253b\u2533| \u2022.\u2022) I don't know what<br \/>\n\u2533\u253b|\u2282\uff89 a \"design system\" is<br \/>\n\u253b\u2533|<\/p>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\u2014 Stevie Buckley (@StevieBuckley) <a class=\"link link--blue fontWeight-4\"href=\"https:\/\/twitter.com\/StevieBuckley\/status\/1041710362838683648?ref_src=twsrc%5Etfw\">September 17, 2018<\/a><\/p><\/span><\/blockquote>\n<p class=\"pageWrap pageWrap--s marginBottom-m paddingBottom-s c-slate lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\"><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<h3 class=\"pageWrap pageWrap--s marginTop-l marginBottom-m c-black lineHeight-xl fontSize-xl fontWeight-5\">Further reading:<\/h3>\n<ul class=\"pageWrap pageWrap--s list list--unordered marginBottom-l lineHeight-l fontSize-l fontWeight-3 breakPointM-fontSize-xl breakPointM-lineHeight-xl\">\n<li class=\"LinkSuggestion__LinkSuggestionWrapper-sc-1mdih4x-0 bRwwZe\"><a class=\"link link--blue fontWeight-4\"class=\"LinkSuggestion__Link-sc-1mdih4x-2 dcwLhi\" href=\"https:\/\/marvelapp.com\/blog\/how-design-systems-can-help-build-and-prototype-better-digital-products\/\" target=\"_blank\" rel=\"noopener noreferrer\">How Design Systems Can Help Build and Prototype Better Digital Products<\/a><\/li>\n<li class=\"LinkSuggestion__LinkSuggestionWrapper-sc-1mdih4x-0 bRwwZe\"><a class=\"link link--blue fontWeight-4\"class=\"LinkSuggestion__Link-sc-1mdih4x-2 dcwLhi\" href=\"https:\/\/marvelapp.com\/blog\/atomic-design-system-of-components\/\" target=\"_blank\" rel=\"noopener noreferrer\">Atomic Design: How to Design Systems of Components<\/a><\/li>\n<li class=\"LinkSuggestion__LinkSuggestionWrapper-sc-1mdih4x-0 bRwwZe\"><a class=\"link link--blue fontWeight-4\"class=\"LinkSuggestion__Link-sc-1mdih4x-2 dcwLhi\" href=\"https:\/\/marvelapp.com\/blog\/why-design-systems-fail-how-to-make-them-work\/\" target=\"_blank\" rel=\"noopener noreferrer\">Why Design Systems Fail, and How to Make Them Work<\/a><\/li>\n<li class=\"LinkSuggestion__LinkSuggestionWrapper-sc-1mdih4x-0 bRwwZe\"><a class=\"link link--blue fontWeight-4\"class=\"LinkSuggestion__Link-sc-1mdih4x-2 dcwLhi\" href=\"https:\/\/marvelapp.com\/blog\/build-design-systems-scale\/\" target=\"_blank\" rel=\"noopener noreferrer\">How to Build Design Systems to Scale<\/a><\/li>\n<li class=\"LinkSuggestion__LinkSuggestionWrapper-sc-1mdih4x-0 bRwwZe\"><a class=\"link link--blue fontWeight-4\"class=\"LinkSuggestion__Link-sc-1mdih4x-2 dcwLhi\" href=\"https:\/\/marvelapp.com\/blog\/systems-design-design-systems\/\" target=\"_blank\" rel=\"noopener noreferrer\">Design Systems and Systems Design<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u2018Design Sprints\u2019, \u2018Agile\u2019, \u2018Stand Up\u2019, \u2018Lean\u2019 &#8211; Is \u2018Design System\u2019 just another one of those buzz words we hear? It really depends on how you choose to look at it. I find that everything that\u2019s \u2018trendy\u2019 or \u2018buzz-wordy\u2019 is usually so for a reason. There is a lot of innovation in the design systems space at the moment hence why&#8230; <a class=\"link link--blue fontWeight-4\" href=\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/\">Read More &#65515;<\/a><\/p>\n","protected":false},"author":8,"featured_media":16175,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[484],"tags":[],"class_list":["post-16167","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-design-systems"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v15.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<meta name=\"description\" content=\"Building a Design System? Our interview with Yav covers what they are, how they work and real life examples of how to build one.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is a Design System Anyway?\" \/>\n<meta property=\"og:description\" content=\"Building a Design System? Our interview with Yav covers what they are, how they work and real life examples of how to build one.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/\" \/>\n<meta property=\"og:site_name\" content=\"Marvel Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/marvelapp\" \/>\n<meta property=\"article:published_time\" content=\"2018-10-01T13:41:13+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-12-14T09:37:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/marvel-editorial-graphic-1500x853.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1500\" \/>\n\t<meta property=\"og:image:height\" content=\"853\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@marvelapp\" \/>\n<meta name=\"twitter:site\" content=\"@marvelapp\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\">\n\t<meta name=\"twitter:data1\" content=\"7 minutes\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/marvelapp.com\/blog\/#organization\",\"name\":\"Marvel\",\"url\":\"https:\/\/marvelapp.com\/blog\/\",\"sameAs\":[\"https:\/\/www.facebook.com\/marvelapp\",\"https:\/\/www.instagram.com\/marvelapp\/\",\"https:\/\/www.linkedin.com\/company\/marvel-app\/\",\"https:\/\/twitter.com\/marvelapp\"],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/marvelapp.com\/blog\/#logo\",\"inLanguage\":\"en-GB\",\"url\":\"https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/06\/Logo-Light.png\",\"width\":1605,\"height\":1130,\"caption\":\"Marvel\"},\"image\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/marvelapp.com\/blog\/#website\",\"url\":\"https:\/\/marvelapp.com\/blog\/\",\"name\":\"Marvel Blog\",\"description\":\"Ideas and words on user experience, design, collaboration and more\",\"publisher\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/marvelapp.com\/blog\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-GB\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/#primaryimage\",\"inLanguage\":\"en-GB\",\"url\":\"https:\/\/marvelapp.com\/wp-content\/uploads\/2018\/10\/marvel-editorial-graphic.png\",\"width\":\"2286\",\"height\":\"1300\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/#webpage\",\"url\":\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/\",\"name\":\"What is a Design System Anyway?\",\"isPartOf\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/#primaryimage\"},\"datePublished\":\"2018-10-01T13:41:13+00:00\",\"dateModified\":\"2020-12-14T09:37:40+00:00\",\"description\":\"Building a Design System? Our interview with Yav covers what they are, how they work and real life examples of how to build one.\",\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/\"]}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/#webpage\"},\"author\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/#\/schema\/person\/96aaffb7d6e74672860a7dd5a349007b\"},\"headline\":\"What is a Design System Anyway?\",\"datePublished\":\"2018-10-01T13:41:13+00:00\",\"dateModified\":\"2020-12-14T09:37:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/#webpage\"},\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/#primaryimage\"},\"articleSection\":\"Design Systems\",\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/marvelapp.com\/blog\/design-system-anyway\/#respond\"]}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/marvelapp.com\/blog\/#\/schema\/person\/96aaffb7d6e74672860a7dd5a349007b\",\"name\":\"Yavor\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/marvelapp.com\/blog\/#personlogo\",\"inLanguage\":\"en-GB\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/22f96c3ad70752f11e1fde016bc6e380d871924451b72ab620ec7476e59a793d?s=96&d=mm&r=g\",\"caption\":\"Yavor\"},\"description\":\"Product designer fiddling with code and slack memes at Marvel.\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","_links":{"self":[{"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/posts\/16167","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/comments?post=16167"}],"version-history":[{"count":0,"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/posts\/16167\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/media\/16175"}],"wp:attachment":[{"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/media?parent=16167"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/categories?post=16167"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/marvelapp.com\/blog\/wp-json\/wp\/v2\/tags?post=16167"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}