SlideShare a Scribd company logo
What	
  am	
  I	
  talking	
  about?	
  

Let’s	
  take	
  a	
  look	
  at	
  some	
  examples	
  

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

h<p://xkcd.com/612/	
  
What	
  am	
  I	
  talking	
  about?	
  
	
  

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

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

h<p://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	
  
bu<ons	
  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	
  stu<er/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	
  soMware	
  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	
  
h<p://gplus.to/michaelklein27	
  
h<p://www.linkedin.com/in/michaelklein3	
  
@mischkl	
  
Links	
  
Jakob	
  Nielsen,	
  Response	
  Times:	
  The	
  3	
  Important	
  Limits	
  
h<p://www.nngroup.com/ar.cles/response-­‐.mes-­‐3-­‐important-­‐limits/	
  
Jakob	
  Nielsen,	
  Website	
  Response	
  Times	
  
h<p://www.nngroup.com/ar.cles/website-­‐response-­‐.mes/	
  
Steven	
  Seow,	
  Designing	
  and	
  Engineering	
  Time	
  (Book)	
  
h<p://www.engineering.me.com	
  
Steven	
  Seow,	
  User	
  Interface	
  Timing	
  Cheatsheet	
  
h<p://www.stevenseow.com/papers/UI%20Timing%20Cheatsheet.pdf	
  
GNOME	
  Human	
  Interface	
  Guidelines	
  2.2.2,	
  Characteris>cs	
  of	
  Responsive	
  Applica>ons	
  
h<p://developer.gnome.org/hig-­‐book/3.5/feedback-­‐responsiveness.html	
  

More Related Content

What's hot

Practical guide for front-end development for django devs
Practical guide for front-end development for django devsPractical guide for front-end development for django devs
Practical guide for front-end development for django devs
Davidson Fellipe
 
High Fidelity Prototyping
High Fidelity PrototypingHigh Fidelity Prototyping
High Fidelity Prototyping
Hans Põldoja
 
Web testing
Web testingWeb testing
Web testing
QA Club Kiev
 
Don't just do agile, do it right! - Simon Storm + Mary Lynn
Don't just do agile, do it right! - Simon Storm + Mary LynnDon't just do agile, do it right! - Simon Storm + Mary Lynn
Don't just do agile, do it right! - Simon Storm + Mary Lynn
ExoLeaders.com
 
Automated Battle Scars Se Conf 2011
Automated Battle Scars Se Conf 2011Automated Battle Scars Se Conf 2011
Automated Battle Scars Se Conf 2011
Adam Christian
 
BTK Designing for the web 2016 - UX
BTK Designing for the web 2016 - UXBTK Designing for the web 2016 - UX
BTK Designing for the web 2016 - UX
Lukas Oppermann
 
Lean agileux unconf
Lean agileux unconfLean agileux unconf
Lean agileux unconf
Stephen MacKley
 
JavaEasyFashion
JavaEasyFashionJavaEasyFashion
JavaEasyFashion
Joshua Partogi
 
Hogyan tegyük a vásárlást élménnyé egy webáruházban?
Hogyan tegyük a vásárlást élménnyé egy webáruházban?Hogyan tegyük a vásárlást élménnyé egy webáruházban?
Hogyan tegyük a vásárlást élménnyé egy webáruházban?
István Kolozsi
 
Adam carmi
Adam carmiAdam carmi
Adam carmi
CodeFest
 
Mobil web technológiai utak, tervezés - Kolozsi István, kolboid
Mobil web technológiai utak, tervezés - Kolozsi István, kolboidMobil web technológiai utak, tervezés - Kolozsi István, kolboid
Mobil web technológiai utak, tervezés - Kolozsi István, kolboid
István Kolozsi
 
Preparing for the WebGeek DevCup
Preparing for the WebGeek DevCupPreparing for the WebGeek DevCup
Preparing for the WebGeek DevCup
bryanbibat
 

