SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
Designing	
  and	
  implemen-ng	
  responsive,	
  
     fluid	
  UIs	
  to	
  delight	
  end	
  users	
  
best	
  and	
  worst	
  prac.ces	
  for	
  interac.on	
  designers	
  and	
  programmers	
  




                                       Michael	
  Klein	
  
              Interac.on	
  designer,	
  developer	
  and	
  UI	
  connoisseur	
  
              at	
  CURE	
  (Center	
  for	
  Usability	
  Research	
  and	
  Engineering),	
  Vienna	
  
    hCp://gplus.to/michaelklein27,	
  hCp://www.linkedin.com/in/michaelklein3,	
  @mischkl	
  
Designing	
  and	
  implemen-ng	
  responsive,	
  
     fluid	
  UIs	
  to	
  delight	
  end	
  users	
  
best	
  and	
  worst	
  prac.ces	
  for	
  interac.on	
  designers	
  and	
  programmers	
  
           What	
  am	
  I	
  talking	
  about?	
  
What	
  am	
  I	
  talking	
  about?	
  
Let’s	
  take	
  a	
  look	
  at	
  some	
  examples	
  




                         hCp://www.youtube.com/watch?v=HyA6UXi0v6g	
  
What	
  am	
  I	
  talking	
  about?	
  
                    	
  




                                           hCp://xkcd.com/612/	
  
What	
  am	
  I	
  talking	
  about?	
  
                    	
  




                 hCp://www.youtube.com/watch?v=sxtYxIObjWg	
  
What	
  am	
  I	
  talking	
  about?	
  
                    	
  




               hCp://www.youtube.com/watch?v=nfnM_8JBmmA	
  
What	
  am	
  I	
  talking	
  about?	
  
                    	
  




                hCp://www.youtube.com/watch?v=apN0_NQrC0s	
  
What	
  do	
  all	
  these	
  examples	
  have	
  in	
  common?	
  
                                 	
  
What	
  do	
  all	
  these	
  examples	
  have	
  in	
  common?	
  
                                 	
  
TIME	
                     (aka	
  a	
  temporal	
  sequence	
  of	
  events)	
  
                                                                 	
  

                      What’s	
  so	
  special	
  about	
  it?	
  
                                  (from	
  a	
  user’s	
  perspec-ve)   	
  
                                                  	
  
•  “HCI	
  impedance	
  mismatch”	
  (my	
  phrase)	
  –	
  user’s	
  ac.ons	
  are	
  too	
  
   fast	
  for	
  the	
  system,	
  system’s	
  responses	
  are	
  too	
  slow	
  for	
  the	
  user	
  
•  Without	
  immediate	
  feedback,	
  user	
  error	
  is	
  introduced—they	
  click	
  
   buCons	
  mul.ple	
  .mes,	
  try	
  to	
  swipe	
  mul.ple	
  .mes,	
  try	
  to	
  close	
  
   unresponsive	
  apps	
  even	
  if	
  they	
  are	
  not	
  actually	
  frozen,	
  poten.ally	
  
   leading	
  to	
  data	
  loss,	
  etc.	
  
•  When	
  things	
  don’t	
  work	
  smoothly,	
  users	
  are	
  reminded	
  that	
  they	
  
   are	
  “using	
  a	
  computer”,	
  sense	
  of	
  magic/fun	
  decreases,	
  sense	
  of	
  
   control	
  decreases,	
  frustra.on	
  increases	
  
•  Unresponsive	
  apps	
  violate	
  4	
  of	
  Nielsen’s	
  10	
  usability	
  heuris-cs	
  
    (Visibility	
  of	
  system	
  status,	
  match	
  with	
  real	
  world	
  (real	
  objects	
  
    don’t	
  stuCer/freeze),	
  user	
  control/freedom,	
  error	
  preven.on.)	
  
TIME	
                   (aka	
  a	
  temporal	
  sequence	
  of	
  events)	
  
                                                            	
  

                    What’s	
  so	
  special	
  about	
  it?	
  
                    (from	
  an	
  interac-on	
  designer’s	
  perspec-ve)        	
  
                                                	
  
•  Difficult	
  to	
  portray	
  .me-­‐sensi.ve	
  interac.ons	
  in	
  sta-c	
  mockups,	
  
   or	
  even	
  in	
  higher-­‐level	
  prototypes	
  
•  Time-­‐based	
  performance	
  characteris.cs	
  are	
  invisible	
  and	
  
   unpredictable,	
  which	
  makes	
  it	
  hard	
  to	
  iden.fy	
  them	
  as	
  “features”	
  
   or	
  “defects”	
  
