SlideShare ist ein Scribd-Unternehmen logo
1 von 55
Designing and
  building for the
EDITOR EXPERIENCE


         Andreas Sahle - @pixelmord
Who is an editor?

★Roles in real life
• Content Author
• Editor
• Translator
• Asset Manager
                   Andreas Sahle - @pixelmord
Design for roles




        Andreas Sahle - @pixelmord
Roles
• Set up roles like editor and
  translator ...

• Start testing early with user stories
  and personas

• the permission system is no
  replacement for an interface
  strategy

                    Andreas Sahle - @pixelmord
What does an editor
      want?
• create pages
• add/edit content
• find and select content / link
  content

• add menu item
• translate text
                   Andreas Sahle - @pixelmord
How do editors
      think?

★editors think in pages
• how shall a “page” look like?


                   Andreas Sahle - @pixelmord
Automatic vs.
    manual pages
• most websites are a mixture of
  automatic and manual page creation

• the hard part is defining the
  separation of editable and
  „automatic“



                   Andreas Sahle - @pixelmord
How do editors
      think?
★everything is content
• „I want to add a picture here”
• „I want to translate this text”
• „I want to add another item to the
  list“
                   Andreas Sahle - @pixelmord
everything is content




http://drupal.org/node/1175694


                                 Andreas Sahle - @pixelmord
Is there an editing
      mode?
• One theme for everything vs.
  separation in „admin“ and
  „frontend“ theme

• Crossing the line between
  „backend” and „frontend”

• Seven is not enough
                  Andreas Sahle - @pixelmord
Where Drupal
    makes our life
• chronological order is often reverse
• no distinct system for structuring
  content

• to much interface – total control
• the configuration and editing
  options are all over the place

                    Andreas Sahle - @pixelmord
Where Drupal
    makes our life
★more additional functionality leads
  to loss of consistency
 • Taxonomy for categorizing, for menu
   structure, for switching options

 • standard menu, menu block, taxonomy
   menu

 • drupal blocks, views blocks, views
   content panes, node blocks , minipanels

                     Andreas Sahle - @pixelmord
Where Drupal
    makes our life
★we are building with a
  framework
• great architecture
• hook_world_alter
• there’s a module for that
• a big community
                   Andreas Sahle - @pixelmord
Interface should be
simple and intuitive


          Andreas Sahle - @pixelmord
simple and intuitive

• fast & efficient
• avoid confusion
• remove „clutter“

                     Andreas Sahle - @pixelmord
Do editors need
      HELP?
★Sometimes less help is more
• don’t think help text, think „wizard”
• don’t think help text, think „action
  button”

• rubik style help tips
                    Andreas Sahle - @pixelmord
No help here....




                   Andreas Sahle - @pixelmord
Heeeeeeeelp!




•   help - http://www.flickr.com/photos/loop_oh/4541019515/



                                                     Andreas Sahle - @pixelmord
Most important action




                        Andreas Sahle - @pixelmord
ready for action




                   Andreas Sahle - @pixelmord
ready for action




                   Andreas Sahle - @pixelmord
buttons FTW




              Andreas Sahle - @pixelmord
help when needed




                   Andreas Sahle - @pixelmord
Visual guidance




                  Andreas Sahle - @pixelmord
Step by step




               Andreas Sahle - @pixelmord
finally.....




      Andreas Sahle - @pixelmord
Node forms

• long forms
• „advanced“ options
• content vs. attributes
• content vs. meta data

                   Andreas Sahle - @pixelmord
separate content from attributes




                       Andreas Sahle - @pixelmord
what is important?




                     Andreas Sahle - @pixelmord
Content editing form for D8




                      Andreas Sahle - @pixelmord
WYSI(N)WYG

• naming of input formats is
  important:
  “text editor” vs. FilteredHTML

• do we really need more than one
  text format?

• just 10 buttons, show all of them
                   Andreas Sahle - @pixelmord
Form widgets

• text - placeholder
• selectbox from hell
• client side validation
• autocomplete - yes or no?

                  Andreas Sahle - @pixelmord
add placeholder support




                      Andreas Sahle - @pixelmord
Finding the right
     widget
  or „the select box from hell“




                 Andreas Sahle - @pixelmord
multiselect




                               • http://drupal.org/project/multiselect
chosen




• http://drupal.org/project/chosen
                                         Andreas Sahle - @pixelmord
multiple selects




