SlideShare a Scribd company logo
1 of 37
Download to read offline
Better. Faster. UXIER.
           Atomic Design



          Agile UX NYC    jennifer gergen
    February 25th, 2012   @b9punk
Join me in a (day) dream

This talk is about an idea for a new way of doing things, not a baked &
tested solution.

Even describing the problem together is worth it. Let’s start the discussion.

Imagine a better way of handling the brass tacks of agile design.
Let’s pretend

    we already agree

Design is the difference between awesome and awesome-sauce.

Big Design Upfront   just doesn't cut it.

Agile Rocks (We believe!)

Can’t we get more done, faster, with less drama?
Agile UX
could use another iteration...


 Prototype




                                 iterate
iterating on
Look & feel
is still a slow boat
We're not so good at iterating when it comes to "big" visual changes.

Most of our regular iterations focus on building or improving features or pages,
and can’t really encompass global look & feel updates.

When this is the case, designers usually choose existing styles (they frequently
hate and are dying to improve), so as not to "break" the look & feel and
confuse their users.

Enough of this and eventually we end up with "redesign" projects. Which suck.
Prototyping is
                           harder than it
                         should be
The agile manifesto defines simplicity as:
“the art of maximizing the amount of work not done."

Either you're (doing some variation of ) linking comps together, or you have demos that work
fine, but look really rough.

In either case, it's often hard to be sure of your results.
(Maybe the test would have had different results if the hover states had worked properly, etc.)

By the time you marry the two halves, you're so far along that you might as well just
release and figure it out from there.
Scenarios that suck
Scenarios that suck.


Hey, I still                          Dude, just put it on
need that                                the “Z” Drive.
  file...
                               Was the
                             attachment
                          larger than 5mb?
                                                                       Want to
            What?                                                     borrow my
      I totally emailed                                             thumb drive...?
         that to you
          yesterday
                                                    Developers
                                                    don’t have
                                                   access to “z.”
Scenarios that suck.




What is a
“LW_xmod_oxy_1376_final_new.psd?”


                                    ?
Scenarios that suck.



Yay! I’m finished!
   It looks just
like your design!
                     Oh no! That’s the
                      old version...
Scenarios that suck.

 Hey, This project
 sounds familiar...                 Um, Judy worked on that but
                                      she’s not here anymore.
didn’t we mock this
   up last year?
                            Word. Where are
                              the comps?
                                                                     UM...Does
                                                                   someone have
                                                                   the password
          Yeah. The Blue                                            to her mac?
        team was working
         on it but it got
            de-scoped.
                                                   Where are her
                                                       files?
Scenarios that suck.

                                                         Hmm.. let’s see...
    Hey team, i know we’re
  working on “project y”, but                             OMG, changing             Is this even
“project y” involves “widget x”                          “widget x” means         going to affect
 which could really use a new                            updating 100’s of           our KPI’s?
           design...                                          pages.
                                         That would be
                                            awesome!               That turns our 3
                                           “Widget x”            point story into a 20
                                             sucks!                  point story.




          But “widget x” is all over the
         place...if i change it here can we                ... so that’s a no..
              change it everywhere?
Scenarios that suck.


What’s with this stylesheet?
   There’s no difference between
         .grey-text-regular
          .text-default-grey
                   &
        .grey-caption-text!        ...Dunno, Dude ... That’s what the
                                            designers sent.
                                         i just copied and pasted...
Seriously,
we can do better.
Okay,
    what do we want?
Global Incremental Style Change or Continuous Design Deployment

actually   Rapid useful Prototyping

Good designer ‹—› developer collaboration on markup and css

Good design asset management & collaboration (versioned)

Easy Discovery
Continuous
     Design deployment
It’s actually agile—smaller changes globally based on user feedback

Redesigns are expensive, and their value is hard to measure, so they happen
very infrequently

Redesigns can cause massive user backlash

Style guides aren’t clairvoyant

No one ever reads the @!&*ing manual anyway
Rapid
                  Actually
       Useful Prototyping

High fidelity / low effort

Enable designers & product managers, etc., to create these prototypes

Ability to build prototypes instead of mockups for some projects
designer ‹-› developer
             collaboration
                      on markup & css

stay DRY (Don’t Repeat Yourself )