What's hot (12)

Practical guide for front-end development for django devs
Practical guide for front-end development for django devsPractical guide for front-end development for django devs
Practical guide for front-end development for django devs
 
High Fidelity Prototyping
High Fidelity PrototypingHigh Fidelity Prototyping
High Fidelity Prototyping
 
Web testing
Web testingWeb testing
Web testing
 
Don't just do agile, do it right! - Simon Storm + Mary Lynn
Don't just do agile, do it right! - Simon Storm + Mary LynnDon't just do agile, do it right! - Simon Storm + Mary Lynn
Don't just do agile, do it right! - Simon Storm + Mary Lynn
 
Automated Battle Scars Se Conf 2011
Automated Battle Scars Se Conf 2011Automated Battle Scars Se Conf 2011
Automated Battle Scars Se Conf 2011
 
BTK Designing for the web 2016 - UX
BTK Designing for the web 2016 - UXBTK Designing for the web 2016 - UX
BTK Designing for the web 2016 - UX
 
Lean agileux unconf
Lean agileux unconfLean agileux unconf
Lean agileux unconf
 
JavaEasyFashion
JavaEasyFashionJavaEasyFashion
JavaEasyFashion
 
Hogyan tegyük a vásárlást élménnyé egy webáruházban?
Hogyan tegyük a vásárlást élménnyé egy webáruházban?Hogyan tegyük a vásárlást élménnyé egy webáruházban?
Hogyan tegyük a vásárlást élménnyé egy webáruházban?
 
Adam carmi
Adam carmiAdam carmi
Adam carmi
 
Mobil web technológiai utak, tervezés - Kolozsi István, kolboid
Mobil web technológiai utak, tervezés - Kolozsi István, kolboidMobil web technológiai utak, tervezés - Kolozsi István, kolboid
Mobil web technológiai utak, tervezés - Kolozsi István, kolboid
 
Preparing for the WebGeek DevCup
Preparing for the WebGeek DevCupPreparing for the WebGeek DevCup
Preparing for the WebGeek DevCup
 

Viewers also liked

e-motion digital creative solutions brief profile
e-motion digital creative solutions brief profilee-motion digital creative solutions brief profile
e-motion digital creative solutions brief profile
e-motionagency
 
Resume - June 2015
Resume - June 2015Resume - June 2015
Resume - June 2015
Prashant Belvate
 
Keynote dsf consumerization of it-konstantin
Keynote dsf consumerization of it-konstantinKeynote dsf consumerization of it-konstantin
Keynote dsf consumerization of it-konstantin
DellTeam
 
Хранение файлов: защита, быстродействие, маштабирование
Хранение файлов: защита, быстродействие, маштабированиеХранение файлов: защита, быстродействие, маштабирование
Хранение файлов: защита, быстродействие, маштабированиеDellTeam
 
Легкий переход от виртуализации к частному облаку. Готовые рецепты от Dell и ...
Легкий переход от виртуализации к частному облаку. Готовые рецепты от Dell и ...Легкий переход от виртуализации к частному облаку. Готовые рецепты от Dell и ...
Легкий переход от виртуализации к частному облаку. Готовые рецепты от Dell и ...DellTeam
 
Виртуализация десктопов глазами Dell
Виртуализация десктопов глазами DellВиртуализация десктопов глазами Dell
Виртуализация десктопов глазами DellDellTeam
 

Viewers also liked (6)

e-motion digital creative solutions brief profile
e-motion digital creative solutions brief profilee-motion digital creative solutions brief profile
e-motion digital creative solutions brief profile
 
Resume - June 2015
Resume - June 2015Resume - June 2015
Resume - June 2015
 
Keynote dsf consumerization of it-konstantin
Keynote dsf consumerization of it-konstantinKeynote dsf consumerization of it-konstantin
Keynote dsf consumerization of it-konstantin
 