•  UI	
  performance	
  considera.ons	
  are	
  largely	
  qualita-ve	
  in	
  nature	
  –	
  
   the	
  answer	
  to	
  the	
  ques.on	
  of	
  “what’s	
  good	
  enough?”	
  varies	
  
   widely	
  
•  Because	
  of	
  their	
  invisible	
  and	
  qualita.ve	
  nature,	
  UI	
  performance	
  
   characteris.cs	
  tend	
  to	
  rate	
  low	
  on	
  the	
  list	
  of	
  managers’	
  and	
  
   programmers’	
  priori.es	
  
TIME	
                     (aka	
  a	
  temporal	
  sequence	
  of	
  events)	
  
                                                                	
  

                      What’s	
  so	
  special	
  about	
  it?	
  
                       (from	
  a	
  soPware	
  developer’s	
  perspec-ve)          	
  
•  Notoriously	
  difficult	
  to	
  handle	
  	
   npredictable	
  .me	
  values	
  in	
  code	
  –
                                                        u
   event/callback-­‐driven	
  asynchronous	
  programming	
  is	
  easy	
  to	
  screw	
  
   up	
  (or	
  is	
  avoided	
  due	
  to	
  fear	
  of	
  complexity,	
  lack	
  of	
  understanding)	
  
    •  Race	
  condi.ons	
  
    •  Error	
  handling	
  issues	
  
    •  “Feedback	
  loops”	
  
    •  Execu.ng	
  on	
  UI	
  thread	
  
    •  Asynchronous	
  APIs	
  are	
  harder	
  to	
  understand	
  and	
  debug	
  
•  Difficult	
  to	
  pin	
  down	
  sources	
  of	
  performance	
  issues	
  
•  UI	
  toolkit	
  weaknesses	
  (e.g.	
  Flash,	
  HTML5)	
  
•  Difficult	
  to	
  judge	
  real-­‐world	
  performance	
  characteris.cs	
  because	
  
   developers’	
  machines	
  tend	
  to	
  be	
  high-­‐spec’d	
  
So	
  what	
  can	
  we	
  do	
  about	
  it?	
  
1.  Acknowledge	
  that	
  UI	
  performance	
  characteris.cs	
  are	
  a	
  key	
  
    component	
  of	
  user	
  experience.	
  Designers	
  can’t	
  be	
  sa.sfied	
  with	
  
    sta.c	
  mockups	
  alone.	
  Developers	
  can’t	
  be	
  sa.sfied	
  with	
  simply	
  
    “looking	
  like”	
  a	
  design.	
  
2.  No	
  “designing	
  it	
  and	
  then	
  dropping	
  it	
  off	
  at	
  the	
  programmers’	
  
    feet”.	
  Designers	
  need	
  to	
  work	
  closely	
  with	
  developers	
  and	
  test	
  
    itera-ons	
  in	
  -ght	
  cycles—that’s	
  what	
  UCD	
  is	
  all	
  about!	
  
3.  Enough	
  -me	
  needs	
  to	
  be	
  devoted	
  to	
  fine-­‐tuning	
  UI	
  performance.	
  
    It	
  should	
  be	
  a	
  key	
  ongoing	
  task	
  for	
  developers	
  and	
  testers,	
  not	
  an	
  
    aqerthought.	
  
4.  Programmers	
  need	
  to	
  wrap	
  their	
  heads	
  around	
  asynchronous	
  
    APIs	
  and	
  event-­‐driven	
  programming,	
  if	
  they	
  haven’t	
  already.	
  
5.  In	
  cases	
  where	
  performance	
  can’t	
  be	
  directly	
  improved,	
  don’t	
  
    keep	
  the	
  user	
  wai-ng	
  –	
  show	
  some	
  kind	
  of	
  progress	
  indica.on,	
  
    use	
  cached	
  content	
  liberally,	
  and	
  don’t	
  block	
  the	
  UI	
  (thread)!	
  	
  
Thanks	
  for	
  listening!	
  
and	
  now	
  it’s	
  .me	
  for	
  some	
  Q&A	
  /	
  discussions!	
  




                                          Michael	
  Klein	
  
                                          michaelklein27@gmail.com	
  
                                          hCp://gplus.to/michaelklein27	
  
                                          hCp://www.linkedin.com/in/michaelklein3	
  
                                          @mischkl	
  

Contenu connexe

Similaire à Designing and implementing responsive, fluid UIs to delight end users

Webbt user_centred_demos
Webbt user_centred_demosWebbt user_centred_demos
Webbt user_centred_demos
CUO-KUleuven
 
20130221 ucd leuven_leuven
20130221 ucd leuven_leuven20130221 ucd leuven_leuven
20130221 ucd leuven_leuven
Erik Duval
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-model
asidharath
 