Enable & teach designers to write production-ready code
(images don't have to get re-pathed, etc.)

Share workload for patterns, components & prototypes

Knowledge sharing

Appropriate medium-to-task matching
(no more juggling forms in photoshop)
Better design asset
management & collaboration
                                 = version control

The way most designers store & backup their files is just plain scary

It’s central
(The whole team gets their stuff from the same source)

Get all related project design assets together
(Wireframes, comps, copy, etc)

Certainty that you are always working with the newest file

Potential for embedded art

Version control is a form of automatic documentation
easy discovery
Shared vocabulary
(across all teams & departments)

Be able to find things quickly, without having to ask

Central & Accessible

Ability to guess what something is by the way it's named

Quickly learn how things are organized
(easy on-boarding)
Enter
AToMIC Design
(just go with me on the awkward backronym...)



             A ssets
             To
             M arkup (for)
             I terative
             C ollaboration
A new (?)
Design
strategy


Brand Guideline



Component Library



Pattern Library
Patterns


“A pattern is a solution to a recurring
design problem.”

Examples of patterns are:
    buttons
    tabs
    pagination

They are icons, mechanisms, etc., that
have commonly accepted behaviors that
make up a universally understood visual
language for software.

Borrowed from “Modular Web Design”
by Nathan Curtis
Components

“A component is a chunk of a page design.”

                A component is a logical
                grouping of related
                content & functions that
                are combined into a
                meaningful building block
                used—and reused—in the
                interface design of a site.




                 Borrowed from “Modular Web Design”
                 by Nathan Curtis
it’s an organizing
               principle
Once you start to think of your content in this way, you can set yourself up to
evolve the look & feel of these chunks in the same way that we evolve our
features and products.

You need the whole team—maybe even the whole department—to help define
and name these chunks, but once you have, you can start organizing your files,
photoshop layers, & css classes, etc. against them.

You’ll get consistent names, and a shared vocabulary.
That, alone, is worth the price of admission...
AToMIC Design
                   Versioned
                   Design Assets


Organize for                       L
continuous                         i
design                             b
evolution          COLLABORATION   r
(component +                       a
pattern scheme)                    r
                                   y


                   organized
                   Markup + CSS
show me
the money
.
.
App Folder(s)
Components

    SEARCH-RESULT
        HTML
        (one file for each state)

        CSS
        js
        (includes a state handler)

        Data
        DEMO
.

Prototypes
Patterns
App Folder(s)
Components

    SEARCH-RESULT
        HTML
        (one file for each state)

        CSS
        js
        (includes a state handler)

        Data
        DEMO
Get Started

Define "component" v "pattern" that makes sense for your project/
team

Naming guidelines (semantic, outsiders should be able to guess what it
means, hyphens, no scheme/codes, etc.)

Setup some minimal infrastructure
  version control (s) - branch scheme, file organization scheme, etc.
  get everyone accounts + training
  build the component & pattern browser

Starter workflow

                  — Iterate until it works for your project —
Sample Workflow


                         design,
                         Develop,
            COmponent
Discovery                style,
            definition
+                        QA,          Assemble
Initial     &            [Document]
                                      Pages
designs     naming       &
                         Add to
                         library
Thanks!
Can we please keep talking about this?
                Please connect with

           @DesignAtomic
                  jennifer gergen
                     @b9punk




                    —Big ups—
Wayne Warner   The whole Ladders Team   Our Lovely Hosts
 @wawjr3d           @Theladders           @agileuxnyc

More Related Content

What's hot

Design Systems (english) #UXcamHH
Design Systems (english) #UXcamHHDesign Systems (english) #UXcamHH
Design Systems (english) #UXcamHHBenno Lœwenberg
 
Design system presentation - How to sell it internally
Design system presentation - How to sell it internallyDesign system presentation - How to sell it internally
Design system presentation - How to sell it internallyEugene Kardash
 
Fundamentals of User Interface Design
Fundamentals of User Interface DesignFundamentals of User Interface Design
Fundamentals of User Interface DesignMerlin Rebrović
 
Evolving your Design System: People, Product, and Process
Evolving your Design System: People, Product, and ProcessEvolving your Design System: People, Product, and Process
Evolving your Design System: People, Product, and Processuxpin
 
Building a Mature Design System
Building a Mature Design SystemBuilding a Mature Design System
Building a Mature Design SystemDrew Burdick
 
A design system. A year in review.
A design system. A year in review.A design system. A year in review.
A design system. A year in review.James Ferguson
 
Understanding Design Tokens, from UX tool to production - Débora Barreto Orne...
Understanding Design Tokens, from UX tool to production - Débora Barreto Orne...Understanding Design Tokens, from UX tool to production - Débora Barreto Orne...
Understanding Design Tokens, from UX tool to production - Débora Barreto Orne...Wey Wey Web
 
Introduction to Version Control
Introduction to Version ControlIntroduction to Version Control
Introduction to Version ControlJeremy Coates
 
UI/UX - The Bigger Picture
UI/UX - The Bigger PictureUI/UX - The Bigger Picture
UI/UX - The Bigger PictureMayank Lambhate
 
Initiating and Sustaining Design Systems for the Enterprise
Initiating and Sustaining Design Systems for the EnterpriseInitiating and Sustaining Design Systems for the Enterprise
Initiating and Sustaining Design Systems for the Enterpriseuxpin
 
Introduction to UI/UX with Figma
Introduction to UI/UX with FigmaIntroduction to UI/UX with Figma
Introduction to UI/UX with FigmaPRIYATHAMDARISI
 
Introduction to ui ux
Introduction to ui uxIntroduction to ui ux
Introduction to ui uxWycliff1
 
How to build a design system
How to build a design systemHow to build a design system
How to build a design systemFaizur Rehman
 
Everything you need to know about design system.pdf
Everything you need to know about design system.pdfEverything you need to know about design system.pdf
Everything you need to know about design system.pdfKoru UX Design
 
Design Systems at Scale
Design Systems at ScaleDesign Systems at Scale
Design Systems at ScaleSarah Federman
 
Usability engineering Usability testing
Usability engineering Usability testingUsability engineering Usability testing
Usability engineering Usability testingREHMAT ULLAH
 
How to Find a Good UI/UX Designer (or be one!)
How to Find a Good UI/UX Designer (or be one!)How to Find a Good UI/UX Designer (or be one!)
How to Find a Good UI/UX Designer (or be one!)Emerentiana Meicy
 
Solving Design Problem in 2.5 Hours with Google Design Sprint
Solving Design Problem in 2.5 Hours with Google Design SprintSolving Design Problem in 2.5 Hours with Google Design Sprint
Solving Design Problem in 2.5 Hours with Google Design SprintBorrys Hasian
 
Design System & Atomic Design
Design System & Atomic DesignDesign System & Atomic Design
Design System & Atomic Designeggcellent
 

What's hot (20)

Design Systems (english) #UXcamHH
Design Systems (english) #UXcamHHDesign Systems (english) #UXcamHH
Design Systems (english) #UXcamHH
 
Design system presentation - How to sell it internally
Design system presentation - How to sell it internallyDesign system presentation - How to sell it internally
Design system presentation - How to sell it internally
 
Fundamentals of User Interface Design
Fundamentals of User Interface DesignFundamentals of User Interface Design
Fundamentals of User Interface Design
 
Evolving your Design System: People, Product, and Process
Evolving your Design System: People, Product, and ProcessEvolving your Design System: People, Product, and Process
Evolving your Design System: People, Product, and Process
 
Building a Mature Design System
Building a Mature Design SystemBuilding a Mature Design System
Building a Mature Design System
 
A design system. A year in review.
A design system. A year in review.A design system. A year in review.
A design system. A year in review.
 
Understanding Design Tokens, from UX tool to production - Débora Barreto Orne...
Understanding Design Tokens, from UX tool to production - Débora Barreto Orne...Understanding Design Tokens, from UX tool to production - Débora Barreto Orne...
Understanding Design Tokens, from UX tool to production - Débora Barreto Orne...
 
Introduction to Version Control
Introduction to Version ControlIntroduction to Version Control
Introduction to Version Control
 
UI/UX - The Bigger Picture
UI/UX - The Bigger PictureUI/UX - The Bigger Picture
UI/UX - The Bigger Picture
 
Initiating and Sustaining Design Systems for the Enterprise
Initiating and Sustaining Design Systems for the EnterpriseInitiating and Sustaining Design Systems for the Enterprise
Initiating and Sustaining Design Systems for the Enterprise
 
Introduction to UI/UX with Figma
Introduction to UI/UX with FigmaIntroduction to UI/UX with Figma
Introduction to UI/UX with Figma
 
Introduction to ui ux
Introduction to ui uxIntroduction to ui ux
Introduction to ui ux
 
How to build a design system
How to build a design systemHow to build a design system
How to build a design system
 
Everything you need to know about design system.pdf
Everything you need to know about design system.pdfEverything you need to know about design system.pdf
Everything you need to know about design system.pdf
 
Design Systems at Scale
Design Systems at ScaleDesign Systems at Scale
Design Systems at Scale
 
Usability engineering Usability testing
Usability engineering Usability testingUsability engineering Usability testing
Usability engineering Usability testing
 
Design System
Design SystemDesign System
Design System
 
How to Find a Good UI/UX Designer (or be one!)
How to Find a Good UI/UX Designer (or be one!)How to Find a Good UI/UX Designer (or be one!)
How to Find a Good UI/UX Designer (or be one!)
 
Solving Design Problem in 2.5 Hours with Google Design Sprint
Solving Design Problem in 2.5 Hours with Google Design SprintSolving Design Problem in 2.5 Hours with Google Design Sprint
Solving Design Problem in 2.5 Hours with Google Design Sprint
 
Design System & Atomic Design
Design System & Atomic DesignDesign System & Atomic Design
Design System & Atomic Design
 

Viewers also liked

Atomic design, a problem of expectations
Atomic design, a problem of expectationsAtomic design, a problem of expectations
Atomic design, a problem of expectationsFrancesco Improta
 
Building an Atomic Design System
Building an Atomic Design SystemBuilding an Atomic Design System
Building an Atomic Design SystemTim Wright
 
To the Pattern Lab! Better Collaboration in Drupal Using Atomic Design Princi...
To the Pattern Lab! Better Collaboration in Drupal Using Atomic Design Princi...To the Pattern Lab! Better Collaboration in Drupal Using Atomic Design Princi...
To the Pattern Lab! Better Collaboration in Drupal Using Atomic Design Princi...Daniel Ferro
 
Documenting an Atomic Design System with Jekyll
Documenting an Atomic Design System with JekyllDocumenting an Atomic Design System with Jekyll
Documenting an Atomic Design System with JekyllTodd Moy
 
Atomic designで助かった人たち
Atomic designで助かった人たちAtomic designで助かった人たち
Atomic designで助かった人たちIida Yukako
 
Generate a Living Style Guide from CSS - CSSDevConf 2016
Generate a Living Style Guide from CSS - CSSDevConf 2016Generate a Living Style Guide from CSS - CSSDevConf 2016
Generate a Living Style Guide from CSS - CSSDevConf 2016Matt Vanderpol
 
Patternlab: Atomic Design & Living Styleguides (Refresh Hilo)
Patternlab: Atomic Design & Living Styleguides (Refresh Hilo)Patternlab: Atomic Design & Living Styleguides (Refresh Hilo)
Patternlab: Atomic Design & Living Styleguides (Refresh Hilo)Jason Kalawe
 
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...die.agilen GmbH
 

Viewers also liked (12)

Atomic design, a problem of expectations
Atomic design, a problem of expectationsAtomic design, a problem of expectations
Atomic design, a problem of expectations
 
Atomic design
Atomic designAtomic design
Atomic design
 
Building an Atomic Design System
Building an Atomic Design SystemBuilding an Atomic Design System
Building an Atomic Design System
 
Use atomic design ftw
Use atomic design ftwUse atomic design ftw
Use atomic design ftw
 
To the Pattern Lab! Better Collaboration in Drupal Using Atomic Design Princi...
To the Pattern Lab! Better Collaboration in Drupal Using Atomic Design Princi...To the Pattern Lab! Better Collaboration in Drupal Using Atomic Design Princi...
To the Pattern Lab! Better Collaboration in Drupal Using Atomic Design Princi...
 
Atomic design
Atomic designAtomic design
Atomic design
 
Documenting an Atomic Design System with Jekyll
Documenting an Atomic Design System with JekyllDocumenting an Atomic Design System with Jekyll
Documenting an Atomic Design System with Jekyll
 
Atomic Design - Dallas Digital Agency
Atomic Design - Dallas Digital AgencyAtomic Design - Dallas Digital Agency
Atomic Design - Dallas Digital Agency
 
Atomic designで助かった人たち
Atomic designで助かった人たちAtomic designで助かった人たち
Atomic designで助かった人たち
 
Generate a Living Style Guide from CSS - CSSDevConf 2016
Generate a Living Style Guide from CSS - CSSDevConf 2016Generate a Living Style Guide from CSS - CSSDevConf 2016
Generate a Living Style Guide from CSS - CSSDevConf 2016
 
Patternlab: Atomic Design & Living Styleguides (Refresh Hilo)
Patternlab: Atomic Design & Living Styleguides (Refresh Hilo)Patternlab: Atomic Design & Living Styleguides (Refresh Hilo)
Patternlab: Atomic Design & Living Styleguides (Refresh Hilo)
 
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...
 

Similar to Atomic Design: Continuous Design Deployment

Embracing Uncertainty: Learning to Think Responsively
Embracing Uncertainty: Learning to Think ResponsivelyEmbracing Uncertainty: Learning to Think Responsively
Embracing Uncertainty: Learning to Think ResponsivelyChad Currie
 
Planning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsPlanning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsChristian Heilmann
 
3stages Wdn08 V3
3stages Wdn08 V33stages Wdn08 V3
3stages Wdn08 V3Boris Mann
 
IC3 -- Configuration Management 101
IC3 -- Configuration Management 101IC3 -- Configuration Management 101
IC3 -- Configuration Management 101Gabriel Schuyler
 
Javascript Animation with Canvas - Gregory Starr 2015
Javascript Animation with Canvas - Gregory Starr 2015Javascript Animation with Canvas - Gregory Starr 2015
Javascript Animation with Canvas - Gregory Starr 2015Gregory Starr
 
Building Rich User Experiences Without JavaScript Spaghetti
Building Rich User Experiences Without JavaScript SpaghettiBuilding Rich User Experiences Without JavaScript Spaghetti
Building Rich User Experiences Without JavaScript SpaghettiJared Faris
 
Semanticmerge
SemanticmergeSemanticmerge
Semanticmergepsluaces
 
Managing a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandManaging a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandEmma Jane Hogbin Westby
 
On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)Zoe Landon
 
