When developing a web service or mobile application, developers inevitably have to face speed optimization issues and the ways that users may have difficulties with slow-loading content that makes them wait longer, which is super annoying for some people.
In this case, the first reasonable step is to optimize software on your server-side. Nevertheless, even after optimizing the software, you might still notice the delay in page load. To help cope with this problem, we figured out a few methods that can make a big difference in speeding up your web service or mobile app.
But first a little background!
Houston Airport’s executives were receiving loads of complaints that passengers were waiting too long for their baggage. The airport hired extra stuff to take care of people’s personal belongings, but this did not solve the issue. Then the executives found the solution — they decided to increase the route that passengers took from the plane to baggage collection so that passengers spent their time walking rather than waiting. Complaints stopped immediately.
A similar story happened with a skyscraper when the building’s residents complained that the waiting time for the elevator was too long. The managers decided to install mirrors to distract people, and complaints ceased.
At Disneyland, people complained about waiting in lines for hours. Disney managers decided to set a timer that showed how long it would take to stand in each line, but the display always showed more time than it would actually take, so people were happy that the line went faster. Complaints ceased.
An example on the web comes from Google, who added a game to their Chrome browser with a dinosaur that jumps over cacti whenever you go offline.
The same method has been applied to telecommunications. When you call a company, usually you hear a recorded message first and then some music starts playing. If you let your customers listen to the phone beeps, they will more likely hang up the phone.
The same principles apply to developing software:
1. Do not show your users a blank screen where nothing happens. This makes people nervous. Try to show them at least something, for example, a spinner. Even better if you can show users a loading bar or blocks of progress.
2. Try to do operations before users have performed the command. On Instagram, for example, if you select a photo, it will be uploaded to the server even before you click the Share button, so users think they have a lightning-fast download speed. Almost all services download photos you scroll through even before you open them.
3. Use dummy content. Try to show at least something. For example, if you want to see content on Facebook but you have a poor internet connection, the social network will show you a “picture” of a post.