SlideShare una empresa de Scribd logo
1 de 120
Improving Joomla’s
Backend User Experience


                           Randy Carey
            web architect, Careytech Studios
                          St. Paul, Minnesota
                             Careytech.com
Over the next few months, I will be
providing further discussions and access to
the usability extensions I’m creating:



       Careytech.com/icue


                                       Randy Carey
                        web architect, Careytech Studios
                                      St. Paul, Minnesota
                                         Careytech.com
1.Case for CMS Usability
 2.Principles   (for CMS Usability)

 3.Areas to Improve        (in Joomla’s backend)

 4.Looking Forward




Overview
Principles
Don’t show a user options that are irrelevant
Don’t show a user options that are irrelevant
Don’t use technical or uncommon terms
Don’t use technical or uncommon terms
Use a task-based interface
Recognize difference in users:
infrequent-and-casual –vs– frequent-and-engaged
Recognize difference in users:
infrequent-and-casual –vs– frequent-and-engaged
Recognize different roles of users:

authors

                                 site
                                admins


   content
   managers
authors


 content
 managers

 site admin
        duties




  developer
One user with two roles…
                    …two separate accounts




content                      site
management                   administration
Assign users to the front-end
                            …whenever possible
Areas to improve
admin template –
              improve navigation
improve edit screens
segment users
 tailored and simplified user experience
!?!




JCE profiles
    tailored and simplified options
Task-specific extensions
    intuitive edit screens for users
We can do better




Areas We Can Improve
Customizable Admin Template
Admin Praise 3
Admin Praise 3
Mission Control (Rockettheme)
Admin Praise 3
configurable “app shelf”


Admin Praise 3
Mission Control (Rockettheme)
Mission Control
Mission Control   - tailoring menu bar
Mission Control
controlling visibility per menu items
MVC
Model - View - Controller
components / modules
components / modules




   template     (overriding the view)
improve edit screens
RedShop -   out-of-box product edit screen
K2 - irrelevant tabs
Step 1: Add parameters to
K2 category
/administrator/components/com_k2/config.xml



Step 2: display new pane
of parameters in category view


Step 3: overriding the two item edit
screens (site and admin) so each
checks parameters and displays
each tab accordingly
Article Edit
Segment users into Groups
•   Edit
     • Edit              •   Create
                         •   Delete
                         •   Edit Status

              • Edit
              • Create




what a user can do
what assets
   a user should be able to access
Authors, Editors, Publishers




   Managers, Admins




         Super Admin
ACL – 1.7
content        site
management     administration




   gary      gary-admin
Author




Admin
Overriding view file for Article
JCE - Profiles and Edit Options
/images/a
/documents/a
/videos/a




/images
/documents
/videos
/images/a
/docs/a
/video/a




/images
/docs
/video
testimonials           Restaurant menus   events




         specialized
          inventory
            listing




Task-specific extensions
• Fast to build
                                 • Unintuitive steps to access
                                 • Not all info on one screen
                                 • No help text on fields
                                 • No grouping of fields
                                 • Exists as a category within edit
                                 tool, not as a stand alone app


• intuitive to use
• one-step app
• single screen edit


• Custom code to build
  or modify existing extension
Improving Joomla’s
       Backend User Experience
configurable Admin Template
improve edit screens
Segment users
JCE Edit Options
Task-specific extensions
Looking forward…
category branches
drag-and-drop
Help
Generate extensions
more refined front-end editing
I will be providing further discussions and
access to the usability extensions I’m creating:




        Careytech.com/icue


                                         Randy Carey
                          web architect, Careytech Studios
                                        St. Paul, Minnesota
                                           Careytech.com
Improving Joomla’s
Backend User Experience


                           Randy Carey
            web architect, Careytech Studios
                          St. Paul, Minnesota
                             Careytech.com

Más contenido relacionado

La actualidad más candente

Basics of Joomla!
Basics of Joomla! Basics of Joomla!
Basics of Joomla! Saurabh Shah
 
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...Anson Han
 
TERMINALFOUR t44u 2011 - Did you know - Self service user management
TERMINALFOUR t44u 2011 - Did you know - Self service user managementTERMINALFOUR t44u 2011 - Did you know - Self service user management
TERMINALFOUR t44u 2011 - Did you know - Self service user managementTerminalfour
 