Responsive Design - ISCTE
Responsive Design - ISCTEResponsive Design - ISCTE
Responsive Design - ISCTEfidibiko
 
OOScss Architecture For Rails Apps
OOScss Architecture For Rails AppsOOScss Architecture For Rails Apps
OOScss Architecture For Rails AppsNetguru
 
Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Chad Udell
 
Stc 2015 preparing legacy projects for responsive design - technical issues
Stc 2015   preparing legacy projects for responsive design - technical issuesStc 2015   preparing legacy projects for responsive design - technical issues
Stc 2015 preparing legacy projects for responsive design - technical issuesNeil Perlin
 
Unify Design & Deliverables
Unify Design & DeliverablesUnify Design & Deliverables
Unify Design & Deliverablesnathanacurtis
 
S&T Pair up suckaz 070417
S&T Pair up suckaz 070417S&T Pair up suckaz 070417
S&T Pair up suckaz 070417Dan Dineen
 
Cloud computing - an architect's perspective
Cloud computing - an architect's perspectiveCloud computing - an architect's perspective
Cloud computing - an architect's perspectiveHARMAN Services
 
Building a game engine with jQuery
Building a game engine with jQueryBuilding a game engine with jQuery
Building a game engine with jQueryPaul Bakaus
 
A Grand Unified Theory of Software
A Grand Unified Theory of SoftwareA Grand Unified Theory of Software
A Grand Unified Theory of Softwarevinod_dinakaran
 

