|
| 1 | +<!DOCTYPE html> |
| 2 | +<html> |
| 3 | + <head> |
| 4 | + <meta charset="utf-8"> |
| 5 | + <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| 6 | + <meta name="viewport" content="width=device-width initial-scale=1"> |
| 7 | + |
| 8 | + <title>Maintaining Design Systems | Atomic Design by Brad Frost</title> |
| 9 | + <meta name="description" content="Atomic design is a methodology for crafting effective design systems |
| 10 | +"> |
| 11 | + |
| 12 | + <link rel="stylesheet" href="/css/style.css"> |
| 13 | + |
| 14 | +<!-- Schema.org markup for Google+ --> |
| 15 | +<meta itemprop="name" content="Maintaining Design Systems | Atomic Design by Brad Frost"> |
| 16 | +<meta itemprop="image" content="http://atomicdesign.bradfrost.com/images/book-cover-thumb.png"> |
| 17 | +<meta itemprop="description" content="Atomic design is a methodology for crafting effective design systems |
| 18 | +"> |
| 19 | + |
| 20 | +<!-- Twitter Card data --> |
| 21 | +<meta name="twitter:card" content="summary_large_image"> |
| 22 | +<meta name="twitter:title" content="Maintaining Design Systems | Atomic Design by Brad Frost"> |
| 23 | +<meta name="twitter:description" content="Atomic design is a methodology for crafting effective design systems |
| 24 | +"> |
| 25 | +<meta name="twitter:creator" content="@brad_frost"> |
| 26 | +<!-- Twitter summary card with large image must be at least 280x150px --> |
| 27 | +<meta name="twitter:image:src" content="http://atomicdesign.bradfrost.com/images/book-cover-thumb.png/images/book-cover-thumb.png"> |
| 28 | + |
| 29 | +<!-- Open Graph data --> |
| 30 | +<meta property="og:title" content="Maintaining Design Systems | Atomic Design by Brad Frost" /> |
| 31 | +<meta property="og:url" content="http://atomicdesign.bradfrost.com/chapter-5/" /> |
| 32 | +<meta property="og:image" content="http://atomicdesign.bradfrost.com/images/book-cover-thumb.png/images/book-cover-thumb.png" /> |
| 33 | +<meta property="og:description" content="Atomic design is a methodology for crafting effective design systems |
| 34 | +" /> |
| 35 | +</head> |
| 36 | + |
| 37 | + <body> |
| 38 | + <header role="banner"> |
| 39 | + <a href="/" rel="home"><img src="/images/atomic-design.svg" alt="" /></a> |
| 40 | +</header> |
| 41 | + |
| 42 | + <main role="main"> |
| 43 | + <div class="text"> |
| 44 | + <h1><em>Chapter 5</em> Maintaining Design Systems</h1> |
| 45 | + <div class="note"> |
| 46 | + <p>Greetings, reader! The following text is a <a href="http://bradfrost.com/blog/post/atomic-design-book/">work in progress</a> so be warned you will encounter incomplete thoughts, grammar errors, and more. If you see something worth fixing, please <a href="https://github.com/bradfrost/atomic-design">submit an issue on Github</a>. Thanks and happy reading!</p> |
| 47 | +</div> |
| 48 | + <p>One essential expectation to reset is the concept of <em>done</em>. Print and other physical mediums involve creating tangible objects that have a sense of finality to them. That simply doesn’t exist in the digital world. The ephemeral nature of the Web is something that needs to be extolled to your clients, colleagues, and stakeholders. If we’re to create living design systems, we need to recognize that the Web is never done, and that our work can and should be constantly evolved and improved upon over time.</p> |
| 49 | + |
| 50 | +<ul> |
| 51 | + <li>And they made a pattern library and lived happily ever after. Right? Not quite.</li> |
| 52 | + <li>There’s a very real risk of a lot of time and effort going into making a design system and accompanying pattern library, only to have it die on the vine.</li> |
| 53 | + <li>Throw the design system in the trashcan, right along side the PSDs, PDFs and other artifacts</li> |
| 54 | + <li>How to prevent this?</li> |
| 55 | +</ul> |
| 56 | + |
| 57 | +<h3 id="make-it-maintainable">Make It Maintainable</h3> |
| 58 | +<ul> |
| 59 | + <li>Don’t let it die on the vine and become obsolete</li> |
| 60 | + <li>Sharing CSS and JS with the production environment is easy, but sharing templates is tough</li> |
| 61 | + <li>Templating language should match the production environment</li> |
| 62 | + <li><a href="http://bradfrost.com/blog/post/using-grunt-with-pattern-lab/">Using Grunt with Pattern Lab</a></li> |
| 63 | +</ul> |
| 64 | + |
| 65 | +<h3 id="the-holy-grail">The Holy Grail</h3> |
| 66 | +<ul> |
| 67 | + <li>Holy Grail is when the pattern library and production environment are perfectly in sync. Make a change to a pattern library, and anywhere the pattern is included in production will be updated.</li> |
| 68 | + <li><a href="http://rizzo.lonelyplanet.com/">Rizzo</a> by Lonely Planet has accomplished this.</li> |
| 69 | + <li><a href="https://medium.com/@marcelosomers/chasing-the-holy-grail-bbc0b7cce365#.vy45rkm7m">Chasing the holy grail</a></li> |
| 70 | +</ul> |
| 71 | + |
| 72 | +<h3 id="make-it-cross-disciplinary">Make it cross-disciplinary</h3> |
| 73 | +<ul> |
| 74 | + <li>Not just a developer tool. Not just a designer tool. Every discipline invested in the success of the website should be contributing to the pattern library.</li> |
| 75 | + <li>Carousel component example - amazingly complex component requiring input from business owners, editorial staff, content strategists, art directors, UX designers, front-end people, backend people</li> |
| 76 | +</ul> |
| 77 | + |
| 78 | +<h3 id="make-it-approachable">Make it Approachable</h3> |
| 79 | +<ul> |
| 80 | + <li>No shocker here, but good design leads to more usage.</li> |
| 81 | + <li>Avoid exposing tons of code right out of the gate as it might discourage other disciplines from looking at it (“Oh this must not be for me”)</li> |
| 82 | +</ul> |
| 83 | + |
| 84 | +<h3 id="make-it-visible">Make it visible</h3> |
| 85 | +<ul> |
| 86 | + <li>Make it public.</li> |
| 87 | + <li>Recruitment, recruitment, recruitment.</li> |
| 88 | +</ul> |
| 89 | + |
| 90 | +<h3 id="make-it-agnostic">Make it Agnostic</h3> |
| 91 | +<ul> |
| 92 | + <li>The more agnostic pattern names are, the more versatile and reusable they become.</li> |
| 93 | + <li>Nicole Sullivan <a href="http://www.stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code/">media object</a></li> |
| 94 | +</ul> |
| 95 | + |
| 96 | +<h3 id="make-it-contextual">Make it Contextual</h3> |
| 97 | +<ul> |
| 98 | + <li>Demonstrate context. Where are</li> |
| 99 | + <li>Pattern Lab lineage</li> |
| 100 | +</ul> |
| 101 | + |
| 102 | +<h3 id="make-it-last">Make it last</h3> |
| 103 | +<ul> |
| 104 | + <li>Publish updates (Material Design example)</li> |
| 105 | + <li>Regular E-mail newsletters, blog updates, etc, whenever things change</li> |
| 106 | + <li>Monitor progress - Lonely Planet performance</li> |
| 107 | +</ul> |
| 108 | + |
| 109 | +<h2 id="go-forth-and-be-atomic">Go forth and be atomic</h2> |
| 110 | + |
| 111 | + <nav role="navigaiton" class="pagination"> |
| 112 | + <!-- <a href="#">Next Chapter</a> |
| 113 | + <a href="#">Previous Chapter</a> --> |
| 114 | + <a href="/table-of-contents/">Table of Contents</a> |
| 115 | +</nav> |
| 116 | + |
| 117 | +</div> |
| 118 | + |
| 119 | + <div class="banner"> |
| 120 | + <div class="banner-content"> |
| 121 | + <h3><a href="/" rel="home">Atomic Design</a></h3> |
| 122 | + <p>by <a href="http://bradfrost.com" rel="me">Brad Frost</a></p> |
| 123 | + <a href="http://shop.bradfrost.com/products/atomic-design-ebook" class="btn">Preorder the Book</a> |
| 124 | + </div> |
| 125 | +</div> |
| 126 | + |
| 127 | + |
| 128 | + </main> |
| 129 | + <footer role="contentinfo"> |
| 130 | + © 2015 Brad Frost |
| 131 | +</footer> |
| 132 | + |
| 133 | + </body> |
| 134 | +</html> |
0 commit comments