select or other




 • http://drupal.org/project/select_or_other      • http://drupal.org/project/multiple_selects

                                               Andreas Sahle - @pixelmord
pick a date




http://drupal.org/project/date_popup_authored



 prevent validation failure




• http://drupal.org/project/maxlength
                                                Andreas Sahle - @pixelmord
Finding and
 selecting content

• I wish we had an autocomplete....
• autocomplete is not always the best
  solution




                   Andreas Sahle - @pixelmord
not complete




               Andreas Sahle - @pixelmord
autocomplete with meta data




 • http://drupal.org/project/linkit
                                      Andreas Sahle - @pixelmord
putting things in the „right“ order +
enhancing the autocomplete




•   http://drupal.org/project/nodeconnect


•   http://drupal.org/project/references_dialog




                                  Andreas Sahle - @pixelmord
one step further: select using a view




  •   http://drupal.org/sandbox/floretan/1478684

                               Andreas Sahle - @pixelmord
create content in the process
of placing it into a panel




  •   http://drupal.org/sandbox/floretan/1478684




                               Andreas Sahle - @pixelmord
create menu item and a new content in one




                      Andreas Sahle - @pixelmord
Validation and
        errors

• see errors fast
• connect error messages with the
  field in which they occurred




                   Andreas Sahle - @pixelmord
client side validation




• why wait for a page reload to find
    out that you forgot filling in a field?

•   http://drupal.org/project/clientside_validation



• HTML5 elements
•   http://drupal.org/project/html5_tools




                                  Andreas Sahle - @pixelmord
See the messages right where the error occurred




•   http://drupal.org/project/inline_messages




                                  Andreas Sahle - @pixelmord
simple and intuitive

• fast & efficient
• avoid confusion
★remove „clutter“

                     Andreas Sahle - @pixelmord
Streamlining the interface




•   clutter keyboard - http://www.flickr.com/photos/abhi_ryan/2444817523/


                                                               Andreas Sahle - @pixelmord
Admin menu is made for admins




                    Andreas Sahle - @pixelmord
avoid „dead“ links




                     Andreas Sahle - @pixelmord
Only what an editor needs




★Give the editor role a seperate
   menu

• what are the (most recent) edits?
• where can I change the menu?
• what translation tasks are
   unfinished?

                      Andreas Sahle - @pixelmord
dashboard overview




• http://drupal.org/project/workbench

                                        Andreas Sahle - @pixelmord
Build custom admin
       pages
•http://drupal.org/project/
 context_admin




                 Andreas Sahle - @pixelmord
Thank You !

See you in Munich
   @Drupalcon

        Andreas Sahle - @pixelmord

Weitere ähnliche Inhalte

Andere mochten auch

Webpage Creation
Webpage CreationWebpage Creation
Webpage Creationmrcarty
 
La violencia de género
La violencia de géneroLa violencia de género
La violencia de génerowendysmar
 
Building better content creation with wysiwyg fields and custom formatters
Building better content creation with wysiwyg fields and custom formattersBuilding better content creation with wysiwyg fields and custom formatters
Building better content creation with wysiwyg fields and custom formattersStuart Clark
 
Web designp pt
Web designp ptWeb designp pt
Web designp ptBizzyb09
 
Pulloverntsipic
PulloverntsipicPulloverntsipic
Pulloverntsipicntsicorp
 

Andere mochten auch (7)

Webpage Creation
Webpage CreationWebpage Creation
Webpage Creation
 
La violencia de género
La violencia de géneroLa violencia de género
La violencia de género
 
WYSIWYG Is a Lie
WYSIWYG Is a LieWYSIWYG Is a Lie
WYSIWYG Is a Lie
 
Building better content creation with wysiwyg fields and custom formatters
Building better content creation with wysiwyg fields and custom formattersBuilding better content creation with wysiwyg fields and custom formatters
Building better content creation with wysiwyg fields and custom formatters
 
Web designp pt
Web designp ptWeb designp pt
Web designp pt
 
Pulloverntsipic
PulloverntsipicPulloverntsipic
Pulloverntsipic
 
Xml ppt
Xml pptXml ppt
Xml ppt
 

Ähnlich wie Designing and building for the editor experience

Crawling, indexing, ranking: Make the search engine crawlers and algorithms y...
Crawling, indexing, ranking: Make the search engine crawlers and algorithms y...Crawling, indexing, ranking: Make the search engine crawlers and algorithms y...
Crawling, indexing, ranking: Make the search engine crawlers and algorithms y...SEO monitor
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivityGregg Coppen
 