Similar to Atomic Design: Continuous Design Deployment (20)

Embracing Uncertainty: Learning to Think Responsively
Embracing Uncertainty: Learning to Think ResponsivelyEmbracing Uncertainty: Learning to Think Responsively
Embracing Uncertainty: Learning to Think Responsively
 
Planning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsPlanning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teams
 
3stages Wdn08 V3
3stages Wdn08 V33stages Wdn08 V3
3stages Wdn08 V3
 
IC3 -- Configuration Management 101
IC3 -- Configuration Management 101IC3 -- Configuration Management 101
IC3 -- Configuration Management 101
 
Javascript Animation with Canvas - Gregory Starr 2015
Javascript Animation with Canvas - Gregory Starr 2015Javascript Animation with Canvas - Gregory Starr 2015
Javascript Animation with Canvas - Gregory Starr 2015
 
Building Rich User Experiences Without JavaScript Spaghetti
Building Rich User Experiences Without JavaScript SpaghettiBuilding Rich User Experiences Without JavaScript Spaghetti
Building Rich User Experiences Without JavaScript Spaghetti
 
Semanticmerge
SemanticmergeSemanticmerge
Semanticmerge
 
Managing a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days IrelandManaging a Project the Drupal Way - Drupal Open Days Ireland
Managing a Project the Drupal Way - Drupal Open Days Ireland
 