Intro to Joomla!
Intro to Joomla!Intro to Joomla!
Intro to Joomla!Rob McBryde
 
Cms Today: Knowing When You Need A CMS
Cms Today: Knowing When You Need A CMSCms Today: Knowing When You Need A CMS
Cms Today: Knowing When You Need A CMSThomas Robbins
 
Webjam Community Networks Guide
Webjam Community Networks GuideWebjam Community Networks Guide
Webjam Community Networks Guideguesta0e395c
 
Techgig Webinar: Joomla Introduction and Module Development June 2012
Techgig Webinar: Joomla Introduction and Module Development June 2012Techgig Webinar: Joomla Introduction and Module Development June 2012
Techgig Webinar: Joomla Introduction and Module Development June 2012Vishwash Gaur
 
Change Channel Title, Description & URL
Change Channel Title, Description & URLChange Channel Title, Description & URL
Change Channel Title, Description & URLNadeem Khan
 
What you can do by Joomla components
What you can do by Joomla componentsWhat you can do by Joomla components
What you can do by Joomla componentsRifat Wahid ALIF
 
Feature a Channel on Homepage
Feature a Channel on HomepageFeature a Channel on Homepage
Feature a Channel on HomepageNadeem Khan
 
Comparing Joomla CCKs
Comparing Joomla CCKsComparing Joomla CCKs
Comparing Joomla CCKsJustin Herrin
 
Jentla Developer Mar 2009
Jentla Developer Mar 2009Jentla Developer Mar 2009
Jentla Developer Mar 2009CMS Critic
 
IBM Certified Database Associate
IBM Certified Database AssociateIBM Certified Database Associate
IBM Certified Database AssociateAhmed Abd El Monem
 
Responsive Web Design using the Foundation 5 CSS Framework
Responsive Web Design using the Foundation 5 CSS FrameworkResponsive Web Design using the Foundation 5 CSS Framework
Responsive Web Design using the Foundation 5 CSS FrameworkChris Morrow
 
Joomla2 5-afirstlook-120214054019-phpapp01
Joomla2 5-afirstlook-120214054019-phpapp01Joomla2 5-afirstlook-120214054019-phpapp01
Joomla2 5-afirstlook-120214054019-phpapp01Deepak Sangramsingh
 
To CMS or Not to CMS?
To CMS or Not to CMS?To CMS or Not to CMS?
To CMS or Not to CMS?Leigh White
 

La actualidad más candente (20)

Basics of Joomla!
Basics of Joomla! Basics of Joomla!
Basics of Joomla!
 
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
 
How to build a website using a cms
How to build a website using a cmsHow to build a website using a cms
How to build a website using a cms
 
TERMINALFOUR t44u 2011 - Did you know - Self service user management
TERMINALFOUR t44u 2011 - Did you know - Self service user managementTERMINALFOUR t44u 2011 - Did you know - Self service user management
TERMINALFOUR t44u 2011 - Did you know - Self service user management
 
Intro to Joomla!
Intro to Joomla!Intro to Joomla!
Intro to Joomla!
 
Drag & drop joomla2
Drag & drop joomla2Drag & drop joomla2
Drag & drop joomla2
 
Cms Today: Knowing When You Need A CMS
Cms Today: Knowing When You Need A CMSCms Today: Knowing When You Need A CMS
Cms Today: Knowing When You Need A CMS
 
Webjam Community Networks Guide
Webjam Community Networks GuideWebjam Community Networks Guide
Webjam Community Networks Guide
 
Techgig Webinar: Joomla Introduction and Module Development June 2012
Techgig Webinar: Joomla Introduction and Module Development June 2012Techgig Webinar: Joomla Introduction and Module Development June 2012
Techgig Webinar: Joomla Introduction and Module Development June 2012
 
Jd gr-2012-workshop
Jd gr-2012-workshopJd gr-2012-workshop
Jd gr-2012-workshop
 
Change Channel Title, Description & URL
Change Channel Title, Description & URLChange Channel Title, Description & URL
Change Channel Title, Description & URL
 
What you can do by Joomla components
What you can do by Joomla componentsWhat you can do by Joomla components
What you can do by Joomla components
 