Similaire à Designing and implementing responsive, fluid UIs to delight end users (20)

Incorporating UX into Your Projects
Incorporating UX into Your ProjectsIncorporating UX into Your Projects
Incorporating UX into Your Projects
 
Webbt user_centred_demos
Webbt user_centred_demosWebbt user_centred_demos
Webbt user_centred_demos
 
Towards Responsive Open Learning Environments: the ROLE Interoperability Fram...
Towards Responsive Open Learning Environments: the ROLE Interoperability Fram...Towards Responsive Open Learning Environments: the ROLE Interoperability Fram...
Towards Responsive Open Learning Environments: the ROLE Interoperability Fram...
 
The 10 Golden Usability Heuristics (Montreal Girl Geeks September 2014)
The 10 Golden Usability Heuristics (Montreal Girl Geeks September 2014)The 10 Golden Usability Heuristics (Montreal Girl Geeks September 2014)
The 10 Golden Usability Heuristics (Montreal Girl Geeks September 2014)
 
More Agile (Than) Scrum?
More Agile (Than) Scrum?More Agile (Than) Scrum?
More Agile (Than) Scrum?
 
Intro to User Centered Design Workshop
Intro to User Centered Design WorkshopIntro to User Centered Design Workshop
Intro to User Centered Design Workshop
 
Responsive web design
Responsive web designResponsive web design
Responsive web design
 
20130221 ucd leuven_leuven
20130221 ucd leuven_leuven20130221 ucd leuven_leuven
20130221 ucd leuven_leuven
 
User Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the UglyUser Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the Ugly
 
The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...
The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...
The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...
 
Supercharge your application with the best UX practices
Supercharge your application with the best UX practicesSupercharge your application with the best UX practices
Supercharge your application with the best UX practices
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software Development
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
 
Module 10: Usability Testing
Module 10: Usability TestingModule 10: Usability Testing
Module 10: Usability Testing
 
Developer disciplines
Developer disciplinesDeveloper disciplines
Developer disciplines
 
Boas e Más Práticas para Agile UX
Boas e Más Práticas para Agile UXBoas e Más Práticas para Agile UX
Boas e Más Práticas para Agile UX
 
Practical Usability
Practical UsabilityPractical Usability
Practical Usability
 
UX at HP Enterprise
UX at HP Enterprise UX at HP Enterprise
UX at HP Enterprise
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-model
 