Drupal WebJam Utrecht
Drupal WebJam UtrechtDrupal WebJam Utrecht
Drupal WebJam Utrecht
 
On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)On Selecting JavaScript Frameworks (Women Who Code 10/15)
On Selecting JavaScript Frameworks (Women Who Code 10/15)
 
DDD In Agile
DDD In Agile   DDD In Agile
DDD In Agile
 
Responsive Design - ISCTE
Responsive Design - ISCTEResponsive Design - ISCTE
Responsive Design - ISCTE
 
OOScss Architecture For Rails Apps
OOScss Architecture For Rails AppsOOScss Architecture For Rails Apps
OOScss Architecture For Rails Apps
 
Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2
 
Stc 2015 preparing legacy projects for responsive design - technical issues
Stc 2015   preparing legacy projects for responsive design - technical issuesStc 2015   preparing legacy projects for responsive design - technical issues
Stc 2015 preparing legacy projects for responsive design - technical issues
 
Unify Design & Deliverables
Unify Design & DeliverablesUnify Design & Deliverables
Unify Design & Deliverables
 
S&T Pair up suckaz 070417
S&T Pair up suckaz 070417S&T Pair up suckaz 070417
S&T Pair up suckaz 070417
 
Cloud computing - an architect's perspective
Cloud computing - an architect's perspectiveCloud computing - an architect's perspective
Cloud computing - an architect's perspective
 