Feature a Channel on Homepage
Feature a Channel on HomepageFeature a Channel on Homepage
Feature a Channel on Homepage
 
Comparing Joomla CCKs
Comparing Joomla CCKsComparing Joomla CCKs
Comparing Joomla CCKs
 
Jentla Developer Mar 2009
Jentla Developer Mar 2009Jentla Developer Mar 2009
Jentla Developer Mar 2009
 
IBM Certified Database Associate
IBM Certified Database AssociateIBM Certified Database Associate
IBM Certified Database Associate
 
Responsive Web Design using the Foundation 5 CSS Framework
Responsive Web Design using the Foundation 5 CSS FrameworkResponsive Web Design using the Foundation 5 CSS Framework
Responsive Web Design using the Foundation 5 CSS Framework
 
Joomla2 5-afirstlook-120214054019-phpapp01
Joomla2 5-afirstlook-120214054019-phpapp01Joomla2 5-afirstlook-120214054019-phpapp01
Joomla2 5-afirstlook-120214054019-phpapp01
 
To CMS or Not to CMS?
To CMS or Not to CMS?To CMS or Not to CMS?
To CMS or Not to CMS?
 
Roi Social Media Presentation
Roi Social Media PresentationRoi Social Media Presentation
Roi Social Media Presentation
 

Destacado

Proud of who we are
Proud of who we areProud of who we are
Proud of who we arecheryl12345
 
Javascript Frameworks for Joomla
Javascript Frameworks for JoomlaJavascript Frameworks for Joomla
Javascript Frameworks for JoomlaLuke Summerfield
 
Joomla e commerce gabe wahhab
Joomla e commerce gabe wahhabJoomla e commerce gabe wahhab
Joomla e commerce gabe wahhabLuke Summerfield
 
Microbiology (major microbial diseases)
Microbiology (major microbial diseases)Microbiology (major microbial diseases)
Microbiology (major microbial diseases)Erwin Molinos
 
Strategic planning
Strategic planningStrategic planning
Strategic planningSteve Miller
 

Destacado (6)

Proud of who we are
Proud of who we areProud of who we are
Proud of who we are
 
Javascript Frameworks for Joomla
Javascript Frameworks for JoomlaJavascript Frameworks for Joomla
Javascript Frameworks for Joomla
 
Joomla e commerce gabe wahhab
Joomla e commerce gabe wahhabJoomla e commerce gabe wahhab
Joomla e commerce gabe wahhab
 
Microbiology (major microbial diseases)
Microbiology (major microbial diseases)Microbiology (major microbial diseases)
Microbiology (major microbial diseases)
 
Strategic planning
Strategic planningStrategic planning
Strategic planning
 
FELICIDADES JUANMI
FELICIDADES JUANMIFELICIDADES JUANMI
FELICIDADES JUANMI
 

Similar a Improving joomla's backend user experience

Improving Joomla’s Backend User Experience
Improving Joomla’s Backend User ExperienceImproving Joomla’s Backend User Experience
Improving Joomla’s Backend User ExperienceRandy Carey
 
Improving the Client's User Experience - JAB 2012
Improving the Client's User Experience - JAB 2012Improving the Client's User Experience - JAB 2012
Improving the Client's User Experience - JAB 2012Randy Carey
 
Managing Accessibility Compliance
Managing Accessibility ComplianceManaging Accessibility Compliance
Managing Accessibility ComplianceKeana Lynch
 
The Forgotten Customer (Socrates 2011)
The Forgotten Customer (Socrates 2011)The Forgotten Customer (Socrates 2011)
The Forgotten Customer (Socrates 2011)Thomas Krause
 
Overview of CMS and Joomla!
Overview of CMS and Joomla!Overview of CMS and Joomla!
Overview of CMS and Joomla!Vishwash Gaur
 
The Forgotten Customer (XPDays 2011)
The Forgotten Customer (XPDays 2011)The Forgotten Customer (XPDays 2011)
The Forgotten Customer (XPDays 2011)Thomas Krause
 
What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5Vinayak Tavargeri
 
Advanced Techniques for Ext Designer
Advanced Techniques for Ext DesignerAdvanced Techniques for Ext Designer
Advanced Techniques for Ext DesignerSencha
 