The Power of the UX Evaluation
The Power of the UX EvaluationThe Power of the UX Evaluation
The Power of the UX Evaluation
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Designing and implementing responsive, fluid UIs to delight end users

  • 1. Designing  and  implemen-ng  responsive,   fluid  UIs  to  delight  end  users   best  and  worst  prac.ces  for  interac.on  designers  and  programmers   Michael  Klein   Interac.on  designer,  developer  and  UI  connoisseur   at  CURE  (Center  for  Usability  Research  and  Engineering),  Vienna   hCp://gplus.to/michaelklein27,  hCp://www.linkedin.com/in/michaelklein3,  @mischkl  
  • 2. Designing  and  implemen-ng  responsive,   fluid  UIs  to  delight  end  users   best  and  worst  prac.ces  for  interac.on  designers  and  programmers   What  am  I  talking  about?  
  • 3. What  am  I  talking  about?   Let’s  take  a  look  at  some  examples   hCp://www.youtube.com/watch?v=HyA6UXi0v6g  
  • 4. What  am  I  talking  about?     hCp://xkcd.com/612/  
  • 5. What  am  I  talking  about?     hCp://www.youtube.com/watch?v=sxtYxIObjWg  
  • 6. What  am  I  talking  about?     hCp://www.youtube.com/watch?v=nfnM_8JBmmA  
  • 7. What  am  I  talking  about?     hCp://www.youtube.com/watch?v=apN0_NQrC0s  
  • 8. What  do  all  these  examples  have  in  common?    
  • 9. What  do  all  these  examples  have  in  common?    
  • 10. TIME   (aka  a  temporal  sequence  of  events)     What’s  so  special  about  it?   (from  a  user’s  perspec-ve)     •  “HCI  impedance  mismatch”  (my  phrase)  –  user’s  ac.ons  are  too   fast  for  the  system,  system’s  responses  are  too  slow  for  the  user   •  Without  immediate  feedback,  user  error  is  introduced—they  click   buCons  mul.ple  .mes,  try  to  swipe  mul.ple  .mes,  try  to  close   unresponsive  apps  even  if  they  are  not  actually  frozen,  poten.ally   leading  to  data  loss,  etc.   •  When  things  don’t  work  smoothly,  users  are  reminded  that  they   are  “using  a  computer”,  sense  of  magic/fun  decreases,  sense  of   control  decreases,  frustra.on  increases   •  Unresponsive  apps  violate  4  of  Nielsen’s  10  usability  heuris-cs   (Visibility  of  system  status,  match  with  real  world  (real  objects   don’t  stuCer/freeze),  user  control/freedom,  error  preven.on.)  
  • 11. TIME   (aka  a  temporal  sequence  of  events)     What’s  so  special  about  it?   (from  an  interac-on  designer’s  perspec-ve)     •  Difficult  to  portray  .me-­‐sensi.ve  interac.ons  in  sta-c  mockups,   or  even  in  higher-­‐level  prototypes   •  Time-­‐based  performance  characteris.cs  are  invisible  and   unpredictable,  which  makes  it  hard  to  iden.fy  them  as  “features”   or  “defects”   •  UI  performance  considera.ons  are  largely  qualita-ve  in  nature  –   the  answer  to  the  ques.on  of  “what’s  good  enough?”  varies   widely   •  Because  of  their  invisible  and  qualita.ve  nature,  UI  performance   characteris.cs  tend  to  rate  low  on  the  list  of  managers’  and   programmers’  priori.es  
  • 12. TIME   (aka  a  temporal  sequence  of  events)     What’s  so  special  about  it?   (from  a  soPware  developer’s  perspec-ve)   •  Notoriously  difficult  to  handle     npredictable  .me  values  in  code  – u event/callback-­‐driven  asynchronous  programming  is  easy  to  screw   up  (or  is  avoided  due  to  fear  of  complexity,  lack  of  understanding)   •  Race  condi.ons   •  Error  handling  issues   •  “Feedback  loops”   •  Execu.ng  on  UI  thread   •  Asynchronous  APIs  are  harder  to  understand  and  debug   •  Difficult  to  pin  down  sources  of  performance  issues   •  UI  toolkit  weaknesses  (e.g.  Flash,  HTML5)   •  Difficult  to  judge  real-­‐world  performance  characteris.cs  because   developers’  machines  tend  to  be  high-­‐spec’d  
  • 13. So  what  can  we  do  about  it?   1.  Acknowledge  that  UI  performance  characteris.cs  are  a  key   component  of  user  experience.  Designers  can’t  be  sa.sfied  with   sta.c  mockups  alone.  Developers  can’t  be  sa.sfied  with  simply   “looking  like”  a  design.   2.  No  “designing  it  and  then  dropping  it  off  at  the  programmers’   feet”.  Designers  need  to  work  closely  with  developers  and  test   itera-ons  in  -ght  cycles—that’s  what  UCD  is  all  about!   3.  Enough  -me  needs  to  be  devoted  to  fine-­‐tuning  UI  performance.   It  should  be  a  key  ongoing  task  for  developers  and  testers,  not  an   aqerthought.   4.  Programmers  need  to  wrap  their  heads  around  asynchronous   APIs  and  event-­‐driven  programming,  if  they  haven’t  already.   5.  In  cases  where  performance  can’t  be  directly  improved,  don’t   keep  the  user  wai-ng  –  show  some  kind  of  progress  indica.on,   use  cached  content  liberally,  and  don’t  block  the  UI  (thread)!    
  • 14. Thanks  for  listening!   and  now  it’s  .me  for  some  Q&A  /  discussions!   Michael  Klein   michaelklein27@gmail.com   hCp://gplus.to/michaelklein27   hCp://www.linkedin.com/in/michaelklein3   @mischkl  

Notes de l'éditeur

  1. Disclaimer: Is not specifically about natural user interfaces, tablet apps, multi-touch; also not specifically about automatically adapting to different screen sizes – although that is certainly importantApplies to all user interactions in all domains It could be that I cover a lot of material that is clear to everyone—I just want to get everyone on the same page
  2. Commentary: Why is this so? Because Apple is one of the few companies that truly invests in fine-tuning every aspect of the user experience, regardless of how much effort is needed.Note that most review sites focus on a simple paging / scrolling test in order to rate a device’s speed and “fluidity”Only in the last year has Google made UI smoothness in Android a top priority—5 versions / 5 years in.
  3. Note for the non-programmers In the room: I’m about to devolve into techno-babble. Feel free to tune this out.Error handling issues – story about Java throwing ExceptionsStory: Async UI vs. SyncFlash – lack of async APIHTML5 – Facebook app as example – unfortunately HTML is still not there yet due to performance issues, browser differences QuickTime for Java – lcoal network access
  4. Story: Microsoft uses exclusively Async APIs for accessing resources in Windows 8