Building a game engine with jQuery
Building a game engine with jQueryBuilding a game engine with jQuery
Building a game engine with jQuery
 
A Grand Unified Theory of Software
A Grand Unified Theory of SoftwareA Grand Unified Theory of Software
A Grand Unified Theory of Software
 

Recently uploaded

Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

Atomic Design: Continuous Design Deployment

  • 1. Better. Faster. UXIER. Atomic Design Agile UX NYC jennifer gergen February 25th, 2012 @b9punk
  • 2. Join me in a (day) dream This talk is about an idea for a new way of doing things, not a baked & tested solution. Even describing the problem together is worth it. Let’s start the discussion. Imagine a better way of handling the brass tacks of agile design.
  • 3. Let’s pretend we already agree Design is the difference between awesome and awesome-sauce. Big Design Upfront just doesn't cut it. Agile Rocks (We believe!) Can’t we get more done, faster, with less drama?
  • 4. Agile UX could use another iteration... Prototype iterate
  • 5. iterating on Look & feel is still a slow boat We're not so good at iterating when it comes to "big" visual changes. Most of our regular iterations focus on building or improving features or pages, and can’t really encompass global look & feel updates. When this is the case, designers usually choose existing styles (they frequently hate and are dying to improve), so as not to "break" the look & feel and confuse their users. Enough of this and eventually we end up with "redesign" projects. Which suck.
  • 6. Prototyping is harder than it should be The agile manifesto defines simplicity as: “the art of maximizing the amount of work not done." Either you're (doing some variation of ) linking comps together, or you have demos that work fine, but look really rough. In either case, it's often hard to be sure of your results. (Maybe the test would have had different results if the hover states had worked properly, etc.) By the time you marry the two halves, you're so far along that you might as well just release and figure it out from there.
  • 8. Scenarios that suck. Hey, I still Dude, just put it on need that the “Z” Drive. file... Was the attachment larger than 5mb? Want to What? borrow my I totally emailed thumb drive...? that to you yesterday Developers don’t have access to “z.”
  • 9. Scenarios that suck. What is a “LW_xmod_oxy_1376_final_new.psd?” ?
  • 10. Scenarios that suck. Yay! I’m finished! It looks just like your design! Oh no! That’s the old version...
  • 11. Scenarios that suck. Hey, This project sounds familiar... Um, Judy worked on that but she’s not here anymore. didn’t we mock this up last year? Word. Where are the comps? UM...Does someone have the password Yeah. The Blue to her mac? team was working on it but it got de-scoped. Where are her files?
  • 12. Scenarios that suck. Hmm.. let’s see... Hey team, i know we’re working on “project y”, but OMG, changing Is this even “project y” involves “widget x” “widget x” means going to affect which could really use a new updating 100’s of our KPI’s? design... pages. That would be awesome! That turns our 3 “Widget x” point story into a 20 sucks! point story. But “widget x” is all over the place...if i change it here can we ... so that’s a no.. change it everywhere?
  • 13. Scenarios that suck. What’s with this stylesheet? There’s no difference between .grey-text-regular .text-default-grey & .grey-caption-text! ...Dunno, Dude ... That’s what the designers sent. i just copied and pasted...
  • 15. Okay, what do we want? Global Incremental Style Change or Continuous Design Deployment actually Rapid useful Prototyping Good designer ‹—› developer collaboration on markup and css Good design asset management & collaboration (versioned) Easy Discovery
  • 16. Continuous Design deployment It’s actually agile—smaller changes globally based on user feedback Redesigns are expensive, and their value is hard to measure, so they happen very infrequently Redesigns can cause massive user backlash Style guides aren’t clairvoyant No one ever reads the @!&*ing manual anyway
  • 17. Rapid Actually Useful Prototyping High fidelity / low effort Enable designers & product managers, etc., to create these prototypes Ability to build prototypes instead of mockups for some projects
  • 18. designer ‹-› developer collaboration on markup & css stay DRY (Don’t Repeat Yourself ) Enable & teach designers to write production-ready code (images don't have to get re-pathed, etc.) Share workload for patterns, components & prototypes Knowledge sharing Appropriate medium-to-task matching (no more juggling forms in photoshop)
  • 19. Better design asset management & collaboration = version control The way most designers store & backup their files is just plain scary It’s central (The whole team gets their stuff from the same source) Get all related project design assets together (Wireframes, comps, copy, etc) Certainty that you are always working with the newest file Potential for embedded art Version control is a form of automatic documentation
  • 20. easy discovery Shared vocabulary (across all teams & departments) Be able to find things quickly, without having to ask Central & Accessible Ability to guess what something is by the way it's named Quickly learn how things are organized (easy on-boarding)
  • 21. Enter AToMIC Design (just go with me on the awkward backronym...) A ssets To M arkup (for) I terative C ollaboration
  • 22. A new (?) Design strategy Brand Guideline Component Library Pattern Library
  • 23. Patterns “A pattern is a solution to a recurring design problem.” Examples of patterns are: buttons tabs pagination They are icons, mechanisms, etc., that have commonly accepted behaviors that make up a universally understood visual language for software. Borrowed from “Modular Web Design” by Nathan Curtis
  • 24. Components “A component is a chunk of a page design.” A component is a logical grouping of related content & functions that are combined into a meaningful building block used—and reused—in the interface design of a site. Borrowed from “Modular Web Design” by Nathan Curtis
  • 25.
  • 26.
  • 27. it’s an organizing principle Once you start to think of your content in this way, you can set yourself up to evolve the look & feel of these chunks in the same way that we evolve our features and products. You need the whole team—maybe even the whole department—to help define and name these chunks, but once you have, you can start organizing your files, photoshop layers, & css classes, etc. against them. You’ll get consistent names, and a shared vocabulary. That, alone, is worth the price of admission...
  • 28. AToMIC Design Versioned Design Assets Organize for L continuous i design b evolution COLLABORATION r (component + a pattern scheme) r y organized Markup + CSS
  • 30.
  • 31.
  • 32.
  • 33. . . App Folder(s) Components SEARCH-RESULT HTML (one file for each state) CSS js (includes a state handler) Data DEMO
  • 34. . Prototypes Patterns App Folder(s) Components SEARCH-RESULT HTML (one file for each state) CSS js (includes a state handler) Data DEMO
  • 35. Get Started Define "component" v "pattern" that makes sense for your project/ team Naming guidelines (semantic, outsiders should be able to guess what it means, hyphens, no scheme/codes, etc.) Setup some minimal infrastructure version control (s) - branch scheme, file organization scheme, etc. get everyone accounts + training build the component & pattern browser Starter workflow — Iterate until it works for your project —
  • 36. Sample Workflow design, Develop, COmponent Discovery style, definition + QA, Assemble Initial & [Document] Pages designs naming & Add to library
  • 37. Thanks! Can we please keep talking about this? Please connect with @DesignAtomic jennifer gergen @b9punk —Big ups— Wayne Warner The whole Ladders Team Our Lovely Hosts @wawjr3d @Theladders @agileuxnyc