Justin Herrin Comparing Joomla CCKs from jd12ne
Justin Herrin Comparing Joomla CCKs from jd12neJustin Herrin Comparing Joomla CCKs from jd12ne
Justin Herrin Comparing Joomla CCKs from jd12neJustin Herrin
 
LvivCSS: Web Components as a foundation for Design System
LvivCSS: Web Components as a foundation for Design SystemLvivCSS: Web Components as a foundation for Design System
LvivCSS: Web Components as a foundation for Design SystemVlad Fedosov
 
Firefox 4: fast, powerful and empowering
Firefox 4: fast, powerful and empoweringFirefox 4: fast, powerful and empowering
Firefox 4: fast, powerful and empoweringMike Beltzner
 
Firefox 4 Product Plan : Fast, capable, and empowering.
Firefox 4 Product Plan : Fast, capable, and empowering.Firefox 4 Product Plan : Fast, capable, and empowering.
Firefox 4 Product Plan : Fast, capable, and empowering.guesta62188c
 
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3DNN
 
Making Drupal 7 Simple to Use for Everyone
Making Drupal 7 Simple to Use for EveryoneMaking Drupal 7 Simple to Use for Everyone
Making Drupal 7 Simple to Use for EveryoneAcquia
 
Javascript library toolbox
Javascript library toolboxJavascript library toolbox
Javascript library toolboxSkysoul Pty.Ltd.
 
Dedicated Web Development
Dedicated Web DevelopmentDedicated Web Development
Dedicated Web DevelopmentFariha Tasnim
 
Introduction To Luminis Cms
Introduction To Luminis CmsIntroduction To Luminis Cms
Introduction To Luminis Cmsrnjohnso
 
Jug joomla 1.6
Jug joomla 1.6Jug joomla 1.6
Jug joomla 1.6vdrover
 

Similar a Improving joomla's backend user experience (20)

Improving Joomla’s Backend User Experience
Improving Joomla’s Backend User ExperienceImproving Joomla’s Backend User Experience
Improving Joomla’s Backend User Experience
 
Improving the Client's User Experience - JAB 2012
Improving the Client's User Experience - JAB 2012Improving the Client's User Experience - JAB 2012
Improving the Client's User Experience - JAB 2012
 
Managing Accessibility Compliance
Managing Accessibility ComplianceManaging Accessibility Compliance
Managing Accessibility Compliance
 
Dimeji Classified Website
Dimeji Classified WebsiteDimeji Classified Website
Dimeji Classified Website
 
The Forgotten Customer (Socrates 2011)
The Forgotten Customer (Socrates 2011)The Forgotten Customer (Socrates 2011)
The Forgotten Customer (Socrates 2011)
 
Overview of CMS and Joomla!
Overview of CMS and Joomla!Overview of CMS and Joomla!
Overview of CMS and Joomla!
 
The Forgotten Customer (XPDays 2011)
The Forgotten Customer (XPDays 2011)The Forgotten Customer (XPDays 2011)
The Forgotten Customer (XPDays 2011)
 
What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5
 
Advanced Techniques for Ext Designer
Advanced Techniques for Ext DesignerAdvanced Techniques for Ext Designer
Advanced Techniques for Ext Designer
 
Justin Herrin Comparing Joomla CCKs from jd12ne
Justin Herrin Comparing Joomla CCKs from jd12neJustin Herrin Comparing Joomla CCKs from jd12ne
Justin Herrin Comparing Joomla CCKs from jd12ne
 
LvivCSS: Web Components as a foundation for Design System
LvivCSS: Web Components as a foundation for Design SystemLvivCSS: Web Components as a foundation for Design System
LvivCSS: Web Components as a foundation for Design System
 
Firefox 4: fast, powerful and empowering
Firefox 4: fast, powerful and empoweringFirefox 4: fast, powerful and empowering
Firefox 4: fast, powerful and empowering
 
Firefox 4 Product Plan : Fast, capable, and empowering.
Firefox 4 Product Plan : Fast, capable, and empowering.Firefox 4 Product Plan : Fast, capable, and empowering.
Firefox 4 Product Plan : Fast, capable, and empowering.
 
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
 
Making Drupal 7 Simple to Use for Everyone
Making Drupal 7 Simple to Use for EveryoneMaking Drupal 7 Simple to Use for Everyone
Making Drupal 7 Simple to Use for Everyone
 
