In the previous article of this series we talked about the boundaries of Web performance optimization (WPO). We introduced some metrics and a scale of measurement but we omitted one large part of the problem due to the purely technical point of view we took previously. In reality, while time and performance can be measured objectively it is perceived subjectively by humans. Static measurement scales and performance analyses are relevant for performance measurements but largely irrelevant in real world usage. As long as users have to interact with an application we have to make sure that we test and evaluate the application’s performance from a real user’s perspective. Consequently in this part of the series we want to talk about perceived performance and why it makes sense to put the user first when it comes to WPO.
Measuring objective performance
Here’s an example: The figure below shows the result of the PageSpeedInsight test for Amazon’s website. Amazon only gets a rating of 55 out of 100 which is quite a bad result.
Amazon is one of the biggest e-commerce websites and known as an IT innovator worldwide. Their website is their profit generator, their marketing tool and core to their success. Therefore the significance of this result is at least debatable.
If we take a closer look the results show that Amazon disregards several best practice website optimization rules. For example you should avoid landing page redirects but in the case of amazon.com, Amazon is redirecting their users to a safe HTTPS connection. Actually that’s not a bad thing at all since it will be safer for the users to surf on their site. Furthermore the redirection does not result in a perceived slower performance for the users. Just try it: Type in http://amazon.com and visit the website. Do you notice that the website is kind of slow? I don’t think so. Amazon has a spread out infrastructure and uses HTTPS connections efficiently. It’s still the case that the redirect incurs an overhead and is not following best practices but it does not frustrate the user either—when it’s implemented correctly. In turn Amazon uses other best practices to achieve that, e.g. keepalive connections to minimize reconnects and to reduce the cost of TCP handshakes by avoiding to establish new TCP connections all the time.
Therefore, pagespeed tests have to be approached with caution. Such tests provide only an objective result and represent a result like: “Are the usual best practices implemented?” and not “Is the website fast enough for the user?”.
It is our responsibility as developers to involve users as often as possible when designing a system or software meant for user interaction.
Users will use the website—that’s why only your users can tell you whether your website is fast enough or not. Following best practices provides an initial indication of optimization potential but a purely objective measurement is not enough to assess the performance of a website.
In practice we as developers don’t have much time for real user testing, but we can consider basic psychological guidelines that describe human behavior and should be taken into account while developing applications.
The psychology of human perception of time has been studied since the late eighteenth century. Since then a large number of thoroughly researched phenomena have been established on the human perception of time. Using various behavioral rules, models, and paradigms, it is possible to incorporate human perception into the development process of the user interface and the design of waiting times, thus quickly becoming a “fast enough” application in the end.
One of the most important findings is that subjective perception is dependent on different factors. The perceived loading time of a web application can appear slow because of a poor network connection or because the user is impatient and needs the application very urgently. The perceived time duration can be influenced by non-temporal factors and can only be expressed in relation to the tolerated duration of the user. Tolerated time limits (tolerance thresholds) of the user should therefore not be exceeded. From the performance-optimization perspective of applications, the factors that influence subjective perception of the user should always be considered.
The size of the tolerance threshold depends on various factors which have been investigated in several ways by psychologists under the concept of human perception. In Stephen Seow’s book Designing and Engineering Time: The Psychology of Time Perception in Software, multiple factors are presented. These include the user’s experience with other products, standards established in the user’s culture and environment, context-dependent non-temporal information such as the individual interests of the user, indicators suggesting long or short waiting times, attempts to repeat the task, time of day, internal emotional states or distortions of the habits of the user which can be seen in new unusual surfaces of known applications.
So here’s the gist:
- There are two types of performance: perceived and calculated performance
- When users interact with an application we have to consider the perceived performance
- Automated tests are important but their meaningfulness must not be exaggerated
- There are several rules which apply to the human perception
In the next article we’ll cover some basic rules of perceived performance. Stay tuned!
Get in touch
Don’t want to get your hands dirty? Our developers have years of experience in developing mobile and web applications. Visit our website for a full portfolio, ask for a quotation at firstname.lastname@example.org or call +49 721 619 021-0.
Looking for new challenges in web development? Join us as web-frontend or software developer!