Sidverktyg

Snabbhet är allt i gränssnitt

Igår blev prototypen för digitala skyltar påfallande mycket bättre trots att den är lika rå i utseendet som vanligt. Anledningen var en dramatisk sänkning av responstiderna.

Källkoden till prototypen för digitala skyltar

Delar av den källkod och de bilder som används i prototypen visad i coverflow-läge

Tidigare har jag betraktat systemet som en ren råskiss och låtit programmet skörda den nödvändiga metadatan från katalogen vid varje bläddring. Naturligtvis tog det en del tid, men att vänta är vi ju vana vid när det gäller datorer – och Internet i synnerhet.

Igår fick jag dock för mig att börja separera ut den del av programmet som skördar metadata och låta den göra allt jobbet i ett svep. Som ett resultat har presentationslagret av programmet all data i minnet samtidigt och kan visa nästa sida omedelbart när man bläddrar. I korthet blev det ett enormt lyft för användarupplevelsen.

När jag reflekterade över förbättringen slog det mig att jag tidigare läst Jacob Nielsen när han citerar över 40 år gammal kunskap om gränssnittsdesign:

  • 0.1 sekund är gränsen för hur lång tid något får ta utan att användaren märker fördröjningen.
  • 1.0 sekund är gränsen för hur lång tid någonting får ta utan att man informerar om fördröjningen. Användaren kommer att märka den, men kan hålla tankeflödet oavbrutet.
  • 10 sekunder är gränsen för vad som är acceptabelt för en händelse om man informerar om fördröjningen.

Någon som också reflekterat över vardagsteknikens fördröjningar är doktoranden Rasmus Fleischer i bloggposten fördröjningens fenomenologi.

Att lagra det som skall visas lokalt snarare än att tvinga användarna att vänta på webbservrar gör systemet både robustare mot dåliga uppkopplingar och ökar användbarheten. Det här är en fråga som är minst lika relevant för databaser. Jag minns med viss sorg ett nationellt samsökningsprojekt jag deltog i där svarstiderna i alltför ofta låg runt 30 sekunder eftersom vi inte fick lagra datat i ett eget index.