Javascript library toolbox
Javascript library toolboxJavascript library toolbox
Javascript library toolbox
 
Resume
ResumeResume
Resume
 
Dedicated Web Development
Dedicated Web DevelopmentDedicated Web Development
Dedicated Web Development
 
Introduction To Luminis Cms
Introduction To Luminis CmsIntroduction To Luminis Cms
Introduction To Luminis Cms
 
Jug joomla 1.6
Jug joomla 1.6Jug joomla 1.6
Jug joomla 1.6
 

Más de Luke Summerfield

Supercharge Your Wordpress Website With Inbound Marketing: A Complete Guide
Supercharge Your Wordpress Website With Inbound Marketing: A Complete GuideSupercharge Your Wordpress Website With Inbound Marketing: A Complete Guide
Supercharge Your Wordpress Website With Inbound Marketing: A Complete GuideLuke Summerfield
 
Supercharge your Sales with Inbound Marketing: A Complete Guide
Supercharge your Sales with Inbound Marketing: A Complete Guide Supercharge your Sales with Inbound Marketing: A Complete Guide
Supercharge your Sales with Inbound Marketing: A Complete Guide Luke Summerfield
 
Supercharge Your Local SEO: The Complete Guide
Supercharge Your Local SEO: The Complete GuideSupercharge Your Local SEO: The Complete Guide
Supercharge Your Local SEO: The Complete GuideLuke Summerfield
 
Joomla e commerce gabe wahhab
Joomla e commerce gabe wahhabJoomla e commerce gabe wahhab
Joomla e commerce gabe wahhabLuke Summerfield
 
Joomla e commerce gabe wahhab
Joomla e commerce gabe wahhabJoomla e commerce gabe wahhab
Joomla e commerce gabe wahhabLuke Summerfield
 
Harnessing the cloud_for_saa_s_hosted_platfor
Harnessing the cloud_for_saa_s_hosted_platforHarnessing the cloud_for_saa_s_hosted_platfor
Harnessing the cloud_for_saa_s_hosted_platforLuke Summerfield
 

Más de Luke Summerfield (9)

Supercharge Your Wordpress Website With Inbound Marketing: A Complete Guide
Supercharge Your Wordpress Website With Inbound Marketing: A Complete GuideSupercharge Your Wordpress Website With Inbound Marketing: A Complete Guide
Supercharge Your Wordpress Website With Inbound Marketing: A Complete Guide
 
Supercharge your Sales with Inbound Marketing: A Complete Guide
Supercharge your Sales with Inbound Marketing: A Complete Guide Supercharge your Sales with Inbound Marketing: A Complete Guide
Supercharge your Sales with Inbound Marketing: A Complete Guide
 
Supercharge Your Local SEO: The Complete Guide
Supercharge Your Local SEO: The Complete GuideSupercharge Your Local SEO: The Complete Guide
Supercharge Your Local SEO: The Complete Guide
 
SEOMoz Mozcation:
SEOMoz Mozcation: SEOMoz Mozcation:
SEOMoz Mozcation:
 
Joomla e commerce gabe wahhab
Joomla e commerce gabe wahhabJoomla e commerce gabe wahhab
Joomla e commerce gabe wahhab
 
Template frameworks
Template frameworksTemplate frameworks
Template frameworks
 
Joomla e commerce gabe wahhab
Joomla e commerce gabe wahhabJoomla e commerce gabe wahhab
Joomla e commerce gabe wahhab
 
Harnessing the cloud_for_saa_s_hosted_platfor
Harnessing the cloud_for_saa_s_hosted_platforHarnessing the cloud_for_saa_s_hosted_platfor
Harnessing the cloud_for_saa_s_hosted_platfor
 
Mobile app development
Mobile app development  Mobile app development
Mobile app development
 

Último

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
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
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
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
 
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
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
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
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
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
 
"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
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
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
 

Último (20)

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
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
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
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
 
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
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
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
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
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
 
"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
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
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
 

Improving joomla's backend user experience