Must-have! PM Tools (Nov 2010)
Must-have! PM Tools (Nov 2010)Must-have! PM Tools (Nov 2010)
Must-have! PM Tools (Nov 2010)Jesse Gant
 
Big(D)esign 2011: Portfolios for the Creative Professional
Big(D)esign 2011: Portfolios for the Creative ProfessionalBig(D)esign 2011: Portfolios for the Creative Professional
Big(D)esign 2011: Portfolios for the Creative ProfessionalLouellen Coker
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design ProjectsFITC
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design ProjectsAndrew Smyk
 
The Coding Designer's Survival Kit - Capital Camp
The Coding Designer's Survival Kit - Capital CampThe Coding Designer's Survival Kit - Capital Camp
The Coding Designer's Survival Kit - Capital Campcanarymason
 
Introduction to Business for Software Developers
Introduction to Business for Software DevelopersIntroduction to Business for Software Developers
Introduction to Business for Software DevelopersChris Cera
 
Atlanta Drupal User Group (ADUG)
Atlanta Drupal User Group (ADUG) Atlanta Drupal User Group (ADUG)
Atlanta Drupal User Group (ADUG) Mediacurrent
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design ProjectsAndrew Smyk
 
FITC - Exploring Art-Directed Responsive Images
FITC - Exploring Art-Directed Responsive ImagesFITC - Exploring Art-Directed Responsive Images
FITC - Exploring Art-Directed Responsive ImagesRami Sayar
 
Performance - When, What and How
Performance - When, What and HowPerformance - When, What and How
Performance - When, What and HowAstrails
 
From marketplace to WordPress - WordCamp Belfast
From marketplace to WordPress - WordCamp BelfastFrom marketplace to WordPress - WordCamp Belfast
From marketplace to WordPress - WordCamp BelfastFellyph Cintra
 
Dev-Centered UX (UX Week 2014)
Dev-Centered UX (UX Week 2014)Dev-Centered UX (UX Week 2014)
Dev-Centered UX (UX Week 2014)Anders Ramsay
 
Branding Essentials for Developers presentation at TEC2012
Branding Essentials for Developers presentation at TEC2012Branding Essentials for Developers presentation at TEC2012
Branding Essentials for Developers presentation at TEC2012Sentri
 
How to be a contributor to Drupal by Drupalista.me
How to be a contributor to Drupal by Drupalista.meHow to be a contributor to Drupal by Drupalista.me
How to be a contributor to Drupal by Drupalista.meJose palala
 
Geekend 2012 - Jumping Into Tumblr Theme Development
Geekend 2012 - Jumping Into Tumblr Theme DevelopmentGeekend 2012 - Jumping Into Tumblr Theme Development
Geekend 2012 - Jumping Into Tumblr Theme DevelopmentStoryware
 
SharePoint Usability and Design Tips for Non Designers
SharePoint Usability and Design Tips for Non DesignersSharePoint Usability and Design Tips for Non Designers
SharePoint Usability and Design Tips for Non DesignersWendy Neal
 
Blogging with drupal
Blogging with drupalBlogging with drupal
Blogging with drupalChris Ward
 

Ähnlich wie Designing and building for the editor experience (20)

Crawling, indexing, ranking: Make the search engine crawlers and algorithms y...
Crawling, indexing, ranking: Make the search engine crawlers and algorithms y...Crawling, indexing, ranking: Make the search engine crawlers and algorithms y...
Crawling, indexing, ranking: Make the search engine crawlers and algorithms y...
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivity
 
Must-have! PM Tools (Nov 2010)
Must-have! PM Tools (Nov 2010)Must-have! PM Tools (Nov 2010)
Must-have! PM Tools (Nov 2010)
 
Big(D)esign 2011: Portfolios for the Creative Professional
Big(D)esign 2011: Portfolios for the Creative ProfessionalBig(D)esign 2011: Portfolios for the Creative Professional
Big(D)esign 2011: Portfolios for the Creative Professional
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design Projects
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design Projects
 
The Coding Designer's Survival Kit - Capital Camp
The Coding Designer's Survival Kit - Capital CampThe Coding Designer's Survival Kit - Capital Camp
The Coding Designer's Survival Kit - Capital Camp
 
Introduction to Business for Software Developers
Introduction to Business for Software DevelopersIntroduction to Business for Software Developers
Introduction to Business for Software Developers
 