Хранение файлов: защита, быстродействие, маштабирование
Хранение файлов: защита, быстродействие, маштабированиеХранение файлов: защита, быстродействие, маштабирование
Хранение файлов: защита, быстродействие, маштабирование
 
Легкий переход от виртуализации к частному облаку. Готовые рецепты от Dell и ...
Легкий переход от виртуализации к частному облаку. Готовые рецепты от Dell и ...Легкий переход от виртуализации к частному облаку. Готовые рецепты от Dell и ...
Легкий переход от виртуализации к частному облаку. Готовые рецепты от Dell и ...
 
Виртуализация десктопов глазами Dell
Виртуализация десктопов глазами DellВиртуализация десктопов глазами Dell
Виртуализация десктопов глазами Dell
 

Similar to System performance as usability catastrophe

Usable Software Design
Usable Software DesignUsable Software Design
Usable Software Design
Alexandru Bolboaca
 
Browser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.jsBrowser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.js
Luís Bastião Silva
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilities
Ravi Tadwalkar
 
Introduction to UX for Mesiniaga Academy
Introduction to UX for Mesiniaga AcademyIntroduction to UX for Mesiniaga Academy
Introduction to UX for Mesiniaga Academy
Zainul Zain
 
Life Has Not Been That Rosy With Agile : Rahul Sudame
Life Has Not Been That Rosy With Agile : Rahul SudameLife Has Not Been That Rosy With Agile : Rahul Sudame
Life Has Not Been That Rosy With Agile : Rahul Sudame
oGuild .
 
Accessibility patterns testable requirements during early design
Accessibility patterns testable requirements during early designAccessibility patterns testable requirements during early design
Accessibility patterns testable requirements during early design
Aidan Tierney
 
User Experience: Why and How
User Experience: Why and HowUser Experience: Why and How
User Experience: Why and How
Objective Experience
 
UX at HP Enterprise
UX at HP Enterprise UX at HP Enterprise
UX at HP Enterprise
David Ismailov
 
Managing Software Debt Workshop at Intel
Managing Software Debt Workshop at IntelManaging Software Debt Workshop at Intel
Managing Software Debt Workshop at Intel
Chris Sterling
 
[Tuyen nguyen]waterfall&amp;agile
[Tuyen nguyen]waterfall&amp;agile[Tuyen nguyen]waterfall&amp;agile
[Tuyen nguyen]waterfall&amp;agile
TuyenNguyen457
 
Ui qa tools
Ui qa toolsUi qa tools
Ui qa tools
Sevilla QA
 
Maintaining UI Standard in an Agile Team
Maintaining UI Standard in an Agile TeamMaintaining UI Standard in an Agile Team
Maintaining UI Standard in an Agile Team
Awalin Sopan
 
Agile Software and DevOps Essentials
Agile Software and DevOps EssentialsAgile Software and DevOps Essentials
Agile Software and DevOps Essentials
Narayanan Subramaniam
 
Module 10: Usability Testing
Module 10: Usability TestingModule 10: Usability Testing
Module 10: Usability Testing
Daniel Drew Turner
 
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOpsWinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
WinOps Conf
 
Scaling agile
Scaling agileScaling agile
Scaling agile
Askhat Urazbaev
 
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...
Sten Govaerts
 
Incorporating UX into Your Projects
Incorporating UX into Your ProjectsIncorporating UX into Your Projects
Incorporating UX into Your Projects
Karl Kaufmann
 
Training Webinar - Wireframing made easy
Training Webinar - Wireframing made easyTraining Webinar - Wireframing made easy
Training Webinar - Wireframing made easy
OutSystems
 
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)
Elida Arrizza
 

Similar to System performance as usability catastrophe (20)

Usable Software Design
Usable Software DesignUsable Software Design
Usable Software Design
 
Browser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.jsBrowser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.js
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilities
 