Notas del editor

  1. For an elderly person who wants a portable phone to use in case of emergencies, this interface is too complex: unneeded buttons lead to confusion and no intuitive way for a computer-illiterate to find the list of people she can call during an emergency.Consider this: We often give our clients a CMS cluttered with unneeded options and terms that they don’t find intuitive.
  2. We often limit our thoughts of CMS users to just two types: web developers and site visitors.
  3. We can’t forget our client and the client’s staff who must maintain content. Their needs are quite different from the developer who also accesses the CMS from the backend.
  4. Out-of-the-box Joomla (and other CMSs) are full-featured for the developer. But this is too much and too technical for most content managers.
  5. We should provide our clients with an interface tailored to how they will be using the CMS.
  6. Developers think of websites in terms of many technical things: components, plugins, layout positions, etc.
  7. But the content managers see a reduced set of these: content, media, and perhaps registered users.
  8. Our clients see a web site as a series of web pages and content – not in the technical detail we developers see. The client will have a better user experience with the CMS if we tailor it to the client’s perspective and workflow.
  9. Let’s touch on some CMS usability principles to guide us as we seek to improve the Joomla user experience for our clients.
  10. Principle: don’t show options that are irrelevant to a user or even dangerous in their hands.
  11. This is a much simpler interface – hence very usable. Something to strive for.
  12. This edit screen includes many fields not used by the client. There is no indication which fields are required, which can be used, and which should be avoided.
  13. We as developers may know these terms well, but should we expect our clients to learn them?
  14. Even the term “K2” is alien to our clients. We can do better. Relabel the link to something that has meaning to the person using the CMS.
  15. Label menu or starting-point items with terms that reflect the task of the user.
  16. We must recognize that… the client’s users of the CMS will be unequally skilled and motivated.
  17. Develop different levels of controls for the different levels of users. Example: lite, standard, and advanced.
  18. The client’s users will differ also by their roles with the CMS. Managing content and managing registered users are two different needs for accessing the CMS.
  19. Segment the users not only by their level of capability, but also by their roles in using the CMS. We’ll want to give each of these groups a user experience tailored to it.
  20. Because each role tends to access different parts of the CMS and on a different schedule, consider giving a person with multiple roles a different login account (and user experience) for each.
  21. Remember. Clients and their users perceive a website as web pages. It is more intuitive for them to edit from the front than from the backend.
  22. Now… Let’s look at some areas where we can improve the backend user experience for our clients.
  23. 1. Use a customizable administrator template (and customize it)
  24. 2. Look for ways to improve the out-of-the-box edit screens of the apps we give to our clients
  25. 3. Segment the users and give each a tailored user experience
  26. 4. Leverage JCE profiles to provide the appropriate editing experience
  27. 5. An extension that is tailored to a task is more usable than a generic solution (such as CCK)
  28. We _can_ do better than what we get out-of-the-box.
  29. Configuration screen for the default admin template (Bluestork).
  30. In contrast, this is the configuration screen for Rockettheme’s admin template Mission Control.
  31. Another worthy and highly configurable admin template is AdminPraise 3.
  32. Admin Praise even offers editing from tablets, iPhones, and Droids as well as from the desktop.
  33. I’m currently using Mission Control, so my examples will be using this admin template.
  34. The admin template contains modules in the way we are used to using modules with the site templates.
  35. By accessing the admin modules, we can edit a module’s settings, declare its position, and display to a segment of backend users (if we create access levels that segment those who can access the backend).
  36. The point of this discussion is that we leverage the admin template to create a user experience for the content mangers that differs from the interface we developers use. Navigation can be made simple and task-based.
  37. Admin Praise 3 uses this screen to control the labels and links to be displayed as items on the admin navigation bar.
  38. Admin Praise 3 also provides a configurable shelf for the apps that are available.
  39. Mission Control also provides a way to add task-based navigation items to the menu bar and to a dashboard listing.
  40. The configuration panel for setting up the dashboard: label, link, and icon
  41. I’m becoming resistant to using both the menu bar and the dashboard – this is needless redundancy.
  42. An easy way is to leave the menu bar for just the essentials and the dashboard for the available apps.
  43. The advantage to this approach is that when one clicks into an app, the other app options are not distracting. But clicking the “dashboard” tab (which could be renamed “apps”) will bring one back to the set of available apps.
  44. But an advantage to listing the apps in the menu bar is that the user can browse drop-down links to frequently-used forms within each app.
  45. Mission Control allows one to configure the menu bar by overriding the view of the menu.
  46. Here is the relatively simple code for adding the custom menu items shown above.
  47. Here is code for controlling who gets to see any particular menu item or set of menu items.
  48. For the admin template Mission Control, if PHP code is too much for you, then focus on adding items to the dashboard.
  49. As we transition to the next point, I want to provide an overview of the MVC pattern and how Joomla’s use of it gives us a big advantage in tailoring the user’s experience.
  50. A big advantage of Joomla over some other CMSs is that it forces extensions to separate the code for Model (data and database), View (display of the data), and Controller (interaction rules with the user).
  51. Joomla allows us to “override” the view portion of an extension. Keep in mind that for the backend edit screens we must override the view files within the admin template (not the site’s template). Understanding how to do this is huge for improving backend usability.
  52. Our goal is to improve the out-of the-box edit screens to one that is tailored for the business rules of our client.
  53. A powerful component understandably possesses many options. But most clients use just a subset of the fields, and each client is different.
  54. In this case I am tailoring the edit screen for RedShop’sproduct_detail. I don’t hack the component’s files. Rather I override them, leveraging Joomla’s MVC.
  55. By using a combination of CSS and PHP editing, the front tab of the screen now shows only the usable fields and tabs, distinguishes between required/important/optional, includes help text next where needed, and brings the product’s image to this front tab.
  56. See the difference between tailored and out-of-the-box.
  57. K2 includes several tabs that are seldom needed.
  58. I overrode the K2 edit item screen to display only the tabs that are relevant on a per-category basis.
  59. I added this pane of tab options to the category edit screen.
  60. I needed to touch the xml file and override three views. These four files can be copied as-is from project to project.
  61. I have felt that the article’sedit screen displays fields that can be distracting to most authors. Authors are typically concerned just with the areas outlined here in red.
  62. Mission Control out-of-its-box helps by tucking many of the details behind tabs.
  63. I simplified the edit screen further (by overriding the view for editing an article).
  64. I moved the “alias” field to a tab, and I hide the fields that are not used by authors.(The set of fields that are not used by an author can vary per client.)
  65. I changed the names of the tabs to something more meaning (e.g., “metadata” to SEO”).
  66. The newly organized “SEO Settings” provides a checklist and set of fields for leveraging SEO (from the author’s perspective). Compare the new version (right) with the default (left).
  67. I replaced “Advanced” with “Article Display.” The set of options are reduced (per user group) to only those fields that are applicable.
  68. Here are all the items that display out-of-the-box. Do we really want to make the author consider each of these options? Do we really want to allow an author to bypass the website’s standards by changing these options from the default settings?
  69. I showed three examples of improving the edit screens: tailoring an app’s edit screen to the client’s needs, adding parameters to an app to remove unneeded options from its edit screen, and reorganizing the frequently used edit screen for articles.
  70. But what if some users need to use some of the options that we are suppressing from the others? Next…
  71. We segment users by the abilities (e.g., lite, standard, advanced) and by the types of roles they have (content management, user management, etc.).
  72. We segment by how much we let a user do.
  73. Users often can be segmented by what applications and features they should be able to access.
  74. The “holy grail” of this exercise is to give each user a different user experience – each tailored accordingly.
  75. Most of us are familiar with the relatively simple 1.5 hierarchy of groups.
  76. Joomla 1.7 has added a lot more options and complexity to how we can segment users. We should accept the challenge of learning how to leverage this new system.
  77. Consider giving the same user two different accounts when he/she has two distinctly differing roles. Each is assigned to a differing set of groups and access level.
  78. Returning to my editarticle screen, each role sees the same article with a differing set of fields.
  79. Code used in overriding the article detail view: in this case I configure the set of visible fields with CSS rules and apply CSS classes based upon user details.
  80. Fourth area: leverage JCE with its profiles and various options
  81. Get JCE. Walk through and carefully see all the options it provides.
  82. Buy the premium extensions offered through the JCE site. They are worth it.
  83. Here is the starting point I set up for JCE profiles. I segment by author-vs-manager and by lite-vs-standard-advanced.
  84. The settings tab for each profile allows you to select which profile to be used based upon user group, or individual user, or even by component.
  85. For eachprofile, one can drag and drop edit buttons (JCE plugins) to declare which will be displayed, and how they will be arranged.
  86. Segmentation by lite-standard-advanced allows each profile to vary its set of edit options.
  87. One capability that is easily overlooked is setting the root directory of images, videos, and documents per profile. Here is the simple, initial view of the images directory assigned to authors – no clutter from the site-level images.
  88. Here is an example of how authors (green) can be assigned to a more restricted set of media and documents. Meanwhile the manager type profiles (red) have access to more directories.
  89. So the author profiles see only the media and documents relevant to them. Managers see and can access more. This technique can inject security as well as simplicity regarding the site’s assets.
  90. One of my clients wanted to be able to copy a matrix of cells from Excel and paste them into an article. Of course this meant all the data would need to be transferred into an html table.
  91. I could not find a JCE plugin to do this, so I created one based upon the plugin that inserts text from Word. If you have a special need – JCE allows you to add custom plugins.
  92. I have never liked the white-box dropdowns. Perhaps the least usable of them is the “format” option. It hides the all-important Heading tags. Infrequent users often forget to use these – or where to find them.
  93. I created a “heading” pluginthat I place next to the “bold” button. When text is selected, it turns bright and allows a dropdown of options labeled with terms that are more vernacular to the site’s authors. For any given client, I can easily tailor the labels used for the dropdown options.
  94. Finally, we can improve the user experience by using task-specific extensions rather than generic solutions. Here are examples of specific website items, each benefiting from having a dedicated extension behind it.
  95. The easiest solution is to give the user a blank screen. But users often are inconsistent with how they format the information. Further, the pieces of information are just text on a page – we want pieces of data we can reuse eleswhere on the site.
  96. For a restaurant menu, we want entrée items that we can automatically format and reuse elsewhere.
  97. This is the generic solution created by a CCK (K2 in Joomla). It is easy to set up… but the edit screen is structured generically, and this edit application is used for multiple types of data. It is obvious that we provide this type of solution only because it is easier for us to build – and not for the usability of our clients.
  98. The user has to remember (without on-screen instructions) to select the category first, then select “extra fields” and “image” among the other tabs which are irrelevant. Doable, but not the most intuitive. We can do better…
  99. Here is a custom extension tailored to a pet store retailer who wants to post the new arrivals of puppies. On a single screen he can upload photos (auto-sized upon upload) and add a slate of relevant information.
  100. The generic solution is fast to build, but it also requires the user to learn details about the data entry screen - details that are needed only because we delivered a quick-to-build generic solution. The task-based solution is more intuitive for our clients. The cost, of course, is that we have more work that could include building a custom component. It is a trade-off. You decide. But you know which your client wants.
  101. A big advantage of a task-based extension is that you can supply a simple link taking one straight to that application. Typically, it is not straight-forward to apply a link to take one directly to a generic solution (e.g., editing just a particular category within K2).
  102. Let’s review these five areas for improving the user experience of our clients…
  103. …to improve the navigation of tasks for which a client uses the CMS
  104. …to tailor the editscreens from the full and generic features that come out-of-the-box to the way a particular client will use it
  105. … which provides the foundation for tailoring user experiences
  106. …so we can serve up the appropriate set of tools as well as access to just the appropriate set of assets
  107. …so we can provide direct links and workflows that are efficient and highly-intuitive
  108. If we keep challenging ourselves with “we can do better” …we still can improve the client’s user experience. Here are some areas I plan to explore…
  109. For articles and K2, I’d like to be able to lead the user to the component - but only to a branch of categories. Why make the user navigate through other types of categories when his/her task-at-hand focuses on just a subset of categories?
  110. We know this is coming. This is needed particularly in ordering articles/items within lists.Do we wait for it? Do we find a way to graft it in?
  111. I assume most developers don’t customize the help system. But the new help system is customizable. How can we improve what is given to us? Can we provide help that is more context sensitive? If we use a different admin template and tailored edit screens, are we compelled to write our own set of help screens?
  112. Code generation will go a long way to enabling us to create and offer our clients a richer set of task-based extensions. How close can we get with an automated process, and how much code do we have to adjust by hand?
  113. I want to graft in more options for front-end editing: modules, header lines, footer content,…
  114. …and how about links to edit any given content item within a list!