Atlanta Drupal User Group (ADUG)
Atlanta Drupal User Group (ADUG) Atlanta Drupal User Group (ADUG)
Atlanta Drupal User Group (ADUG)
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design Projects
 
FITC - Exploring Art-Directed Responsive Images
FITC - Exploring Art-Directed Responsive ImagesFITC - Exploring Art-Directed Responsive Images
FITC - Exploring Art-Directed Responsive Images
 
Performance - When, What and How
Performance - When, What and HowPerformance - When, What and How
Performance - When, What and How
 
From marketplace to WordPress - WordCamp Belfast
From marketplace to WordPress - WordCamp BelfastFrom marketplace to WordPress - WordCamp Belfast
From marketplace to WordPress - WordCamp Belfast
 
Dev-Centered UX (UX Week 2014)
Dev-Centered UX (UX Week 2014)Dev-Centered UX (UX Week 2014)
Dev-Centered UX (UX Week 2014)
 
Branding Essentials for Developers presentation at TEC2012
Branding Essentials for Developers presentation at TEC2012Branding Essentials for Developers presentation at TEC2012
Branding Essentials for Developers presentation at TEC2012
 
How to be a contributor to Drupal by Drupalista.me
How to be a contributor to Drupal by Drupalista.meHow to be a contributor to Drupal by Drupalista.me
How to be a contributor to Drupal by Drupalista.me
 
Geekend 2012 - Jumping Into Tumblr Theme Development
Geekend 2012 - Jumping Into Tumblr Theme DevelopmentGeekend 2012 - Jumping Into Tumblr Theme Development
Geekend 2012 - Jumping Into Tumblr Theme Development
 
SharePoint Usability and Design Tips for Non Designers
SharePoint Usability and Design Tips for Non DesignersSharePoint Usability and Design Tips for Non Designers
SharePoint Usability and Design Tips for Non Designers
 
Blogging with drupal
Blogging with drupalBlogging with drupal
Blogging with drupal
 
Jumpstart Your Web App
Jumpstart Your Web AppJumpstart Your Web App
Jumpstart Your Web App
 

Kürzlich hochgeladen

TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
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
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
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
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
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
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 

Kürzlich hochgeladen (20)

TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
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
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
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
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
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
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 