Introduction to UX for Mesiniaga Academy
Introduction to UX for Mesiniaga AcademyIntroduction to UX for Mesiniaga Academy
Introduction to UX for Mesiniaga Academy
 
Life Has Not Been That Rosy With Agile : Rahul Sudame
Life Has Not Been That Rosy With Agile : Rahul SudameLife Has Not Been That Rosy With Agile : Rahul Sudame
Life Has Not Been That Rosy With Agile : Rahul Sudame
 
Accessibility patterns testable requirements during early design
Accessibility patterns testable requirements during early designAccessibility patterns testable requirements during early design
Accessibility patterns testable requirements during early design
 
User Experience: Why and How
User Experience: Why and HowUser Experience: Why and How
User Experience: Why and How
 
UX at HP Enterprise
UX at HP Enterprise UX at HP Enterprise
UX at HP Enterprise
 
Managing Software Debt Workshop at Intel
Managing Software Debt Workshop at IntelManaging Software Debt Workshop at Intel
Managing Software Debt Workshop at Intel
 
[Tuyen nguyen]waterfall&amp;agile
[Tuyen nguyen]waterfall&amp;agile[Tuyen nguyen]waterfall&amp;agile
[Tuyen nguyen]waterfall&amp;agile
 
Ui qa tools
Ui qa toolsUi qa tools
Ui qa tools
 
Maintaining UI Standard in an Agile Team
Maintaining UI Standard in an Agile TeamMaintaining UI Standard in an Agile Team
Maintaining UI Standard in an Agile Team
 
Agile Software and DevOps Essentials
Agile Software and DevOps EssentialsAgile Software and DevOps Essentials
Agile Software and DevOps Essentials
 
Module 10: Usability Testing
Module 10: Usability TestingModule 10: Usability Testing
Module 10: Usability Testing
 
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOpsWinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
 
Scaling agile
Scaling agileScaling agile
Scaling agile
 
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...
 
Incorporating UX into Your Projects
Incorporating UX into Your ProjectsIncorporating UX into Your Projects
Incorporating UX into Your Projects
 
Training Webinar - Wireframing made easy
Training Webinar - Wireframing made easyTraining Webinar - Wireframing made easy
Training Webinar - Wireframing made easy
 
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)
 

Recently uploaded

Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 

Recently uploaded (20)

Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 

System performance as usability catastrophe

  • 1.
  • 2.
  • 3. What  am  I  talking  about?   Let’s  take  a  look  at  some  examples   h<p://www.youtube.com/watch?v=HyA6UXi0v6g  
  • 4. What  am  I  talking  about?     h<p://xkcd.com/612/  
  • 5. What  am  I  talking  about?     h<p://www.youtube.com/watch?v=sxtYxIObjWg  
  • 6. What  am  I  talking  about?     h<p://www.youtube.com/watch?v=nfnM_8JBmmA  
  • 7. What  am  I  talking  about?     h<p://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   bu<ons  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  stu<er/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  soMware  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   h<p://gplus.to/michaelklein27   h<p://www.linkedin.com/in/michaelklein3   @mischkl  
  • 15. Links   Jakob  Nielsen,  Response  Times:  The  3  Important  Limits   h<p://www.nngroup.com/ar.cles/response-­‐.mes-­‐3-­‐important-­‐limits/   Jakob  Nielsen,  Website  Response  Times   h<p://www.nngroup.com/ar.cles/website-­‐response-­‐.mes/   Steven  Seow,  Designing  and  Engineering  Time  (Book)   h<p://www.engineering.me.com   Steven  Seow,  User  Interface  Timing  Cheatsheet   h<p://www.stevenseow.com/papers/UI%20Timing%20Cheatsheet.pdf   GNOME  Human  Interface  Guidelines  2.2.2,  Characteris>cs  of  Responsive  Applica>ons   h<p://developer.gnome.org/hig-­‐book/3.5/feedback-­‐responsiveness.html