Designing and building for the editor experience

  • 1. Designing and building for the EDITOR EXPERIENCE Andreas Sahle - @pixelmord
  • 2. Who is an editor? ★Roles in real life • Content Author • Editor • Translator • Asset Manager Andreas Sahle - @pixelmord
  • 3. Design for roles Andreas Sahle - @pixelmord
  • 4. Roles • Set up roles like editor and translator ... • Start testing early with user stories and personas • the permission system is no replacement for an interface strategy Andreas Sahle - @pixelmord
  • 5. What does an editor want? • create pages • add/edit content • find and select content / link content • add menu item • translate text Andreas Sahle - @pixelmord
  • 6. How do editors think? ★editors think in pages • how shall a “page” look like? Andreas Sahle - @pixelmord
  • 7. Automatic vs. manual pages • most websites are a mixture of automatic and manual page creation • the hard part is defining the separation of editable and „automatic“ Andreas Sahle - @pixelmord
  • 8. How do editors think? ★everything is content • „I want to add a picture here” • „I want to translate this text” • „I want to add another item to the list“ Andreas Sahle - @pixelmord
  • 10. Is there an editing mode? • One theme for everything vs. separation in „admin“ and „frontend“ theme • Crossing the line between „backend” and „frontend” • Seven is not enough Andreas Sahle - @pixelmord
  • 11. Where Drupal makes our life • chronological order is often reverse • no distinct system for structuring content • to much interface – total control • the configuration and editing options are all over the place Andreas Sahle - @pixelmord
  • 12. Where Drupal makes our life ★more additional functionality leads to loss of consistency • Taxonomy for categorizing, for menu structure, for switching options • standard menu, menu block, taxonomy menu • drupal blocks, views blocks, views content panes, node blocks , minipanels Andreas Sahle - @pixelmord
  • 13. Where Drupal makes our life ★we are building with a framework • great architecture • hook_world_alter • there’s a module for that • a big community Andreas Sahle - @pixelmord
  • 14. Interface should be simple and intuitive Andreas Sahle - @pixelmord
  • 15. simple and intuitive • fast & efficient • avoid confusion • remove „clutter“ Andreas Sahle - @pixelmord
  • 16. Do editors need HELP? ★Sometimes less help is more • don’t think help text, think „wizard” • don’t think help text, think „action button” • rubik style help tips Andreas Sahle - @pixelmord
  • 17. No help here.... Andreas Sahle - @pixelmord
  • 18. Heeeeeeeelp! • help - http://www.flickr.com/photos/loop_oh/4541019515/ Andreas Sahle - @pixelmord
  • 19. Most important action Andreas Sahle - @pixelmord
  • 20. ready for action Andreas Sahle - @pixelmord
  • 21. ready for action Andreas Sahle - @pixelmord
  • 22. buttons FTW Andreas Sahle - @pixelmord
  • 23. help when needed Andreas Sahle - @pixelmord
  • 24. Visual guidance Andreas Sahle - @pixelmord
  • 25. Step by step Andreas Sahle - @pixelmord
  • 26. finally..... Andreas Sahle - @pixelmord
  • 27. Node forms • long forms • „advanced“ options • content vs. attributes • content vs. meta data Andreas Sahle - @pixelmord
  • 28. separate content from attributes Andreas Sahle - @pixelmord
  • 29. what is important? Andreas Sahle - @pixelmord
  • 30. Content editing form for D8 Andreas Sahle - @pixelmord
  • 31. WYSI(N)WYG • naming of input formats is important: “text editor” vs. FilteredHTML • do we really need more than one text format? • just 10 buttons, show all of them Andreas Sahle - @pixelmord
  • 32. Form widgets • text - placeholder • selectbox from hell • client side validation • autocomplete - yes or no? Andreas Sahle - @pixelmord
  • 33. add placeholder support Andreas Sahle - @pixelmord
  • 34. Finding the right widget or „the select box from hell“ Andreas Sahle - @pixelmord
  • 35. multiselect • http://drupal.org/project/multiselect chosen • http://drupal.org/project/chosen Andreas Sahle - @pixelmord
  • 36. multiple selects select or other • http://drupal.org/project/select_or_other • http://drupal.org/project/multiple_selects Andreas Sahle - @pixelmord
  • 37. pick a date http://drupal.org/project/date_popup_authored prevent validation failure • http://drupal.org/project/maxlength Andreas Sahle - @pixelmord
  • 38. Finding and selecting content • I wish we had an autocomplete.... • autocomplete is not always the best solution Andreas Sahle - @pixelmord
  • 39. not complete Andreas Sahle - @pixelmord
  • 40. autocomplete with meta data • http://drupal.org/project/linkit Andreas Sahle - @pixelmord
  • 41. putting things in the „right“ order + enhancing the autocomplete • http://drupal.org/project/nodeconnect • http://drupal.org/project/references_dialog Andreas Sahle - @pixelmord
  • 42. one step further: select using a view • http://drupal.org/sandbox/floretan/1478684 Andreas Sahle - @pixelmord
  • 43. create content in the process of placing it into a panel • http://drupal.org/sandbox/floretan/1478684 Andreas Sahle - @pixelmord
  • 44. create menu item and a new content in one Andreas Sahle - @pixelmord
  • 45. Validation and errors • see errors fast • connect error messages with the field in which they occurred Andreas Sahle - @pixelmord
  • 46. client side validation • why wait for a page reload to find out that you forgot filling in a field? • http://drupal.org/project/clientside_validation • HTML5 elements • http://drupal.org/project/html5_tools Andreas Sahle - @pixelmord
  • 47. See the messages right where the error occurred • http://drupal.org/project/inline_messages Andreas Sahle - @pixelmord
  • 48. simple and intuitive • fast & efficient • avoid confusion ★remove „clutter“ Andreas Sahle - @pixelmord
  • 49. Streamlining the interface • clutter keyboard - http://www.flickr.com/photos/abhi_ryan/2444817523/ Andreas Sahle - @pixelmord
  • 50. Admin menu is made for admins Andreas Sahle - @pixelmord
  • 51. avoid „dead“ links Andreas Sahle - @pixelmord
  • 52. Only what an editor needs ★Give the editor role a seperate menu • what are the (most recent) edits? • where can I change the menu? • what translation tasks are unfinished? Andreas Sahle - @pixelmord
  • 54. Build custom admin pages •http://drupal.org/project/ context_admin Andreas Sahle - @pixelmord
  • 55. Thank You ! See you in Munich @Drupalcon Andreas Sahle - @pixelmord

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n